Add a separate doc for contributing to stdlibs [ci skip]
co-authored-by: Peter Zhu <peter@peterzhu.ca>
This commit is contained in:
parent
019169346a
commit
26a07b8b46
Notes:
git
2022-05-12 04:13:20 +09:00
@ -5,6 +5,7 @@ This guide outlines ways to get started with contributing to Ruby:
|
||||
* [Reporting issues](contributing/reporting_issues.md): How to report issues, how to request features, and how backporting works
|
||||
* [Building Ruby](contributing/building_ruby.md): How to build Ruby on your local machine for development
|
||||
* [Testing Ruby](contributing/testing_ruby.md): How to test Ruby on your local machine once you've built it
|
||||
* [Making changes to Ruby](contributing/making_changes_to_ruby.md): How to submit pull requests
|
||||
* [Making changes to Ruby](contributing/making_changes_to_ruby.md): How to submit pull requests
|
||||
to change Ruby's documentation, code, test suite, or standard libraries
|
||||
* [Making changes to Ruby documentation](contributing/documentation_guide.md): How to make changes to Ruby documentation
|
||||
* [Making changes to Ruby standard libraries](contributing/making_changes_to_stdlibs.md): How to build, test, and contribute to Ruby standard libraries
|
||||
* [Making changes to Ruby documentation](contributing/documentation_guide.md): How to make changes to Ruby documentation
|
||||
|
@ -26,11 +26,3 @@ Use the following style for commit messages:
|
||||
GitHub actions will run on each pull request.
|
||||
|
||||
There is [a CI that runs on master](https://rubyci.org/). It has broad coverage of different systems and architectures, such as Solaris SPARC and macOS.
|
||||
|
||||
# Contributing to standard libraries
|
||||
|
||||
Everything in the [lib](https://github.com/ruby/ruby/tree/master/lib) directory is mirrored from a standalone repository into the Ruby repository.
|
||||
If you'd like to make contributions to standard libraries, do so in the standalone repositories, and the
|
||||
changes will be automatically mirrored into the Ruby repository.
|
||||
|
||||
For example, CSV lives in [a separate repository](https://github.com/ruby/csv) and is mirrored into [Ruby](https://github.com/ruby/ruby/tree/master/lib/csv).
|
||||
|
49
doc/contributing/making_changes_to_stdlibs.md
Normal file
49
doc/contributing/making_changes_to_stdlibs.md
Normal file
@ -0,0 +1,49 @@
|
||||
# Making Changes To Standard Libraries
|
||||
|
||||
Everything in the [lib](https://github.com/ruby/ruby/tree/master/lib) directory is mirrored from a standalone repository into the Ruby repository.
|
||||
If you'd like to make contributions to standard libraries, do so in the standalone repositories, and the
|
||||
changes will be automatically mirrored into the Ruby repository.
|
||||
|
||||
For example, CSV lives in [a separate repository](https://github.com/ruby/csv) and is mirrored into [Ruby](https://github.com/ruby/ruby/tree/master/lib/csv).
|
||||
|
||||
## Maintainers
|
||||
|
||||
You can find the list of maintainers [here](https://docs.ruby-lang.org/en/master/maintainers_rdoc.html#label-Maintainers).
|
||||
|
||||
## Build
|
||||
|
||||
First, install its dependencies using:
|
||||
|
||||
```
|
||||
bundle install
|
||||
```
|
||||
|
||||
### Libraries with C-extension
|
||||
|
||||
If the library has a `/ext` directory, it has C files that you need to compile with:
|
||||
|
||||
```
|
||||
bundle exec rake compile
|
||||
```
|
||||
|
||||
## Running tests
|
||||
|
||||
All standard libraries use [test-unit](https://github.com/test-unit/test-unit) as the test framework.
|
||||
|
||||
To run all tests:
|
||||
|
||||
```
|
||||
bundle exec rake test
|
||||
```
|
||||
|
||||
To run a single test file:
|
||||
|
||||
```
|
||||
bundle exec rake test TEST="test/test_foo.rb"
|
||||
```
|
||||
|
||||
To run a single test case:
|
||||
|
||||
```
|
||||
bundle exec rake test TEST="test/test_foo.rb" TESTOPS="--name=/test_mytest/"
|
||||
```
|
Loading…
x
Reference in New Issue
Block a user