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, with subset likelihood refinement for large panels.
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 use AVX2 on supported x86-64 CPUs and NEON on ARM64, including Apple Silicon:
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 one or more ordered prefixes 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.
Per-chromosome inputs are fitted jointly without creating a merged BED:
fastmixture2 --bfile chr{1..22} --K 5 --threads 8 --out cohort
The shell expands chr{1..22} in chromosome order. Explicit prefixes also work,
such as --bfile chr1 chr2 chr3. All FAM files must have identical FID/IID pairs
in the same order. Marker rows, including annotated P output, follow the supplied
file order. The files remain memory-mapped, with an additional native address
per marker (8 bytes on 64-bit systems) and bounded transfer tiles. This works
with CPU, CUDA, supervised estimation, projection, CV, bootstrap and checkpoints.
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 --restarts N to try N additional restart attempts in unsupervised mode (default 0).
Each starts from the original finished fit, permutes Q columns while retaining P, and
jointly refines a fresh genome-wide 50,000-SNP subset. Smaller panels use all SNPs.
Larger panels then project P and refit the full data. Only full-data improvements are
retained. This works with both input formats on CPU and CUDA, uses --seed,
and keeps the same --iter and --tole per stage. CV and bootstrap retain their
usual refit settings.
At K = 1 it has no effect.
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, unsupervised initialization uses 10 SVD power iterations on all SNPs up to 50,000, or a genome-wide 50,000-SNP subset otherwise. Larger panels refine subset Q/P with SQP/ZAL, then fit full-marker P by least squares at fixed Q and retain the refined subset rows. This applies to both input formats, including missing genotypes. Panels up to 50,000 SNPs proceed directly from SVD/ALS to full-data refinement, without a duplicate subset fit or projection. For PLINK, subset refinement is skipped if any sample has no observed subset genotypes. Exact CV folds skip subset likelihood refinement.
Subsets exceeding 512 MiB on CPU or 256 MiB on CUDA are built in bounded blocks
into a temporary memory-mapped file. CUDA streams the subset when it does not
fit in VRAM. Temporary files use TMPDIR, which can point to disk-backed scratch
storage.
Refinement uses safeguarded SQP/ZAL with EM/QN rescue when needed, for both input formats and all modes. CPU refinement uses float64. CUDA uses mixed SQP statistics before final float64 refinement. Parameters, constrained solves, EM/QN and likelihood checks stay in float64. EM/QN runs on CUDA for both resident and streamed input. PLINK rescue falls back to CPU if a CUDA allocation fails.
Workspaces use bounded blocks. Input storage, Q, P and optimizer history are additional allocations that grow with panel size and K.
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. --iter and --tole apply to each refinement stage.
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.
With --restarts, checkpoints retain the best full-data fit. Resuming runs the
requested number of additional restarts after the resumed fit.
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.5
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.5.tar.gz | 318.7 kB | With provenance | Details for fastmixture2-2.0.5.tar.gz |
Built distributions (wheels)
Total release size: 36.0 MB
Release files / fastmixture2-2.0.5.tar.gz
| Download URL | fastmixture2-2.0.5.tar.gz |
|---|---|
| Size | 318.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
065c1729dfbae75c5310f4d522ba0105066c16b927a4e2b66f049b7879f935c4
|
|
BLAKE2b-256 checksum How to use checksums |
3b84d1988b5ff49abde9b97e793b07375b58cd9733d0f047cfb14431234defb3
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastmixture2-2.0.5-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.6 MB |
| Tags | CPython 3.14 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
9a18ac87f118f19807c042f57632b8c0c676c447fdcf816118a7210ba990bf76
|
|
BLAKE2b-256 checksum How to use checksums |
a30e420e32c100bc2e0043e91b2d310a5b85cb0b3be82cb7cea088fd3677265e
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | fastmixture2-2.0.5-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.3 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
832f28b9ae9bf4482704f96663a35767064bba126fbbcd0d740ad28b695dd03b
|
|
BLAKE2b-256 checksum How to use checksums |
6cc2d2cefaa13e4eeb26c3692c7cc46c5d3df6f14d660663551a02a4b22496ff
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp314-cp314-macosx_14_0_x86_64.whl
| Download URL | fastmixture2-2.0.5-cp314-cp314-macosx_14_0_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.14 macOS 14.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
9c20f33c34df199b7730decec16bb594f0d21556c493e8493472e27ed732095d
|
|
BLAKE2b-256 checksum How to use checksums |
14668a49dac66816b2169e0a9ecffdffbc0c2550a40446d2b1b223fb59f37658
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp314-cp314-macosx_14_0_arm64.whl
| Download URL | fastmixture2-2.0.5-cp314-cp314-macosx_14_0_arm64.whl |
|---|---|
| Size | 895.6 kB |
| Tags | CPython 3.14 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
0909b1491d9dad747eaeb356e53f5dcae3e86d69ef6ac7548ce5ab32c673051c
|
|
BLAKE2b-256 checksum How to use checksums |
c483040aa2b947af2602ed28edda3fddc80f2e67bf69583f5379df948e163ca0
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastmixture2-2.0.5-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.7 MB |
| Tags | CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
327e09816d43a7b31a6d921d5afc51af77e4bee78beac0a2ad89141c6ccb2a38
|
|
BLAKE2b-256 checksum How to use checksums |
00781c953afddd5c3a311d4095508dbb23db7c6aa698d1da489b953bb70fcf67
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | fastmixture2-2.0.5-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.3 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
7b5262ed150a1fe652322ad8e3bc0c8c5b205a6a6a3bdd07b242971d6f1066d6
|
|
BLAKE2b-256 checksum How to use checksums |
632cb2a2ea35ce82b4a4db5027888b8661dfa92dbfe9ed520d35cb1dc6fb4e05
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp313-cp313-macosx_14_0_x86_64.whl
| Download URL | fastmixture2-2.0.5-cp313-cp313-macosx_14_0_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.13 macOS 14.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
48ad6508baaf4bcb3c3998ed1bb1b59e83bfea9c59763a0081fbdabefcf26758
|
|
BLAKE2b-256 checksum How to use checksums |
baaba24380428c304e441346be46310f602b311f89f4df7888e0a39a5ffc262f
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp313-cp313-macosx_14_0_arm64.whl
| Download URL | fastmixture2-2.0.5-cp313-cp313-macosx_14_0_arm64.whl |
|---|---|
| Size | 892.9 kB |
| Tags | CPython 3.13 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
974be6aed183adef4620314dfbe17cb321873a748fd9a5656af64e6173779f61
|
|
BLAKE2b-256 checksum How to use checksums |
39387a69279c062dee750e4785b97996e1f8d47de245da0d0f979a5919b356c9
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastmixture2-2.0.5-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.7 MB |
| Tags | CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
acbc3dff1f118f079c9eeb1a4c356c5fce848788e82a0f49a312c7aa634d125d
|
|
BLAKE2b-256 checksum How to use checksums |
af306fb1f274bece04e6224093b2343ac5796afc4f8512da16168aee92e4ea66
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | fastmixture2-2.0.5-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.4 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
548dfb553b03c834dfb47cffbd4732a245112742403a80df86b32845256011bd
|
|
BLAKE2b-256 checksum How to use checksums |
513ba63774d8a4f4c349b2d16d2c4e998a47ac31430001422e5e821683a43110
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp312-cp312-macosx_14_0_x86_64.whl
| Download URL | fastmixture2-2.0.5-cp312-cp312-macosx_14_0_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.12 macOS 14.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
9587825cd12594f25dd88c94430e2c8e8678efffe1aeea348a494c73c5de1464
|
|
BLAKE2b-256 checksum How to use checksums |
ec3404c4b4cd3027fb4df3cfb7ab84697c15835e94c325084c813ffc6da75645
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp312-cp312-macosx_14_0_arm64.whl
| Download URL | fastmixture2-2.0.5-cp312-cp312-macosx_14_0_arm64.whl |
|---|---|
| Size | 895.5 kB |
| Tags | CPython 3.12 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
9f8fc108df06f5812a2827db8d85918dd60f4dd206b107ecee7ee9b02433889a
|
|
BLAKE2b-256 checksum How to use checksums |
ac989279d78fc166cd35651e4ba78a5853d00d1ba64db4e5a874054d8683c885
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastmixture2-2.0.5-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.7 MB |
| Tags | CPython 3.11 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
c6eae1e264d21ec93f16f8374cc4c87b3f84fdc762a675ebff5878077963be6f
|
|
BLAKE2b-256 checksum How to use checksums |
c178a647a871e447d1da0282f4e063cd94b3911da78c631f3f4e96f4cad6fae8
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | fastmixture2-2.0.5-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.4 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
fb2eaa848c4c4317e159bc41a5492e7a5e4d9993294847257b248f88b076d23e
|
|
BLAKE2b-256 checksum How to use checksums |
fa228683c701f16bf6c918748671d64b46483308c529e5221b787833f1b8ec82
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp311-cp311-macosx_14_0_x86_64.whl
| Download URL | fastmixture2-2.0.5-cp311-cp311-macosx_14_0_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.11 macOS 14.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
8c93c0a3baf8f642d90f8607ad60c459a7978e7fb7dbfe3e463be909d525190e
|
|
BLAKE2b-256 checksum How to use checksums |
f588de097021378e709d14bfc69ba95b5c2184b3afd6e4306d10b81c1d737db7
|
| 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 27, 2026.
Transparency logRelease files / fastmixture2-2.0.5-cp311-cp311-macosx_14_0_arm64.whl
| Download URL | fastmixture2-2.0.5-cp311-cp311-macosx_14_0_arm64.whl |
|---|---|
| Size | 895.3 kB |
| Tags | CPython 3.11 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
3998ea01b80b8c2982b0d041cd629df00fd5d16f2792759f4736c6c9b10cc0f9
|
|
BLAKE2b-256 checksum How to use checksums |
86cef188cbfd429c605a2f6af70866b75c098c10e09825ee50d55014b5d34404
|
| 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 27, 2026.
Transparency logSecurity for fastmixture2 2.0.5
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.5.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 27, 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.