Skip to content

Physcraper: Automated phylogenetic updating #26

Description

@snacktavish

Submitting Author: Emily Jane McTavish (@snacktavish)
All current maintainers: Emily Jane McTavish (@snacktavish), Luna L. Sanchez Reyes (@LunaSare)
Package Name: Physcraper
One-Line Description of Package: Automated phylogenetic updating
Repository Link: https://github.com/McTavishLab/physcraper
Version submitted: 0.55
Editor: @NickleDave
Reviewer 1: @bpucker
Reviewer 2: @leomrtns
Archive: DOI
JOSS DOI: N/A
Version accepted: v 1.0
Date accepted (month/day/year): 09/14/2021


Description

  • Include a brief paragraph describing what your package does:

Physcraper is an open‐source, command-line Python program that automatizes the update of published
phylogenies by enriching underlying gene alignments with public DNA sequence data, and linking taxonomic information across databases.

Scope

  • Please indicate which category or categories this package falls under:
    • Data retrieval
    • Data extraction
    • Data munging
    • Data deposition
    • Reproducibility
    • Geospatial
    • Education
    • Data visualization*

* Please fill out a pre-submission inquiry before submitting a data visualization package. For more info, see this section of our guidebook.

  • Explain how the and why the package falls under these categories (briefly, 1-2 sentences):

This package retrieves data from GenBank (https://www.ncbi.nlm.nih.gov/genbank/), the OpenTreeofLife (www.opentreeoflife.org), and TreeBase (www.treebase.org/), and links these datasets together to incorporate new sequence data into evolutionary estimates. Physcraper also provides a framework for comparison of published phylogenies with their updated versions, by using the conflict API of the Open Tree of Life project.

  • Who is the target audience and what are scientific applications of this package?

Physcraper can be used by the nonspecialist, as a tool to generate phylogenetic hypotheses based on already available expert phylogenetic knowledge.
Phylogeneticists and taxonomic group specialists will find it useful as a tool to facilitate molecular dataset gathering and comparison of alternative phylogenetic hypotheses.

  • Are there other Python packages that accomplish the same thing? If so, how does yours differ?

The closest analogue in python is PyPhlawd https://fephyfofum.github.io/PyPHLAWD/.
This approach differs from other tools (PyPhlawd, Supersmart) automatize the assembly of DNA alignments from the GenBank database for phylogenetic reconstruction, in that Physcraper leverages existing homology statements in the form of alignments and existing phylogenetic trees to select appropriate loci and improve inference.
Another key feature of Physcraper is linking of taxonomic identifiers across databases including NCBI, GBIF and OpenTree of Life which provides easy interoperability with those resources, and the ability to easily compare relationships between new inferences and existing taxonomy and previously published studies.

  • If you made a pre-submission enquiry, please paste the link to the corresponding issue, forum post, or other discussion, or @tag the editor you contacted:

No pre-submission inquiry

Technical checks

For details about the pyOpenSci packaging requirements, see our packaging guide. Confirm each of the following by checking the box. This package:

  • does not violate the Terms of Service of any service it interacts with.
  • has an OSI approved license
  • contains a README with instructions for installing the development version.
  • includes documentation with examples for all functions.
  • contains a vignette with examples of its essential functions and uses.
  • has a test suite.
  • has continuous integration, such as Travis CI, AppVeyor, CircleCI, and/or others.

Publication options

JOSS Checks
  • The package has an obvious research application according to JOSS's definition in their submission requirements. Be aware that completing the pyOpenSci review process does not guarantee acceptance to JOSS. Be sure to read their submission requirements (linked above) if you are interested in submitting to JOSS.
  • The package is not a "minor utility" as defined by JOSS's submission requirements: "Minor ‘utility’ packages, including ‘thin’ API clients, are not acceptable." pyOpenSci welcomes these packages under "Data Retrieval", but JOSS has slightly different criteria.
  • The package contains a paper.md matching JOSS's requirements with a high-level description in the package root or in inst/.
  • The package is deposited in a long-term repository with the DOI:

Note: Do not submit your package separately to JOSS

Are you OK with Reviewers Submitting Issues and/or pull requests to your Repo Directly?

This option will allow reviewers to open smaller issues that can then be linked to PR's rather than submitting a more dense text based review. It will also allow you to demonstrate addressing the issue via PR links.

  • Yes I am OK with reviewers submitting requested changes as issues to my repo. Reviewers will then link to the issues in their submitted review.

Code of conduct

P.S. Have feedback/comments about our review process? Leave a comment here

Editor and Review Templates

Editor and review templates can be found here

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions