Skip to main content

OTLiNGAM logo

OTLiNGAM

Optimal Transport LiNGAM.
Scikit-learn-compatible causal discovery for linear non-Gaussian systems.

Documentation · PyPI

PyPI version Supported Python versions: 3.11–3.14 Lint status Coverage Documentation status License

otlingam is a Python package for causal discovery in linear non-Gaussian structural equation models. It learns causal orders by maximizing the Wasserstein non-Gaussianity of standardized regression residuals and estimates edge weights with adaptive Lasso.


✨ Features

  • Exhaustive causal-order learning: ExhaustiveOTLiNGAM uses subset dynamic programming to find a globally optimal order.
  • Scalable greedy learning: GreedyOTLiNGAM constructs an order by sequentially selecting the most non-Gaussian residual.
  • Optimal transport ICA: OTICALiNGAM uses OTICA with FastICA initialization in the classical ICA-LiNGAM pipeline.
  • Exact empirical criterion: Computes one-dimensional Wasserstein scores directly from ordered residuals and Gaussian quantiles.
  • LiNGAM integration: Exposes causal orders and weighted adjacency matrices through the established LiNGAM estimator API.
  • scikit-learn integration: Native BaseEstimator integration with familiar fit, get_params, set_params, and clone support.

⚡ Method

The estimators assume the linear structural equation model

$$ X_j = \sum_{k \in \mathrm{Pa}(j)} B_{jk} X_k + \varepsilon_j, $$

where the graph is acyclic and the structural noises are mutually independent, centered, and have finite nonzero variances. Causal-order identification additionally requires at most one Gaussian structural noise.

For a candidate order $\sigma$, let $R_j(\sigma)$ be the population residual obtained by regressing $X_j$ on its predecessors under $\sigma$. The oracle Wasserstein order objective is

$$ G(\sigma) = \sum_{j = 1}^{d} \mathcal{W}_2\left( \mathrm{std}(R_j(\sigma)), \mathcal{N}(0, 1) \right)^2. $$

Given $n$ observations, let $\widehat{R}_j^{(i)}(\sigma)$ be the ordinary least-squares residual for observation $i$. OTLiNGAM maximizes the empirical order objective

$$ \widehat{G}n(\sigma) = \sum{j = 1}^{d} \mathcal{W}2\left( \mathrm{std}\left( \frac{1}{n} \sum{i = 1}^{n} \delta_{\widehat{R}_j^{(i)}(\sigma)} \right), \mathcal{N}(0, 1) \right)^2. $$

At the population level, the maximizers of $G$ are exactly the topological orders under the stated assumptions. A topological order exposes the independent structural noises as regression residuals, whereas an incorrect order may mix several noises and reduce the total objective. Each empirical one-dimensional Wasserstein distance is evaluated exactly by sorting the standardized residuals and comparing them with the Gaussian reference quantiles.


🚀 Installation

python -m pip install otlingam

🔧 Usage

Example

The following example simulates a linear non-Gaussian structural equation model, learns a causal order with GreedyOTLiNGAM, and compares the true and estimated weighted adjacency matrices.

import matplotlib.pyplot as plt
import numpy as np
from otlingam import GreedyOTLiNGAM, disorder

rng = np.random.default_rng(42)
n_samples = 5000
adjacency_matrix = np.array(
    [
        [0.0, 0.0, 0.0, 0.0, 0.0],
        [0.8, 0.0, 0.0, 0.0, 0.0],
        [0.0, -0.7, 0.0, 0.0, 0.0],
        [0.5, 0.0, 0.9, 0.0, 0.0],
        [0.0, -0.6, 0.0, 0.7, 0.0],
    ]
)
noise = rng.uniform(-1.0, 1.0, size=(n_samples, 5))
X = noise @ np.linalg.inv(np.eye(5) - adjacency_matrix).T

model = GreedyOTLiNGAM().fit(X)

print("Estimated causal order:", model.causal_order_)
print("Disorder:", disorder(model.causal_order_, adjacency_matrix))

