Skip to content

Files

Latest commit

50b5793 · Sep 20, 2016

History

History
88 lines (71 loc) · 3.07 KB

CONTRIBUTING.md

File metadata and controls

88 lines (71 loc) · 3.07 KB

Contributing to js-data-mongodb

Dear contributor,

Thank you! Projects like this are successful because of you!

Getting started

  1. Read the the general JSData Contributing Guide
  2. To report a bug or request a feature, please open an issue
  • Be sure to search the existing issues to prevent duplication
  • Give your issue a short but descriptive title
  • For bug reports, please include all steps to reproduce the error
  • For feature requests, please include details of your use case
  1. To improve to the JSData + MongoDB tutorial, go to js-data.io/v3.0/docs/js-data-mongodb and click "Suggest Edits"

  2. To improve the API Reference Documentation, write a test, fix a bug, or add a feature:

  3. Create a fork of github.com/js-data/js-data-mongodb. Click here to do so now.

  4. Clone your fork:

    git clone git@github.com:YOUR_USERNAME/js-data-mongodb.git
    
  5. Change directory to js-data-mongodb:

    cd js-data-mongodb
    
  6. Install development dependencies

    npm install js-data@rc bson mongodb
    npm install
    
  7. To just update API Reference Documentation, make changes to the JSDoc comments in the source code. To regenerate the API documentation:

    npm run doc
    

    You can find the regenerated API Reference Documentation in the doc/ folder.

  8. To write a test, fix a bug, or add a feature, make your changes to files in the src/ and test/ folders.

  9. To run the tests, first make sure MongoDB is running in another terminal window:

    mongod --config /path/to/mongod.conf
    
  10. Now run the tests:

    npm test
    
  11. Commit your changes, submit a Pull Request, and wait for review!

Project structure

  • coverage/ - Code coverage report produced by npm test
  • dist/ - Contains final build files for distribution
  • doc/ - Output folder for JSDocs
  • src/ - Project source code
  • test/ - Project tests

To cut a release

  1. git checkout master
  2. Bump version in package.json appropriately
  3. Update CHANGELOG.md appropriately
  4. npm run release
  5. Commit and push changes (message should be something like "Prepare for VERSION")
  6. git checkout release
  7. git merge master
  8. npm run release
  9. Commit and push changes (message should be something like "VERSION")
  10. Make a new GitHub release
  • tag from release branch
  • set tag name to version
  • set release name to version
  • set release body to changelog entry for the version
  1. npm publish .
  2. git checkout gh-pages
  3. cp -r doc/js-data-mongodb/VERSION VERSION
  4. cp -r doc/js-data-mongodb/VERSION latest
  5. git add -A
  6. git commit -m "VERSION"
  7. git push -u origin gh-pages
  8. git checkout master

See also JSData Community & Support.