Skip to content

Good First Issues

Dale Wijnand edited this page May 14, 2018 · 11 revisions

Good First Issues

Criteria

To label an issue as a good first issue it should:

  • follow the issue template
  • be an accepted feature/enhancement request or a confirmed (and hopefully reproduceable) bug
  • be approachable by a first time contributor, a good measure is it should takes a maintainer 20 minutes to resolve (which translates to 1-2 hours for a newcomer)

Mentoring Instructions

A good first issue should include mentoring instructions that layout the steps to take to resolve an issue.

Steps:

  1. Links: Link to the relevant code, PRs, issue threads, docs, etc
  2. Solution: Add comments/hints on how to resolve the issue (call out "non-solutions" if relevant)
  3. Testing: Try and give testing tips, ideally link to prior art
  4. Help: Explain how to ask for help (e.g ping @eed3si9n in the issue and/or on sbt/sbt-contrib)
  5. Motivation (optional): Explain the change's relevance or purpose (to motivate the contribution)
  6. Background (optional): Explain the code's behaviour, structure, or context

It's common that it takes longer to write mentoring instructions than to fix it yourself (as an experienced maintainer) - this is an investiment in making sbt easier to contribute to and a potential long-term contributor, possibly maintainer.