Contributing Guidelines

Before opening a pull request, review these guidelines for contributing to Viash.

We welcome any contributions to this project, be it changes in documentation, bug fixes, new functionality, or even new packages if they fit the scope of our project.
By participating in this project, you agree to abide by our code of conduct.

Contributing to Viash

Help others

A great way of contributing is helping others by providing answers and suggestions on their issues.

Test new releases

We release new versions of Viash periodically that introduce improvements, features and bug fixes. Before releasing a production release, we have beta and release candidates available.
You can contribute by using one of the aforementioned releases and reporting (and fixing) any bugs you encounter.

Report bugs

Ideally, bug reports are accompanied by a proposed code change to fix the bug. This isn’t always possible, as those who discover a bug may not have the experience to fix it.
Bug reports are only useful however if they include enough information to understand, isolate and ideally reproduce the bug.

When submitting a bug report, add the following:

  • A clear description of the bug.
  • The exact steps needed to reproduce the bug.
  • Include a file or an example if needed.

Review changes

Changes proposed via pull requests are public, so anyone can see and comment on the changes.
You can make suggestions here and point out problems, as small as typos or issues of style.

Report documentation issues and suggestions

The documentation you are reading now is hosted on our Viash web repository. If you encounter any gaps in our documentation or you have spotted a mistake, you can help us out by creating an issue.

Contributing code changes to Viash

If you’re familiar with Scala and have learned how Viash works, you can help with the development of Viash by improving its code.

Getting started

  • Make sure you have a GitHub account. If you are not familar with git and GitHub, take a look at the Git Handbook to get started.
  • Submit an issue for your problem or suggestion, assuming one does not already exist.
  • Clearly describe your issue, including steps to reproduce when it is a bug, or some justification for a proposed improvement.
  • Fork the repository on GitHub to make a copy of the repository on your account.

Making changes

Here are some helpful tips to make the development cycle easier:

  • Viash is written primarily in Scala. You’re free to choose what IDE to use for development. IntelliJ Idea is a good choice.
  • While editing the files, save often and make commits of logical units where every commits indicates a single concept.
  • Make sure to write good commit messages.
  • If you need help or guidance, post an update on your issue.

Submit your changes

Before opening a pull request, make sure you review and agree with the guidelines below:

  • Is the change important and ready enough to ask the community to spend time reviewing?
  • Have you searched for existing, related pull requests?
  • Is the change being proposed clearly explained and motivated?
  • When you contribute code, you affirm that the contribution is your original work and that you license the work to the project under the project’s open source license. Whether or not you state this explicitly, by submitting any copyrighted material via pull request, email, or other means you agree to license the material under the project’s open source license and warrant that you have the legal authority to do so.

To submit your changes, push to your fork and submit a pull request.
From this point on, you are waiting for us to review and comment on your pull request. We try to do this within a few days and may suggest improvements or ask for clarification.