Draft release notes for v2.0
git log --oneline v1.3..latest
Major changes for v2.0
With this v2.0 release, we've fixed several significant bugs, added thorough documentation, added several major new features and a variety of scripts, cleaned up the code base a fair bit, decreased memory usage by about 25%, and added many tests!
If you've been using spacegraphcats v1.x, the command line has changed - the main difference is that you now must specify at least one target before the config file. That is, instead of
python -m spacegraphcats <config file> <target> [<more targets>...]
you now run
python -m spacegraphcats <target> <config file> [<more targets>...]
We don't have a migration guide per se, but you can see the set of changes for the base pipeline in our paper here.
Please note that the file formats and locations have changed, so you'll need to rebuild any and all of your indexes.
Major new features:
- add paired read indexing and retrieval (#344, #356)
- improve BCALM input handling & sorting; reduce memory usage ~25% (#310)
Bug fixes:
- Fix pendant removal bug #299 (#310)
- Fix assignment bug in rdomset.domination_graph (fixes #390) (#394)
Major refactoring and new internal functionality:
- support randomizing unitig order via config parameter. (#391)
- handle duplicate hashes in input cDBG. (#375)
- add shadow annotations to support --shadow-prefix (#365)
- Make default spacegraphcats interface use the
clickAPI (#353) - use contigs sqlite DB, rather than contigs.fa.gz, for contig retrieval (#345, #350, #361)
- remove python 2 support (#328)
- add default config via
defaults.conf(#410)
Documentation enhancements:
- add documentation and mkdocs site for spacegraphcats (#392)
Refactoring and cleanup:
- relocate cDBG files to cDBG directory (#407)
- store ksize in MPHF index (#406)
- properly close output files in bcalm_to_gxt (#402)
- update rule make_contigs_kmer_index with contigs.sizes output (#401)
- update sourmash version requirements (#395)
- remove bcalm install test (#396)
- rename bcalm_to_gxt2 to bcalm_to_gxt (#397)
- update sourmash versions in
environment.yml(#367, #385, #389) - Update test markers for pytest (#386)
- Update dib-lab software dependencies; fix warnings (#385)
- update citation info (#381)
- use less yield, more memory (#361)
- adjust output messages (#359)
- move tests under tests/ (#343)
- add json2yaml script
- update tests to include buggy behavior
- add some shorter test files based on twofoo; automate tests
- ci: add flake to tests, format with black, and add precommit hooks (#326)
- chore: update click (#327)
- ci: switch to github actions, fix some linting issues (#323)
- Fix catlas checkpointing (#412)
- add thread/cores parameter to bcalm in the Snakefile (#415)
editing here https://hackmd.io/jpNLHzl9SWqOuFFXu3N44A