fig, axes = plt.subplots(1, 2, figsize=(10, 4), layout="constrained")
matrices = (adjacency_matrix, model.adjacency_matrix_)
titles = ("True adjacency matrix", "Estimated adjacency matrix")
for ax, matrix, title in zip(axes, matrices, titles, strict=True):
    image = ax.imshow(matrix, cmap="RdBu_r", vmin=-1.0, vmax=1.0)
    ax.set_title(title)
    ax.set_xlabel("Parent")
    ax.set_ylabel("Child")
fig.colorbar(image, ax=axes, label="Edge weight")

plt.show()

ExhaustiveOTLiNGAM provides global order optimization at an exponential cost in the number of variables. GreedyOTLiNGAM provides a quadratic-time alternative. Set fit_intercept=False when the observations are already centered. The default fit_intercept=True centers the data and exposes the fitted intercepts through intercept_.


📊 Reproducing Results

Clone the repository, create and activate a virtual environment, then install the exact package versions used for the paper:

python -m pip install -r scripts/requirements.txt

Keep the repository folder layout unchanged: do not move, rename, or flatten its folders, because the experiment scripts resolve paths relative to their file locations.

Run the experiment scripts from the repository root:

python scripts/statistical-performance.py --nd
python scripts/statistical-performance.py --heterogeneity
python scripts/statistical-performance.py --k
python scripts/runtime-scaling.py

Alternatively, run all experiments sequentially on Windows, Linux, or macOS:

python run-all.py

The runner uses the active Python interpreter and stops if an experiment fails.

These commands write varying-nd-disorder.pdf, noise-heterogeneity-disorder.pdf, varying-k-performance.pdf, and runtime-scaling.pdf to figures/. The paper settings (including random seed 42, sample sizes, dimensions, graph configurations, and run counts) are defined as constants near the top of each script.

Metadata

Release files for otlingam 0.5.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 otlingam 0.5.0
File
otlingam-0.5.0-cp314-cp314t-win_arm64.whl CPython 3.14 CPython 3.14 free-threading Windows ARM64 Details
otlingam-0.5.0-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
otlingam-0.5.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64, Linux glibc 2.26+ x86-64 Details
otlingam-0.5.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
otlingam-0.5.0-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
otlingam-0.5.0-cp314-cp314t-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64 Details
otlingam-0.5.0-cp314-cp314-win_arm64.whl CPython 3.14 CPython 3.14 Windows ARM64 Details
otlingam-0.5.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
otlingam-0.5.0-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.26+ x86-64 Details
otlingam-0.5.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
otlingam-0.5.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
otlingam-0.5.0-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
otlingam-0.5.0-cp313-cp313-win_arm64.whl CPython 3.13 CPython 3.13 Windows ARM64 Details
otlingam-0.5.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
otlingam-0.5.0-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.26+ x86-64 Details
otlingam-0.5.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
otlingam-0.5.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
otlingam-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
otlingam-0.5.0-cp312-cp312-win_arm64.whl CPython 3.12 CPython 3.12 Windows ARM64 Details
otlingam-0.5.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
otlingam-0.5.0-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.26+ x86-64 Details
otlingam-0.5.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
otlingam-0.5.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
otlingam-0.5.0-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
otlingam-0.5.0-cp311-cp311-win_arm64.whl CPython 3.11 CPython 3.11 Windows ARM64 Details
otlingam-0.5.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
otlingam-0.5.0-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.26+ x86-64 Details
otlingam-0.5.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
otlingam-0.5.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
otlingam-0.5.0-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details

Total release size: 7.7 MB

Release files / otlingam-0.5.0-cp314-cp314t-win_arm64.whl

Download URL otlingam-0.5.0-cp314-cp314t-win_arm64.whl
Size 491.4 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows ARM64
SHA-256 checksum
How to use checksums
5b7d2d0b338298d5f15ae386dcf0130d4f638807ef54660505ca427f80bad247
BLAKE2b-256 checksum
How to use checksums
d84ace5ccd4045482b1d62725a531cec08ae9a08ab43cc455a1fad43c9ce60fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314t-win_amd64.whl

