This is the issue tracker for Opal. If you have a more general question about
using Opal (or related libraries) then use the stackoverflow tag (#opalrb), or the Gitter chatroom at opal/opal
(also available as IRC at irc.gitter.im
).
What follows is a quick checklist you can before sending issues or pull-requests, for in-depth instructions on how to hack the internals of Opal and setup the development environment please see HACKING.md
.
-
Before opening a new issue, search for previous discussions including closed ones. Add comments there if a similar issue is found.
-
Please report the version on which the issue is found (
opal -v
). -
The best issues have steps to reproduce the error. Common ways to do that are:
- A snippet of Ruby code
- A CLI command with its output, e.g.
opal -ve 'p String != Symbol' # => false'
-
Before sending pull requests make sure all tests run and pass (see
HACKING.md
in this repo). -
Make sure to use a similar coding style to the rest of the code base. Some examples follow:
- In Ruby and JavaScript code we use 2 spaces (no tabs)
- In JavaScript we use
snake_case
for methods and variables
-
Make sure to have updated all the relevant documentation, both for API (using yardoc syntax) and the Guides
-
Add a Changelog entry at the top of
CHANGELOG.md
You could be asked to squash your commits during a PR review. That doesn't mean there's a preference for a single commit for each PR, rather it's a request to have each commit focused on a specific group changes and avoid the sequence of changes, fixups and reverts that tell an interesting story but in the end make the use of git blame
quite difficult.
That said, these are quite loose requirements in the spirit of keeping contributing enjoyable 🤓