NIH | National Cancer Institute | NCI Wiki  

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Panel
titleContents of this Page
Table of Contents
minLevel2

How to Contribute

We welcome community contributions to the LexEVS project. Your contributions back to this repository will allow the broader research community to benefit from your work and will allow your enhancements to be integrated with those of others. There are a few guidelines that we ask contributors to follow so that we can have a chance of keeping on top of things.

Getting Started

Make sure you have a Github Account

Multiexcerpt include
MultiExcerptNameExitDisclaimer
nopaneltrue
PageWithExcerptwikicontent:Exit Disclaimer to Include

  • Fork the repository on GitHub to publish any proposed changes.
  • Submit a ticket for your issue at LexEVS Tracker, assuming one does not already exist.
    • If need be create a JIRA account.
    • Clearly describe the issue including steps to reproduce when it is a bug.
    • Make sure you fill in the earliest version that you know has the issue.

Making Changes

Create a topic branch from where you want to base your work.

  • LexEVS source code is found on GitHub
    Multiexcerpt include
    MultiExcerptNameExitDisclaimer
    nopaneltrue
    PageWithExcerptwikicontent:Exit Disclaimer to Include
  • This is usually the master branch.
  •  Only target release branches if you are certain your fix must be on that branch.
  •  To quickly create a topic branch based on master: git checkout -b fix/master/my_contribution master
  •   Please avoid working directly on the master branch.
  •   Make commits of logical units.
  •   Please provide tests and documentation with your changes.
  •   Check for unnecessary whitespace with ``git diff --check`` before committing.
  •   Follow the NCIP Good Practices for Commit Messages
    Multiexcerpt include
    MultiExcerptNameExitDisclaimer
    nopaneltrue
    PageWithExcerptwikicontent:Exit Disclaimer to Include
  •   Start with a one-line summary followed by a blank line followed by a detailed free-form description.

Submitting Changes

  • In general, we require that the OSI-approved `BSD 3-Clause License` be applied to code contributions. In the case of LexEVS the EPL license from Eclipse is applied.
  • Push your changes to a topic branch in your fork of the repository.
  • Submit a pull request to the LexEVS repository in the NCIP organization.
  • Update your JIRA ticket to mark that you have submitted code and are ready for it to be reviewed.

Additional Resources

For help learning Git and Github, see the NCIP Learning Resource s

Multiexcerpt include
MultiExcerptNameExitDisclaimer
nopaneltrue
PageWithExcerptwikicontent:Exit Disclaimer to Include

Community Projects

 

 

<?xml version="1.0" encoding="utf-8"?>
<html>

Getting Source Code

First of all, you need the LexEVS source code on your local drive using SVN.

SVN checkout https://ncisvn.nci.nih.gov/svn/lexevs/Image Removed

The core LexEVS code is located in the base/<version>/trunk directory.
Contributions to LexEVS are located in the contrib directory.

Request To Contribute

Before you start, log in to the VKC LexEVS Code Contribution forum and create a new topic. In this topic please include the following:

  • Name and Organization of Community Code Contributor
  • Knowledge Center Login ID of the Community Code Contributor
  • Clear description of the functions provided by the contributed code and how it functionally fits with the specific tool version it was developed upon. If there are other contributions planned check that those do not conflict with your plans. Be patient, it may take folks a while to understand your requirements.

Deposit Code

Once the proposed changes have been accepted, a new directory (which should include a reference to your organization) will be created in the contrib directory and you will be granted write access. Create projects in your IDE using the LexEVS core code, test code, and the contrib directory. You are now ready to add your new feature to the contrib directory.

When completing your changes in SVN you will need to make sure that:

  • All code is be compatible with Java 1.5 and 1.6.
  • All classes and methods are well documented and have informative Javadoc comments.
  • Code is formatted according to Sun's conventions.
  • Verify contributions pass existing unit tests by providing test logs.
  • New unit tests are provided to demonstrate functionality and support troubleshooting.
  • Release notes are included and contain the disclaimer text.
    A representative from the Vocabulary Knowledge Center will fill out this form on your behalf for NCI.

Building Code

Code you write will be compiled and place into a file called contrib.jar. In order to create the contrib.jar in your working environment you need to

  1. Build the core LexEVS by running the build script found in:
    #:*/base/v5/trunk/lexevs_bda/lbPackager
    #:*or
    #:*/base/v6/trunk/lexevs_bda/Lexevs_build/
  2. Build the contributions code by running the build script found in:
    #:*contrib/trunk

After a successful build, the jar will be located the in contrib/lib directory.

Next Steps

The contribution is now publicly available. Anyone may attempt to access, download, install, and run this code. The Knowledge Center does not obtain responsibility for support of this code. All questions that arise on the contributed code will be sent to the point of contact. If that person is no longer reachable then support will not be able to proceed.

<small>This process was based upon the NCI Community Code Contribution Process.</small>

</html>