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

Remove PileupFilter and revamp InputFilters #605

Merged
merged 14 commits into from
Oct 6, 2016
Merged

Remove PileupFilter and revamp InputFilters #605

merged 14 commits into from
Oct 6, 2016

Conversation

arahuja
Copy link
Contributor

@arahuja arahuja commented Oct 4, 2016

This PR:

  • removes PileupFilter files and usage from SomaticStandard
  • Add ReadFilterArgs which has flags to set properties of InputFilters
  • Revamping some of InputFilters to tie in with arg-parsing and removing some defaults
    • Part of this includes having LociParser result in None when no loci are specified and removing the fallback arguments as sometimes this strings were incorrectly specified.
    • Another piece was removing the default InputFilters in a few cases. In 3bcca66 SomaticStandard went from removing duplicate and failed reads to including them because of a default filter argument, so I wanted to avoid that.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.5%) to 79.169% when pulling e27ba66 on read-filters into dfdfea6 on master.

- LociParser → ParsedLoci, removed state+mutation pattern, leaving an
  object that just wraps loci, after we've parsed strings, but before
  we have contig-lengths / a LociSet
  - uses ParsedLociRange and ParsedLociRanges classes, which
    encapsulate "all loci" special-casing.
  - parseLoci method is moved in there, since it's basically a
    constructor for a ParsedLoci.
- removed all non-test calls of unsafe ParsedLoci.result and
  LociSet(String), that assume no contig-lengths are needed because
  provided ranges will be closed.
- changed some callers to reflect that the ReadSets() call now
  integrates building loci and filters in addition to loading
  read-sets.
- move a couple of InputFilters ctors that were only used in tests to
  TestInputFilters
@ryan-williams
Copy link
Member

Looks great, thanks for cleaning all this up.

While reviewing I was inspired to do a further loci-parsing refactor that I'd attempted and failed a few times in the past, but finally cracked this time: #606.

A couple small things in #606 are separable and more like bona-fide tweaks to what is here, but on the whole it's a separate PR and can be reviewed/merged as such.

I opened #606 against this in case you want to merge it in here, but if not you can just merge this and I'll send out #606 as a fresh PR.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.09%) to 78.745% when pulling c3831f4 on read-filters into dfdfea6 on master.

@arahuja arahuja merged commit e66f183 into master Oct 6, 2016
ryan-williams added a commit to ryan-williams/guacamole that referenced this pull request Oct 6, 2016
ryan-williams added a commit to ryan-williams/guacamole that referenced this pull request Oct 6, 2016
@arahuja arahuja deleted the read-filters branch October 7, 2016 17:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

QualityAlignedReadsFilter is wasteful and hurts read/task distribution
3 participants