7fife-backend/node_modules/natural/CONTRIBUTING.md

34 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Contributing
When contributing to this repository, please explain your changes or additions in an issue or in the pull request.
When developing, please:
* Comply with Standard JS. This is tested when you commit to natural.
* Prevent code duplication. Use jscpd to test this. This is tested when you commit to natural.
* Write unit tests for jasmine. Make sure your unit tests pass.
* For compatibility with browsers, do not use the file system fs. If you need to read files, use JSON and require.
* Write documentation and commit this to the gh-pages branch.
* The current configuration of the unit tests requires the following environment variable to be set:
```
export NODE_PATH=.
```
# CD/CD pipeline
The repository uses Github Actions for testing and publishing.
Currently, there three workflows:
* Node CI: tests natural on the four most recent releases of Nodejs. Code coverage is analysed with Istanbul. Results are forwarded to Coveralls. In the README a badge shows the coverage.
* Nodejs package: The natural package is automatically published to NPM when a release is created (tagged).
* Lint Code Base: the repository is linted using the Github super linter which includes jslint and jscpd.
* CodeQL for detecting security vulnerabilities.
Github workflows can be found in the folder ./.github/workflows.
# Versioning
We apply semantic versioning. Given naturals version number MAJOR.MINOR.PATCH, increment the:
* MAJOR version when you make incompatible API changes,
* MINOR version when you add functionality in a backwards compatible manner, and
* PATCH version when you make backwards compatible bug fixes.