Skip to content

v2026.8.6

Pre-release
Pre-release

Choose a tag to compare

@dhoconno dhoconno released this 22 Aug 03:42

Lungfish 2026.8.6

Channel: Preview

Previous versioned release: v2026.8.5

Stable baseline: v2026.8.5

Dependency set: 2026.2

Preview builds are under rapid iterative development. Features may be incomplete, change quickly, or require additional feedback.

Changes since 2026.8.5

This preview carries the test-suite optimization campaign and the correctness fixes it surfaced. User-visible changes:

Correctness and stability

  • Fixed a defect where the genotype viewport's "Save Haplotype Assignment Changes?" confirmation could be presented in contexts with no way to answer it. The dialog now only appears in the interactive app.
  • lungfish ops stats now reports real sub-megabyte Peak RAM values (for example "512 bytes") instead of flooring them to "0 MB".
  • ENA searches now report malformed server responses through the same structured parse error as every other ENA operation, instead of surfacing a raw decoding failure.

Display consistency

  • All byte, count, and duration readouts across the app and CLI now use one shared formatter. Sizes consistently use decimal units with adaptive precision; in a few places (Plugin Manager database sizes, lungfish conda list, lungfish db info) values previously shown as whole binary units now show finer precision (for example "8 GB" becomes "8.59 GB").

Developer and release infrastructure

  • The test suite is reorganized into named tiers (smoke, unit, integration, conformance, full) with a parallel unit tier that runs in under 8 minutes; the full suite remains the stable-release gate. Release channels now run tier-appropriate gates.
  • Test runs no longer open the system browser or present dialogs; live-network and machine-specific tests are uniformly gated.

