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

Evaluate module standards for tripal core #49

Open
bradfordcondon opened this issue Jan 15, 2019 · 2 comments
Open

Evaluate module standards for tripal core #49

bradfordcondon opened this issue Jan 15, 2019 · 2 comments

Comments

@bradfordcondon
Copy link
Contributor

bradfordcondon commented Jan 15, 2019

see:
statonlab/hardwoods_site#469

What needs to be done fro this module for gold standards?

  • This is mostly fields so unit testing is hard.
  • License
  • releases
  • Do any of the fields need to be customizable?
  • Query, QueryOrder, elementInfo, web services...
@bradfordcondon bradfordcondon self-assigned this Jan 15, 2019
@bradfordcondon
Copy link
Contributor Author

bradfordcondon commented Jan 16, 2019

Tripal module ranking system checklist

Bronze

  • Has a public release that follows Drupal release naming rules.
  • Should install on a Tripal site appropriate for the versions it supports.
  • Defines any custom tables or mviews in the install file (if applicable).
  • Provides Installation and admin instructions README.md (or RTD)
  • Has a license (distributed with module)
  • Adds any needed controlled vocabulary terms in the install file (if applicable)

Silver

  • Follows Drupal code standards (how to measure this?)
  • Use tripal API functions (is this too generic)?
  • Uses the Chado API: Queries Chado using chado_generate_var, chado_expand_var, the ChadoRecord class or chado_xxx_record functions (except for complicated queries).
  • Provides an admin interface to allow for customization

Tripal V3 specific:

  • Uses the TripalField class to add data to pages (if applicable).

Gold

  • Unit testing is implemented using PHPUnit with the TripalTestSuite or something similar.
  • Continuous integrating is setup (e.g. such as with TravisCI).
    • Required: execution of unit tests
    • Optional (but encouraged): code sniffing and testing coverage reports.
  • Project should have a public development branch (following Drupal naming rules) to encourage collaboration and pull requests.
  • Extensive documentation for the module (similar to Tripal User's Guide).

Tripal V3 specific

  • Imports data via Tripal's importer class
  • Tripal 3 fields are
    • Fully compatible with web services
    • The elementInfo function is fully implemented.
    • query and queryOrder functions fully implemented.
  • Web Services uses Tripal's Web Service Classes.

@bradfordcondon
Copy link
Contributor Author

so whats missing:

  • Drupal naming on branches/releases.
  • double check all cvterms are added in the install.
    • the sequence features terms are WIP so might not be present...
  • Unit testing . (too hard for fields!)
  • T3 fields need web services, elementinfo, query, etc implemented

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

No branches or pull requests

1 participant