Skip to content

Commit 9dcb731

Browse files
committed
Add "How to work on a new CRuby feature" section to the How-To guide
1 parent 401e061 commit 9dcb731

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

doc/contributor/how-to-guide.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
* [How to tag slow ruby/spec tests](#how-to-tag-slow-rubyspec-tests)
3232
* [How to introduce a constant in specs](#how-to-introduce-a-constant-in-specs)
3333
* [How to add a new spec](#how-to-add-a-new-spec)
34+
* [How to work on a new CRuby feature](#how-to-work-on-a-new-cruby-feature)
3435

3536
## How to find a Core Method implementation
3637

@@ -1564,3 +1565,20 @@ There are the following main directories:
15641565
- `spec/ruby/core` - specs for the Core Library
15651566
- `spec/ruby/library` - specs for the Standard Library
15661567
- `spec/ruby/language` - specs for the Ruby syntax itself
1568+
1569+
## How to work on a new CRuby feature
1570+
1571+
When you work on a new feature/method usually you make the following steps:
1572+
1573+
- check a feature/method description in the Ruby documentation
1574+
- check a corresponding issue (on the Ruby bug tracker <https://bugs.ruby-lang.org>):
1575+
- a feature description
1576+
- discussion
1577+
- "Associated revisions" tab with commits and diffs (pay attention to added MRI and ruby/spec tests)
1578+
- check existing ruby/spec tests in the TruffleRuby repository
1579+
- add missing test cases
1580+
- untag ruby/spec tests
1581+
- implement the feature
1582+
- untag MRI tests and ensure they pass too
1583+
- mention in a PR description an original issue in a way it's described in the Ruby
1584+
release notes or provide a link to an original ticket (on <https://bugs.ruby-lang.org>)

0 commit comments

Comments
 (0)