If you have issues with the APIs or have a question about the Watson services, see Stack Overflow.
- Commits should follow the Angular commit message guidelines. This is because our release tool uses this format for determining release versions and generating changelogs. To make this easier, we recommend using the Commitizen CLI with the
cz-conventional-changelog
adapter.
If you encounter an issue with the Ruby library, you are welcome to submit a bug report. Before that, please search for similar issues. It's possible somebody has already encountered this issue.
If you want to contribute to the repository, follow these steps:
- Fork the repo.
- Install bundler if needed:
gem install bundler
- Install the dependencies:
bundle install
- Make code changes.
- Add a test for your changes. Only refactoring and documentation changes require no new tests.
- Make the test pass, test your code changes:
bundle exec rake
. - Commit your changes.
- Push to your fork and submit a pull request.
- Travis-CI and AppVeyor will run the tests for all services once your changes are merged.
Ideally, we'd like to see both unit and integration tests on each method. (Unit tests do not actually connect to the Watson service, integration tests do.)
Out of the box, rake
runs integration and unit tests. Put the corresponding credentials in a .env
file in the root directory for the integration tests to work as intended.
To just run unit or integration tests, run rake test:unit
or rake test:integration
For the integration tests, tests will only be run for services that have credentials defined in a .env
file.