Download URL otlingam-0.5.0-cp314-cp314t-win_amd64.whl
Size 334.0 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
66cfa43b74844883bbe9a7012e33577303d10e5fc18e6e19eb0d41dc57c41175
BLAKE2b-256 checksum
How to use checksums
802b29dcc48d399d778db4a89ffa73cf4935712ace652b0f4328e3a1e21d150d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl

Download URL otlingam-0.5.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Size 238.3 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.26+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
0e834071d8486d8db47823967ea9d41cbdf9ed20ce28eae0d2ed988bb15d626c
BLAKE2b-256 checksum
How to use checksums
931786f3d5a8dbf5b1ed2ee9a77683c1b791fea21026e6998cb0932e5a7a2316
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL otlingam-0.5.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 187.9 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
f936bf7bb00bdaf2dca2536cd32f11778021c5707bb5520fa8373b8cb29c8998
BLAKE2b-256 checksum
How to use checksums
830a0bcf6a3df36973d668078f02231ea18faddece5bbbabc69c9933d1508cb8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314t-macosx_11_0_arm64.whl

Download URL otlingam-0.5.0-cp314-cp314t-macosx_11_0_arm64.whl
Size 137.3 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
734bb98d617bc4cc9fbb525f16669aa29f412d938a056b058137d68372de6a08
BLAKE2b-256 checksum
How to use checksums
c0b5c88c814d235c41c6d47fcd31fca95c604f2223c3949e32e66da2f5b221ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314t-macosx_10_15_x86_64.whl

Download URL otlingam-0.5.0-cp314-cp314t-macosx_10_15_x86_64.whl
Size 184.1 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
36fdce656be3f6446665e9286ce06fe513e6e0e17a3633434c912a425072cad8
BLAKE2b-256 checksum
How to use checksums
a09183efccff37bb0ddd100b49bbe296299d687a824b6064c1f457ec76add51f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314-win_arm64.whl

Download URL otlingam-0.5.0-cp314-cp314-win_arm64.whl
Size 487.8 kB
Tags CPython 3.14 Windows ARM64
SHA-256 checksum
How to use checksums
d036c89c306df7908656599b9160f26fd860da3d2bd8be4b1ae075424a998c31
BLAKE2b-256 checksum
How to use checksums
fc4a5445f1e6244e16245efb890d4e071ef15066dcd0dc3f973efe3aeb81ecc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314-win_amd64.whl

Download URL otlingam-0.5.0-cp314-cp314-win_amd64.whl
Size 330.7 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
7f6e904bcfd7443167e4bcbe6fc89833e59638cc7b0471110921af31d1bad4d5
BLAKE2b-256 checksum
How to use checksums
958c99192876de69c78eb90744627292fc4d7b85b7740c8a19e740e32d6f6614
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl

Download URL otlingam-0.5.0-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Size 237.1 kB
Tags CPython 3.14 Linux glibc 2.26+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d0f49ad5f49960e67deda8e87ed0a790312c229eac25c161af8f4302189a388b
BLAKE2b-256 checksum
How to use checksums
be46bcf5a7c24cf19a72613f9218fc6df5072e74b9c054b1b87a1286ab8f9349
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL otlingam-0.5.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 185.9 kB
Tags CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
db5d5156dae6cc045bd8b6722607217aeefd4e11d2a6c4b54cb4a0558b40fc32
BLAKE2b-256 checksum
How to use checksums
c8ee91e190326350873051cdcda02248b278b76bba9b5f5a80440075fa6f1b69
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL otlingam-0.5.0-cp314-cp314-macosx_11_0_arm64.whl
Size 133.3 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
7824e873b9fb63b0d3f0b844c2fb2603242a489c3bedb26a2308654c04ebcf68
BLAKE2b-256 checksum
How to use checksums
659c7208974179e552861aeb01a4d2a4b5ab41fda8813bb57133ce98b5b8a6da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp314-cp314-macosx_10_15_x86_64.whl

