Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MRG] add 'sourmash signature' signature manipulation utilities. #587

Merged
merged 52 commits into from Jan 8, 2019

Conversation

ctb
Copy link
Contributor

@ctb ctb commented Dec 26, 2018

Provides merge, flatten, rename, intersect, extract, downsample, subtract, import, export, and overlap utilities via sourmash signature subcommands.

PR internal link: sourmash signature documentation updates.

Favorite internal review so far:

"it's grease for bioinformatics! (and all the functionality I never knew i needed in my life)"


Also renames sourmash_lib to sourmash in most of the existing code, as minor cleanup.

Fixes #196 #239 #121 #241.

TODO:

Upon merge:

  • create low hanging fruit issues to add more tests for ksize/moltype selectors, --output, and signatures calculated with --track-abundance.
  • review Python code in sig/__main__.py and extract ideas for new functions for the MinHash class - flatten, subtract, downsample conversion, etc, into new issues.

Checklist:

  • Is it mergeable?
  • make test Did it pass the tests?
  • make coverage Is the new code covered?
  • Did it change the command-line interface? Only additions are allowed
    without a major version increment. Changing file formats also requires a
    major version number increment.
  • Was a spellchecker run on the source code and documentation after
    changes were made?

@codecov
Copy link

codecov bot commented Dec 26, 2018

Codecov Report

Merging #587 into master will increase coverage by 0.79%.
The diff coverage is 95.34%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #587      +/-   ##
==========================================
+ Coverage   88.64%   89.43%   +0.79%     
==========================================
  Files          25       27       +2     
  Lines        3786     4193     +407     
  Branches       37       37              
==========================================
+ Hits         3356     3750     +394     
- Misses        430      443      +13
Impacted Files Coverage Δ
sourmash/lca/command_index.py 90.7% <100%> (+0.44%) ⬆️
sourmash/logging.py 96.07% <100%> (-1.93%) ⬇️
sourmash/__main__.py 96% <100%> (+0.16%) ⬆️
sourmash/lca/command_summarize.py 82.6% <100%> (+1.08%) ⬆️
sourmash/commands.py 89.33% <100%> (ø) ⬆️
sourmash/lca/command_rankinfo.py 91.66% <100%> (+1.87%) ⬆️
sourmash/sig/__init__.py 100% <100%> (ø)
sourmash/lca/command_compare_csv.py 93.5% <100%> (+1.29%) ⬆️
sourmash/lca/command_gather.py 84.75% <100%> (+1.21%) ⬆️
sourmash/lca/command_classify.py 86.36% <100%> (+1.13%) ⬆️
... and 8 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 7f00dfe...c08b81a. Read the comment docs.

@ctb ctb added this to Progress in sourmash 2.0 Dec 26, 2018
@ctb
Copy link
Contributor Author

ctb commented Dec 27, 2018

I think this is ready for a preliminary review by folks. @olgabot @taylorreiter @bluegenes any thoughts or comments welcome!

@luizirber while the tests aren't that comprehensive I think the basic command line API is OK, and as these commands are mostly wrappers around MinHash functionality, I'm not too concerned about the tests. I'm sure we'll add some as bugs are discovered, too :).

@luizirber
Copy link
Member

I think this is a good place to put #121 too? Maybe not in this PR, but probably fits into sourmash signature

@ctb
Copy link
Contributor Author

ctb commented Dec 29, 2018

yes, #121 is an excellent addition - can provide import and export both! thx!

doc/command-line.md Outdated Show resolved Hide resolved
@ctb
Copy link
Contributor Author

ctb commented Jan 7, 2019

Hi @luizirber I think this is ready for code review!

Your opinion on sourmash sig info vs sourmash sig describe or about is solicited!

@ctb ctb changed the title [WIP] add 'sourmash signature' signature manipulation utilities. [MRG] add 'sourmash signature' signature manipulation utilities. Jan 7, 2019
@ctb
Copy link
Contributor Author

ctb commented Jan 7, 2019

all tests passed!!!!

Copy link
Contributor

@bluegenes bluegenes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@ctb ctb merged commit 1d1f61b into master Jan 8, 2019
@ctb ctb deleted the add/signature_subcommand_2 branch January 8, 2019 22:38
@luizirber luizirber moved this from Progress to Done in sourmash 2.0 Jan 11, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

4 participants