Skip to content

adminion/contributing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 

Repository files navigation

Adminion Contribution Guide

All are encouraged to contribute by way of submitting new Issues and Pull-Requests to help improve the quality of projects in the Adminion org. Please see individual sections below regarding different types of contributions.

Release Strategy

The master barnch is for the bleeding edge of development, the next version. It is used for incubation of breaking changes and new features; therefore has an unstable API: features may be added or removed at any time and may be poorly documented (if at all). Commits directly to master should be avoided in favor of using feature branches or bigfix branches and opening pull requests when the branches have matured.

Once the version on master has matured and the API has become stable, a stable release branch for that major version (v2.x) will be cut from master, the major version released from that branch (v2.x -> v2.0.0) and master will be updated to reflect work on the next semver-major verison (v3.x). Backward-compatible commits from master are cherry-picked into stable release branches (v2.x, v1.x) where appropriate. Minor and patch releases are made from their respective stable branches. (v2.x -> v2.0.1...v2.x -> 2.1.0)

Bugs

If you believe you have found a bug, please create an issue describing the bug, code that reproduces it, and the version of the project you are using. If possible, please provide a pull request to fix or suggest how the bug may be resolved.

Please follow the Pull Request Guidelines.

New Features

Please follow the Pull Request Guidelines.

Breaking Changes

Breaking semver-major changes will only be considered if they dramatically improve stability, performance, and/or usability with minimal code modifications for end-users. Please follow the Pull Request Guidelines.

Pull Request Guidelines

  1. Fork the project repo
  2. Create a new branch from master.
  3. Implement your feature/bugfix in that branch (please provide jsdoc compatible API documentation for new features and don't forget to credit yourself with the @author tag!).
  4. Verify your feature/bugfix passes all of your tests as well as all existing tests or fix them if the tests are the issue.
  5. Rebase your branch on top of adminion:master to include others' changes.
  6. Again, verify your feature/bugfix still passes all tests after rebasing.
  7. Regenerate API Documentation and run a Coverage Report: npm run docs && npm run coverage.
  8. Commit and push your branch to your repo.
  9. Make a pull request from your branch into adminion:master.

If myself or others incorporate bugfixes/minor changes before reviewing your PR, you may be asked to rebase again prior to merging your PR.

Testing and Coverage

Tests are implemented using Mocha and a test coverage reports are generated by Istanbul.

Run the tests with:

$ npm test

and generate a coverage report using:

npm run coverage

Test files are located in tests/ and the coverage reports will be generated in coverage/.

Quality Control

Tests help us find and prevent bugs. They should be thorough, but not redundant. Please always include tests with your new features and ensure you patches pass existing tests. PRs with failing tests will not be merged; furthermore, PRs that decrease a project's test coverage will likely not be merged. See Testing and Coverage.

About

Adminion Contribution Guide

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published