# The catalogue of analysis modules that can be installed.
#
# `PoolSeqFlow analysis modules available` and `... modules install <name>` read this file over
# the network, from the repository's default branch. It is NOT part of a release download:
# .gitattributes export-ignores it, so a tarball carries no copy that could disagree with the
# published one. That is the whole point - a module is published on its own timetable, and the
# release it is installed into does not change when one appears.
#
# One row per published module VERSION, tab-separated. Several rows may name one module; the
# newest version whose contract this release speaks is what `install <name>` picks, and naming a
# version installs exactly that one.
#
#   name         the module's name, which is also the directory it installs into
#   version      its own version, independent of any pipeline release
#   contract     the published-table contract it reads. This release speaks the one
#                analysis/modules.nf returns from contractVersion()
#   frame        the oldest analysis/frame.version it runs on, YYYYMMDD.NNN. Copy it from the
#                module's own manifest; a row that leaves it empty is treated as no requirement
#   environment  the oldest PoolSeqFlow release whose analysis environment holds what it needs,
#                X.Y.Z, likewise copied from the manifest
#   url          where the tarball is, unpacking to <name>/ with manifest.json and main.nf in it
#   sha256       the tarball's checksum, which install verifies before unpacking anything
#   summary      one line, shown by `modules available`
#
# `frame` and `environment` are what let one catalogue serve several releases at once. Publish a
# row per version and `install <name>` takes the newest one THIS release can actually run,
# rather than the newest one that exists and then failing when it is first used. They repeat
# what the module's manifest already says, because the choice has to be made before the tarball
# is downloaded.
#
# THE COLUMNS ARE READ BY NAME, out of the header row below, so their order here does not
# matter and a column a release has never heard of is ignored rather than misread. Adding one
# later is therefore safe and needs no layout bump - which is the whole reason to add a column
# rather than overload an existing one.
#
# Adding a module is adding a row. Removing one takes it out of `available` and leaves every
# installation that already has it untouched.
#
# THE TWO VERSIONS BELOW DO DIFFERENT JOBS AND ARE NOT INTERCHANGEABLE.
#
# index-format is the COLUMN LAYOUT, and every wrapper checks it before reading a single row.
# Since the columns are matched by name it is NOT bumped for a new one - that is additive and
# every older release simply ignores it. It is for a change that cannot be read at all: a
# required column renamed or removed, or one whose meaning changed under the same name. Bumping
# it stops every already-published release from reading this file, so it is close to a last
# resort.
#
# index-version is WHAT IS IN THE CATALOGUE, in the same YYYYMMDD.NNN form the frame and the
# modules use. Bump it on every publish. Nothing is refused on it - a release must be able to
# read a catalogue newer than itself, which is the whole point of publishing modules
# separately - so it is reported and recorded, never compared.
#
#!index-format: 1
#!index-version: 20260910.011

name	kind	version	contract	frame	environment	url	sha256	summary
basicstats	module	20260910.001	freq-1	20260908.003	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/basicstats-20260910.001.tar.gz	f154f07cbcc66abab0b330fb1a4d0ce55dfd7db0625d37f9840e6d083039883b	site counts, depth, effective pool size and gene diversity, per pool
association	module	20260910.001	freq-1	20260908.003	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/association-20260910.001.tar.gz	19b68feb0ca7879143e88b2a6e206b663e7d1bb9935d1e98fa42dcbdc7704913	each allele's frequency regressed on a phenotype measured per pool, with a permutation p
mds	module	20260910.001	freq-1	20260908.003	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/mds-20260910.001.tar.gz	96797656267316ff5971981c8d940ab6ddc1fa34800eed6312a1c7ded1d5facf	the pools placed by Nei's minimum distance, on a classical MDS (principal coordinates analysis)
n_eff	library	20260910.002		20260910.001	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/n_eff-20260910.002.tar.gz	2e00ba744d822fa0757b0420633933c5363dc789522fe38e0dd55de14994c671	effective pool size at a site and over a pool, and the harmonic mean it needs
chunk_ranges	library	20260910.002		20260910.001	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/chunk_ranges-20260910.002.tar.gz	f07ff963e7bc1bf18a00f11ac94c2b8d43e9d0bcc9b960bf2a0977e83257d707	a row count split into contiguous bins for chunked or parallel reading
allele_frequencies	library	20260910.002	freq-1	20260910.001	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/allele_frequencies-20260910.002.tar.gz	5acc9666a1252dd30af0d679a259a380f21848bb618fb7e8bcc769a12a1e080e	per-site allele frequencies parsed from the depth table, vectorized R with a compiled path
site_diversity	library	20260910.002	freq-1	20260910.001	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/site_diversity-20260910.002.tar.gz	2f29207471cb902d8e763b19279089d3ce6cbf50643e734af34734486bfe0e0b	gene diversity per site, 1 - sum(p^2), vectorized R with a compiled path
nei_distance	library	20260910.002	freq-1	20260910.001	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/nei_distance-20260910.002.tar.gz	219267582b965264f72dc9cf34e6c8260c23db4c0063cc1c9dd8d7d3ce44bdfd	Nei's minimum distance accumulated over sites, combined and averaged, with a compiled path
basicstats	module	20260910.004	freq-1	20260910.001	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/basicstats-20260910.004.tar.gz	629b80eb87cb6d5c02fe5f0b41f2a5e912aa982c18d86f624b196f29d0e857c1	site counts, depth, effective pool size and gene diversity, per pool
association	module	20260910.004	freq-1	20260910.001	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/association-20260910.004.tar.gz	7e38083b9f43077e947cf34ab8b30f31050e8e5997b2b5cc06bdf8c3d04660c7	each allele's frequency regressed on a phenotype measured per pool, with a permutation p
mds	module	20260910.003	freq-1	20260910.001	3.0.0	https://ozankiratli.github.io/PoolSeqFlow/modules-repo/mds-20260910.003.tar.gz	0a3754b917e560921de2c835d2469520664b93105a5a2af13ea44f51a095299a	the pools placed by Nei's minimum distance, on a classical MDS (principal coordinates analysis)
