Skip to main content

quadint

Fast, integer-backed algebraic number types for exact arithmetic in quadratic integer rings (imaginary and real), plus the dual and split-complex integers.

  • complexint: a Gaussian integer type that mirrors Python’s complex, but stores int components (no floating-point drift).
  • QuadInt / QuadraticRing: a general quadratic-integer implementation for elements of the form
    $(a + b\sqrt{D}) / \mathrm{den}$ with $den ∈ {1,2}$.
    • By default, QuadraticRing(D) chooses den = 2 when D % 4 == 1, otherwise den = 1 (and you can override with QuadraticRing(D, den=1) to work in the non-maximal order $\mathbb{Z}[\sqrt{D}]$). den=2 is only allowed when D % 4 == 1, since otherwise these numbers are not closed under multiplication.
  • eisensteinint: Eisenstein integers in the ω-basis (a + bω, where $ω = (-1 + \sqrt{-3})/2$).
  • dualint: dual integers of the form a + bε where ε² = 0 and ε != 0.
  • splitint: split-complex (hyperbolic) integers of the form a + bj where j² = 1 and j != 1.

Designed for discrete math, number theory tooling, and high-throughput exact computations (this project is built to compile cleanly with mypyc).

Helper methods on every quadratic integer value:

  • x.content() — largest positive integer n such that x = n*y in the same ring.
  • x.gcd(y), x.xgcd(y), x.inv_mod(m), and pow(x, e, m) — gcds and modular arithmetic, in the rings with division (see below).
  • x.factor_detail() — structured factorization as Factorization(unit, primes).
  • x.factor() — a plain {prime_like_factor: exponent} mapping whose product is exactly x.
  • x.basis, x.basis_a, x.basis_b — public/user-facing basis coordinates, which may differ from the internal (a, b) numerator coordinates.

Installation

python -m pip install quadint

from quadint import complexint

a = complexint(1, 2)
b = complexint(3, 6)

c = a * b
print(c)          # "(-9+12j)"  (exact, integer-backed)
print(c.real)     # -9
print(c.imag)     # 12
print(type(c.real))  # <class 'int'>

print(abs(a))     # 1^2 + 2^2 = 5  (norm)

complexint is ideal when you want something that feels like complex, but with infinite-precision integer components.


Quadratic integers: QuadraticRing

Create a ring instance for a chosen discriminant parameter D, then construct values in that ring:

from quadint import QuadraticRing

Q2 = QuadraticRing(-2)  # Z[√-2]

x = Q2(1, 2)           # (1 + 2*sqrt(-2))
y = Q2(3, 6)

print(x * y)           # "(-21+12*sqrt(-2))"
print(abs(x))          # norm: 1^2 - (-2)*2^2 = 9

Common operations include +, -, *, ** (non-negative powers, or negative ones with a modulus, as in pow(x, -1, m)), conjugate(), and abs() (the norm).

The two arguments are the numerators of $(a + b\sqrt{D}) / \mathrm{den}$. That only matters when den == 2 (the default when D % 4 == 1), where a and b must have the same parity:

from quadint import QuadraticRing

Z5 = QuadraticRing(5)         # den=2, so this is Z[(1 + √5)/2]

phi = Z5(1, 1)                # (1 + √5)/2, the golden ratio
print(phi * phi)              # (3+1*sqrt(5))/2
print(phi * phi == phi + 1)   # True
print(Z5(2, 0) == 1)          # True: 1 is 2/2 here, and Z5(1, 0) raises ValueError
print(Z5.from_ab(1, 1))       # (2+2*sqrt(5))/2, since from_ab takes a + b√D directly
print(Z5.fundamental_unit())  # (1+1*sqrt(5))/2

Eisenstein integers: eisensteinint

from quadint.eisenstein import eisensteinint

z = eisensteinint(2, 3)   # 2 + 3ω
w = eisensteinint(1, -1)  # 1 - ω

print(z)                  # (2+3ω)
print(z * w)              # (5+4ω), the exact product in Z[ω]
print(abs(z))             # 7, the norm a^2 - ab + b^2

