check_dir now uses an actual write test instead of os.access, fixing
false "Cannot write to directory" errors on NFS-mounted filesystems common
in HPC environments. Thanks to @talasjudit for the detailed report and
suggested fix. (#32)
last-updated field in scheme info JSON is now capped at 2024-12-31 when
running with --no-auth, accurately reflecting the data cutoff date for
unauthenticated access. (#31)
Removed the legacy database_version.txt file from the scheme directory.
Scheme metadata is now stored exclusively in {scheme}_info.json.
(#11)
New mlstdb purge command for removing schemes, STs, or individual alleles
from the local database, with automatic BLAST rebuild afterwards.
Purge an entire scheme: mlstdb purge -s salmonella
Purge a specific ST: mlstdb purge -s salmonella --st 3
Purge a specific allele: mlstdb purge -s salmonella -a aroC:1
Batch purge across multiple schemes from a YAML config file: mlstdb purge -c purge_config.yaml
Before removing a ST, checks whether its alleles are used by other STs and
warns if so — use --force to override
Before removing an allele, lists all STs that will be affected and prompts
for confirmation
BLAST database is rebuilt once at the end, minimising redundant work
Supports --force to skip all confirmation prompts, and --verbose for
detailed logging
Fixed
Incomplete scheme directories (missing profiles or allele files) are now removed
before BLAST database creation when using --no-auth or when authentication
failures leave partial downloads on disk. A warning lists the affected schemes
and advises re-running with authenticated access. (#29)
Corrected JSON key in {scheme_name}_info.json from "locus" to "locii"
for accurate scheme metadata. (#28)