fastmixture2
fastmixture2 estimates ancestry proportions (Q) and ancestral allele
frequencies (P) by maximum likelihood. It reads SNP-major PLINK genotypes
or ANGSD Beagle genotype likelihoods. Unsupervised initialization uses SVD/ALS
for K > 1. All modes use safeguarded SQP/ZAL updates on CPU or, with --gpu,
on NVIDIA CUDA.
Installation
Use Python 3.11 or newer. For best CPU performance, build from source.
This uses -march=native to tune the code to the build machine and can be
faster than portable wheels.
Install the current GitHub version:
git clone https://github.com/MeisnerLab/fastmixture2.git
cd fastmixture2
python -m pip install .
Source builds need a C compiler with OpenMP. On macOS, install OpenMP with
brew install libomp. On HPC, build on the compute-node type used for your
analyses.
With Conda, the CPU and GPU environments retain native CPU tuning. Run from the cloned repository:
conda env create --file environment-cpu.yml
conda activate fastmixture2-cpu
For GPU use, select environment-gpu.yml and activate fastmixture2-gpu.
PyPI wheels cover Linux (glibc) and macOS 14 or newer, on x86-64 and ARM64. They are portable and select SIMD kernels when available:
python -m pip install fastmixture2
To build from PyPI source with native CPU tuning:
python -m pip install --no-cache-dir --no-binary=fastmixture2 fastmixture2
With uv:
uv venv
source .venv/bin/activate
uv pip install fastmixture2
Use uv pip install . from the cloned repository for native CPU tuning.
To build from source without tying the binaries to the build CPU:
FASTMIXTURE2_PORTABLE=1 python -m pip install .
For NVIDIA CUDA 13, install "fastmixture2[gpu-cuda13]" from PyPI or
'.[gpu-cuda13]' from source with pip or uv. A compatible NVIDIA driver is
required. Add --gpu when running an analysis.
Quick start
Run an unsupervised fit with five ancestry components:
fastmixture2 --bfile cohort --K 5 --threads 8 --out cohort
fastmixture2 --beagle cohort.beagle.gz --K 5 --threads 8 --out cohort.gl
--bfiletakes the shared prefix of SNP-major PLINK.bed,.bimand.famfiles. Genotypes stay packed on CPU and GPU. Missing genotypes are supported.--beagletakes a gzipped ANGSD Beagle file. Likelihood triplets are normalized internally. Exactly uniform triplets contribute no ancestry information.
Perform sample and variant QC first. For each K, try several seeds and keep the converged fit with the highest log-likelihood. Component labels may change between runs, so align them before comparing Q or P.
Add --random-init to draw Q and P randomly instead of using SVD/ALS or pooled
frequencies. It uses --seed and works with either input format on CPU or CUDA
in unsupervised mode. With --exact-cv, each fold also starts randomly.
Resuming a checkpoint retains its saved estimates.
Add --gpu to use CUDA with either input format:
fastmixture2 --bfile cohort --K 5 --threads 8 --gpu --out cohort.gpu
CPU and CUDA support 1 <= K <= 128 for both input formats in all modes.
CUDA keeps input data on the GPU when they fit and streams in blocks otherwise.
Small CPU/GPU differences can arise from floating-point arithmetic.
At K > 1, CUDA SVD starts at 256 samples. Large ALS factors at K <= 8 use
CUDA ALS with float64 contractions. Smaller or high-K factors retain CPU ALS.
Resident PLINK CUDA fits use float32 SQP statistics while gains remain material,
then switch to float64 refinement. There is no fixed float32 iteration cap.
Parameters, constrained solves and likelihood checks stay in float64.
PLINK cuBLAS uses float32 tile products with float64 accumulation.
Genotype-likelihood fits use Q-first SQP/ZAL on both CPU and CUDA, with exact
EM/QN rescue and an independent EM check before convergence. Resident CUDA
fits start with float32 probabilities, derivatives and statistics,
then switch to float64 refinement. Near frequency bounds, GL probabilities
and derivatives use float64. cuBLAS tile sums, parameters, solves and scores stay
in float64.
CPU and CUDA start directly with SQP. --iter limits refinement.
EM skips missing genotypes and exactly uniform likelihood triplets, with
normalization over informative entries. Nonuniform likelihoods are retained.
Full likelihood scores retain the constant contribution from uniform triplets.
CPU SQP uses tiled BLAS statistics for Q and P at every supported K. This applies to PLINK and genotype likelihoods in all modes. BLAS scratch and P statistics each have a separate 512 MiB cap. Q statistics use 4096-sample shards with a separate 4 GiB cap. Optional update caches remain capped at 64 MiB. Input storage, factors and optimizer history are additional allocations.
Resident CUDA uses native kernels at K = 1..3 and tiled cuBLAS for Q and P at K = 4..16 during float32 refinement, regardless of input format or dataset size. Tiles share at most 64 MiB of scratch and keep float32 copies of P and Q. Solves and likelihood checks remain in float64. At K <= 16, final refinement and streamed fits use native float64 kernels, except resident GL P updates at K = 8..16 with up to 1024 samples. Those share the tiled cuBLAS P routine and keep combined scratch within 64 MiB. Unsupervised resident PLINK fits at K = 10..16 keep the first eight iterations fresh, then alternate Q-Hessian reuse during float32 refinement. The cache is capped at 64 MiB. Weak cached proposals retry with fresh curvature, and float64 refinement always uses fresh curvature.
At K > 16, CUDA uses tiled cuBLAS statistics and a cooperative active-set solver for both input formats. Resident and bootstrap maps share 64 MiB of scratch. Streamed maps allow up to 128 MiB of compute scratch and 512 MiB of Q statistics, with free-VRAM guards. Curvature stays fresh. Larger K still increases compute cost, especially for the quadratic solves.
The defaults are --threads 1, --seed 42, --iter 1000 and --tole 1e-10.
--threads caps CPU computation, including BLAS and GPU host copies.
The optimizer scales the tolerance by observed genotypes or informative
likelihood triplets.
Check the log for convergence. Run fastmixture2 --help for the full CLI.
Beagle cache
A cache avoids decompressing the Beagle file again for each K or seed:
fastmixture2 --beagle cohort.beagle.gz --K 5 --threads 8 \
--gl-cache cohort.gl.npy --out cohort.gl
The cache stores three normalized float32 likelihoods per sample and variant,
using about 12 × variants × samples bytes. An invalid or outdated cache is
rebuilt. The cache is optional.
Supervised estimation
Use known reference assignments to fix their Q rows while estimating P and the Q rows of unassigned samples:
fastmixture2 --bfile cohort --K 5 --threads 8 \
--supervised populations.txt --out cohort.supervised
Supply one label per sample in input order: 1 through K for reference
populations, or 0 for an unassigned sample. At least one reference sample is
required. Include IDs so the program can check sample order:
FID IID POP
family1 sample1 1
family2 sample2 0
A one-column label file also works, but sample order cannot then be checked. For Beagle input, use each sample label as both FID and IID.
Projection
Given reference allele frequencies, estimate Q for new samples while keeping P fixed:
fastmixture2 --bfile new_samples --K 5 --threads 8 \
--projection reference.P --out new_samples.projected
An annotated P matrix lets the program check marker order and alleles:
SNP A1 A2 POP1 POP2 POP3 POP4 POP5
rs1 A G 0.02 0.08 0.15 0.04 0.10
Marker IDs and order must match. Swapped and strand-complemented alleles are
handled automatically. A/T and C/G variants are rejected by default. Use
--allow-ambiguous only when both panels share a strand convention. Plain
numeric P matrices also work, but their marker and allele alignment cannot be
checked. Use --write-info when creating an annotated reference P matrix.
Supervision and projection also accept --beagle and --gpu.
Cross-validation
To compare K values, use the same seed and number of folds. Lower scores are better:
fastmixture2 --bfile cohort --K 5 --threads 8 --seed 42 --cv 5 --out cohort.cv
CV works with either input format in unsupervised mode. By default, each fold
starts from the full-data fit, so held-out entries have influenced its starting
point. Use --exact-cv to initialize each fold from its training entries.
Use --K 1 as a pooled-frequency baseline for CV verification. Q is all ones,
and initialization skips SVD/ALS.
PLINK CV reports one-half binomial deviance. Beagle CV withholds complete
triplets and reports mean held-out negative log marginal likelihood over
nonuniform triplets. Missing genotypes are excluded from PLINK CV. The log
identifies folds that did not converge. Adjust fold tolerance with --cv-tole.
With --gpu, refits run on CUDA. Exact CV initialization remains on CPU.
Bootstrap uncertainty
Estimate Q standard errors by resampling blocks of neighboring SNPs:
fastmixture2 --bfile cohort --K 5 --threads 8 \
--bootstrap 200 --bootstrap-block 1500 --out cohort
--bootstrap defaults to 200 replicates. Each replicate starts from the
full-data fit and takes up to three weighted SQP/ZAL iterations with EM rescue.
Use --bootstrap-iter for longer refits. Add --bootstrap-tole to stop at a mean
likelihood gain per informative entry, within that iteration limit. The log
reports refit termination. Short refits give a local estimate of uncertainty.
For PLINK input, blocks stay within chromosomes. Without --bootstrap-block,
block lengths average 10 cM using BIM genetic-map spans. Set a block length in
SNPs when map positions are absent or zero. Beagle input always requires
--bootstrap-block and treats the marker stream as one segment.
Add --gpu for CUDA refits. Projection errors are conditional on the supplied
P matrix. Supervised reference samples have zero Q uncertainty. Bootstrap and
CV must be run separately.
Checkpointing
Save accepted estimates and resume an interrupted CPU or GPU fit:
fastmixture2 --bfile cohort --K 5 --threads 8 --checkpoint run.ckpt --out cohort
fastmixture2 --bfile cohort --K 5 --threads 8 --resume run.ckpt --out cohort
Keep the same input, supervision and projection files when resuming.
Output
For --out cohort --K 5 --seed 42:
| File | Contents |
|---|---|
cohort.K5.s42.Q |
Ancestry proportions, one row per sample |
cohort.K5.s42.P |
Allele frequencies, one row per variant |
cohort.K5.s42.Q_se |
Q standard errors when bootstrap is requested |
cohort.K5.s42.log |
Settings, likelihood, convergence and CV/bootstrap summaries |
Rows follow input order and columns correspond to components. Use
--write-info for headers and sample or variant IDs, or --no-freqs to omit
P. Projection does not write P. For PLINK, P is the frequency of BIM A1.
For Beagle, it is the frequency of allele2.
Q and Q_se contain N x K values, and P contains M x K values. Matrices use ten decimal places. The log records export counts and full-precision likelihoods before output rounding. Console likelihoods use six decimal places. Numbers have no thousands separators.
Outputs, checkpoints and caches use standard file permissions controlled by your umask.
The log distinguishes convergence, iteration limits, stalled optimization and numerical failure. Unsuccessful fits retain the best accepted parameters.
Parallel jobs should use distinct output prefixes. Build each likelihood cache with one job, then reuse it across fits, or use a separate cache path per job. fastmixture2 does not create filesystem locks or require private lock directories.
Authors and license
Lisa Thunegard and Jonas Meisner. Developed at MeisnerLab and distributed under the GNU General Public License v3.0.
Metadata
Release files for fastmixture2 2.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| fastmixture2-2.0.3.tar.gz | 280.6 kB | With provenance | Details for fastmixture2-2.0.3.tar.gz |
Built distributions (wheels)
Total release size: 35.0 MB
Release files / fastmixture2-2.0.3.tar.gz
| Download URL | fastmixture2-2.0.3.tar.gz |
|---|---|
| Size | 280.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7d615ccf1e72990972f2026b41e5184ed0eebb8fea7da57de163907379a55b43
|
|
BLAKE2b-256 checksum How to use checksums |
5fb25393e28211693d2f66574a2395db4a2b9a6b410585e8074012b81c2544a8
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastmixture2-2.0.3-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.5 MB |
| Tags | CPython 3.14 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
7ee6076f69c30ecf32fcaf32d4286f250790302bf09b6be6f6a7d88f8a5812dd
|
|
BLAKE2b-256 checksum How to use checksums |
e0601d99fc806666c7ae0299e6bcdc956862fd71745f38d7fc63f80446dc9009
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | fastmixture2-2.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.2 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
772ae8493fca83009015cfd163409b1cbcfec8c1ae10f1eeb0672098c0bc55ad
|
|
BLAKE2b-256 checksum How to use checksums |
f42a36c57fe7cc80e051fddb6d5be475513fa49f728437bab0e986e4ff41249c
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp314-cp314-macosx_14_0_x86_64.whl
| Download URL | fastmixture2-2.0.3-cp314-cp314-macosx_14_0_x86_64.whl |
|---|---|
| Size | 988.1 kB |
| Tags | CPython 3.14 macOS 14.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
0256ad11c507f492c82a367c2faf62e6b7dc7cb88035b9d7c4da18b9226262e5
|
|
BLAKE2b-256 checksum How to use checksums |
12ffd64037914c8e052103eb72ccb4879bffc1fff0778708407686e4c10f18d3
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp314-cp314-macosx_14_0_arm64.whl
| Download URL | fastmixture2-2.0.3-cp314-cp314-macosx_14_0_arm64.whl |
|---|---|
| Size | 868.5 kB |
| Tags | CPython 3.14 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
2d70be32c0183d02af934018cc332fe62af14823057e68a2085ec11121f5f0d8
|
|
BLAKE2b-256 checksum How to use checksums |
75ce8f852d685a61ec52d3d7f3cb293218044c3098260e1b6b47a501d898ffe1
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastmixture2-2.0.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.6 MB |
| Tags | CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
1d08f1adeb5b5b9b7b4f56c39a0635804e63a7e239cef42a8a1f36c430f8a6c9
|
|
BLAKE2b-256 checksum How to use checksums |
77e7aae3dbfac8eb607d53af09983c3f60d1fb0605bf12715efa6bf03ed86413
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | fastmixture2-2.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.2 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
a3ec29e19eba6b1f8bf82d48d5ffa8f51f45fed560e0640df05bd335934f44e1
|
|
BLAKE2b-256 checksum How to use checksums |
8f1b475ac27a2320e717db9d55f50c2d818393d2c61bd34def649112c8e6dd23
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp313-cp313-macosx_14_0_x86_64.whl
| Download URL | fastmixture2-2.0.3-cp313-cp313-macosx_14_0_x86_64.whl |
|---|---|
| Size | 987.7 kB |
| Tags | CPython 3.13 macOS 14.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
c3cd904589a32cc0b18265fd7a4142da4ecda0e00bdf42750110add1a2f731d5
|
|
BLAKE2b-256 checksum How to use checksums |
9af9b350cc3651e69ecb4c1a12c032cdde69d30dc65225c34d96f7ba9418a72b
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp313-cp313-macosx_14_0_arm64.whl
| Download URL | fastmixture2-2.0.3-cp313-cp313-macosx_14_0_arm64.whl |
|---|---|
| Size | 866.5 kB |
| Tags | CPython 3.13 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
58f6218aa833db6dca158c0aa21bce546c3fc6b509c440665cd1dbce104a287a
|
|
BLAKE2b-256 checksum How to use checksums |
5a03fcdf5ca7251dc3631c043819efaa526bc4c731a04824471f5da56814307c
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastmixture2-2.0.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.6 MB |
| Tags | CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
b1357c60c187e8902f7e41c4666cf1ac334e47e2ffb2f9a9c2c39ef61aa1d216
|
|
BLAKE2b-256 checksum How to use checksums |
010d96b68955dbb0e3fb0f500ab4fb5328621f03d47f48c0b1703fcb5c9dc6ad
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | fastmixture2-2.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.3 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
74cf718425973af49c7b171caf8cadd690a6d4af49bfb3d2f7a062b40bdbb353
|
|
BLAKE2b-256 checksum How to use checksums |
e5295d8831e5f7d147b196bdb41f28b63048897dd9560656ba5ac765e0f0d48b
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp312-cp312-macosx_14_0_x86_64.whl
| Download URL | fastmixture2-2.0.3-cp312-cp312-macosx_14_0_x86_64.whl |
|---|---|
| Size | 988.9 kB |
| Tags | CPython 3.12 macOS 14.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
a90f1b3975c816c53498857e4f84fe57156235cd90d8756d93634ea2048cc3bf
|
|
BLAKE2b-256 checksum How to use checksums |
8ad26e69480da1148dbf2e8be437b3d93d77ea524b95dbae92aa19bf76f3a5e0
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp312-cp312-macosx_14_0_arm64.whl
| Download URL | fastmixture2-2.0.3-cp312-cp312-macosx_14_0_arm64.whl |
|---|---|
| Size | 870.0 kB |
| Tags | CPython 3.12 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
626a60d842efd9b092638bd1dbb2651276ab2f086a5a161aae5aadb2d976faf6
|
|
BLAKE2b-256 checksum How to use checksums |
becfe62d754b931adc6b2b905f6e79ed8838f5bc021a8b60ef3d69a3e790dc68
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastmixture2-2.0.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.6 MB |
| Tags | CPython 3.11 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
38ea202f7d9e0d6150f2fefdbdcfd046664f77a8d3159d60141931161578e78d
|
|
BLAKE2b-256 checksum How to use checksums |
b67596ce78886f3f74ed6b4850d0c3e017ad42ba326c01f5d0ec0a95e1706f7e
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | fastmixture2-2.0.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.3 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
3c6f55d342467152fa7538bdd2083cc45f72290033b513eb5a485a3b16b9dc2b
|
|
BLAKE2b-256 checksum How to use checksums |
f5dc82b7efb91937951ba744833f125dd4976cb4ae974c880a6586e0c183155e
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp311-cp311-macosx_14_0_x86_64.whl
| Download URL | fastmixture2-2.0.3-cp311-cp311-macosx_14_0_x86_64.whl |
|---|---|
| Size | 984.2 kB |
| Tags | CPython 3.11 macOS 14.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
3f1efa08ad1de948b79ed04d3a35ff635e370566a786d9ed2de9cdee8508c5e3
|
|
BLAKE2b-256 checksum How to use checksums |
c4d62b8769ffa460d3a44ea9adb49674909fe0d96dae2dfd822f40f89eaefb03
|
| 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 Oct 18, 2026.
Transparency logRelease files / fastmixture2-2.0.3-cp311-cp311-macosx_14_0_arm64.whl
| Download URL | fastmixture2-2.0.3-cp311-cp311-macosx_14_0_arm64.whl |
|---|---|
| Size | 870.0 kB |
| Tags | CPython 3.11 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4499846c82486aa9ba413879d4d22fe1a4d21f9e4cba394dd9c4c197692e203e
|
|
BLAKE2b-256 checksum How to use checksums |
0403ce9a6795fcd3d9c4114215370795859703167156c00f34c9cc583b172065
|
| 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 Oct 18, 2026.
Transparency logSecurity for fastmixture2 2.0.3
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.
Full provenance
All 17 files in this release have been uploaded with provenance metadata.
Attestation for fastmixture2-2.0.3.tar.gz
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 Oct 18, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.