Verification

  • Full serial suite: 13,535 XCTest + 597 swift-testing tests, zero failures (two load-sensitive classes passed via the gate's isolated serial retry).
  • Unit, integration, and script-level gates green at the release commit.

Dependency versions

The following tables reproduce every current version identity in the bundled
dependency manifest and Package.resolved. Conda identities include their
exact channel, package version, and build string.

Core managed tools

Manifest id Exact package identity
nextflow bioconda::nextflow=26.04.6=h2a3209d_1
snakemake bioconda::snakemake=9.25.2=hdfd78af_0
bbtools bioconda::bbmap=40.02=he046917_0
fastp bioconda::fastp=1.3.6=ha1d0559_0
deacon bioconda::deacon=0.16.0=h314a369_0
samtools bioconda::samtools=1.24=h36b3a25_1
bcftools bioconda::bcftools=1.24=h6bd33b9_2
htslib bioconda::htslib=1.24=hd3c6ec9_0
seqkit bioconda::seqkit=2.13.0=hd5f1084_0
cutadapt bioconda::cutadapt=5.2=py313hf513372_2
trim_galore bioconda::trim-galore=2.3.0=h48b4a6d_0
vsearch bioconda::vsearch=2.31.0=h0448ff9_0
pigz conda-forge::pigz=2.8=hfab5511_2
sra-tools bioconda::sra-tools=3.4.1=h4675bf2_1
ucsc-bedgraphtobigwig bioconda::ucsc-bedgraphtobigwig=482=h1643cc5_0
pysam bioconda::pysam=0.24.0=py310hf7cbfa5_1
openpyxl conda-forge::openpyxl=3.1.5=py312h2a925e6_3

Plugin-pack tools

Pack Manifest id Exact package identity
Read Mapping minimap2 bioconda::minimap2=2.31=h6bd33b9_0
Read Mapping bwa-mem2 bioconda::bwa-mem2=2.3=hda5e58c_0
Read Mapping bowtie2 bioconda::bowtie2=2.5.5=h9e91881_0
Full-Length MHC Genotyping savont bioconda::savont=0.6.3=ha819e4a_0
Full-Length MHC Genotyping blast bioconda::blast=2.16.0=hb260f6e_5
Variant Calling lofreq bioconda::lofreq=2.1.5=py310h9cf5bfa_16
Variant Calling ivar bioconda::ivar=1.4.4=hda5e58c_0
Variant Calling medaka bioconda::medaka=2.2.2=py312h3bb865a_0
Variant Calling clair3 bioconda::clair3=2.0.2=py311h9aa1f4a_0
GATK Core gatk4 bioconda::gatk4=4.6.2.0=py310hdfd78af_1
Phasing whatshap bioconda::whatshap=2.3=py311h1457a19_3
Assembly spades bioconda::spades=4.3.0=hd468e49_1
Assembly megahit bioconda::megahit=1.2.9=h96a01ab_8
Assembly skesa bioconda::skesa=2.5.1=hda5e58c_3
Assembly flye bioconda::flye=2.9.6=py310hba4535a_1
Assembly hifiasm bioconda::hifiasm=0.25.0=h697fd72_0
Multiple Sequence Alignment mafft conda-forge::mafft=7.526=h99b78c6_0
Phylogenetics iqtree bioconda::iqtree=3.1.3=h6cc7423_0
Metagenomics kraken2 bioconda::kraken2=2.17.1=pl5321h158e17b_0
Metagenomics bracken compatibility pin bioconda::bracken=1.0.0=1; fresh installs use source overlay 3.1 with Python 3.11.13, cxx-compiler 1.9.0, and llvm-openmp 21.1.8
Metagenomics esviritu bioconda::esviritu=1.3.3=pyhdfd78af_0
Metagenomics ribodetector bioconda::ribodetector=0.3.3=pyhdfd78af_0
Wastewater Surveillance freyja bioconda::freyja=2.0.3=pyhdfd78af_0

Pipelines

Manifest id Release Immutable revision
taxtriage v3.3.8 e10bfebda32a62711f38a4e23ab03b61725a9675
nf-core-viralrecon 3.0.0 3.0.0

Databases and managed data

Manifest id Current identity
kraken2-standard 20260626
kraken2-standard-8 20260626
kraken2-standard-16 20260626
kraken2-pluspf 20260626
kraken2-pluspf-8 20260626
kraken2-pluspf-16 20260626
kraken2-viral 20260626
kraken2-minus-b 20260626
kraken2-eupathdb46 20230407
esviritu-viral-v3 v3.2.4
ncbi-taxonomy 2025-03
kraken2-special-silva kraken2-special-v1
kraken2-special-greengenes kraken2-special-v1
human-scrubber 20260706v2
deacon-panhuman panhuman-1
deacon-ribokmers bbmap-ribokmers-k31w15

The bootstrap identity is micromamba 2.9.0-0; its Apple Silicon payload is
checksum-verified before use.

SwiftPM resolved packages

Package identity Version Revision
async-http-client 1.36.0 9544287b9416c0bc71e58b9f3aead8dd14b16103
containerization 0.24.5 c3fe889a2f739ee4a9b0faccedd9f36f3862dc29
grpc-swift 1.27.5 6a8927df5a91710b414caba4f8a088dead4633db
sparkle 2.9.6 ac2def288cbff5cfc7df3ffef6abdf45b72bcb0a
swift-algorithms 1.2.1 87e50f483c54e6efd60e885f7f5aa946cee68023
swift-argument-parser 1.8.2 6a52f3251125d74daf04fcbd5e6f08a75d074382
swift-asn1 1.7.1 a9a5efd40eaf558a2bcd48d64b1d1646be686008
swift-async-algorithms 1.1.5 3da39bbc4e687d4192af7c9cf4eab805745a0b9c
swift-atomics 1.3.1 0442cb5a3f98ab802acb777929fdb446bda11a34
swift-certificates 1.19.4 449dbbecd0f31e82b510ada227ca152caa8b5e98
swift-collections 1.6.0 a0cb0954ecb21e4e31b0070e6ed5674e8556685a
swift-configuration 1.2.0 be76c4ad929eb6c4bcaf3351799f2adf9e6848a9
swift-crypto 3.15.1 95ba0316a9b733e92bb6b071255ff46263bbe7dc
swift-distributed-tracing 1.4.1 dc4030184203ffafbb2ec614352487235d747fe0
swift-http-structured-headers 1.7.0 933538faa42c432d385f02e07df0ace7c5ecfc47
swift-http-types 1.6.0 db774a277f60063a32d854f2980299caf06da041
swift-log 1.15.0 3ffafb9722d5d918c614feb496c8789a3b59d222
swift-nio 2.101.3 0b18836bd8b0162e7e17a995a3fbee20ed8f3b2b
swift-nio-extras 1.34.3 88a51340f59cf181ebde888bd1b749296b3ec029
swift-nio-http2 1.45.0 45bdf670248be5f16ec0340e125dca285536f0fb
swift-nio-ssl 2.37.2 d930168b86f46ca51a4bc09c5ca45c1833db8067
swift-nio-transport-services 1.28.0 67787bb645a5e67d2edcdfbe48a216cc549222d5
swift-numerics 1.1.1 0c0290ff6b24942dadb83a929ffaaa1481df04a2
swift-protobuf 1.35.0 9bbb079b69af9d66470ced85461bf13bb40becac
swift-service-context 1.3.0 d0997351b0c7779017f88e7a93bc30a1878d7f29
swift-service-lifecycle 2.12.0 7f9326b0326ff86e3646295ea6e891f68c471c5e
swift-system 1.8.1 869129b7bf4ecc57b97d0193ad29690ca2134750
zstd 1.5.7 f8745da6ff1ad1e7bab384bd1f9d742439278e99
viewinspector 0.10.3 e9a06346499a3a889165647e3f23f8a7b2609a1c

Known issues and compatibility notes

  • Preview and Stable cannot be installed side by side; install the desired
    channel's DMG to switch the one shared application installation.
  • The 20260626 Kraken2 indexes display species-level taxid 3418604 as
    Betacoronavirus pandemicum. Classification identifiers are unchanged, but
    searches or notes relying on the former SARS-CoV-2 display name should be
    checked.
  • The Apple Silicon bioconda Bracken compatibility package has no real driver
    and does not support domain-level profiling through its synthesized
    launcher. Fresh installs receive the managed Bracken 3.1 source build;
    existing working environments are preserved.
  • bioconda::bwa-mem2=2.3=hda5e58c_0 self-reports 2.2.1 because of an upstream
    packaging defect. Lungfish verifies that pin from conda package metadata.