Download URL otlingam-0.5.0-cp314-cp314-macosx_10_15_x86_64.whl
Size 180.4 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
54dfc99d161baabff538c0b9f2b0192f4897be1498724c5525672d8062b27dd4
BLAKE2b-256 checksum
How to use checksums
b9bb5850fc28004243c18eb4177aacbb95afe8645a7e0d886db5e62a0fe756fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp313-cp313-win_arm64.whl

Download URL otlingam-0.5.0-cp313-cp313-win_arm64.whl
Size 471.6 kB
Tags CPython 3.13 Windows ARM64
SHA-256 checksum
How to use checksums
570b1dbd87d6599a0e2a4a28c8d8d47ae0b41672f87a6a808ac8723510ffabc8
BLAKE2b-256 checksum
How to use checksums
a5dd1a3e6aebd7dfdb5b5da2d902ab203560be6b73ee37a6843194012f2b6de5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp313-cp313-win_amd64.whl

Download URL otlingam-0.5.0-cp313-cp313-win_amd64.whl
Size 321.4 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
109d43ed3f3176fbe481efb1f08942932c17c40cace2e094f22a00a12028fce1
BLAKE2b-256 checksum
How to use checksums
f8a2a498e41653a47957fe500dc34420867537ebd8f5c147b6b1a8d5a73dbdd5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl

Download URL otlingam-0.5.0-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Size 236.9 kB
Tags CPython 3.13 Linux glibc 2.26+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
530fd029096bb6b371263cb923641d55c2e8663e4f0c81ff123b3bccc05f3aa3
BLAKE2b-256 checksum
How to use checksums
2091304230b6531da36fb103660a5d08672d5730c570d6aa3d4492624992d514
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL otlingam-0.5.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 185.5 kB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
cf60c0d64ef9f76a986e41c0dd635bb4daf6767260275d4423fe1b403cab29c4
BLAKE2b-256 checksum
How to use checksums
174c3df268a8463e00a4dc43a938dde93e782c567be59f78ef8bf2afe8f93217
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL otlingam-0.5.0-cp313-cp313-macosx_11_0_arm64.whl
Size 133.2 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d549e40a2c04ab5f3f61d10b120a8a12c3415abeeb5d62306659561b1a37bba5
BLAKE2b-256 checksum
How to use checksums
18dd7d875b5df28431bab60a2a65e39d73fd9a4ac00555910d3ef4f20fe38000
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl

Download URL otlingam-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl
Size 180.2 kB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
a93284ae76eb3af760d9bbf6915897a500e91e23b3a0e4eb1d0fe76e359ee9a5
BLAKE2b-256 checksum
How to use checksums
ad2cbe7c3a25858886ed6d817e795bc74f6a00f58cd81e158bda1e0ed90b84f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp312-cp312-win_arm64.whl

Download URL otlingam-0.5.0-cp312-cp312-win_arm64.whl
Size 471.6 kB
Tags CPython 3.12 Windows ARM64
SHA-256 checksum
How to use checksums
a6a756bd9ea606f200745dd382697a5b9d31b3a20ace4dccc2970a2b57071f84
BLAKE2b-256 checksum
How to use checksums
0cd74ed4cb6f6d29c410dada105da7b48c8670f9dab20add4395f9a98651c7f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp312-cp312-win_amd64.whl

Download URL otlingam-0.5.0-cp312-cp312-win_amd64.whl
Size 321.3 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
a50156276382f4472f5a32d9edfed93f3e08319660a7263b298958cc4ffdbd83
BLAKE2b-256 checksum
How to use checksums
ed045f99d611dc52404f02db7a17d696e7dc727a510994824c1768bef6d2b1ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl

Download URL otlingam-0.5.0-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Size 237.0 kB
Tags CPython 3.12 Linux glibc 2.26+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
a66ab469a224ff0e25a7237c8dcb558d4333d3f1f80694be37cba191d1c7b0b0
BLAKE2b-256 checksum
How to use checksums
a340a087c1b77a882290252d38dd32f2f2aa4babd02bf22fcb6b6b22aa0d228a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL otlingam-0.5.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 185.4 kB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
86965e89c38fbcc5e8053e1ec7cb0ebf22ffe6f9fa905562688b970158e9a1aa
BLAKE2b-256 checksum
How to use checksums
7ba19b23d5d38874d8573e7abe5fb268f3d7c4c13820f9e134e5cf309e07c8a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL otlingam-0.5.0-cp312-cp312-macosx_11_0_arm64.whl
Size 133.2 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4dc1c31e2f50eb5ed2a543b062b2afebcf32979ae5f76707ea4a35cfb7d35cbd
BLAKE2b-256 checksum
How to use checksums
14b2af6e665c702fcf0f8193de2ae3f8b903c26b9f4baf153a8dd3043a4b8dab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp312-cp312-macosx_10_13_x86_64.whl

Download URL otlingam-0.5.0-cp312-cp312-macosx_10_13_x86_64.whl
Size 180.1 kB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
e8f0b5d474787ab8f5531a273c73d2dd717836db787213fea5c536d0465bf257
BLAKE2b-256 checksum
How to use checksums
b67117b674eac3ebf7b3f0a3c4016f2a1de6d809d3d88267c59ae1cea7876e24
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp311-cp311-win_arm64.whl

Download URL otlingam-0.5.0-cp311-cp311-win_arm64.whl
Size 470.7 kB
Tags CPython 3.11 Windows ARM64
SHA-256 checksum
How to use checksums
2e7add93c9876623133259c8fafdfc36ca593643eba0d9bcc0602fb401d0bb63
BLAKE2b-256 checksum
How to use checksums
7e43ccf4bf144623521e38c27a61480ea2b7676821869139fa58de4a36f84fa4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp311-cp311-win_amd64.whl

Download URL otlingam-0.5.0-cp311-cp311-win_amd64.whl
Size 319.0 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
0a040f9de1418ab0a8b61757a821c45ca743c764d0b2ac1dcbf46a3637641814
BLAKE2b-256 checksum
How to use checksums
7fa363839a68db12c66b7bd38edb1f550ce1647f1493e353a68ab69b9fd27554
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl

Download URL otlingam-0.5.0-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Size 235.1 kB
Tags CPython 3.11 Linux glibc 2.26+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c779828bf3c28a9aeffcb12b90af60fba594beb44799404ee078c2c09dab8d26
BLAKE2b-256 checksum
How to use checksums
1c0a3cb938c8376f0e50d6175323a25cd05bc97e6ead60e682179993b9ad8246
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL otlingam-0.5.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 183.7 kB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
06462b34b1f603338eb42dfe63d4c2684046da081dc1fd3b6ae760a98a91b9a0
BLAKE2b-256 checksum
How to use checksums
099debea580268d9f509a126e1c1640e989141c96c8ebfc49e984b210be70e23
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL otlingam-0.5.0-cp311-cp311-macosx_11_0_arm64.whl
Size 131.2 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4b024b7fb008e9ad5913ceafbd10161d955bdd7104ba49c7345550f4360f21d2
BLAKE2b-256 checksum
How to use checksums
b6dc9084aad01ecc9de2750f3c4218543d6d0a040bbbea09200b0b7936c66f91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / otlingam-0.5.0-cp311-cp311-macosx_10_9_x86_64.whl

Download URL otlingam-0.5.0-cp311-cp311-macosx_10_9_x86_64.whl
Size 180.6 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
6a3ab50e8f820748eb8127ecb74bb17609cd1710a6f5d42ac30ec430e713afb7
BLAKE2b-256 checksum
How to use checksums
095936eaf8d3f68455601ef03d73b306c3cc7e285c50ae088e122bc8ec7eb666
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

0.6.0

29 release files

0.5.8

24 release files

0.5.3

30 release files

0.5.2

30 release files

0.5.1

30 release files

This release

0.5.0 This release

30 release files

0.4.3

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

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