Khmer Versions Save

In-memory nucleotide sequence k-mer counting, filtering, graph traversal and more

v0.8

10 years ago

89 changed files with 11,223 additions and 6,171 deletions.

New functionality

Sparse graph labeling @camillescott ( sweep-reads-by-partition-buffered.py ) Initial support for Galaxy integration (for normalize-by-median and abund-filter) @mr-c Normalization of arguments across the scripts @camillescott

Note: The default branch on GitHub is now the 'master' branch. Our unmaintained tutorials that install khmer with a plain git clone have a warning added to them and potential user are directed to the khmer-protocols: http://khmer-protocols.readthedocs.org

Notable bugs fixed

load-graph gives erroneous memory estimate #279 @camillescott If loadhash is specified, do not complain about hashsize #278 @RamRS @humberto-ortiz test_Hashbits case sensitivity #265 @luizirber Installation fails: cannot find argparse >= 1.2.1 #258 @mr-c & @standage Bugs found by coverity #256 @camillescott

Minor updates

abundance-dist-single.py, abundance-dist.py, do-partition.py, interleave-reads.py, load-graph.py, load-into-counting.py normalize-by-median.py now exit with return code 1 instead of 255 as is standard. Program arguments that have default values are disclosed @mr-c Developer documentation updates: contribution guidelines, coding standards, code review hints (with checklist). Release instruction completely rewritten. Installation instructions tweaks including specific commands for Debian derivatives and RHEL6. Update to the latest versioneer.py & ez_setup.py The latest version of setuptools is no longer required: version 0.6c11 appears to be just fine. Many code cleanups. Python namespace usage was tidied. Type safety was strengthened in the C++/Python integration. Testing coverage measures the scripts properly.

Known Issues

All of these are pre-existing.

Some users have reported that normalize-by-median.py will utilize more memory than it was configured for. This is being investigated in https://github.com/ged-lab/khmer/issues/266

Some FASTQ files confuse our parser when running with more than one thread. For example, while using load-into-counting.py. If you experience this then add "--threads=1" to your command line. This issue is being tracked in https://github.com/ged-lab/khmer/issues/249

If your hashfile gets truncated, perhaps from a full filesystem, then our tools currently will get stuck. This is being tracked in https://github.com/ged-lab/khmer/issues/247

Paired-end reads from Casava 1.8 currently require renaming for use in normalize-by-median and abund-filter when used in paired mode. The integration of a fix for this is being tracked in https://github.com/ged-lab/khmer/issues/23

A user has reported a floating point exception when running count-overlap.py. There is no workaround at this time. https://github.com/ged-lab/khmer/issues/282

Contributors

@camillescott, @mr-c, @ctb, @luizirber, @RamRS, @humberto-ortiz, and @standage Special thanks to the new contributors!

v0.7.1

10 years ago
  • New script: sample-reads-randomly.py which does a single pass random subsample using reservoir sampling.
  • the version number is now only stored in one place
  • Makefile: new dist, cppcheck, pep8, and autopep8 targets for developers. VERSION is now set by versioneer and exported to C/C++ code.
  • README switched from MarkDown to ReStructuredText format to clean up PyPI listing. Install count badge added.
  • doc/: updates to how the scripts are called. Sphinx now pulls version number from versioneer. C/Python integration is now partially documented. Reference to bleeding-edge has been removed. Release instructions have been clarified and simplified.
  • all python code in khmer/, scripts/, and tests/ should be PEP8 compliant now.
  • khmer/_khmermodule.cc has gotten a once-over with cpychecker. Type errors were eliminated and the error checking has improved.
  • Several fixes motivated by the results of a Coverity C/C++ scan.
  • Tests that require greater than 0.5 gigabytes of memory are now annotated as being 'highmem' and be skipped by changing two lines in setup.cfg
  • warnings about -Wstrict-prototypes will no longer appear
  • contributors to this release are: @ctb, @mr-c and @cswelcher.

v0.6.1

10 years ago
  • Switch to setuptools to run the entire build
  • The various Makefiles have been merged into one inside lib for posterity
  • A new top-level Makefile wraps "python setup.py"
  • argparse.py has been removed and is installed automatically by setuptools/pip
  • setup.py and the python/khmer directory have been moved to the root of the project to conform to the standard layout
  • The project contact address is now [email protected]
  • Due to the new build system the project now easily builds under OS X + XCode
  • In light of the above the installation instructions have been rewritten
  • Sphinx now builds the documentation without warnings or errors
  • It is now easy to calculate code coverage.
  • setup.py is now PEP8 compliant

v0.5

10 years ago

This is the last release using the legacy development system.