Skip to content

Latest commit

 

History

History
88 lines (54 loc) · 3.19 KB

CONTRIBUTING.md

File metadata and controls

88 lines (54 loc) · 3.19 KB

Development and Testing

To run the project locally, clone the repository and install the dependencies.

git clone https://github.com/amadeus4dev/amadeus-ruby.git
cd amadeus-ruby
bundle

Running tests

To run tests, simply run rake or guard to keep watching the source for changes and test accordingly.

We are trying to keep 100% coverage, so keep an eye on the coverage folder for an overview of the coverage.

Using a library locally

To use a library locally as a dependency, simply link to this library in your project by path:

gem 'amadeus', path: '../path/to/clone'

To install quickly get playing with your code we have added a console that automatically includes the gem into the gem path.

rake console
> amadeus = Amadeus::Client.new

Alternatively you can use Amadeus in your script as follows.

ruby -r amadeus -I ./lib script.rb

Releasing

To make a new release, follow the following steps:

  • Update the version in version.rb using semver rules
  • Update the CHANGELOG.md with the new version
  • Push all changes and ensure all tests pass on GitHub Actions
  • Tag your release in git using git --tag vX.X.X
  • Push the new tag git push --tags
  • Update the Releases tab on GitHub with a new release for the tag, copying the description from the CHANGELOG.md

GitHub Actions will bow build the gem and release it to RubyGems.

How to contribute to the Amadeus Ruby Gem

Did you find a bug?

  • Ensure the bug was not already reported by searching on GitHub under Issues.

  • If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.

Did you write a patch that fixes a bug?

  • Open a new GitHub pull request with the patch.

  • Ensure the PR description clearly describes the problem and solution. Include the relevant issue number if applicable.

Do you intend to add a new feature or change an existing one?

  • Suggest your change in a new issue and start writing code.

  • Make sure your new code does not break any tests and include new tests.

  • With good code comes good documentation. Try to copy the existing documentation and adapt it to your needs.

  • Close the issue or mark it as inactive if you decide to discontinue working on the code.

Do you have questions about the source code?

Do you want to contribute to the documentation?

Excellent, to get start developing this library ensure you have Ruby 2.2+ installed and clone the repository.

Then, you should be able to run the tests.

bundle install # ensure all gems are installed
guard # watches for changes and runs all tests and updates docs