From 5401e3a90743da23b62c460b2d844637f52a37a0 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Sat, 20 Apr 2019 17:51:42 +0900 Subject: [PATCH 01/82] Ruby 2.7.0-preview1 Released --- ...2019-04-20-ruby-2-7-0-preview1-released.md | 101 ++++++++++++++++++ ...2019-04-20-ruby-2-7-0-preview1-released.md | 97 +++++++++++++++++ 2 files changed, 198 insertions(+) create mode 100644 en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md create mode 100644 ja/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md diff --git a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md new file mode 100644 index 0000000000..8f1bcb46cd --- /dev/null +++ b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md @@ -0,0 +1,101 @@ +--- +layout: news_post +title: "Ruby 2.7.0-preview1 Released" +author: "naruse" +translator: +date: 2019-04-20 00:00:00 +0000 +lang: en +--- + +We are pleased to announce the release of Ruby 2.7.0-preview1. + +A preview version is released to gather feedback for the final release planed to release on December. It introduces a number of new features and performance improvements, most notably: + +* Compaction GC +* Pattern Matching +* REPL improvement + +## Compaction GC + +Compaction GC which can defragment a fragmented memory space is introduced. + +Some multithread Ruby program may cause memory fragmentation and it causes high memory usage and degrade speed. + +This introduces `GC.compact` method for compacting the heap. This function compacts live objects in the heap so that fewer pages may be used, and the heap may be more CoW friendly. [#15626](https://bugs.ruby-lang.org/issues/15626) + +Known issues: It may cause Segmentation Fault if MJIT is enabled. Please avoid to use both Compaction GC and MJIT at the same time. + +## Pattern Matching [Experimental] + +Pattern matching, widely used feature in functional programming languages, is introduced as an experimental feature. [#14912](https://bugs.ruby-lang.org/issues/14912) +It can traverse a given object and assign its value if it matches a pattern. + +```ruby +case JSON.parse('{...}', symbolize_names: true) +in {name: "Alice", children: [{name: "Bob", age: age}]} + p age + ... +end +``` + +## REPL improvement + +`irb`, bundled interactive environment (REPL; Read-Eval-Print-Loop), now supports multi-line editing. It's powered by `reline`, `readline` compatible pure Ruby implementation. +It also provides rdoc integration. In `irb` you can show the reference of given class, module, and method. [#14683](https://bugs.ruby-lang.org/issues/14683) [#14787](https://bugs.ruby-lang.org/issues/14787) [#14918](https://bugs.ruby-lang.org/issues/14918) + + + +## Other Notable New Features + +* Method reference operator, .: is introduced as an experimental feature. [#12125]( https://bugs.ruby-lang.org/issues/12125) [#13581]( https://bugs.ruby-lang.org/issues/13581) + +* Numbered parameter as the default block parameter is introduced as an experimental feature. [#4475](https://bugs.ruby-lang.org/issues/4475) + +* A beginless range is experimentally introduced. It might not be as useful + as an endless range, but would be good for DSL purpose. [14799](https://bugs.ruby-lang.org/issues/14799) + + ary[..3] # identical to ary[0..3] + where(sales: ..100) + +## Performance improvements + +* JIT [Experimental] + + * JIT-ed code is recompiled to less-optimized code when an optimization assumption is invalidated. + + * Method inlining is performed when a method is considered as pure. This optimization is still experimental and many methods are NOT considered as pure yet. + + * Default value of +--jit-min-calls+ is changed from 5 to 10,000 + + * Default value of +--jit-max-cache+ is changed from 1,000 to 100 + +## Other notable changes since 2.6 + +* Proc.new and proc with no block in a method called with a block is warned now. + +* lambda with no block in a method called with a block errs. + +* Update Unicode version and Emoji version from 11.0.0 to 12.0.0. [Feature #15321] + +* Update Unicode version to 12.1.0, adding support for U+32FF SQUARE ERA NAME REIWA. [Feature #15195] + +* Date.jisx0301, Date#jisx0301, and Date.parse provisionally support the new Japanese era as an informal extension, until the new JIS X 0301 is issued. [Feature #15742] + +* Require compilers to support C99 [Misc #15347] + * Details of our dialect: https://bugs.ruby-lang.org/projects/ruby-trunk/wiki/C99 + +See [NEWS](https://github.com/ruby/ruby/blob/v2_7_0_preview1/NEWS) or [commit logs](https://github.com/ruby/ruby/compare/v2_6_0...v2_7_0_preview1) for more details. + +With those changes, [6376 files changed, 227364 insertions(+), 51599 deletions(-)](https://github.com/ruby/ruby/compare/v2_6_0...v2_7_0_preview1) since Ruby 2.6.0! + +Enjoy programming with Ruby 2.7! + +## Download + + + +## What is Ruby + +Ruby was first developed by Matz (Yukihiro Matsumoto) in 1993, and now is developing as Open Source. It runs on multiple platforms and used by all over the world especially for Web Development. diff --git a/ja/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md b/ja/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md new file mode 100644 index 0000000000..7ad781e467 --- /dev/null +++ b/ja/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md @@ -0,0 +1,97 @@ +--- +layout: news_post +title: "Ruby 2.7.0-preview1 リリース" +author: "naruse" +translator: +date: 2019-04-20 00:00:00 +0000 +lang: ja +--- + +Ruby 2.7シリーズの最初のプレビュー版である、Ruby 2.7.0-preview1をリリースします。 + +プレビュー版は、年末の正式リリースに向け、新たな機能を試し、フィードバックを集めるために提供されています。 +Ruby 2.7.0-preview1では、多くの新しい機能やパフォーマンスの改善が含まれています。 その一部を以下に紹介します。 + +## Compaction GC + +断片化したメモリをデフラグするCompaction GCが導入されました。 + +一部のマルチスレッドなRubyプログラムを長期間動かし、マーク&スイープ型GCを何度も実行していると、メモリが断片化してメモリ使用量の増大や性能の劣化を招くことが知られています。 + +Ruby 2.7では`GC.compact` というメソッドを導入し、ヒープをコンパクションすることが出来るようになります。ヒープ内の生存しているオブジェクトを他のページに移動し、不要なページを解放できるようになるとともに、ヒープをCoW (Copy on Write) フレンドリーにすることが出来ます。 [#15626](https://bugs.ruby-lang.org/issues/15626) + +既知の問題: MJITと同時に用いると Segmentation Fault を引き起こすことがあります。MJITとCompation GCを同時に使わないようにして下さい。 + +## Pattern Matching [Experimental] + +関数型言語で広く使われているパターンマッチという機能が実験的に導入されました。 +渡されたオブジェクトの構造がパターンと一致するかどうかを調べ、一致した場合にその値を変数に代入するといったことができるようになります。 [#14683](https://bugs.ruby-lang.org/issues/14683) [#14787](https://bugs.ruby-lang.org/issues/14787) [#14918](https://bugs.ruby-lang.org/issues/14918) + +```ruby +case JSON.parse('{...}', symbolize_names: true) +in {name: "Alice", children: [{name: "Bob", age: age}]} + p age + ... +end +``` + +## REPL improvement + +Ruby に添付されている REPL (Read-Eval-Print-Loop) である `irb` で、複数行編集がサポートされました。これは `reline` という `readline` 互換のピュア Ruby 実装によるものです。 +また、rdoc 連携も提供されるようになっています。`irb` 内で、クラス、モジュール、メソッドのリファレンスをその場で確認できるようになりました。 [#14918](https://bugs.ruby-lang.org/issues/14918) + + + +## 主要な新機能 + +* メソッド参照演算子 .: が試験的に導入されました。[#12125]( https://bugs.ruby-lang.org/issues/12125) [#13581]( https://bugs.ruby-lang.org/issues/13581) + +* デフォルトのブロックの仮引数として番号指定パラメータが試験的に導入されました。[#4475](https://bugs.ruby-lang.org/issues/4475) + +* 開始値省略範囲式が試験的に導入されました。これは終了値省略範囲式ほど有用ではないと思われますが、しかし DSL のような目的には役立つかもしれません。 [#14912](https://bugs.ruby-lang.org/issues/14912) + + ary[..3] # identical to ary[0..3] + where(sales: ..100) + + +## パフォーマンスの改善 + +* JIT [Experimental] + + * 最適化の際の仮定が無効とされた場合、JIT 化されていたコードがより最適化度が低いコードに再コンパイルされるようになりました。 + + * あるメソッドが「純粋」であると判定された場合、メソッドのインライン化が行われるようになりました。この最適化はまだ実験的であり、また多数のメソッドが今はまだ「純粋」と判定されないままです。 + + * +--jit-min-calls+ オプションのデフォルト値が 5 から 10,000 に変更されました。 + + * +--jit-max-cache+ オプションのデフォルト値が 1,000 から 100 に変更されました。 + + +## その他の注目すべき 2.6 からの変更点 + +* ブロックを渡すメソッド呼び出し中の、ブロックを伴わない Proc.new と proc が警告されるようになりました。 + +* ブロックを渡すメソッド呼び出し中の、ブロックを伴わない lambda はエラーとなるようになりました。 + +* Unicode および Emoji のバージョンが 11.0.0 から 12.0.0 になりました。[Feature #15321] + +* Unicode のバージョンが 12.1.0 となり、新元号「令和」を表す U+32FF がサポートされました。[Feature #15195] + +* Date.jisx0301, Date#jisx0301, および Date.parse で非公式に新元号に仮対応しました。これは JIS X 0301 の新しい版で正式な仕様が決定されるまでの暫定的なものです。[Feature #15742] + +* Ruby のビルドに C99 に対応したコンパイラが必要になりました。[Misc #15347] + * 本件についての詳細: https://bugs.ruby-lang.org/projects/ruby-trunk/wiki/C99 + +なお、こうした変更により、Ruby 2.6.0 以降では [6376 個のファイルに変更が加えられ、227364 行の追加と 51599 行の削除が行われました](https://github.com/ruby/ruby/compare/v2_6_0...v2_7_0) ! + +Ruby 2.7 でプログラミングをお楽しみください! + +## Download + + + +## Ruby とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 From 22e2b1aacabfea5a03aa0f6236216afddac2dca4 Mon Sep 17 00:00:00 2001 From: Vincent Lin Date: Mon, 6 May 2019 11:59:01 +0800 Subject: [PATCH 02/82] Translate Ruby Repository Moved to Git from Subversion (zh_tw) --- .../_posts/2019-04-23-move-to-git-from-svn.md | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 zh_tw/news/_posts/2019-04-23-move-to-git-from-svn.md diff --git a/zh_tw/news/_posts/2019-04-23-move-to-git-from-svn.md b/zh_tw/news/_posts/2019-04-23-move-to-git-from-svn.md new file mode 100644 index 0000000000..bd9ca8a37d --- /dev/null +++ b/zh_tw/news/_posts/2019-04-23-move-to-git-from-svn.md @@ -0,0 +1,40 @@ +--- +layout: news_post +title: "Ruby 存放區已從 Subversion 移至 Git" +author: "hsbt" +translator: "Vincent Lin" +date: 2019-04-23 00:00:00 +0000 +lang: zh_tw +--- + +今天,Ruby 程式語言的正式存放區(repository)已從 Subversion 移至 Git。 + +新存放區的網頁介面為 [https://git.ruby-lang.org](https://git.ruby-lang.org),由 cgit 產生,我們可以在 Ruby 存放區中直接保存貢獻者的 commit hash 。 + +## 開發政策 + +* 在 cgit 上,我們不使用 Topic 分支。 +* GitHub 存放區將持續保持鏡像,我們不使用「Merge pull request」功能。 +* ruby_2_4、ruby_2_5 和 ruby_2_6 分支仍使用 SVN,在 cgit 上我們將不會推送任何東西給這些分支。 +* 從 ruby_2_7 開始,我們將會使用 cgit 開發穩定分支。 +* 我們不使用合併提交(merge commits)。 + +## 特別感謝 + +* k0kubun + + k0kubun 積極地開發有關發佈與 backport 流程的工具鏈,同時也幫 git 更新了 hook 腳本。 + +* naruse + + naruse 更新了 Ruby CI 和 Redmine 功能更改(bugs.ruby-lang.org)。 + +* mame + + mame 為了 slack 創建了提交通知腳本。 + +## 待辦事項 + +我們仍有一些任務需要完成,如果你在 Git 遷移中發現問題,請在此回報 [https://bugs.ruby-lang.org/issues/14632](https://bugs.ruby-lang.org/issues/14632)。 + +請盡情享受! From 187abb268ae74e3038deddec7b62c9dfbd282ccb Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Sat, 4 May 2019 16:14:21 +0700 Subject: [PATCH 03/82] Translate Multiple vulnerabilities in RubyGems (id) --- ...05-multiple-vulnerabilities-in-rubygems.md | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 id/news/_posts/2019-03-05-multiple-vulnerabilities-in-rubygems.md diff --git a/id/news/_posts/2019-03-05-multiple-vulnerabilities-in-rubygems.md b/id/news/_posts/2019-03-05-multiple-vulnerabilities-in-rubygems.md new file mode 100644 index 0000000000..5f00403282 --- /dev/null +++ b/id/news/_posts/2019-03-05-multiple-vulnerabilities-in-rubygems.md @@ -0,0 +1,64 @@ +--- +layout: news_post +title: "Beberapa kerentanan pada RubyGems" +author: "hsbt" +translator: "meisyal" +date: 2019-03-05 00:00:00 +0000 +tags: security +lang: id +--- + +Ada beberapa kerentanan pada RubyGems yang dikemas dengan Ruby. +Ini [dilaporkan pada blog resmi RubyGems](http://blog.rubygems.org/2019/03/05/security-advisories-2019-03.html). + +## Detail + +Berikut ini adalah kerentanan yang telah dilaporkan. + +* CVE-2019-8320: Delete directory using symlink when decompressing tar +* CVE-2019-8321: Escape sequence injection vulnerability in `verbose` +* CVE-2019-8322: Escape sequence injection vulnerability in `gem owner` +* CVE-2019-8323: Escape sequence injection vulnerability in API response handling +* CVE-2019-8324: Installing a malicious gem may lead to arbitrary code execution +* CVE-2019-8325: Escape sequence injection vulnerability in errors + +Ini sangat direkomendasikan kepada pengguna Ruby untuk memperbarui Ruby atau +mengambil salah satu solusi berikut segera mungkin. + +## Versi Terimbas + +* Rangkaian Ruby 2.3: semua +* Rangkaian Ruby 2.4: 2.4.5 dan sebelumnya +* Rangkaian Ruby 2.5: 2.5.3 dan sebelumnya +* Rangkaian Ruby 2.6: 2.6.1 dan sebelumnya +* sebelum revisi *trunk* 67168 + +## Solusi + +Pada prinsipnya, Anda harus memperbarui Ruby ke versi terbaru. +RubyGems 3.0 atau setelahnya mencakup perbaikan dari kerentanan ini, sehingga +perbarui RubyGems ke versi terbaru jika Ada tidak dapat memperbarui +Ruby itu sendiri. + +``` +gem update --system +``` + +Jika Anda tidak dapat memperbarui RubyGems, Anda dapat mengaplikasikan *patch* +berikut sebagai sebuah solusi. + +* [untuk Ruby 2.4.5](https://bugs.ruby-lang.org/attachments/7669) +* [untuk Ruby 2.5.3](https://bugs.ruby-lang.org/attachments/7670) +* [untuk Ruby 2.6.1](https://bugs.ruby-lang.org/attachments/7671) + +Terkait dengan *trunk*, perbarui ke revisi paling terbaru. + +## Rujukan + +Laporan ini didasarkan pada [blog resmi RubyGems](http://blog.rubygems.org/2019/03/05/security-advisories-2019-03.html). + +## Riwayat + +* Semula dipublikasikan pada 2019-03-05 00:00:00 UTC +* Menghubungkan ke *updated patches* pada 2019-03-06 05:26:27 UTC +* Sebut memperbarui Ruby pada 2019-04-01 06:00:00 UTC From 6d751c07c51f6ee84c2b526d14793d8b28352453 Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 9 May 2019 07:37:13 +0900 Subject: [PATCH 04/82] Follow update translation (ko) (#2061) * Follow up a4a0ad3 * Follow up #2056 --- ko/documentation/installation/index.md | 24 ++++--------------- .../_posts/2019-03-15-ruby-2-5-5-released.md | 2 +- 2 files changed, 6 insertions(+), 20 deletions(-) diff --git a/ko/documentation/installation/index.md b/ko/documentation/installation/index.md index 9cd4d37ca9..09395ce774 100644 --- a/ko/documentation/installation/index.md +++ b/ko/documentation/installation/index.md @@ -30,11 +30,14 @@ ruby -v 전환을 도와줍니다. * 마지막으로 **소스에서 빌드** 하실 수도 있습니다. +Windows 10을 사용 중이라면 [Windows Subsystem for Linux][wsl]를 사용하여 +지원되는 Linux 배포판 중 하나를 설치하고, 해당 시스템에 맞는 설치 방법을 +사용할 수 있습니다. + 이 목록은 각 다른 요구사항과 플랫폼을 위한 주요 설치방법입니다. * [패키지 관리 시스템](#package-management-systems) * [Debian, Ubuntu](#apt) - * [Windows WSL Ubuntu](#apt-wsl) * [CentOS, Fedora, RHEL](#yum) * [Snap](#snap) * [Gentoo](#portage) @@ -79,24 +82,6 @@ Debian GNU/Linux와 Ubuntu는 apt 패키지 관리 시스템을 사용합니다. $ sudo apt-get install ruby-full {% endhighlight %} -### apt (Windows WSL Ubuntu) -{: #apt-wsl} - -Windows 10을 사용 중이라면 WSL을 통해 Linux Ubuntu OS를 사용할 수 있습니다. -또한 apt를 통해 루비를 사용할 수 있습니다. - -다음 페이지에서 WSL을 설치하는 방법에 대해 알아보세요. - -[Windows Subsystem for Linux Installation Guide for Windows 10](https://docs.microsoft.com/ko-kr/windows/wsl/install-win10) - -다음과 같이 Linux OS와 동일하게 apt를 사용할 수 있습니다. - -{% highlight sh %} -$ sudo apt-get install ruby-full -{% endhighlight %} - -WSL에서 rbenv와 같은 루비 관리자를 사용하는 것도 가능합니다. - ### yum (CentOS, Fedora, RHEL) {: #yum} @@ -339,3 +324,4 @@ $ sudo make install [download]: /ko/downloads/ [installers]: /ko/documentation/installation/#installers [readme]: https://github.com/ruby/ruby#how-to-compile-and-install +[wsl]: https://docs.microsoft.com/ko-kr/windows/wsl/about diff --git a/ko/news/_posts/2019-03-15-ruby-2-5-5-released.md b/ko/news/_posts/2019-03-15-ruby-2-5-5-released.md index 09bfeb5915..7d289c9cc8 100644 --- a/ko/news/_posts/2019-03-15-ruby-2-5-5-released.md +++ b/ko/news/_posts/2019-03-15-ruby-2-5-5-released.md @@ -9,7 +9,7 @@ lang: ko 루비 2.5.5가 릴리스 되었습니다. -이 릴리스는 Puma와 같은 멀티 스레드나 멀티 프로세스(`Process.fork`를 사용하는) 애플리케이션에서 데드록이 발생하는 버그 수정을 포함합니다. +이 릴리스는 Puma와 같은 (멀티 스레드를 쓰는 부모 프로세스가 `Process.fork`를 사용하는) 멀티 스레드나 멀티 프로세스 애플리케이션에서 데드록이 발생하는 버그 수정을 포함합니다. 자세한 내용은 [커밋 로그](https://github.com/ruby/ruby/compare/v2_5_4...v2_5_5)를 확인해주세요. From 6e962702e278843374688f07b35a73480c8b67ae Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Thu, 9 May 2019 19:44:52 +0900 Subject: [PATCH 05/82] Translate "Ruby Repository Moved to Git from Subversion" (ko) (#2062) --- .../_posts/2019-04-23-move-to-git-from-svn.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 ko/news/_posts/2019-04-23-move-to-git-from-svn.md diff --git a/ko/news/_posts/2019-04-23-move-to-git-from-svn.md b/ko/news/_posts/2019-04-23-move-to-git-from-svn.md new file mode 100644 index 0000000000..ad248880b3 --- /dev/null +++ b/ko/news/_posts/2019-04-23-move-to-git-from-svn.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "루비 저장소가 Subversion에서 Git으로 이동했습니다" +author: "hsbt" +translator: "yous" +date: 2019-04-23 00:00:00 +0000 +lang: ko +--- + +오늘, 루비 프로그래밍 언어의 표준 저장소가 Subversion에서 Git으로 이동했습니다. + +새 저장소의 웹 인퍼테이스는 이며, cgit을 통해 +제공됩니다. 루비 저장소에서 바로 기여자의 커밋 해시를 볼 수 있습니다. + +## 개발 정책 + +* cgit에서 토픽 브랜치를 사용하지 않습니다. +* GitHub 저장소는 미러 저장소일 뿐입니다. '풀 리퀘스트 머지' 기능을 사용하지 않습니다. +* ruby_2_4, ruby_2_5, ruby_2_6 브랜치는 계속 SVN을 사용합니다. 이 브랜치에는 cgit을 통해 그 어떤 것도 푸시하지 않습니다. +* ruby_2_7 브랜치부터 cgit을 사용해 안정 브랜치를 개발합니다. +* 머지 커밋을 사용하지 않습니다. + +## 감사의 말 + +* k0kubun + + k0kubun은 릴리스와 백포트 워크플로에 관련된 툴체인을 활발히 개발했고, Git을 위한 훅 스크립트를 업데이트했습니다. + +* naruse + + naruse는 루비 CI와 Redmine(bugs.ruby-lang.org)의 기능 변경 사항을 업데이트했습니다. + +* mame + + mame는 Slack을 위한 커밋 알림 스크립트를 만들었습니다. + +## 향후 계획 + +아직 몇 가지 작업이 남았습니다. Git 마이그레이션과 관련한 이슈를 찾았다면 +로 제보해주시기 바랍니다. + +감사합니다! From b31c60a5a641098ed25f231b88633f546be912a5 Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Sun, 12 May 2019 01:13:05 +0900 Subject: [PATCH 06/82] Now the primary repository is Git The change fixes the explanation of the repository guide. Also, some explanations of en/community/ruby-core were obsolete. --- _config.yml | 8 +- en/community/ruby-core/index.md | 112 ++++++++------------- ja/documentation/repository-guide/index.md | 50 +++++---- 3 files changed, 73 insertions(+), 97 deletions(-) diff --git a/_config.yml b/_config.yml index 0beaa04211..7e19c177e9 100644 --- a/_config.yml +++ b/_config.yml @@ -28,14 +28,14 @@ license: svn: stable: + version: 2.6 + branch: ruby_2_6 + previous: version: 2.5 branch: ruby_2_5 - previous: + old: version: 2.4 branch: ruby_2_4 - old: - version: 2.3 - branch: ruby_2_3 locales: sitelinks: diff --git a/en/community/ruby-core/index.md b/en/community/ruby-core/index.md index d12fd8e2bb..edf89b0d5e 100644 --- a/en/community/ruby-core/index.md +++ b/en/community/ruby-core/index.md @@ -17,55 +17,31 @@ The topics related to Ruby development covered here are: * [Improving Ruby, Patch by Patch](#patching-ruby) * [Rules for Core Developers](#coding-standards) -### Using Subversion to Track Ruby Development -{: #following-ruby} +### Using Git to Track Ruby Development -Getting the latest Ruby source code is a matter of an anonymous checkout -from the [Subversion][1] repository. From your command line: +The current primary repository of the latest Ruby source code is +[git.ruby-lang.org/ruby.git][gitrlo]. +There is also a [mirror on GitHub][7]. Usually, please use this mirror. + +You can get the latest Ruby source code by using Git. +From your command line: {% highlight sh %} -$ svn co https://svn.ruby-lang.org/repos/ruby/trunk ruby +$ git clone https://github.com/ruby/ruby.git {% endhighlight %} The `ruby` directory will now contain the latest source code for the development version of Ruby (ruby-trunk). -Currently patches applied to the trunk are backported to the stable -{{ site.svn.stable.version }}, {{ site.svn.previous.version }}, -and {{ site.svn.old.version }} branches (see below). - -If you’d like to follow patching of Ruby {{ site.svn.stable.version }}, -you should use the `{{ site.svn.stable.branch }}` branch when checking out: -{% highlight sh %} -$ svn co https://svn.ruby-lang.org/repos/ruby/branches/{{ site.svn.stable.branch }} -{% endhighlight %} +See also [Non-committer’s HOWTO to join our development][noncommitterhowto]. -Similarly for Ruby {{ site.svn.previous.version }}: +If you have commit access, and if you want to push something, +you should use the primary repository. {% highlight sh %} -$ svn co https://svn.ruby-lang.org/repos/ruby/branches/{{ site.svn.previous.branch }} +$ git clone git@git.ruby-lang.org:ruby/ruby.git {% endhighlight %} -This will check out the respective development tree into a -`{{ site.svn.stable.branch }}` or `{{ site.svn.previous.branch }}` directory. -Developers working on the maintenance branches are expected to migrate -their changes to Ruby’s trunk, so often the branches are very similar, -with the exception of improvements made by Matz and Nobu to the language -itself. - -If you prefer, you may browse [Ruby’s Subversion repository via the web][2]. - -For information about Subversion, please see the [Subversion FAQ][3] -and the [Subversion book][4]. Alternatively, you may find -[Pragmatic Version Control with Subversion][5] to be a useful introductory book. - -### How to Use Git With the Main Ruby Repository -{: #git-ruby} - -Those who prefer to use [Git][6] over Subversion can find instructions -with the [mirror on GitHub][7], both for [those with commit access][8] -and [everybody else][9]. - ### Improving Ruby, Patch by Patch {: #patching-ruby} @@ -81,25 +57,24 @@ straight from Matz, on how to get your patches considered. To summarize, the steps for building a patch are: -1. Check out a copy of the Ruby source code from Subversion. +1. Check out a copy of the Ruby source code from GitHub. Usually patches for bugfixes or new features should be submitted - for the trunk of Ruby’s source. Even if you wish to add a feature - to Ruby {{ site.svn.previous.version }}, it has to be proven in - the trunk first. + for the trunk of Ruby’s source. - $ svn co https://svn.ruby-lang.org/repos/ruby/trunk ruby + $ git clone https://github.com/ruby/ruby.git If you are fixing a bug that is specific to only one maintenance branch, - check out a copy of the respective branch, - e.g. `{{ site.svn.previous.branch }}`. + check out a copy of the respective branch. - $ svn co https://svn.ruby-lang.org/repos/ruby/branches/{{ site.svn.previous.branch }} + $ git checkout ruby_X_X + + X_X should be replaced with a version that you want to check out. 2. Add your improvements to the code. 3. Create a patch. - $ svn diff > ruby-changes.patch + $ git diff > ruby-changes.patch 4. Create a ticket in the [issue tracker][10] or email your patch to the [Ruby-Core mailing list][mailing-lists] with a ChangeLog entry @@ -120,47 +95,40 @@ should be very low, topics should be pointed, well-conceived and well-written. Since we’re addressing Ruby’s creator, let’s have some reverence. -Keep in mind that Ruby’s core developers live in Japan and, while many +Keep in mind that many Ruby’s core developers live in Japan and, while many speak very good English, there is a significant timezone difference. They also have an entire body of Japanese development lists happening alongside the English counterparts. Be patient, if your claim isn’t resolved, be persistent—give it another shot a few days later. -### Rules for Core Developers -{: #coding-standards} -Generally, the developers of Ruby should be familiar with the source -code and the style of development used by the team. To be clear, the -following guidelines should be honored when checking into Subversion: +### Note about branches + +The source code of Ruby had been managed under Subversion repository until 22rd April 2019. +Thus, some branches may be still managed under Subversion. +You can view the SVN repository. -* All check-ins should be described in the `ChangeLog`, following the - [GNU conventions][14]. (Many Ruby core developers use Emacs `add-log` - mode, which can be accessed with the command `C-x 4 a`.) -* Check-in dates should be given in Japan Standard Time (UTC+9). -* The bulleted points from your ChangeLog should also be placed in the - Subversion commit message. This message will be automatically mailed - to the Ruby-CVS list after you commit. -* Function prototypes are used throughout Ruby’s source code and its - packaged extensions. -* Please, do not use C++-style comments (`//`), Ruby’s maintainers - instead prefer the standard C multi-line comment (`/* .. */`). +* [<URL:https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?root=ruby>][svn-viewvc] -See also the information in [Ruby’s issue tracker][10]. +However, you don't have to care about it (unless you are a branch maintainer). +You can check out the branches in your Git working copy. +For example, run the following command. + +{% highlight sh %} +$ git checkout ruby_X_X +{% endhighlight %} +X_X should be replaced with a version that you want to check out. +If you want to modify the branches, please open an issue in our [issue tracker][10]. +See also the following section. +[gitrlo]: https://git.ruby-lang.org/ruby.git [mailing-lists]: /en/community/mailing-lists/ [writing-patches]: /en/community/ruby-core/writing-patches/ -[1]: http://subversion.apache.org/ -[2]: https://svn.ruby-lang.org/cgi-bin/viewvc.cgi/ -[3]: http://subversion.apache.org/faq.html -[4]: http://svnbook.org -[5]: http://www.pragmaticprogrammer.com/titles/svn/ -[6]: http://git-scm.com/ +[noncommitterhowto]: https://github.com/shyouhei/ruby/wiki/noncommitterhowto +[svn-viewvc]: https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?root=ruby [7]: https://github.com/ruby/ruby -[8]: https://github.com/shyouhei/ruby/wiki/committerhowto -[9]: https://github.com/shyouhei/ruby/wiki/noncommitterhowto [10]: https://bugs.ruby-lang.org/ [12]: http://www.gnu.org/software/diffutils/manual/html_node/Unified-Format.html [13]: http://www.gnu.org/software/diffutils/manual/html_node/Merging-with-patch.html#Merging%20with%20patch -[14]: http://www.gnu.org/prep/standards/standards.html#Change-Logs diff --git a/ja/documentation/repository-guide/index.md b/ja/documentation/repository-guide/index.md index 419b329b54..7b14b8340a 100644 --- a/ja/documentation/repository-guide/index.md +++ b/ja/documentation/repository-guide/index.md @@ -4,46 +4,54 @@ title: "リポジトリガイド" lang: ja --- -## SVNリポジトリ - -RubyのソースコードはSVNリポジトリに保存されており、ViewVC経由で参照できます: - -* [<URL:https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?root=ruby>][1] +## Gitリポジトリ -また、Anonymous SVNも利用可能です: +RubyのソースコードはGitリポジトリに保存されています。コミッタはこちらを使います。 -trunkの場合: +* [<URL:https://git.ruby-lang.org/ruby.git>][1] {% highlight sh %} -$ svn co https://svn.ruby-lang.org/repos/ruby/trunk ruby +$ git clone git@git.ruby-lang.org:ruby.git {% endhighlight %} -1\.8の場合: +また、GitHubにミラーが用意されています。 + +* [<URL:https://github.com/ruby/ruby.git>][2] {% highlight sh %} -$ svn co https://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8 ruby +$ git clone https://github.com/ruby/ruby.git {% endhighlight %} -その他のブランチ・タグなどは[<URL:https://svn.ruby-lang.org/repos/ruby/>][2]から確認してください。 +コミッタ以外でRubyの開発に参加したい方は、GitHubのミラーを使うとよいでしょう。次のHowto(英語)もご覧ください。 -## Gitリポジトリ +* [<URL:https://github.com/shyouhei/ruby/wiki/noncommitterhowto>][3] -Gitをお使いの方は、[githubにあるRubyのリポジトリ][3]も利用可能です。 +## SVNリポジトリ -また、これを使ってRubyの開発に参加したい方は、以下のHowto(英語)を読まれるとよいでしょう。 +Rubyのソースコードは2019年4月22日までSVNリポジトリで管理されていたため、一部のブランチはまだSVNで管理されている場合があります。ViewVC経由で参照できます: + +* [<URL:https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?root=ruby>][4] + +また、Anonymous SVNも利用可能です: + +2\.6の場合: + +{% highlight sh %} +$ svn co https://svn.ruby-lang.org/repos/ruby/branches/ruby_2_6 ruby +{% endhighlight %} -* [非コミッター向け][4] -* [コミッター向け][5] +その他のブランチ・タグなどは[<URL:https://svn.ruby-lang.org/repos/ruby/>][5]から確認してください。 それではみなさん、楽しいハックを! Posted by usa on 30 May 2006 +Updated by mame on 12 May 2019 {: .post-info} -[1]: https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?root=ruby -[2]: https://svn.ruby-lang.org/repos/ruby/ -[3]: https://github.com/ruby/ruby -[4]: https://github.com/shyouhei/ruby/wiki/noncommitterhowto -[5]: https://github.com/shyouhei/ruby/wiki/committerhowto +[1]: https://git.ruby-lang.org/ruby.git +[2]: https://github.com/ruby/ruby +[3]: https://github.com/shyouhei/ruby/wiki/noncommitterhowto +[4]: https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?root=ruby +[5]: https://svn.ruby-lang.org/repos/ruby/ From 48b360a70916c0ee5543a6df19287d0b05f35c53 Mon Sep 17 00:00:00 2001 From: OKURA Masafumi Date: Thu, 16 May 2019 17:18:42 +0900 Subject: [PATCH 07/82] Remove reference to rubyforge.org (ja) (#2065) `rubyforge.org` has been inaccessible for years and I don't think it's worth mentioning here. Also, GitHub is now quite popular so I changes the wordings slightly. --- ja/libraries/index.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ja/libraries/index.md b/ja/libraries/index.md index 96ccc62dd1..032ded008c 100644 --- a/ja/libraries/index.md +++ b/ja/libraries/index.md @@ -20,9 +20,8 @@ Ruby のライブラリは主に [RubyGems.org][rubygems] に gem として置 `gem search -r` を使うと RubyGems のリポジトリを調べることが出来ます。例えば、`gem search -r rails` は Rails に関係のある gem を返します。 `--local` (`-l`) オプションを使うと、インストール済みの gem に対してローカルで検索をすることが出来ます。gem をインストールするには `gem install [gem]` を使います。インストール済みの gem を見るには `gem list` を使います。さらに `gem` コマンドについて知りたい場合は、先に進むか[RubyGems' docs][rubygems-guides] を参照してください。 -他にもライブラリの配布元があります。 -[RubyForge][rubyforge]はかつて Ruby のライブラリの保管場所として広く使われていたものです。 -しかし近年では [GitHub][github] が ruby 関連のリポジトリとして台頭してきました。 +また、他にもライブラリの配布元があります。 +近年では[GitHub][github] が ruby 関連のリポジトリとして広く使われています。 gem としては RubyGems.org に公開されますが、gem のソースコードのほとんどは GitHub 上で見ることが出来ます。 [The Ruby Toolbox][ruby-toolbox] は、オープンソースの Ruby プロジェクトを探索しやすくするプロジェクトです。 @@ -99,7 +98,6 @@ RubyGems.org に [いくつかのガイド][rubygems-guides] があります。 [rubygems]: https://rubygems.org/ [rubygems-download]: https://rubygems.org/pages/download/ [rubygems-guides]: http://guides.rubygems.org/ -[rubyforge]: http://rubyforge.org/ [github]: https://github.com/ [rubygems-command-ref]: http://guides.rubygems.org/command-reference/ [bundler]: http://bundler.io/ From 93c64c4ec39313fca316f2bdce75a5f8b2da69fc Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Fri, 17 May 2019 20:27:05 +0900 Subject: [PATCH 08/82] Update the TOC of en/community/ruby-core/index.md --- en/community/ruby-core/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/community/ruby-core/index.md b/en/community/ruby-core/index.md index edf89b0d5e..1ffb02ba96 100644 --- a/en/community/ruby-core/index.md +++ b/en/community/ruby-core/index.md @@ -12,12 +12,12 @@ So, where do you start? The topics related to Ruby development covered here are: -* [Using Subversion to Track Ruby Development](#following-ruby) -* [How to Use Git With the Main Ruby Repository](#git-ruby) +* [Using Git to Track Ruby Development](#following-ruby) * [Improving Ruby, Patch by Patch](#patching-ruby) * [Rules for Core Developers](#coding-standards) ### Using Git to Track Ruby Development +{: #following-ruby} The current primary repository of the latest Ruby source code is [git.ruby-lang.org/ruby.git][gitrlo]. From 4710e7595bc4af807321a401b2de115ecae234f4 Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Sat, 18 May 2019 22:49:55 +0900 Subject: [PATCH 09/82] Remove reference of RubyForge from libraries page (ko) --- ko/libraries/index.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/ko/libraries/index.md b/ko/libraries/index.md index 9073854581..b1d3070a3a 100644 --- a/ko/libraries/index.md +++ b/ko/libraries/index.md @@ -30,10 +30,9 @@ lang: ko list`를 사용합니다. 좀 더 정보가 필요하시면 아래 내용을 좀 더 읽으시거나 [RubyGems의 문서][3]를 참조하세요. -다른 라이브러리의 배포처도 있습니다. [RubyForge][4]는 예전엔 루비 라이브러리의 -배포처로 널리 사용되었던 적이 있습니다. 하지만 최근 몇 년간 [**GitHub**][5]가 -루비 관련 라이브러리의 배포처로 대두되었습니다. 젬으로 RubyGems.org에 -공개되어 있지만, 대부분의 젬의 소스코드는 GitHub에서 볼 수 있습니다. +다른 라이브러리의 배포처도 있습니다. [**GitHub**][5]는 루비 관련 라이브러리의 +주요 배포처입니다. 완전한 젬은 RubyGems.org에 공개되어 있지만, 대부분의 젬의 +소스코드는 GitHub에서 볼 수 있습니다. [**The Ruby Toolbox**][6]는 오픈소스이며 루비 프로젝트를 검색하기 쉽게 하기 위한 프로젝트입니다. 다양한 종류의 일반적인 개발 작업을 카테고리로 릴리스나 커밋의 @@ -114,7 +113,6 @@ RubyGems.org에는 이 주제에 대한 [몇 가지 가이드][3]가 있습니 [1]: https://rubygems.org/ [2]: https://rubygems.org/pages/download/ [3]: http://guides.rubygems.org/ -[4]: http://rubyforge.org/ [5]: https://github.com/ [6]: https://www.ruby-toolbox.com/ [7]: http://guides.rubygems.org/command-reference/ From 9516a88f2eacfb1366fd19dcc46972f6d45fdeb0 Mon Sep 17 00:00:00 2001 From: OKURA Masafumi Date: Tue, 21 May 2019 17:08:55 +0900 Subject: [PATCH 10/82] Move official Git repo lower in repository guide (ja) (#2069) This is intentional change because official Git repository is not that robust and we'd like people to use mirror when possible. See: https://github.com/ruby/ruby/pull/2194#issuecomment-494056965 --- ja/documentation/repository-guide/index.md | 25 +++++++++++----------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/ja/documentation/repository-guide/index.md b/ja/documentation/repository-guide/index.md index 7b14b8340a..0f3eef4f5c 100644 --- a/ja/documentation/repository-guide/index.md +++ b/ja/documentation/repository-guide/index.md @@ -6,25 +6,26 @@ lang: ja ## Gitリポジトリ -RubyのソースコードはGitリポジトリに保存されています。コミッタはこちらを使います。 +GitHubにミラーが用意されています。 -* [<URL:https://git.ruby-lang.org/ruby.git>][1] +* [<URL:https://github.com/ruby/ruby.git>][1] {% highlight sh %} -$ git clone git@git.ruby-lang.org:ruby.git +$ git clone https://github.com/ruby/ruby.git {% endhighlight %} -また、GitHubにミラーが用意されています。 +コミッタ以外でRubyの開発に参加したい方は、GitHubのミラーを使うとよいでしょう。次のHowto(英語)もご覧ください。 + +* [<URL:https://github.com/shyouhei/ruby/wiki/noncommitterhowto>][2] + +また、ミラーとは別に、RubyのソースコードはGitリポジトリに保存されています。コミッタはこちらを使います。 -* [<URL:https://github.com/ruby/ruby.git>][2] +* [<URL:https://git.ruby-lang.org/ruby.git>][3] {% highlight sh %} -$ git clone https://github.com/ruby/ruby.git +$ git clone git@git.ruby-lang.org:ruby.git {% endhighlight %} -コミッタ以外でRubyの開発に参加したい方は、GitHubのミラーを使うとよいでしょう。次のHowto(英語)もご覧ください。 - -* [<URL:https://github.com/shyouhei/ruby/wiki/noncommitterhowto>][3] ## SVNリポジトリ @@ -50,8 +51,8 @@ Updated by mame on 12 May 2019 -[1]: https://git.ruby-lang.org/ruby.git -[2]: https://github.com/ruby/ruby -[3]: https://github.com/shyouhei/ruby/wiki/noncommitterhowto +[1]: https://github.com/ruby/ruby +[2]: https://github.com/shyouhei/ruby/wiki/noncommitterhowto +[3]: https://git.ruby-lang.org/ruby.git [4]: https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?root=ruby [5]: https://svn.ruby-lang.org/repos/ruby/ From dd79aa2608d3c5c15fdbca92b4b284da01f15dae Mon Sep 17 00:00:00 2001 From: Yuki Ito Date: Thu, 23 May 2019 13:55:13 +0900 Subject: [PATCH 11/82] Translate "Support of Ruby 2.3 has ended" (ja) (#2070) * Add nuance "as soon as possible" in the original --- ...019-03-31-support-of-ruby-2-3-has-ended.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 ja/news/_posts/2019-03-31-support-of-ruby-2-3-has-ended.md diff --git a/ja/news/_posts/2019-03-31-support-of-ruby-2-3-has-ended.md b/ja/news/_posts/2019-03-31-support-of-ruby-2-3-has-ended.md new file mode 100644 index 0000000000..8199025355 --- /dev/null +++ b/ja/news/_posts/2019-03-31-support-of-ruby-2-3-has-ended.md @@ -0,0 +1,26 @@ +--- +layout: news_post +title: "Ruby 2.3 のサポートが終了しました" +author: "antonpaisov" +translator: "acomagu" +date: 2019-03-31 00:00:00 +0000 +lang: ja +--- + +Ruby 2.3 系列のすべてのサポートが終了しました。 + +2018 年の 3 月 28 日に Ruby 2.3.7 がリリースされた後、 Ruby 2.3 系列のサポートはセキュリティメンテナンスの段階に入っていました。それから 1 年が経ち、それも終わろうとしています。 2019 年 3 月 31 日をもって Ruby 2.3 系列の全てのサポートは終了し、 2.4 以降の脆弱性やバグの修正が 2.3 にバックポートされることもなくなります。 2.3 用の一切のパッチも作成されません。 Ruby 2.6 や 2.5 へ速やかにアップグレードすることを強く推奨します。 + +## 現在サポートされている Ruby のバージョンについて + +### Ruby 2.6 系列 + +現在通常メンテナンスの段階にあります。バグ修正やリリースに伴う修正は必要な場合はいつでもバックポートされます。また、重大なセキュリティ上の問題が発見された場合、対応した緊急リリースが行われます。 + +### Ruby 2.5 系列 + +現在通常メンテナンスの段階にあります。バグ修正やリリースに伴う修正は必要な場合はいつでもバックポートされます。また、重大なセキュリティ上の問題が発見された場合、対応した緊急リリースが行われます。 + +### Ruby 2.4 系列 + +現在セキュリティメンテナンスの段階にあります。セキュリティ上の問題を除いて、バグ修正はバックポートされません。重大なセキュリティ上の問題が発見された場合、対応した緊急リリースが行われます。 Ruby 2.4 系列のサポート終了は 2020 年 3 月 31 日の予定です。 From 140bd3f4e9c24efae4b95e06481433006ff094f7 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Thu, 23 May 2019 14:39:29 +0900 Subject: [PATCH 12/82] Update en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md Co-Authored-By: Marcus Stollsteimer --- en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md index 8f1bcb46cd..e9ecf45b5f 100644 --- a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md +++ b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md @@ -19,7 +19,7 @@ A preview version is released to gather feedback for the final release planed to Compaction GC which can defragment a fragmented memory space is introduced. -Some multithread Ruby program may cause memory fragmentation and it causes high memory usage and degrade speed. +Some multithread Ruby programs may cause memory fragmentation, leading to high memory usage and degraded speed. This introduces `GC.compact` method for compacting the heap. This function compacts live objects in the heap so that fewer pages may be used, and the heap may be more CoW friendly. [#15626](https://bugs.ruby-lang.org/issues/15626) From 9f2395fba369ba34b622d358abd6f2e990f1457c Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Thu, 23 May 2019 14:39:45 +0900 Subject: [PATCH 13/82] Update en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md Co-Authored-By: Marcus Stollsteimer --- en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md index e9ecf45b5f..959b18660c 100644 --- a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md +++ b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md @@ -17,7 +17,7 @@ A preview version is released to gather feedback for the final release planed to ## Compaction GC -Compaction GC which can defragment a fragmented memory space is introduced. +This release introduces Compaction GC which can defragment a fragmented memory space. Some multithread Ruby programs may cause memory fragmentation, leading to high memory usage and degraded speed. From e736d213f606e5ddecdae6d6e2f1bb5951cb1504 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Thu, 23 May 2019 14:40:00 +0900 Subject: [PATCH 14/82] Update en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md Co-Authored-By: Marcus Stollsteimer --- en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md index 959b18660c..9ff44f26e5 100644 --- a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md +++ b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md @@ -21,7 +21,7 @@ This release introduces Compaction GC which can defragment a fragmented memory s Some multithread Ruby programs may cause memory fragmentation, leading to high memory usage and degraded speed. -This introduces `GC.compact` method for compacting the heap. This function compacts live objects in the heap so that fewer pages may be used, and the heap may be more CoW friendly. [#15626](https://bugs.ruby-lang.org/issues/15626) +The `GC.compact` method is introduced for compacting the heap. This function compacts live objects in the heap so that fewer pages may be used, and the heap may be more CoW friendly. [#15626](https://bugs.ruby-lang.org/issues/15626) Known issues: It may cause Segmentation Fault if MJIT is enabled. Please avoid to use both Compaction GC and MJIT at the same time. From e6e32ceaec6f3e3eb613691aea02e22334c5dace Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Thu, 23 May 2019 14:47:44 +0900 Subject: [PATCH 15/82] Update en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md Co-Authored-By: Marcus Stollsteimer --- en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md index 9ff44f26e5..281be3c1d6 100644 --- a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md +++ b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md @@ -23,7 +23,7 @@ Some multithread Ruby programs may cause memory fragmentation, leading to high m The `GC.compact` method is introduced for compacting the heap. This function compacts live objects in the heap so that fewer pages may be used, and the heap may be more CoW friendly. [#15626](https://bugs.ruby-lang.org/issues/15626) -Known issues: It may cause Segmentation Fault if MJIT is enabled. Please avoid to use both Compaction GC and MJIT at the same time. +Known issues: It may cause segmentation faults if MJIT is enabled. Please avoid using both Compaction GC and MJIT at the same time. ## Pattern Matching [Experimental] From fa90890004a50e3d33c6d2f6416770f0518ce779 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Thu, 23 May 2019 14:47:55 +0900 Subject: [PATCH 16/82] Update en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md Co-Authored-By: Marcus Stollsteimer --- en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md index 281be3c1d6..ea3454d657 100644 --- a/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md +++ b/en/news/_posts/2019-04-20-ruby-2-7-0-preview1-released.md @@ -41,7 +41,7 @@ end ## REPL improvement `irb`, bundled interactive environment (REPL; Read-Eval-Print-Loop), now supports multi-line editing. It's powered by `reline`, `readline` compatible pure Ruby implementation. -It also provides rdoc integration. In `irb` you can show the reference of given class, module, and method. [#14683](https://bugs.ruby-lang.org/issues/14683) [#14787](https://bugs.ruby-lang.org/issues/14787) [#14918](https://bugs.ruby-lang.org/issues/14918) +It also provides rdoc integration. In `irb` you now can display the reference for a given class, module, or method. [#14683](https://bugs.ruby-lang.org/issues/14683) [#14787](https://bugs.ruby-lang.org/issues/14787) [#14918](https://bugs.ruby-lang.org/issues/14918)