Use real and omega to access the ω-basis components.


Dual integers: dualint

from quadint import dualint

z = dualint(2, 3)   # 2 + 3ε
w = dualint(1, -1)  # 1 - ε

print(z)            # (2+3ε)
print(z * w)        # (2+1ε)

Use real and dual (or epsilon) to access the ε-basis components.


Split-complex integers: splitint

Split-complex (a.k.a. hyperbolic) integers behave like complexint, except the generator satisfies j² = 1 instead of j² = -1.

Unlike complex numbers, split-complex numbers have an indefinite norm and zero divisors (e.g. (1+j)*(1-j) == 0).

from quadint.split import splitint

z = splitint(1, 1)    # 1 + 1j
w = splitint(1, -1)   # 1 - 1j

print(z * w)          # 0j   (zero divisor behavior)

Division & interoperability notes

  • This package is primarily intended for exact, discrete arithmetic (+, -, *, **, conjugation, norms).
  • Division (divmod, //, %, and /, which gives the same rounded quotient as //) is implemented for the Euclidean maximal orders (the default den), and for the dual (D=0) and split-complex (D=1) integers. ring.supports_division() says whether a ring has it, and rings without it raise NotImplementedError. The Euclidean rings are:
    • the norm-Euclidean ones: D=-1,-2,-3,-7,-11 and D=2,3,5,6,7,11,13,17,19,21,29,33,37,41,57,73,
    • D=69, via Clark's Euclidean function,
    • and real quadratic rings that are Euclidean but not norm-Euclidean, via a Harper-style method (a weighted Euclidean score plus a quotient search). Witnesses are built in for D=14,22,23,31,43,46,47,53,59,61,62,67,71,77,83,86,89,93,94,97, and any other real D whose maximal order has class number one is checked when the ring is created (D=38, 101, 103, and so on): it qualifies if its discriminant is at most 500, or if an admissible pair of witness primes turns up below 200.
  • In the Harper-style rings, divmod, // and % can raise NotImplementedError for some inputs, because the weighted score is not a Euclidean function for every pair (every remainder of 1 + √14 modulo 2 has a larger weighted norm than 2, for example). gcd, xgcd, inv_mod and pow(x, e, m) don't use that search, so they aren't affected.
  • gcd, xgcd and inv_mod are available wherever division is, except in two rings that are not PIDs: the dual integers have none of them, and the den=1 split-complex integers only have gcd. A gcd is only defined up to a unit, so it is normalized to a positive leading coefficient (the first quadrant in the Gaussian integers, the first sextant in the Eisenstein integers), and coprime elements have gcd 1.
  • Factorization (factor / factor_detail) is implemented for the imaginary quadratic fields with class number one:
    • complexint (D=-1), QuadraticRing(-2), and eisensteinint (D=-3),
    • and the maximal orders for D=-7,-11,-19,-43,-67,-163. Other rings raise NotImplementedError.
  • Floats and Python complex are accepted in some operations but are converted via int(...), which truncates toward zero. If you care about rationals, avoid mixing in float.
    • Equality is the exception, and is exact: complexint(1) == 1.9 is False. A value that equals a Python number also hashes like it, so complexint(1) and 1 are the same dict key (as 1 and 1.0 are), and likewise complexint(1, 2) and 1+2j.

Example of truncation behavior:

from quadint import complexint

a = complexint(3, 6)

print(a / 3)     # "(1+2j)"
print(a / 3.5)   # "(1+2j)"  (3.5 -> 3 by int(...) conversion)

print(a + 1)     # "(4+6j)"
print(a + 1.5)   # "(4+6j)"  (1.5 -> 1)

Ideals and class numbers

quadint can work with integral ideals of quadratic orders.

from quadint import QuadraticRing

O = QuadraticRing(-5)                         # Z[√-5]
I = O.ideal(3, O(1, 1))                       # (3, 1 + √-5)

print(I.is_prime(), I.is_principal())         # True False
print((I**2).principal_generator())           # (2-1*sqrt(-5)), so I**2 is the principal ideal (2 - √-5)
print([P.norm for P in O.ideal(6).factor()])  # [2, 2, 3, 3]: (6) factors into four prime ideals
print(O.class_number)                         # 2

Principal generators come from lattice reduction in imaginary rings and continued fractions in real ones, so this stays fast for large ideals. Class groups (O.class_group, O.class_number) are available for maximal orders, real and imaginary. Non-maximal orders such as QuadraticRing(-3, den=1) raise NotImplementedError.


Basis-vector coordinates

QuadInt separates public basis coordinates from the internal numerator coordinates used by the arithmetic engine. Internally, every value is still stored as (a, b) numerators for $(a + b\sqrt{D}) / \mathrm{den}$

For most quadratic integer types, the public basis is the identity basis, so the coordinates you pass to the constructor are the same coordinates used internally. Subclasses can override that by defining conversion matrices:

  • BASIS_TO_INTERNAL maps constructor/user coordinates (x, y) into internal numerator coordinates (a, b).
  • INTERNAL_TO_BASIS and INTERNAL_TO_BASIS_DEN map internal numerator coordinates back to public basis coordinates.

This is mainly useful when the natural mathematical notation for a type is not the raw 1, √D basis. Eisenstein integers are the motivating example. Users write them as a + bω, where $ω = (-1 + \sqrt{-3})/2$, but the shared quadratic-integer engine stores values over QuadraticRing(-3) as $(a + b\sqrt{D}) / \mathrm{den}$.

So eisensteinint(x, y) converts from the public ω-basis to the internal numerator basis as:

x + yω = ((2x - y) + y√-3) / 2

Example:

from quadint.eisenstein import eisensteinint

z = eisensteinint(2, 3)

print(z)             # (2+3ω)
print(z.real)        # 2
print(z.omega)       # 3
print(z.basis)       # (2, 3)
print(tuple(z))      # (2, 3)

# Internal numerator coordinates are still available, but usually only useful
# for implementing rings/subclasses or debugging low-level arithmetic.
print(z.a, z.b, z.ring.den)  # 1 3 2

Prefer basis, basis_a, basis_b, and type-specific aliases such as real / omega when presenting values to users. Prefer the internal .a and .b fields only when implementing arithmetic, division, factorization, or another low-level ring operation.


Sums of squares and quadratic-form decompositions: quadint.sums

quadint.sums provides small number-theory helpers for decomposing primes and integers into non-negative integer solutions of:

x^2 + d*y^2 = n

The default d=1 gives the classic sum-of-two-squares problem.

from quadint.sums import decompose_prime, decompose_number

print(decompose_prime(19889))
# (17, 140)

print(decompose_number(19890))
# {(69, 123), (57, 129), (3, 141), (87, 111)}

Use d to solve related forms:

from quadint.sums import decompose_prime, decompose_number

print(decompose_prime(19, d=3))
# (4, 1) because 4^2 + 3*1^2 == 19

print(decompose_number(12, d=3, no_trivial_solutions=False))
# {(0, 2), (3, 1)} because 0^2 + 3*2^2 == 12 and 3^2 + 3*1^2 == 12

decompose_prime(p, d=1, den=1)

Return a non-negative pair (x, y) for a prime-like input where:

x^2 + d*y^2 = den^2 * p

For normal public use, leave den=1. Passing den=2 is mainly useful when working with denominator-2 quadratic orders, where the returned pair is in numerator coordinates.

from quadint.sums import decompose_prime

print(decompose_prime(5))
# (1, 2)

print(decompose_prime(7, d=3))
# (2, 1)

print(decompose_prime(2, d=7, den=2))
# (1, 1) because 1^2 + 7*1^2 == 2^2 * 2

decompose_number(n, d=1, ...)

Return all canonical non-negative integer pairs (x, y) satisfying:

x^2 + d*y^2 = n
from quadint.sums import decompose_number

print(decompose_number(325, no_trivial_solutions=False))
# {(1, 18), (6, 17), (10, 15)}

decompose_number accepts either an integer or a precomputed factorization dictionary:

from quadint.sums import decompose_number

print(decompose_number({2: 1, 3: 2, 5: 1, 13: 1, 17: 1}))
# same result as decompose_number(19890)

Useful options:

  • d=1 by default; use another positive integer for x^2 + d*y^2 = n.
  • no_trivial_solutions=True by default; set it to False to include solutions with a zero coordinate and symmetric d=1 solutions such as (0, 2) for n=4.
  • check_count=N returns an empty set early when the predicted number of solutions is below N.

Completeness is best-supported for the class-number-one Heegner values used by the package: d in {1, 2, 3, 7, 11, 19, 43, 67, 163}. Other d values may work, and results are still validated as true solutions, but completeness is not guaranteed.

Eisenstein norm decompositions: quadint.sums.eisenstein

There is also a small companion module for decomposing Eisenstein norms of the form:

a^2 - a*b + b^2 = n

This is mostly a fun helper built on the Eisenstein integer machinery rather than a central part of the package. It mirrors the main quadint.sums API:

from quadint.sums.eisenstein import decompose_prime, decompose_number

print(decompose_prime(7))
# (1, 3)  # because 1^2 - 1*3 + 3^2 == 7

print(decompose_number(91, no_trivial_solutions=False))
# {(1, 10), (5, 11)}, the canonical pairs (a, b) with a^2 - a*b + b^2 == 91

no_trivial_solutions=True filters the obvious square-like rays where a == 0, b == 0, or a == b. As with the rest of quadint.sums, a factorization dictionary may be passed instead of an integer.


Minimal API overview

Constructors

  • complexint(a: int = 0, b: int = 0)
  • eisensteinint(a: int = 0, b: int = 0) where a + bω
  • dualint(a: int = 0, b: int = 0)
  • splitint(a: int = 0, b: int = 0)
  • QuadraticRing(D: int, den: int | None = None)
    • If den is omitted (None), it defaults to 2 when D % 4 == 1, otherwise 1. Passing den=2 for any other D raises ValueError.

Ring instance (QuadraticRing)

  • Q(a: int = 0, b: int = 0) -> QuadInt (the numerators of $(a + b\sqrt{D}) / \mathrm{den}$, so with den=2 they must have the same parity)
  • Q.from_ab(a: int, b: int) -> QuadInt ($a + b\sqrt{D}$, whatever den is)
  • Q.from_obj(x) -> QuadInt (embed int/float, and complex only in the Gaussian integers)
  • Q.ideal(*generators), Q.prime_ideals_over(p), Q.class_group, Q.class_number (maximal orders)
  • Q.fundamental_unit() (real rings), Q.elements_with_norm(n), Q.has_element_with_norm(n)
  • Q.discriminant(), Q.supports_division(), Q.supports_factorization()

Value type (QuadInt)

  • x.conjugate()
  • abs(x) (norm)
  • x.units (finite torsion unit subgroup exposed as a tuple)
  • x.is_unit(), x.is_irreducible()
  • x.content()
  • x.factor_detail() (returns Factorization(unit, primes))
  • x.factor() (returns plain dict[QuadInt, int])
  • divmod(x, y), x // y, x % y (where supported)
  • x.gcd(y), x.xgcd(y) (returns (g, s, t) with s*x + t*y == g), x.inv_mod(m), pow(x, e, m) (where supported)
  • x.exact_div(y) (the quotient if y divides x, otherwise None), y.divides(x)
  • Iteration/indexing over the basis coordinates: list(x), x[0], x[1]

Ideals (Ideal)

  • I.norm, x in I, I * J, I**k, I // J (exact quotient), I.divides(J), I.conjugate()
  • I.is_prime(), I.factor() (prime ideals, with repeats), I.is_principal(), I.principal_generator()

quadint.sums

  • decompose_prime(p: int, d: int = 1, den: int = 1) -> tuple[int, int]
  • decompose_number(n: int | dict[int, int], d: int = 1, check_count: int | None = None, *, limited_checks: bool = False, no_trivial_solutions: bool = True, warn: bool = True) -> set[tuple[int, int]]

Release files for quadint 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for quadint 0.2.0
File
quadint-0.2.0-cp314-cp314-win_arm64.whl CPython 3.14 CPython 3.14 Windows ARM64 Details
quadint-0.2.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
quadint-0.2.0-cp314-cp314-win32.whl CPython 3.14 CPython 3.14 Windows x86-32 Details
quadint-0.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
quadint-0.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
quadint-0.2.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
quadint-0.2.0-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
quadint-0.2.0-cp313-cp313-win_arm64.whl CPython 3.13 CPython 3.13 Windows ARM64 Details
quadint-0.2.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
quadint-0.2.0-cp313-cp313-win32.whl CPython 3.13 CPython 3.13 Windows x86-32 Details
quadint-0.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
quadint-0.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
quadint-0.2.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
quadint-0.2.0-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
quadint-0.2.0-cp312-cp312-win_arm64.whl CPython 3.12 CPython 3.12 Windows ARM64 Details
quadint-0.2.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
quadint-0.2.0-cp312-cp312-win32.whl CPython 3.12 CPython 3.12 Windows x86-32 Details
quadint-0.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
quadint-0.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
quadint-0.2.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
quadint-0.2.0-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
quadint-0.2.0-cp311-cp311-win_arm64.whl CPython 3.11 CPython 3.11 Windows ARM64 Details
quadint-0.2.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
quadint-0.2.0-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details
quadint-0.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
quadint-0.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
quadint-0.2.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
quadint-0.2.0-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
quadint-0.2.0-cp310-cp310-win_arm64.whl CPython 3.10 CPython 3.10 Windows ARM64 Details
quadint-0.2.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
quadint-0.2.0-cp310-cp310-win32.whl CPython 3.10 CPython 3.10 Windows x86-32 Details
quadint-0.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
quadint-0.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
quadint-0.2.0-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
quadint-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details

Total release size: 23.5 MB

Release files / quadint-0.2.0-cp314-cp314-win_arm64.whl

Download URL quadint-0.2.0-cp314-cp314-win_arm64.whl
Size 387.3 kB
Tags CPython 3.14 Windows ARM64
SHA-256 checksum
How to use checksums
081413f2a0a86fb8d8090a064e262d3d04ee4d98883324007898fac675e2082a
BLAKE2b-256 checksum
How to use checksums
22444cd82338c38ce072f604c61e66ac94100ee9198df29aac76823ece3b6356
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp314-cp314-win_amd64.whl

Download URL quadint-0.2.0-cp314-cp314-win_amd64.whl
Size 448.9 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
c1dc029005a41bbb8163ae20327956d44d0917a473faaea42a7e0c95ad99218b
BLAKE2b-256 checksum
How to use checksums
6a27a66c5a0d51d9160ea63259de2f56bae119ecf50556572715ceb187f74218
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp314-cp314-win32.whl

Download URL quadint-0.2.0-cp314-cp314-win32.whl
Size 384.8 kB
Tags CPython 3.14 Windows x86-32
SHA-256 checksum
How to use checksums
0248f86e0d579ea78313d89b02eb33929256f88c1cc26c26b77b7540b19f5e6e
BLAKE2b-256 checksum
How to use checksums
aecdf860ae509b4d73a8f1c666fd72ef0bd4a68612629f78d5944b8c9e97e71f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL quadint-0.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.2 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5f52d1e25f699ae0e0251ecb53c49a8900b4bcd7988d4a4ad9e708c400513550
BLAKE2b-256 checksum
How to use checksums
34a09a27e0dc0cb5bfa4c8f9b232a441d641e87a8d4f06134dc421cfd2ccff60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL quadint-0.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 1.1 MB
Tags CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
295d36c6258f6f417618507bbdfda1146aedf516019bf063666e4ef1622e4948
BLAKE2b-256 checksum
How to use checksums
2f0800717afffe58203a8100c1934832aab119615206e1bddfdd86af801748e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL quadint-0.2.0-cp314-cp314-macosx_11_0_arm64.whl
Size 597.4 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ac041bbb3ccde0895a6b7178e6328e73e09a304c2947c60772f5ebb8e5cfa006
BLAKE2b-256 checksum
How to use checksums
b567b20ad087dfc25f2392e71542e44790abdecda158061253770ab1c0e8d9ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp314-cp314-macosx_10_15_x86_64.whl

Download URL quadint-0.2.0-cp314-cp314-macosx_10_15_x86_64.whl
Size 658.0 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
1f3b17cdfa43188734f050ba7dc6b60e28af0d83b49346c42edbc02afeac896c
BLAKE2b-256 checksum
How to use checksums
875ac727e981aaee0365c60d06e9d2f4c39747822298fb8ba07bb84f920d3788
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp313-cp313-win_arm64.whl

Download URL quadint-0.2.0-cp313-cp313-win_arm64.whl
Size 378.9 kB
Tags CPython 3.13 Windows ARM64
SHA-256 checksum
How to use checksums
8c83bbae585757265bdfee93aa417583dbf310de3b26f5adf2a0b75a06e2617c
BLAKE2b-256 checksum
How to use checksums
2fa9b17ef37979681f08d594a4c89b498d59a755efdf98c6afb8ab7d341feb6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp313-cp313-win_amd64.whl

Download URL quadint-0.2.0-cp313-cp313-win_amd64.whl
Size 439.0 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
f0beb49bd77e69ca5d1795b79dcac5158dd762f08229ecbede5b87bd865a6abb
BLAKE2b-256 checksum
How to use checksums
b2c5eb9374ee4732f2622aafdbe1fd3cb76a4244abdb3859263ad23c46a28bc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp313-cp313-win32.whl

Download URL quadint-0.2.0-cp313-cp313-win32.whl
Size 379.6 kB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
843a16de9ba6dfed4998f0836974cc3c7cf8e9afdd1f040879267f5304a6ceff
BLAKE2b-256 checksum
How to use checksums
8ae0264ea122b149a8364b9ade31533a5f3e65436ad70b4e6cb9178b3590968f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL quadint-0.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.2 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
52a08737516556a9a4970c9b89bc574fc781dc2edaacecb2caafac9e4b63664c
BLAKE2b-256 checksum
How to use checksums
eab309995287cdb9f4469bdcdec0d31da05d9c948c5f61bf1f681c16f2debc73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL quadint-0.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 1.1 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
3064ee84a94811af3a347d3c56adc109be0620d16cd00f08450ffd697facb22f
BLAKE2b-256 checksum
How to use checksums
fb47a7fbec18e424a679244bf4f60575b43f5f857f69b79aa111b3fba9e451c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL quadint-0.2.0-cp313-cp313-macosx_11_0_arm64.whl
Size 598.1 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8f6cb326f46c9bc519ff40572c6310817c81fcfd2e42f34dfc6ccbec0af69cf3
BLAKE2b-256 checksum
How to use checksums
bd3342a55b3caab7535c7fe4b5291db28271891ce58ca7526cb47e30cfe5b7e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp313-cp313-macosx_10_13_x86_64.whl

Download URL quadint-0.2.0-cp313-cp313-macosx_10_13_x86_64.whl
Size 660.5 kB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
6a5c8edbcfe146796b1b1cb96010e34708f73f7c002669f95dad484b962f44d4
BLAKE2b-256 checksum
How to use checksums
f41310cb0def25b42006eb76851fba7060859de0a98660e918070636e7817ba6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp312-cp312-win_arm64.whl

Download URL quadint-0.2.0-cp312-cp312-win_arm64.whl
Size 378.4 kB
Tags CPython 3.12 Windows ARM64
SHA-256 checksum
How to use checksums
eafd86df675a3a2dcd0da712347a9755c88535013e8c40de3907bf06d63a941f
BLAKE2b-256 checksum
How to use checksums
53091b7053ee471f3b0ac35038b54a3f9dcdfccf3ab3c365b06daa4973c25c4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp312-cp312-win_amd64.whl

Download URL quadint-0.2.0-cp312-cp312-win_amd64.whl
Size 437.2 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
f562dbe06dd2865acb59c53c9e904c3777a26676441f4df891c844ed0315edb5
BLAKE2b-256 checksum
How to use checksums
3baab7d47a31555c738029be561c1dda8427db846d937590ba6545d3fac63652
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp312-cp312-win32.whl

Download URL quadint-0.2.0-cp312-cp312-win32.whl
Size 379.1 kB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
b64daf374e9881f7cb032a5c48d93c45a36f7ab9b578413501c62dfd5a4a1fdc
BLAKE2b-256 checksum
How to use checksums
53b8796193be8b7bb8bd235a1b41a2d07e4cbd38f91eda7304072a09613da752
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL quadint-0.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.2 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7d5413b6418c28757d54e8aa68adff4d10aa44907d4c6b6edef8962c92d7daa4
BLAKE2b-256 checksum
How to use checksums
15b8f098914398fab88a1e147a36923df476786b782fd28780ecd9911a5e5891
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL quadint-0.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 1.1 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
bdf7f6529739ff03f6084885de2582808d0eac3a6700254131224bb0baf91feb
BLAKE2b-256 checksum
How to use checksums
7aa44507102d5141c438875e8c2f1e795261d1f6a2da8722a055bb9df974781c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL quadint-0.2.0-cp312-cp312-macosx_11_0_arm64.whl
Size 605.9 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f49f3810f2d4a0fbae5d9c71092e221741e92085e8665558d2a64262109c1927
BLAKE2b-256 checksum
How to use checksums
2c763f7c41050bccca5fd88ae90162ee3a72073688659f4a92bb6441df6fbffa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp312-cp312-macosx_10_13_x86_64.whl

Download URL quadint-0.2.0-cp312-cp312-macosx_10_13_x86_64.whl
Size 665.9 kB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
459c7847213041a08bb4a9e49547c5a1c5af92a5f11ebca546cb7b903da2ce06
BLAKE2b-256 checksum
How to use checksums
2f9a9d99b7241cbac3568319f9f8dadcb7977891e729b5c86a000d4101d66e53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp311-cp311-win_arm64.whl

Download URL quadint-0.2.0-cp311-cp311-win_arm64.whl
Size 376.4 kB
Tags CPython 3.11 Windows ARM64
SHA-256 checksum
How to use checksums
6ed083b423997f654fafec2fc023b65fbe2f16a6211eb913c48f7470d3c4dc88
BLAKE2b-256 checksum
How to use checksums
1e3933d0fab1d2387c692706938d38b4d25e4f4fc547decccbc9abedb4afefc9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp311-cp311-win_amd64.whl

Download URL quadint-0.2.0-cp311-cp311-win_amd64.whl
Size 434.3 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
fd93d5c89dcafa3ab722907c771fee254be4bb81e3b1fe99f8cfe9d8888261b9
BLAKE2b-256 checksum
How to use checksums
dedd34c66664c32cf6dd726231d0db541244a1f6b7ef3a4dd869fd861d3b24b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp311-cp311-win32.whl

Download URL quadint-0.2.0-cp311-cp311-win32.whl
Size 376.3 kB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
43465978558a6594f27b49d7a8c517c7f92b7c339f940ea82a2ff27aa8689db5
BLAKE2b-256 checksum
How to use checksums
da1f5e50beac2889c5ea891ed899eacaac0ebfed9e44906fe9905abf99f25f03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL quadint-0.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.1 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f21ada97b35798ff700d2b87c4a144f612774023aa8e582c1c9e0716e7aea8eb
BLAKE2b-256 checksum
How to use checksums
4c9f1ad7166fa672d7ec5178103cf171085af7a6249d3e74bff85aee38832d16
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL quadint-0.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 1.1 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
f8b8400db6efd70284474074aa522204c081b31dbea8f9ee60d4514bf6f1fb8d
BLAKE2b-256 checksum
How to use checksums
871770a0c11928e8291f4d36c3be8abad6f6f2bdda028b92bc1eb214cc62119d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL quadint-0.2.0-cp311-cp311-macosx_11_0_arm64.whl
Size 597.9 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
112c905e80a7f3847c9ac4b4a5c06c0c000123fc0e1a0aa3b607dcfeec5044a2
BLAKE2b-256 checksum
How to use checksums
f250d1460bbc018f28794db6748f2128a6273bda228b72ea3f27e07b25a77f97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp311-cp311-macosx_10_9_x86_64.whl

Download URL quadint-0.2.0-cp311-cp311-macosx_10_9_x86_64.whl
Size 654.0 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
13873f1968bb6fe7776f960c1e8831d6120781e89f49e12141f586fbf0ceaf83
BLAKE2b-256 checksum
How to use checksums
21cf7029f6efa8c4993c4f3feddbb28c346a3e7ffb39321e5cc39358e94fbf2f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp310-cp310-win_arm64.whl

Download URL quadint-0.2.0-cp310-cp310-win_arm64.whl
Size 377.1 kB
Tags CPython 3.10 Windows ARM64
SHA-256 checksum
How to use checksums
894a983e3f17235b264d403e301170f6780ce2bfeabadcf1bb32cadbe74aba7e
BLAKE2b-256 checksum
How to use checksums
9bb73e236bec361296d23dabef4d90db4bc6c04bf896de9892fd4749a6578911
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp310-cp310-win_amd64.whl

Download URL quadint-0.2.0-cp310-cp310-win_amd64.whl
Size 433.6 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
2883f512a48045c3c90d93b9ecb42752ea1ad1e6e471e2bf590139bd1350bd68
BLAKE2b-256 checksum
How to use checksums
5e83a705092658980c9b7043000d99eb47faebca2cf7de5da393fbb58c665bd5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp310-cp310-win32.whl

Download URL quadint-0.2.0-cp310-cp310-win32.whl
Size 375.0 kB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
face00f11cf6c575f6c58cd73b2de44d444f2c918a47aedc0e415f3e04abcb4e
BLAKE2b-256 checksum
How to use checksums
8efde225ed2f51c1414234130b64ca4b3387a7aff0f78f08e1090023c5500f1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL quadint-0.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.1 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
bd126d168ab9fa128ca95865344746adb7028a6fc078705fabf2951fe0e076a1
BLAKE2b-256 checksum
How to use checksums
71c06a524e3880d26a229799d2f23d2d55e9285500df8d764092c965ee1d6039
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL quadint-0.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 1.1 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
08fa69b2d6b02f21278f394a2a73ffc6f5dcecdbf8b8e804b76ec71b303dcd17
BLAKE2b-256 checksum
How to use checksums
5d263cf2458b5985cfc810765b268115ef79d080cfae63c9dc75b52a0cfa2339
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp310-cp310-macosx_11_0_arm64.whl

Download URL quadint-0.2.0-cp310-cp310-macosx_11_0_arm64.whl
Size 605.7 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8f6c716792ebffb9caf0458dfc3e08100dde79a1ae90d4d59631dfe4a7bda33b
BLAKE2b-256 checksum
How to use checksums
846bfebcd37d4a5072dde809a224c553acd7979aeaaeedc28e782ddff3197fac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / quadint-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl

Download URL quadint-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl
Size 662.3 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
603d3054b9fc662fb0f8c23bf09a06337903ed4b79e3f51e222900cfd97ea884
BLAKE2b-256 checksum
How to use checksums
43f1582dc18385561c4761c69114c89c38af03819b60f9491c484f7021527231
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0 This release

35 release files

0.1.4

35 release files

0.1.3

35 release files

0.1.2

35 release files

0.0.9

48 release files

0.0.8

48 release files

0.0.7

48 release files

0.0.2

35 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page