From 74b6f79282366aefcd9f2c6edd4240e72d2871da Mon Sep 17 00:00:00 2001 From: Vagish Date: Wed, 16 Oct 2019 05:39:46 -0400 Subject: [PATCH 0001/1716] Remove the links of Lucent (no longer existing website) --- bg/documentation/success-stories/index.md | 3 +-- de/documentation/success-stories/index.md | 3 +-- en/documentation/success-stories/index.md | 3 +-- fr/documentation/success-stories/index.md | 3 +-- id/documentation/success-stories/index.md | 3 +-- it/documentation/success-stories/index.md | 3 +-- ko/documentation/success-stories/index.md | 3 +-- pl/documentation/success-stories/index.md | 3 +-- pt/documentation/success-stories/index.md | 3 +-- ru/documentation/success-stories/index.md | 3 +-- tr/documentation/success-stories/index.md | 3 +-- vi/documentation/success-stories/index.md | 3 +-- zh_cn/documentation/success-stories/index.md | 3 +-- zh_tw/documentation/success-stories/index.md | 3 +-- 14 files changed, 14 insertions(+), 28 deletions(-) diff --git a/bg/documentation/success-stories/index.md b/bg/documentation/success-stories/index.md index 3b9272afeb..0ac1e98374 100644 --- a/bg/documentation/success-stories/index.md +++ b/bg/documentation/success-stories/index.md @@ -34,7 +34,7 @@ lang: bg #### Телефония -* Ruby се използва в [Lucent][7] за изграждането на 3G безжични +* Ruby се използва в Lucent за изграждането на 3G безжични телефонни продукти. #### Системна Администрация @@ -58,7 +58,6 @@ lang: bg [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/de/documentation/success-stories/index.md b/de/documentation/success-stories/index.md index 85dd38bc2c..23e00c8aca 100644 --- a/de/documentation/success-stories/index.md +++ b/de/documentation/success-stories/index.md @@ -28,7 +28,7 @@ Projekten, die Ruby nutzen. #### Telephonie -* Ruby wird bei [Lucent][5] in einem 3G Wireless Telefonieprodukt +* Ruby wird bei Lucent in einem 3G Wireless Telefonieprodukt eingesetzt. #### Systemadministration @@ -51,7 +51,6 @@ Projekten, die Ruby nutzen. [1]: http://www.motorola.com [2]: https://www.uhn.ca/TorontoRehab -[5]: http://www.lucent.com/ [6]: http://www.level3.com/ [7]: http://www.basecamphq.com [8]: http://www.37signals.com diff --git a/en/documentation/success-stories/index.md b/en/documentation/success-stories/index.md index f8fd6f395c..297ffc7395 100644 --- a/en/documentation/success-stories/index.md +++ b/en/documentation/success-stories/index.md @@ -33,7 +33,7 @@ you’ll find a small sample of real world usage of Ruby. #### Telephony -* Ruby is being used within [Lucent][7] on a 3G wireless telephony +* Ruby is being used within Lucent on a 3G wireless telephony product. #### System Administration @@ -71,7 +71,6 @@ you’ll find a small sample of real world usage of Ruby. [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/fr/documentation/success-stories/index.md b/fr/documentation/success-stories/index.md index a21db356be..dea0606593 100644 --- a/fr/documentation/success-stories/index.md +++ b/fr/documentation/success-stories/index.md @@ -36,7 +36,7 @@ témoignages du « monde réel. » #### Téléphonie -* Ruby est utilisé sur un projet de [Lucent][8]\: un téléphone 3G sans +* Ruby est utilisé sur un projet de Lucent\: un téléphone 3G sans fil. #### Administration système @@ -61,7 +61,6 @@ témoignages du « monde réel. » [3]: http://www.motorola.com [4]: http://www.sketchup.com/ [5]: https://www.uhn.ca/TorontoRehab -[8]: http://www.lucent.com/ [9]: http://www.level3.com/ [10]: http://www.basecamphq.com [11]: http://www.37signals.com diff --git a/id/documentation/success-stories/index.md b/id/documentation/success-stories/index.md index 9cf8ff707a..361d405f00 100644 --- a/id/documentation/success-stories/index.md +++ b/id/documentation/success-stories/index.md @@ -36,7 +36,7 @@ kecil contoh dari berbagai penggunaan Ruby di dunia nyata. #### Telekomunikasi -* Ruby digunakan oleh [Lucent][7] pada produk wireless 3G yang mereka +* Ruby digunakan oleh Lucent pada produk wireless 3G yang mereka kembangkan. #### Administrasi Sistem @@ -75,7 +75,6 @@ kecil contoh dari berbagai penggunaan Ruby di dunia nyata. [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/it/documentation/success-stories/index.md b/it/documentation/success-stories/index.md index d77ca19003..64aedd676a 100644 --- a/it/documentation/success-stories/index.md +++ b/it/documentation/success-stories/index.md @@ -34,7 +34,7 @@ alcuni esempi reali di come viene utilizzato Ruby nel mondo. #### Telefonia -* Ruby viene utilizzato in [Lucent][7] un prodotto telefonico di terza +* Ruby viene utilizzato in Lucent un prodotto telefonico di terza generazione. #### Amministrazione di sistema @@ -68,7 +68,6 @@ alcuni esempi reali di come viene utilizzato Ruby nel mondo. [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/ko/documentation/success-stories/index.md b/ko/documentation/success-stories/index.md index bbe58f8fd7..9c51ca88f3 100644 --- a/ko/documentation/success-stories/index.md +++ b/ko/documentation/success-stories/index.md @@ -33,7 +33,7 @@ lang: ko #### 전화 -* 루비는 3G 무선 전화 제품인 [Lucent][7]에서도 사용됩니다. +* 루비는 3G 무선 전화 제품인 Lucent에서도 사용됩니다. #### 시스템 관리 @@ -67,7 +67,6 @@ lang: ko [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/pl/documentation/success-stories/index.md b/pl/documentation/success-stories/index.md index a8864070fc..12b7e57229 100644 --- a/pl/documentation/success-stories/index.md +++ b/pl/documentation/success-stories/index.md @@ -30,7 +30,7 @@ Rubiego w rzeczywistości. #### Telefonia -* [Lucent][7] używa Rubiego w swoim produkcie telefonii bezprzewodowej +* Lucent używa Rubiego w swoim produkcie telefonii bezprzewodowej 3G. #### Administracja Systemami @@ -77,7 +77,6 @@ Rubiego w rzeczywistości. [2]: http://www-106.ibm.com/developerworks/linux/library/l-oslab/ [3]: http://www.motorola.com [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/pt/documentation/success-stories/index.md b/pt/documentation/success-stories/index.md index bd06467200..94120a6602 100644 --- a/pt/documentation/success-stories/index.md +++ b/pt/documentation/success-stories/index.md @@ -34,7 +34,7 @@ Aqui você encontrará uma pequena amostra do uso de Ruby no mundo real. #### Telefonia -* Ruby está sendo utilizado na [Lucent][7] num produto de telefonia +* Ruby está sendo utilizado na Lucent num produto de telefonia 3G wireless. #### Administração de Sistemas @@ -70,7 +70,6 @@ Aqui você encontrará uma pequena amostra do uso de Ruby no mundo real. [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/ru/documentation/success-stories/index.md b/ru/documentation/success-stories/index.md index e08e4afc15..710a6e905d 100644 --- a/ru/documentation/success-stories/index.md +++ b/ru/documentation/success-stories/index.md @@ -36,7 +36,7 @@ lang: ru #### Телефония -* Ruby используется в [Lucent][7], в их 3G беспроводном телефонном +* Ruby используется в Lucent, в их 3G беспроводном телефонном продукте. #### Системное администрирование @@ -72,7 +72,6 @@ lang: ru [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/tr/documentation/success-stories/index.md b/tr/documentation/success-stories/index.md index 784b84b570..1bbb26fdde 100644 --- a/tr/documentation/success-stories/index.md +++ b/tr/documentation/success-stories/index.md @@ -35,7 +35,7 @@ olarak. Burada Ruby’nin gerçek dünyadan örneklerini görebilirsiniz. #### Telefonculuk -* Ruby 3G kablosuz telefonculuk ürünü olan [Lucent][6] içinde +* Ruby 3G kablosuz telefonculuk ürünü olan Lucent içinde kullanılmaya başlandı. #### Sistem Yönetimi @@ -70,7 +70,6 @@ olarak. Burada Ruby’nin gerçek dünyadan örneklerini görebilirsiniz. [1]: http://www.larc.nasa.gov/ [2]: http://www.sketchup.com/ [3]: https://www.uhn.ca/TorontoRehab -[6]: http://www.lucent.com/ [7]: http://www.level3.com/ [8]: http://www.basecamphq.com [9]: http://www.37signals.com diff --git a/vi/documentation/success-stories/index.md b/vi/documentation/success-stories/index.md index 2ac23a78ef..d9b16d76f4 100644 --- a/vi/documentation/success-stories/index.md +++ b/vi/documentation/success-stories/index.md @@ -33,7 +33,7 @@ nó như thứ tiêu khiển. Trong trang này, bạn sẽ tìm thấy những v #### Viễn thông -* Ruby được sử dụng bên trong [Lucent][7] để phát triển các sản phảm viễn thông 3G. +* Ruby được sử dụng bên trong Lucent để phát triển các sản phảm viễn thông 3G. #### Quản lý hệ thống @@ -65,7 +65,6 @@ nó như thứ tiêu khiển. Trong trang này, bạn sẽ tìm thấy những v [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/zh_cn/documentation/success-stories/index.md b/zh_cn/documentation/success-stories/index.md index f5c8632f4b..51f76cc844 100644 --- a/zh_cn/documentation/success-stories/index.md +++ b/zh_cn/documentation/success-stories/index.md @@ -29,7 +29,7 @@ lang: zh_cn #### 电讯 -* [朗讯][7]一个3G无线电话产品中使用了 Ruby。 +* 朗讯一个3G无线电话产品中使用了 Ruby。 #### 系统管理 @@ -53,7 +53,6 @@ lang: zh_cn [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com diff --git a/zh_tw/documentation/success-stories/index.md b/zh_tw/documentation/success-stories/index.md index bc0673f82f..3b053af54a 100644 --- a/zh_tw/documentation/success-stories/index.md +++ b/zh_tw/documentation/success-stories/index.md @@ -27,7 +27,7 @@ lang: zh_tw #### 電信 -* Ruby 也被用在 [Lucent][7] 3G無線電信產品中。 +* Ruby 也被用在 Lucent 3G無線電信產品中。 #### 系統管理 @@ -47,7 +47,6 @@ lang: zh_tw [2]: http://www.motorola.com [3]: http://www.sketchup.com/ [4]: https://www.uhn.ca/TorontoRehab -[7]: http://www.lucent.com/ [8]: http://www.level3.com/ [9]: http://www.basecamphq.com [10]: http://www.37signals.com From 8da9be24d7a2c6fb905fcbe0fe9de6b7a0e81095 Mon Sep 17 00:00:00 2001 From: Julio Date: Mon, 21 Oct 2019 10:45:12 -0300 Subject: [PATCH 0002/1716] Translate Ruby 2.4.9 released (pt) --- .../_posts/2019-10-02-ruby-2-4-9-released.md | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 pt/news/_posts/2019-10-02-ruby-2-4-9-released.md diff --git a/pt/news/_posts/2019-10-02-ruby-2-4-9-released.md b/pt/news/_posts/2019-10-02-ruby-2-4-9-released.md new file mode 100644 index 0000000000..d58b736220 --- /dev/null +++ b/pt/news/_posts/2019-10-02-ruby-2-4-9-released.md @@ -0,0 +1,56 @@ +--- +layout: news_post +title: "Lançado Ruby 2.4.9" +author: "usa" +translator: "jcserracampos" +date: 2019-10-02 09:00:00 +0000 +lang: pt +--- + +Ruby 2.4.9 foi lançado. + +Esta versão é um reenpacotamento da 2.4.8 porque o tarball da versão +Ruby 2.4.8 anterior não instalava. +(Veja [[Bug #16197]](https://bugs.ruby-lang.org/issues/16197) em detalhes.) +Essencialmente, não existem mudanças exceto pelo número de versão entre 2.4.8 e 2.4.9. + +Ruby 2.4 está sob o estado de fase de manutenção de segurança, até +o fim de março de 2020. Depois dessa data, manutenção de Ruby 2.4 +será finalizada. Recomendamos que comece a planejar a migração para novas +versões de Ruby, como a 2.6 ou 2.5. + +## Download + +{% assign release = site.data.releases | where: "version", "2.4.9" | first %} + +* <{{ release.url.bz2 }}> + + SIZE: {{ release.size.bz2 }} + SHA1: {{ release.sha1.bz2 }} + SHA256: {{ release.sha256.bz2 }} + SHA512: {{ release.sha512.bz2 }} + +* <{{ release.url.gz }}> + + SIZE: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + SIZE: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + SIZE: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Comentário de Versão + +Obrigado a todas as pessoas que ajudaram com esta versão. From df01df65969e31fa4580e820ed0bab24f49b93db Mon Sep 17 00:00:00 2001 From: Julio Date: Tue, 22 Oct 2019 12:02:27 -0300 Subject: [PATCH 0003/1716] Translate CVE-2019-16201 (pt) --- ...ck-regexp-digestauth-dos-cve-2019-16201.md | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 pt/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md diff --git a/pt/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md b/pt/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md new file mode 100644 index 0000000000..d005a7a743 --- /dev/null +++ b/pt/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md @@ -0,0 +1,33 @@ +--- +layout: news_post +title: "CVE-2019-16201: Regular Expression Denial of Service vulnerability of WEBrick's Digest access authentication" +author: "mame" +translator: "jcserracampos" +date: 2019-10-01 11:00:00 +0000 +tags: security +lang: pt +--- + +Foi encontrada uma vulnerabilidade de negação de serviço de expressão regular no módulo de autenticação do WEBrick. Uma pessoa atacante pode explorar essa vulnerabilidade para causar uma negação de serviço efetiva contra um serviço WEBrick. + +[CVE-2019-16201](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16201) foi designado para essa vulnerabilidade. + +Todas as pessoas usuárias de qualquer versão afetada devem atualizar assim que possível. + +## Versões Afetadas + +* Todas as versões Ruby 2.3 ou anteriores +* Ruby 2.4 series: Ruby 2.4.7 ou anteriores +* Ruby 2.5 series: Ruby 2.5.6 ou anteriores +* Ruby 2.6 series: Ruby 2.6.4 ou anteriores +* Ruby 2.7.0-preview1 +* antes do commit 36e057e26ef2104bc2349799d6c52d22bb1c7d03 + +## Reconhecimento + +Obrigado a [358](https://hackerone.com/358) por descobrir este problema. + +## Histórico + +* Originalmente publicado em 2019-10-01 11:00:00 (UTC) +* Traduzido para o português em 2019-10-21 11:00:00 (GMT-0300) From 41536960226e01c55cce97bd4d034a8e1f258ca5 Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Fri, 8 Nov 2019 22:32:20 +0100 Subject: [PATCH 0004/1716] Bundle with bundler 2.0.2 --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 7f4d6508f1..ffb1236b45 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -118,4 +118,4 @@ RUBY VERSION ruby 2.6.5p114 BUNDLED WITH - 1.17.2 + 2.0.2 From cfcb63e3264df8dba8dec7138b09e663ef540f40 Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Sat, 9 Nov 2019 12:35:02 +0900 Subject: [PATCH 0005/1716] Translate 2019-10-01 news (ko) (#2270) --- .../_posts/2019-08-28-ruby-2-5-6-released.md | 2 +- ...ode-injection-shell-test-cve-2019-16255.md | 40 +++++++++++++ ...nse-splitting-in-webrick-cve-2019-16254.md | 38 ++++++++++++ ...l-injection-file-fnmatch-cve-2019-15845.md | 38 ++++++++++++ .../_posts/2019-10-01-ruby-2-4-8-released.md | 60 +++++++++++++++++++ .../_posts/2019-10-01-ruby-2-5-7-released.md | 58 ++++++++++++++++++ .../_posts/2019-10-01-ruby-2-6-5-released.md | 57 ++++++++++++++++++ ...ck-regexp-digestauth-dos-cve-2019-16201.md | 33 ++++++++++ 8 files changed, 325 insertions(+), 1 deletion(-) create mode 100644 ko/news/_posts/2019-10-01-code-injection-shell-test-cve-2019-16255.md create mode 100644 ko/news/_posts/2019-10-01-http-response-splitting-in-webrick-cve-2019-16254.md create mode 100644 ko/news/_posts/2019-10-01-nul-injection-file-fnmatch-cve-2019-15845.md create mode 100644 ko/news/_posts/2019-10-01-ruby-2-4-8-released.md create mode 100644 ko/news/_posts/2019-10-01-ruby-2-5-7-released.md create mode 100644 ko/news/_posts/2019-10-01-ruby-2-6-5-released.md create mode 100644 ko/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md diff --git a/ko/news/_posts/2019-08-28-ruby-2-5-6-released.md b/ko/news/_posts/2019-08-28-ruby-2-5-6-released.md index 4ce493dc5a..d5729fcc8b 100644 --- a/ko/news/_posts/2019-08-28-ruby-2-5-6-released.md +++ b/ko/news/_posts/2019-08-28-ruby-2-5-6-released.md @@ -50,4 +50,4 @@ lang: ko 이 릴리스를 만드는 데 도움을 준 모든 분에게 감사드립니다. -이 릴리스를 포함한 루비 2.5의 유지보수는 Ruby Association의 "루비 안정 버전에 관한 협의"에 기반에 이루어집니다. +이 릴리스를 포함한 루비 2.5의 유지보수는 Ruby Association의 "루비 안정 버전에 관한 협의"에 기반해 이루어집니다. diff --git a/ko/news/_posts/2019-10-01-code-injection-shell-test-cve-2019-16255.md b/ko/news/_posts/2019-10-01-code-injection-shell-test-cve-2019-16255.md new file mode 100644 index 0000000000..d3e0f0846e --- /dev/null +++ b/ko/news/_posts/2019-10-01-code-injection-shell-test-cve-2019-16255.md @@ -0,0 +1,40 @@ +--- +layout: news_post +title: "CVE-2019-16255: Shell#[] 및 Shell#test의 코드 주입 취약점" +author: "mame" +translator: "yous" +date: 2019-10-01 11:00:00 +0000 +tags: security +lang: ko +--- + +표준 라이브러리(lib/shell.rb)의 Shell#[] 및 Shell#test에서 코드 주입 취약점이 발견되었습니다. +이 취약점은 CVE 아이디 [CVE-2019-16255](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16255)가 할당되었습니다. + +## 세부 내용 + +lib/shell.rb에 정의된 Shell#[]과 그 별칭 Shell#test는 첫 번째 인자(즉, '커맨드' 인자)가 신뢰할 수 없는 데이터일 경우 코드 주입을 허용하게 됩니다. +공격자는 이를 악용해 임의의 루비 메서드를 호출할 수 있습니다. + +일반적으로 Shell의 메서드에 신뢰할 수 없는 데이터를 넘기는 것은 위험합니다. +사용자는 절대 이러한 일을 해서는 안됩니다. +하지만 이번 경우엔 Shell#[] 및 Shell#test의 목적이 파일 테스트라는 점을 고려해 취약점으로 분류했습니다. + +해당 버전을 사용하는 모든 사용자는 즉시 업그레이드하기 바랍니다. + +## 해당 버전 + +* 루비 2.3 이하의 모든 버전 +* 루비 2.4 버전대: 루비 2.4.7 이하 +* 루비 2.5 버전대: 루비 2.5.6 이하 +* 루비 2.6 버전대: 루비 2.6.4 이하 +* 루비 2.7.0-preview1 + +## 감사의 글 + +이 문제를 발견해 준 [ooooooo_q](https://hackerone.com/ooooooo_q)에게 감사를 표합니다. + +## 수정 이력 + +* 2019-10-01 11:00:00 (UTC) 최초 공개 +* 2019-10-05 12:00:00 (UTC) 사소한 철자 수정 diff --git a/ko/news/_posts/2019-10-01-http-response-splitting-in-webrick-cve-2019-16254.md b/ko/news/_posts/2019-10-01-http-response-splitting-in-webrick-cve-2019-16254.md new file mode 100644 index 0000000000..9e9052b2dc --- /dev/null +++ b/ko/news/_posts/2019-10-01-http-response-splitting-in-webrick-cve-2019-16254.md @@ -0,0 +1,38 @@ +--- +layout: news_post +title: "CVE-2019-16254: WEBrick의 HTTP 응답 분할 취약점(추가 수정)" +author: "mame" +translator: "yous" +date: 2019-10-01 11:00:00 +0000 +tags: security +lang: ko +--- + +루비에 포함된 WEBrick에 HTTP 응답 분할 취약점이 있습니다. +이 취약점은 CVE 아이디 [CVE-2019-16254](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16254)가 할당되었습니다. + +## 세부 내용 + +WEBrick을 사용하는 프로그램이 응답 헤더에 신뢰할 수 없는 입력을 삽입한다면, 공격자가 줄바꿈 문자를 넣어 헤더를 분할하고, 악의적인 내용을 주입해 클라이언트를 속일 수 있습니다. + +이 문제는 [CVE-2017-17742](https://www.ruby-lang.org/en/news/2018/03/28/http-response-splitting-in-webrick-cve-2017-17742/)와 동일합니다. +이전 수정은 CRLF 벡터에 대해 대응했지만 따로 떨어진 CR과 LF에 대해서는 대응하지 않았습니다. + +해당 버전을 사용하는 모든 사용자는 즉시 업그레이드하기 바랍니다. + +## 해당 버전 + +* 루비 2.3 이하의 모든 버전 +* 루비 2.4 버전대: 루비 2.4.7 이하 +* 루비 2.5 버전대: 루비 2.5.6 이하 +* 루비 2.6 버전대: 루비 2.6.4 이하 +* 루비 2.7.0-preview1 +* 3ce238b5f9795581eb84114dcfbdf4aa086bfecc 커밋 이전의 master + +## 감사의 글 + +이 문제를 발견해 준 [znz](https://hackerone.com/znz)에게 감사를 표합니다. + +## 수정 이력 + +* 2019-10-01 11:00:00 (UTC) 최초 공개 diff --git a/ko/news/_posts/2019-10-01-nul-injection-file-fnmatch-cve-2019-15845.md b/ko/news/_posts/2019-10-01-nul-injection-file-fnmatch-cve-2019-15845.md new file mode 100644 index 0000000000..3fcf2bc18c --- /dev/null +++ b/ko/news/_posts/2019-10-01-nul-injection-file-fnmatch-cve-2019-15845.md @@ -0,0 +1,38 @@ +--- +layout: news_post +title: "CVE-2019-15845: File.fnmatch 및 File.fnmatch?의 NUL 주입 취약점" +author: "mame" +translator: "yous" +date: 2019-10-01 11:00:00 +0000 +tags: security +lang: ko +--- + +루비 빌트인 메서드(`File.fnmatch` 및 `File.fnmatch?`)의 NUL 주입 취약점이 발견되었습니다. +경로 패턴 파라미터를 변경할 수 있는 공격자가 프로그램 저자의 의도에 반해 경로 매칭을 통과할 수 있도록 악용할 수 있습니다. +이 취약점에 [CVE-2019-15845](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-15845)가 할당되었습니다. + +## 세부 내용 + +빌트인 메서드 `File.fnmatch`와 그 별칭 `File.fnmatch?`는 첫 번째 파라미터로 경로 패턴을 받습니다. +패턴에 NUL 문자(`\0`)가 포함되었을 경우, 메서드는 NUL 바이트 직전에서 경로 패턴이 끝났다고 인식합니다. +이 때문에 스크립트에서 외부 입력을 패턴 인자로 사용하면, 공격자가 두 번째 인자인 경로를 잘못 매칭되도록 만들 수 있습니다. + +해당 버전을 사용하는 모든 사용자는 즉시 업그레이드하기 바랍니다. + +## 해당 버전 + +* 루비 2.3 이하의 모든 버전 +* 루비 2.4 버전대: 루비 2.4.7 이하 +* 루비 2.5 버전대: 루비 2.5.6 이하 +* 루비 2.6 버전대: 루비 2.6.4 이하 +* 루비 2.7.0-preview1 +* a0a2640b398cffd351f87d3f6243103add66575b 커밋 이전의 master + +## 감사의 글 + +이 문제를 발견해 준 [ooooooo_q](https://hackerone.com/ooooooo_q)에게 감사를 표합니다. + +## 수정 이력 + +* 2019-10-01 11:00:00 (UTC) 최초 공개 diff --git a/ko/news/_posts/2019-10-01-ruby-2-4-8-released.md b/ko/news/_posts/2019-10-01-ruby-2-4-8-released.md new file mode 100644 index 0000000000..9e69025d39 --- /dev/null +++ b/ko/news/_posts/2019-10-01-ruby-2-4-8-released.md @@ -0,0 +1,60 @@ +--- +layout: news_post +title: "루비 2.4.8 릴리스" +author: "usa" +translator: "yous" +date: 2019-10-01 11:00:00 +0000 +lang: ko +--- + +루비 2.4.8이 릴리스되었습니다. + +이 릴리스는 보안 수정을 포함합니다. +자세한 사항은 아래 글을 확인해보세요. + +* [CVE-2019-16255: Shell#[] 및 Shell#test의 코드 주입 취약점]({% link ko/news/_posts/2019-10-01-code-injection-shell-test-cve-2019-16255.md %}) +* [CVE-2019-16254: WEBrick의 HTTP 응답 분할 취약점(추가 수정)]({% link ko/news/_posts/2019-10-01-http-response-splitting-in-webrick-cve-2019-16254.md %}) +* [CVE-2019-15845: File.fnmatch 및 File.fnmatch?의 NUL 주입 취약점]({% link ko/news/_posts/2019-10-01-nul-injection-file-fnmatch-cve-2019-15845.md %}) +* [CVE-2019-16201: WEBrick Digest 인증의 정규 표현식 서비스 거부 취약점]({% link ko/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md %}) + +루비 2.4는 현재 보안 유지보수 단계이고, 기한은 2020년 3월입니다. 이날 이후 루비 +2.4의 유지보수는 종료됩니다. 루비 2.6, 2.5 등의 새 루비 버전으로 업그레이드할 +계획을 세우길 바랍니다. + +__업데이트(10월 2일 4:00 UTC):__ 루비 2.4.8의 릴리스 tarball이 _루트가 아닌_ 사용자에게 설치되지 않는 문제를 해결하고 있습니다. 자세한 업데이트는 [[Bug #16197]](https://bugs.ruby-lang.org/issues/16197)에서 받아보세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "2.4.8" | first %} + +* <{{ release.url.bz2 }}> + + SIZE: {{ release.size.bz2 }} + SHA1: {{ release.sha1.bz2 }} + SHA256: {{ release.sha256.bz2 }} + SHA512: {{ release.sha512.bz2 }} + +* <{{ release.url.gz }}> + + SIZE: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + SIZE: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + SIZE: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 릴리스 코멘트 + +이 릴리스를 만드는 데 도움을 준 모든 분, 특히 취약점을 보고해준 분에게 감사드립니다. diff --git a/ko/news/_posts/2019-10-01-ruby-2-5-7-released.md b/ko/news/_posts/2019-10-01-ruby-2-5-7-released.md new file mode 100644 index 0000000000..e8c4f69bd1 --- /dev/null +++ b/ko/news/_posts/2019-10-01-ruby-2-5-7-released.md @@ -0,0 +1,58 @@ +--- +layout: news_post +title: "루비 2.5.7 릴리스" +author: "usa" +translator: "yous" +date: 2019-10-01 11:00:00 +0000 +lang: ko +--- + +루비 2.5.7이 릴리스되었습니다. + +이 릴리스는 아래 보안 수정을 포함합니다. +자세한 사항은 아래 글을 확인해보세요. + +* [CVE-2019-16255: Shell#[] 및 Shell#test의 코드 주입 취약점]({% link ko/news/_posts/2019-10-01-code-injection-shell-test-cve-2019-16255.md %}) +* [CVE-2019-16254: WEBrick의 HTTP 응답 분할 취약점(추가 수정)]({% link ko/news/_posts/2019-10-01-http-response-splitting-in-webrick-cve-2019-16254.md %}) +* [CVE-2019-15845: File.fnmatch 및 File.fnmatch?의 NUL 주입 취약점]({% link ko/news/_posts/2019-10-01-nul-injection-file-fnmatch-cve-2019-15845.md %}) +* [CVE-2019-16201: WEBrick Digest 인증의 정규 표현식 서비스 거부 취약점]({% link ko/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md %}) + +자세한 내용은 [커밋 로그](https://github.com/ruby/ruby/compare/v2_5_6...v2_5_7)를 확인해주세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "2.5.7" | first %} + +* <{{ release.url.bz2 }}> + + SIZE: {{ release.size.bz2 }} + SHA1: {{ release.sha1.bz2 }} + SHA256: {{ release.sha256.bz2 }} + SHA512: {{ release.sha512.bz2 }} + +* <{{ release.url.gz }}> + + SIZE: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + SIZE: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + SIZE: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 릴리스 코멘트 + +이 릴리스를 만드는 데 도움을 준 모든 분에게 감사드립니다. + +이 릴리스를 포함한 루비 2.5의 유지보수는 Ruby Association의 "루비 안정 버전에 관한 협의"에 기반해 이루어집니다. diff --git a/ko/news/_posts/2019-10-01-ruby-2-6-5-released.md b/ko/news/_posts/2019-10-01-ruby-2-6-5-released.md new file mode 100644 index 0000000000..d50ccccad1 --- /dev/null +++ b/ko/news/_posts/2019-10-01-ruby-2-6-5-released.md @@ -0,0 +1,57 @@ +--- +layout: news_post +title: "루비 2.6.5 릴리스" +author: "nagachika" +translator: "yous" +date: 2019-10-01 11:00:00 +0000 +lang: ko +--- + +루비 2.6.5가 릴리스되었습니다. + +이 릴리스는 보안 수정을 포함합니다. +자세한 사항은 아래 글을 확인해보세요. + +* [CVE-2019-16255: Shell#[] 및 Shell#test의 코드 주입 취약점]({% link ko/news/_posts/2019-10-01-code-injection-shell-test-cve-2019-16255.md %}) +* [CVE-2019-16254: WEBrick의 HTTP 응답 분할 취약점(추가 수정)]({% link ko/news/_posts/2019-10-01-http-response-splitting-in-webrick-cve-2019-16254.md %}) +* [CVE-2019-15845: File.fnmatch 및 File.fnmatch?의 NUL 주입 취약점]({% link ko/news/_posts/2019-10-01-nul-injection-file-fnmatch-cve-2019-15845.md %}) +* [CVE-2019-16201: WEBrick Digest 인증의 정규 표현식 서비스 거부 취약점]({% link ko/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md %}) + +자세한 내용은 [커밋 로그](https://github.com/ruby/ruby/compare/v2_6_4...v2_6_5)를 확인해주세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "2.6.5" | first %} + +* <{{ release.url.bz2 }}> + + SIZE: {{ release.size.bz2 }} + SHA1: {{ release.sha1.bz2 }} + SHA256: {{ release.sha256.bz2 }} + SHA512: {{ release.sha512.bz2 }} + +* <{{ release.url.gz }}> + + SIZE: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + SIZE: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + SIZE: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 릴리스 코멘트 + +많은 커미터, 개발자, 버그를 신고해준 사용자들이 이 릴리스를 만드는 데 도움을 주었습니다. +그들의 기여에 감사드립니다. diff --git a/ko/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md b/ko/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md new file mode 100644 index 0000000000..91bc81a0e4 --- /dev/null +++ b/ko/news/_posts/2019-10-01-webrick-regexp-digestauth-dos-cve-2019-16201.md @@ -0,0 +1,33 @@ +--- +layout: news_post +title: "CVE-2019-16201: WEBrick Digest 인증의 정규 표현식 서비스 거부 취약점" +author: "mame" +translator: "yous" +date: 2019-10-01 11:00:00 +0000 +tags: security +lang: ko +--- + +WEBrick의 Digest 인증 모듈에서 정규 표현식 서비스 거부 취약점이 발견되었습니다. +공격자는 이를 악용해 WEBrick 서비스에 대해 서비스 거부 공격을 할 수 있습니다. + +이 취약점에 [CVE-2019-16201](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16201)이 할당되었습니다. + +해당 버전을 사용하는 모든 사용자는 즉시 업그레이드하기 바랍니다. + +## 해당 버전 + +* 루비 2.3 이하의 모든 버전 +* 루비 2.4 버전대: 루비 2.4.7 이하 +* 루비 2.5 버전대: 루비 2.5.6 이하 +* 루비 2.6 버전대: 루비 2.6.4 이하 +* 루비 2.7.0-preview1 +* 36e057e26ef2104bc2349799d6c52d22bb1c7d03 커밋 이전의 master + +## 감사의 글 + +이 문제를 발견해 준 [358](https://hackerone.com/358)에게 감사를 표합니다. + +## 수정 이력 + +* 2019-10-01 11:00:00 (UTC) 최초 공개 From 4d99ca36fe62ff15d3df2cc46556fc5d0fee167a Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Sat, 9 Nov 2019 16:14:24 +0100 Subject: [PATCH 0006/1716] Add GitHub actions workflow for CI tests --- .github/workflows/ci.yml | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000000..00596eb00b --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,36 @@ +name: ci + +on: [push, pull_request] + +jobs: + build: + name: build (${{ matrix.ruby }}) + + strategy: + matrix: + ruby: [2.6.3] + + runs-on: ubuntu-latest + + env: + # override the Ruby version specified in the Gemfile + CUSTOM_RUBY_VERSION: ${{ matrix.ruby }} + + steps: + - name: Dump environment + run: env | sort + - name: Checkout ruby/www.ruby-lang.org + uses: actions/checkout@v1 + with: + fetch-depth: 1 + - name: Setup Ruby + uses: actions/setup-ruby@v1 + with: + ruby-version: ${{ matrix.ruby }} + architecture: x64 + - name: Install bundler + run: gem install bundler --no-document + - name: Install gem bundle + run: bundle install + - name: Run tests + run: bundle exec rake ci From 3d53b485770f4f5ceeddc5429f86e0a715cdec57 Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Sat, 9 Nov 2019 16:14:29 +0100 Subject: [PATCH 0007/1716] Cache gem dependencies for CI tests --- .github/workflows/ci.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 00596eb00b..5cc5d08fec 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,9 +28,14 @@ jobs: with: ruby-version: ${{ matrix.ruby }} architecture: x64 + - name: Cache gem bundle + uses: actions/cache@v1 + with: + path: vendor/bundle + key: ${{ runner.os }}-bundle-${{ hashFiles('**/Gemfile.lock') }} - name: Install bundler run: gem install bundler --no-document - name: Install gem bundle - run: bundle install + run: bundle install --path vendor/bundle - name: Run tests run: bundle exec rake ci From 6e9d2a8185c59f375c45bd88f713140e99a60e35 Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Sat, 9 Nov 2019 16:14:33 +0100 Subject: [PATCH 0008/1716] Add workflow status badge for CI tests --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 59a549e715..b038875209 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,8 @@ www.ruby-lang.org [![Join the chat at https://gitter.im/ruby/www.ruby-lang.org](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/ruby/www.ruby-lang.org?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) +[![Build Status](https://github.com/ruby/www.ruby-lang.org/workflows/ci/badge.svg)](https://github.com/ruby/www.ruby-lang.org/actions?query=branch%3Amaster) + [![Build Status](https://travis-ci.org/ruby/www.ruby-lang.org.svg?branch=master)](https://travis-ci.org/ruby/www.ruby-lang.org) This is the [Jekyll](http://www.jekyllrb.com/) source of From 9f4e6bc2abf8f2678ad87562aebd21e7ff3ccfbb Mon Sep 17 00:00:00 2001 From: Vagish Date: Sun, 20 Oct 2019 12:51:18 -0400 Subject: [PATCH 0009/1716] Update Silicon Valley Ruby Conference section (en) * Remove dead link for SVForum. * Update information on Silicon Valley Ruby Conference. Closes #2179. --- en/community/conferences/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/en/community/conferences/index.md b/en/community/conferences/index.md index 3cce86373f..95d1d64b95 100644 --- a/en/community/conferences/index.md +++ b/en/community/conferences/index.md @@ -43,8 +43,9 @@ event dates, location, CFP (Call For Proposals) and Registration information. to offset expenses for local and regional groups wanting to organize events. -Ruby Central has also teamed up with [SVForum][7] (previously known as SDForum) -to produce the Silicon Valley Ruby Conference, entering its second year in 2007. +Ruby Central had also teamed up with SVForum (previously known as SDForum) +to produce the Silicon Valley Ruby Conference, which ran for 2 years for 2006 +and 2007. [WindyCityRails][9] is an annual gathering for all who are passionate about Ruby on Rails. The Chicago-based conference has served the Ruby @@ -78,7 +79,6 @@ O’Reilly), and Canada on Rails. [3]: http://rubykaigi.org/ [4]: http://euruko.org [6]: http://rubycentral.org/community/grant -[7]: http://www.svforum.org [9]: http://windycityrails.org [10]: http://conferences.oreillynet.com/os2006/ [11]: http://www.rubyonrails.org From 91e5be4a355511bb3522f96ce8be353439264ed8 Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Sat, 9 Nov 2019 18:44:28 +0100 Subject: [PATCH 0010/1716] Small language fix on community page (en) --- en/community/conferences/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/community/conferences/index.md b/en/community/conferences/index.md index 95d1d64b95..7d424bd9ba 100644 --- a/en/community/conferences/index.md +++ b/en/community/conferences/index.md @@ -44,8 +44,8 @@ to offset expenses for local and regional groups wanting to organize events. Ruby Central had also teamed up with SVForum (previously known as SDForum) -to produce the Silicon Valley Ruby Conference, which ran for 2 years for 2006 -and 2007. +to produce the Silicon Valley Ruby Conference, which took place in 2006 +and in 2007. [WindyCityRails][9] is an annual gathering for all who are passionate about Ruby on Rails. The Chicago-based conference has served the Ruby From 9043acbd2a60930007fa53bc0551d5866d4b44b7 Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Sat, 9 Nov 2019 22:01:59 +0100 Subject: [PATCH 0011/1716] Also run CI tests on macOS --- .github/workflows/ci.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5cc5d08fec..c873854f93 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,13 +4,15 @@ on: [push, pull_request] jobs: build: - name: build (${{ matrix.ruby }}) + name: build (${{ matrix.ruby }} / ${{ matrix.os }}) strategy: matrix: ruby: [2.6.3] + os: [ubuntu-latest, macos-latest] + fail-fast: false - runs-on: ubuntu-latest + runs-on: ${{ matrix.os }} env: # override the Ruby version specified in the Gemfile From 7856f2a69bd8687bc2741ab79bbbbe9c83888877 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0smail=20Ar=C4=B1l=C4=B1k?= Date: Thu, 7 Nov 2019 09:35:03 +0300 Subject: [PATCH 0012/1716] Update config file for translated content (tr) --- _config.yml | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/_config.yml b/_config.yml index 580202ccaa..9686a27af1 100644 --- a/_config.yml +++ b/_config.yml @@ -232,8 +232,8 @@ locales: url: /tr/community - text: Haberler url: /tr/news -# - text: Güvenlik -# url: /tr/security + - text: Güvenlik + url: /tr/security - text: Ruby Hakkında url: /tr/about vi: @@ -1399,26 +1399,26 @@ locales: url: /tr/documentation/success-stories/ participate: text: Arkadaşça ve büyüyen bir topluluğa katılın. -# mailing_lists: -# text: Mail Listeleri -# url: /tr/community/mailing-lists/ -# description: | -# Tüm dünyadan Ruby programcılarıyla görüşün. -# user_groups: -# text: Kullanıcı Grupları -# url: /tr/community/user-groups/ -# description: | -# Bölgenizdeki Ruby'cilerle temas kurun. -# weblogs: -# text: Web günlükleri -# url: /tr/community/weblogs/ -# description: | -# Rubyde neler olduğunu takip edin. -# ruby_core: -# text: Ruby Core -# url: /tr/community/ruby-core/ -# description: | -# En son Rubynin kaba taraflarının parlatılmasına yardımcı olun. + mailing_lists: + text: Mail Listeleri + url: /tr/community/mailing-lists/ + description: | + Tüm dünyadan Ruby programcılarıyla görüşün. + user_groups: + text: Kullanıcı Grupları + url: /tr/community/user-groups/ + description: | + Bölgenizdeki Ruby'cilerle temas kurun. + weblogs: + text: Web günlükleri + url: /tr/community/weblogs/ + description: | + Rubyde neler olduğunu takip edin. + ruby_core: + text: Ruby Core + url: /tr/community/ruby-core/ + description: | + En son Rubynin kaba taraflarının parlatılmasına yardımcı olun. issue_tracking: text: Sorun Takibi url: https://bugs.ruby-lang.org/ From e62a9f5c9e058db0f7be51af50ea343ba3a3f881 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0smail=20Ar=C4=B1l=C4=B1k?= Date: Sun, 10 Nov 2019 13:54:10 +0300 Subject: [PATCH 0013/1716] Add syntactically necessary quotes (tr) --- _config.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/_config.yml b/_config.yml index 9686a27af1..7a3b91b673 100644 --- a/_config.yml +++ b/_config.yml @@ -1413,12 +1413,12 @@ locales: text: Web günlükleri url: /tr/community/weblogs/ description: | - Rubyde neler olduğunu takip edin. + Ruby'de neler olduğunu takip edin. ruby_core: text: Ruby Core url: /tr/community/ruby-core/ description: | - En son Rubynin kaba taraflarının parlatılmasına yardımcı olun. + En son Ruby'nin kaba taraflarının parlatılmasına yardımcı olun. issue_tracking: text: Sorun Takibi url: https://bugs.ruby-lang.org/ From 941f87c4c9b064a8bfa9ab3926cad9e110aa9df9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0smail=20Ar=C4=B1l=C4=B1k?= Date: Sun, 10 Nov 2019 22:52:36 +0300 Subject: [PATCH 0014/1716] Update Silicon Valley Ruby Conference section (tr) (#2273) Sync with `en` changes * 9f4e6bc2abf8f2678ad87562aebd21e7ff3ccfbb * 91e5be4a355511bb3522f96ce8be353439264ed8 --- tr/community/conferences/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tr/community/conferences/index.md b/tr/community/conferences/index.md index ba7a307044..52a4ec40b8 100644 --- a/tr/community/conferences/index.md +++ b/tr/community/conferences/index.md @@ -31,7 +31,7 @@ Burada etkinlik tarihlerini, konumlarını, CFP'leri (Call For Proposals) ve kay [Ruby Central][2], [Bölgesel Konferans Hibe Programı][6]nı yönetmektedir. Bu program, etkinlikler düzenlemek isteyen yerel ve bölgesel grupların masraflarını denkleştirmeyi amaçlamaktadır. -Ruby Central ayrıca 2006 yılında Silikon Vadisi Ruby Konferansı'nı düzenlemek için [SVForum][7] (önceden SDForum) ile takım halinde çalışmıştır. +Ruby Central ayrıca 2006 ve 2007 yılında Silikon Vadisi Ruby Konferansı'nı düzenlemek için [SVForum][7] (önceden SDForum) ile takım halinde çalışmıştır. [WindyCityRails][9], Ruby on Rails konusunda tutkulu olan herkesi bir araya getiren yıllık bir Ruby konferansıdır. Chicago merkezli konferans, Ruby topluluğuna 2008'den beri hizmet etmektedir. From 58a9720903a2efb4a8753157f83765acec095d2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0smail=20Ar=C4=B1l=C4=B1k?= Date: Sun, 10 Nov 2019 23:12:59 +0300 Subject: [PATCH 0015/1716] Specify that tr language is maintained (#2260) * remove unmaintained notice * redirect to `tr` from /index.html --- index.html | 1 + tr/index.html | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/index.html b/index.html index 4af58b1ad3..a3024b2082 100644 --- a/index.html +++ b/index.html @@ -11,6 +11,7 @@ "ja": "ja", "ko": "ko", "pt": "pt", + "tr": "tr", "zh-CN": "zh_cn", "zh-TW": "zh_tw" }; diff --git a/tr/index.html b/tr/index.html index c4852a0068..1dfc148092 100644 --- a/tr/index.html +++ b/tr/index.html @@ -36,5 +36,3 @@

Ruby...

--- - -{% include unmaintained.html %} From 634d6e7dc80c45a028190b0f9bf6a1177403c38b Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Tue, 12 Nov 2019 11:40:20 +0900 Subject: [PATCH 0016/1716] Translate 2019-10-02 news (ko) (#2274) --- .../_posts/2019-10-02-ruby-2-4-9-released.md | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 ko/news/_posts/2019-10-02-ruby-2-4-9-released.md diff --git a/ko/news/_posts/2019-10-02-ruby-2-4-9-released.md b/ko/news/_posts/2019-10-02-ruby-2-4-9-released.md new file mode 100644 index 0000000000..9a7f1caf83 --- /dev/null +++ b/ko/news/_posts/2019-10-02-ruby-2-4-9-released.md @@ -0,0 +1,54 @@ +--- +layout: news_post +title: "루비 2.4.9 릴리스" +author: "usa" +translator: "yous" +date: 2019-10-02 09:00:00 +0000 +lang: ko +--- + +루비 2.4.9가 릴리스되었습니다. + +이 릴리스는 이전 루비 2.4.8 릴리스 tarball이 설치되지 않아서 2.4.8을 다시 패키징한 것입니다. +(자세한 사항은 [[Bug #16197]](https://bugs.ruby-lang.org/issues/16197)을 참조하세요.) +버전 숫자 2.4.8과 2.4.9 이외의 중요한 변경 사항은 없습니다. + +루비 2.4는 현재 보안 유지보수 단계이고, 기한은 2020년 3월입니다. 이날 이후 루비 +2.4의 유지보수는 종료됩니다. 루비 2.6, 2.5 등의 새 루비 버전으로 업그레이드할 +계획을 세우길 바랍니다. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "2.4.9" | first %} + +* <{{ release.url.bz2 }}> + + SIZE: {{ release.size.bz2 }} + SHA1: {{ release.sha1.bz2 }} + SHA256: {{ release.sha256.bz2 }} + SHA512: {{ release.sha512.bz2 }} + +* <{{ release.url.gz }}> + + SIZE: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + SIZE: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + SIZE: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 릴리스 코멘트 + +이 릴리스를 만드는 데 도움을 준 모든 분에게 감사드립니다. From 4b6998a870e3c0336b5ef7eb83e957f3aad582e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0smail=20Ar=C4=B1l=C4=B1k?= Date: Wed, 13 Nov 2019 10:15:40 +0300 Subject: [PATCH 0017/1716] Remove unused Turkish IRC Channel (tr) (#2275) --- tr/community/index.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/tr/community/index.md b/tr/community/index.md index 9731e95fbc..0384bd1c10 100644 --- a/tr/community/index.md +++ b/tr/community/index.md @@ -25,9 +25,6 @@ başlangıç önerisi var: e-posta listeleri cevap aramak için başvuracağınız ilk kaynaklardan biridir. -[Ruby Türkiye IRC Kanalı](irc://irc.freenode.net/ruby-tr) -: Ruby Türkiye IRC Kanalı. - [Ruby Türkiye Slack Kanalı][ruby-turkiye-slack] : Kendi dilinizde sohbet etmek için IRC kanalına alternatif olarak oldukça popüler olan bu Slack kanalını da kullanabilirsiniz. From 5bd0eb9dc687bc313add4da049eb51ed5cca5d1c Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Wed, 13 Nov 2019 21:37:08 +0100 Subject: [PATCH 0018/1716] Remove dead link for SVForum (tr) Fixes #2273 (commit 941f87c4c9b064a8bfa9ab3926cad9e110aa9df9). --- tr/community/conferences/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tr/community/conferences/index.md b/tr/community/conferences/index.md index 52a4ec40b8..2266a5e6bf 100644 --- a/tr/community/conferences/index.md +++ b/tr/community/conferences/index.md @@ -31,7 +31,8 @@ Burada etkinlik tarihlerini, konumlarını, CFP'leri (Call For Proposals) ve kay [Ruby Central][2], [Bölgesel Konferans Hibe Programı][6]nı yönetmektedir. Bu program, etkinlikler düzenlemek isteyen yerel ve bölgesel grupların masraflarını denkleştirmeyi amaçlamaktadır. -Ruby Central ayrıca 2006 ve 2007 yılında Silikon Vadisi Ruby Konferansı'nı düzenlemek için [SVForum][7] (önceden SDForum) ile takım halinde çalışmıştır. +Ruby Central ayrıca 2006 ve 2007 yılında Silikon Vadisi Ruby Konferansı'nı +düzenlemek için SVForum (önceden SDForum) ile takım halinde çalışmıştır. [WindyCityRails][9], Ruby on Rails konusunda tutkulu olan herkesi bir araya getiren yıllık bir Ruby konferansıdır. Chicago merkezli konferans, Ruby topluluğuna 2008'den beri hizmet etmektedir. @@ -61,7 +62,6 @@ Ayrıca Ruby Central'in [RailsConf][12]'u, [RailsConf Avrupa][13] (2006'da Ruby [3]: http://rubykaigi.org/ [4]: http://euruko.org [6]: http://rubycentral.org/community/grant -[7]: http://www.svforum.org [9]: http://windycityrails.org [10]: http://conferences.oreillynet.com/os2006/ [11]: http://www.rubyonrails.org From 51d91b1e2be47ba9d1f94e2ce9f3ba563ae46b61 Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Wed, 13 Nov 2019 22:04:12 +0100 Subject: [PATCH 0019/1716] Use relative path for hashFiles() in CI workflow The hashFiles() function for GitHub workflows has just been fixed to work with paths relative to GITHUB_WORKSPACE, so the workaround with `**/Gemfile.lock` is not needed any more. --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c873854f93..fb3b5f49ca 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,7 +34,7 @@ jobs: uses: actions/cache@v1 with: path: vendor/bundle - key: ${{ runner.os }}-bundle-${{ hashFiles('**/Gemfile.lock') }} + key: ${{ runner.os }}-bundle-${{ hashFiles('Gemfile.lock') }} - name: Install bundler run: gem install bundler --no-document - name: Install gem bundle From 075d25b3329433d64bbe1cb6254f80c6971ccd13 Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Wed, 13 Nov 2019 20:26:45 +0900 Subject: [PATCH 0020/1716] Fix typo of Fukuoka Ruby 2020 (en) --- en/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md b/en/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md index 33699c97d1..44c8d127a4 100644 --- a/en/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md +++ b/en/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md @@ -17,7 +17,7 @@ Entry Deadline: December 11, 2019 ![Fukuoka Ruby Award](http://www.digitalfukuoka.jp/javascripts/kcfinder/upload/images/fukuokarubyaward2017.png) -Matz and a group of panelists will select the winners of the Fukuoka Competition.The grand prize for the Fukuoka Competition is 1 million yen. Past grand prize winners include Rhomobile (USA) and APEC Climate Center (Korea). +Matz and a group of panelists will select the winners of the Fukuoka Competition. The grand prize for the Fukuoka Competition is 1 million yen. Past grand prize winners include Rhomobile (USA) and APEC Climate Center (Korea). [http://myfukuoka.com/category/news/ruby-news/](http://myfukuoka.com/category/news/ruby-news/) From de1a6e7548f606602e2dae2cd93310cd319b784e Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Sat, 16 Nov 2019 10:13:41 +0900 Subject: [PATCH 0021/1716] Translate Fukuoka Ruby Award 2020 (ko) (#2276) --- .../2019-10-16-fukuoka-ruby-award-2020.md | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 ko/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md diff --git a/ko/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md b/ko/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md new file mode 100644 index 0000000000..fdf94a1daa --- /dev/null +++ b/ko/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md @@ -0,0 +1,40 @@ +--- +layout: news_post +title: "2020 후쿠오카 루비 경진대회 - Matz가 심사합니다" +author: "Fukuoka Ruby" +translator: "yous" +date: 2019-10-16 00:00:00 +0000 +lang: ko +--- + +루비스트 여러분께, + +일본 후쿠오카 현은 'Matz' 마츠모토 씨와 함께 여러분을 다음 경진대회에 초대합니다. +흥미로운 루비 프로그램을 개발하셨다면 한번 지원해보세요. + +2020 후쿠오카 루비 경진대회 - 대상 - 백만 엔! + +접수 마감: 2019년 12월 11일 + +![Fukuoka Ruby Award](http://www.digitalfukuoka.jp/javascripts/kcfinder/upload/images/fukuokarubyaward2017.png) + +Matz를 포함한 패널들이 후쿠오카 경진대회의 우승자를 선택합니다. +후쿠오카 경진대회의 대상에게는 백만 엔의 상금이 주어집니다. +이전 이 대회의 우승자로는 Rhomobile(미국)과 APEC 기후 센터(한국)가 있습니다. + + + +대회에 참가하는 프로그램은 완전히 루비로 작성될 필요는 없습니다. +하지만 루비의 특징을 살려야 합니다. + +프로젝트는 지난 12개월 동안 개발되거나 완료된 것만이 유효합니다. +추가 설명이나 참가를 원하신다면 다음 웹사이트를 방문하세요. + + 또는 + + +지원서는 award@f-ruby.com으로 보내주세요. + +"Matz는 코드를 주의깊게 테스트하고 읽어볼 것이므로, 지원할 만한 충분한 가치가 있을 것입니다! 대회 참가는 무료입니다." + +감사합니다! From 3fbf3e29047b2f058d35086c211a28803ab37938 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Sun, 24 Nov 2019 00:14:49 +0900 Subject: [PATCH 0022/1716] Ruby 2.7.0-preview3 Released --- _data/downloads.yml | 2 +- _data/releases.yml | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/_data/downloads.yml b/_data/downloads.yml index 40f961b5bc..c632d53ecb 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,7 +4,7 @@ # optional preview: - - 2.7.0-preview2 + - 2.7.0-preview3 stable: diff --git a/_data/releases.yml b/_data/releases.yml index 03c02a0675..8225d5843f 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,20 @@ # 2.7 series +- version: 2.7.0-preview3 + date: 2019-11-22 + post: /en/news/2019/11/22/ruby-2-7-0-preview3-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.zip + bz2: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.tar.bz2 + xz: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.tar.xz + sha256: + gz: 54300275a17a0367bab91ad54b51faf3d45955041f0bf69a4612fe7b0179f4f2 + zip: 3b227bf242de646f7479ec145bc9445e5fc6a24648a3912bfb8ac02b7effcdb7 + bz2: 09de8d3a014904142b7bc111195ba8094f6eeb59eb529f7bb0512d8b0fc06f5d + xz: aaf3d78e2d7b3d42c668f9f619a016507771552e207f7729b3feba19b13c591a + - version: 2.7.0-preview2 date: 2019-10-22 post: /en/news/2019/10/22/ruby-2-7-0-preview2-released/ From f24c81864b0680c91c56802247078ff1a1338f07 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Sun, 24 Nov 2019 01:28:44 +0900 Subject: [PATCH 0023/1716] Ruby 2.7.0-preview3 Released --- _data/releases.yml | 2 +- ...2019-11-23-ruby-2-7-0-preview3-released.md | 279 ++++++++++++++++++ ...2019-11-23-ruby-2-7-0-preview3-released.md | 245 +++++++++++++++ 3 files changed, 525 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md create mode 100644 ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md diff --git a/_data/releases.yml b/_data/releases.yml index 8225d5843f..49e3b14cd0 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -23,7 +23,7 @@ - version: 2.7.0-preview3 date: 2019-11-22 - post: /en/news/2019/11/22/ruby-2-7-0-preview3-released/ + post: /en/news/2019/11/23/ruby-2-7-0-preview3-released/ url: gz: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.tar.gz zip: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.zip diff --git a/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md new file mode 100644 index 0000000000..842d6186e7 --- /dev/null +++ b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md @@ -0,0 +1,279 @@ +--- +layout: news_post +title: "Ruby 2.7.0-preview3 Released" +author: "naruse" +translator: +date: 2019-11-23 12:00:00 +0000 +lang: en +--- + +We are pleased to announce the release of Ruby 2.7.0-preview3. + +A preview version is released to gather feedback for the final release planned to release on December. +This preview3 is mainly released to confirm the compatibility of keyword arguments. + +It also introduces a number of new features and performance improvements, most notably: + +* Compaction GC +* Pattern Matching +* REPL improvement +* Separation of positional and keyword arguments + +## Compaction GC + +This release introduces Compaction GC which can defragment a fragmented memory space. + +Some multi-threaded Ruby programs may cause memory fragmentation, leading to high memory usage and degraded speed. + +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. [[Feature #15626]](https://bugs.ruby-lang.org/issues/15626) + +## Pattern Matching [Experimental] + +Pattern matching, widely used feature in functional programming languages, is introduced as an experimental feature. [[Feature #14912]](https://bugs.ruby-lang.org/issues/14912) +It can traverse a given object and assign its value if it matches a pattern. + +{% highlight ruby %} +case JSON.parse('{...}', symbolize_names: true) +in {name: "Alice", children: [{name: "Bob", age: age}]} + p age + ... +end +{% endhighlight %} + +For more details, please see [Pattern matching - New feature in Ruby 2.7](https://speakerdeck.com/k_tsj/pattern-matching-new-feature-in-ruby-2-dot-7). + +## 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 display the reference for a given class, module, or method. [[Feature #14683]](https://bugs.ruby-lang.org/issues/14683), [[Feature #14787]](https://bugs.ruby-lang.org/issues/14787), [[Feature #14918]](https://bugs.ruby-lang.org/issues/14918) +Besides, source lines shown at `binding.irb` and inspect results for core-class objects are now colorized. + + + +## Separation of positional and keyword arguments + +Automatic conversion of keyword arguments and positional arguments is +deprecated, and conversion will be removed in Ruby 3. [[Feature #14183]](https://bugs.ruby-lang.org/issues/14183) + +* When a method call passes a Hash at the last argument, and when it + passes no keywords, and when the called method accepts keywords, a + warning is emitted. To continue treating as keywords, add a double + splat operator to avoid the warning and ensure correct behavior in + Ruby 3. + + {% highlight ruby %} + def foo(key: 42); end; foo({key: 42}) # warned + def foo(**kw); end; foo({key: 42}) # warned + def foo(key: 42); end; foo(**{key: 42}) # OK + def foo(**kw); end; foo(**{key: 42}) # OK + {% endhighlight %} + +* When a method call passes keywords to a method that accepts keywords, + but it does not pass enough required positional arguments, the + keywords are treated as a final required positional argument, and a + warning is emitted. Pass the argument as a hash instead of keywords + to avoid the warning and ensure correct behavior in Ruby 3. + + {% highlight ruby %} + def foo(h, **kw); end; foo(key: 42) # warned + def foo(h, key: 42); end; foo(key: 42) # warned + def foo(h, **kw); end; foo({key: 42}) # OK + def foo(h, key: 42); end; foo({key: 42}) # OK + {% endhighlight %} + +* When a method accepts specific keywords but not a keyword splat, and + a hash or keywords splat is passed to the method that includes both + Symbol and non-Symbol keys, the hash will continue to be split, and + a warning will be emitted. You will need to update the calling code + to pass separate hashes to ensure correct behavior in Ruby 3. + + {% highlight ruby %} + def foo(h={}, key: 42); end; foo("key" => 43, key: 42) # warned + def foo(h={}, key: 42); end; foo({"key" => 43, key: 42}) # warned + def foo(h={}, key: 42); end; foo({"key" => 43}, key: 42) # OK + {% endhighlight %} + +* If a method does not accept keywords, and is called with keywords, + the keywords are still treated as a positional hash, with no warning. + This behavior will continue to work in Ruby 3. + + {% highlight ruby %} + def foo(opt={}); end; foo( key: 42 ) # OK + {% endhighlight %} + +* Non-symbols are allowed as a keyword argument keys if method accepts + arbitrary keywords. [[Feature #14183]](https://bugs.ruby-lang.org/issues/14183) + + {% highlight ruby %} + def foo(**kw); p kw; end; foo("str" => 1) #=> {"str"=>1} + {% endhighlight %} + +* **nil is allowed in method definitions to explicitly mark + that the method accepts no keywords. Calling such a method with keywords + will result in an ArgumentError. [[Feature #14183]](https://bugs.ruby-lang.org/issues/14183) + + {% highlight ruby %} + def foo(h, **nil); end; foo(key: 1) # ArgumentError + def foo(h, **nil); end; foo(**{key: 1}) # ArgumentError + def foo(h, **nil); end; foo("str" => 1) # ArgumentError + def foo(h, **nil); end; foo({key: 1}) # OK + def foo(h, **nil); end; foo({"str" => 1}) # OK + {% endhighlight %} + +* Passing an empty keyword splat to a method that does not accept keywords + no longer passes an empty hash, unless the empty hash is necessary for + a required parameter, in which case a warning will be emitted. Remove + the double splat to continue passing a positional hash. [[Feature #14183]](https://bugs.ruby-lang.org/issues/14183) + + {% highlight ruby %} + h = {}; def foo(*a) a end; foo(**h) # [] + h = {}; def foo(a) a end; foo(**h) # {} and warning + h = {}; def foo(*a) a end; foo(h) # [{}] + h = {}; def foo(a) a end; foo(h) # {} + {% endhighlight %} + +NOTE: Too many deprecation warnings about keyword argument incompatibility have been pointed out to be too verbose. Currently, two possible solutions are discussed; disabling deprecation warnings by default ([#16345](https://bugs.ruby-lang.org/issues/16345)) or suppressing duplicated warnings ([#16289](https://bugs.ruby-lang.org/issues/16289)). The final decision is not done, but will be fixed by the official release. + +## Other Notable New Features + +* A method reference operator, .:, is introduced as an experimental feature in earlier preview, but it reverted. [[Feature #12125]](https://bugs.ruby-lang.org/issues/12125), [[Feature #13581]]( https://bugs.ruby-lang.org/issues/13581), [[Feature #16275]](https://bugs.ruby-lang.org/issues/16275) + +* Numbered parameter as the default block parameter is introduced as an experimental feature. [[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. [[Feature #14799]](https://bugs.ruby-lang.org/issues/14799) + + {% highlight ruby %} + ary[..3] # identical to ary[0..3] + rel.where(sales: ..100) + {% endhighlight %} + +* `Enumerable#tally` is added. It counts the occurrence of each element. + + {% highlight ruby %} + ["a", "b", "c", "b"].tally + #=> {"a"=>1, "b"=>2, "c"=>1} + {% endhighlight %} + +* Calling a private method on `self` is now allowed. [[Feature #11297]](https://bugs.ruby-lang.org/issues/11297) [[Feature #16123]](https://bugs.ruby-lang.org/issues/16123) + + {% highlight ruby %} + def foo + end + private :foo + self.foo + {% endhighlight %} + +* `Enumerator::Lazy#eager` is added. It generates a non-lazy enumerator + from a lazy enumerator. [[Feature #15901]](https://bugs.ruby-lang.org/issues/15901) + + {% highlight ruby %} + a = %w(foo bar baz) + e = a.lazy.map {|x| x.upcase }.map {|x| x + "!" }.eager + p e.class #=> Enumerator + p e.map {|x| x + "?" } #=> ["FOO!?", "BAR!?", "BAZ!?"] + {% endhighlight %} + +## 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 + +* ~~`Symbol#to_s`, `Module#name`, `true.to_s`, `false.to_s` and `nil.to_s` now always return a frozen String. The returned String is always the same for a given object. [Experimental] [[Feature #16150]](https://bugs.ruby-lang.org/issues/16150)~~ reverted + +* The performance of `CGI.escapeHTML` is improved. [GH-2226](https://github.com/ruby/ruby/pull/2226) + +* The performance of Monitor and MonitorMixin is improved. [[Feature #16255]](https://bugs.ruby-lang.org/issues/16255) + +## Other notable changes since 2.6 + +* Some standard libraries are updated. + * Bundler 2.1.0.pre.3 ([History](https://github.com/bundler/bundler/blob/2-1-stable/CHANGELOG.md#210pre3-november-8-2019)) + * RubyGems 3.1.0.pre.3 ([History](https://github.com/rubygems/rubygems/blob/3.1/History.txt)) + * CSV 3.1.2 ([NEWS](https://github.com/ruby/csv/blob/v3.1.2/NEWS.md)) + * Racc 1.4.15 + * REXML 3.2.3 ([NEWS](https://github.com/ruby/rexml/blob/v3.2.3/NEWS.md)) + * RSS 0.2.8 ([NEWS](https://github.com/ruby/rss/blob/v0.2.8/NEWS.md)) + * StringScanner 1.0.3 + * Some of other libraries that have no original version are also updated. + +* Promote stdlib to default gems + * The following default gems was published at rubygems.org + * benchmarck + * cgi + * delegate + * getoptlong + * net-pop + * net-smtp + * open3 + * pstore + * singleton + * The following default gems only promoted ruby-core, Not yet published at rubygems.org. + * monitor + * observer + * timeout + * tracer + * uri + * yaml + +* `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]](https://bugs.ruby-lang.org/issues/15321) + +* Update Unicode version to 12.1.0, adding support for U+32FF SQUARE ERA NAME REIWA. [[Feature #15195]](https://bugs.ruby-lang.org/issues/15195) + +* `Date.jisx0301`, `Date#jisx0301`, and `Date.parse` support the new Japanese era. [[Feature #15742]](https://bugs.ruby-lang.org/issues/15742) + +* Require compilers to support C99 [[Misc #15347]](https://bugs.ruby-lang.org/issues/15347) + * Details of our dialect: + +* ~~Regexp#match{?} with nil raises TypeError as String, Symbol [[Feature #13083]](https://bugs.ruby-lang.org/issues/13083)~~ reverted + + 3895 files changed, 213426 insertions(+), 96934 deletions(-) +See [NEWS](https://github.com/ruby/ruby/blob/v2_7_0_preview3/NEWS) or [commit logs](https://github.com/ruby/ruby/compare/v2_6_0...v2_7_0_preview3) for more details. + +With those changes, [stat](https://github.com/ruby/ruby/compare/v2_6_0...v2_7_0_preview3) since Ruby 2.6.0! + +Enjoy programming with Ruby 2.7! + +## Download + +* + + SIZE: 14628168 bytes + SHA1: 849a96041202ad3beea82e1069694740d907d583 + SHA256: 09de8d3a014904142b7bc111195ba8094f6eeb59eb529f7bb0512d8b0fc06f5d + SHA512: 661eaff1830546cea9e36f1f5a3cb591d792a17ad18d2c00bd097d53757bf321f0d192ddb3c8fdc75c28a0ecbef587e433ad1b345cdeeb4aa6a4744f7e828fbb +* + + SIZE: 16715144 bytes + SHA1: a90300e13b4c8778c798e60b7d782f9808cfe492 + SHA256: 54300275a17a0367bab91ad54b51faf3d45955041f0bf69a4612fe7b0179f4f2 + SHA512: 9083525de830a4b2e8685681dfaa3bce14cc1ed7360f5540211f6aa97967e316983554596adf442dda52041245e31ec42bffd1982d28ad5e5c4c230be3fa7d62 +* + + SIZE: 11926312 bytes + SHA1: b40a6c8c11a0ba7c0d9f1548358da7c662673852 + SHA256: aaf3d78e2d7b3d42c668f9f619a016507771552e207f7729b3feba19b13c591a + SHA512: 2a38ac56d63522bf998eaca755fa395ce490b4eaaa065b3345e9f4b57f6a1407b8089735b3dcdf6af9b761a9efe963f716f755867955e69c52e2ab5f0680e974 +* + + SIZE: 20689945 bytes + SHA1: 0de6f8922f7be5b4341ad66e69f309473ba7b905 + SHA256: 3b227bf242de646f7479ec145bc9445e5fc6a24648a3912bfb8ac02b7effcdb7 + SHA512: a44bca1cd93e916ec137d65a0e844f1ea84f4d64409f8e2522c9bbcc16f43a61f3bdb5ff8821de62349678da344056b774762d6e625df9ee36fa66d08e244dce + +## What is Ruby + +Ruby was first developed by Matz (Yukihiro Matsumoto) in 1993, and is now developed as Open Source. It runs on multiple platforms and is used all over the world especially for web development. diff --git a/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md b/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md new file mode 100644 index 0000000000..ae5403393a --- /dev/null +++ b/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md @@ -0,0 +1,245 @@ +--- +layout: news_post +title: "Ruby 2.7.0-preview3 リリース" +author: "naruse" +translator: +date: 2019-11-23 12:00:00 +0000 +lang: ja +--- + +Ruby 2.7シリーズのプレビュー版である、Ruby 2.7.0-preview3をリリースします。 + +プレビュー版は、年末の正式リリースに向け、新たな機能を試し、フィードバックを集めるために提供されています。 +Ruby 2.7.0-preview3では、多くの新しい機能やパフォーマンスの改善が含まれています。 その一部を以下に紹介します。 + +## Compaction GC + +断片化したメモリをデフラグするCompaction GCが導入されました。 + +一部のマルチスレッドなRubyプログラムを長期間動かし、マーク&スイープ型GCを何度も実行していると、メモリが断片化してメモリ使用量の増大や性能の劣化を招くことが知られています。 + +Ruby 2.7では`GC.compact` というメソッドを導入し、ヒープをコンパクションすることが出来るようになります。ヒープ内の生存しているオブジェクトを他のページに移動し、不要なページを解放できるようになるとともに、ヒープをCoW (Copy on Write) フレンドリーにすることが出来ます。 [[Feature #15626]](https://bugs.ruby-lang.org/issues/15626) + +## Pattern Matching [Experimental] + +関数型言語で広く使われているパターンマッチという機能が実験的に導入されました。 +渡されたオブジェクトの構造がパターンと一致するかどうかを調べ、一致した場合にその値を変数に代入するといったことができるようになります。 [[Feature #14912]](https://bugs.ruby-lang.org/issues/14912) + +{% highlight ruby %} +case JSON.parse('{...}', symbolize_names: true) +in {name: "Alice", children: [{name: "Bob", age: age}]} + p age + ... +end +{% endhighlight %} + +詳細については [Pattern matching - New feature in Ruby 2.7](https://speakerdeck.com/k_tsj/pattern-matching-new-feature-in-ruby-2-dot-7) を参照してください。 + +## REPL improvement + +Ruby に添付されている REPL (Read-Eval-Print-Loop) である `irb` で、複数行編集がサポートされました。これは `reline` という `readline` 互換のピュア Ruby 実装によるものです。 +また、rdoc 連携も提供されるようになっています。`irb` 内で、クラス、モジュール、メソッドのリファレンスをその場で確認できるようになりました。 [[Feature #14683]](https://bugs.ruby-lang.org/issues/14683), [[Feature #14787]](https://bugs.ruby-lang.org/issues/14787), [[Feature #14918]](https://bugs.ruby-lang.org/issues/14918) +これに加え、`binding.irb`で表示される周辺のコードや、コアクラスのオブジェクトのinspect結果に色がつくようになっています。 + + + +## キーワード引数を通常の引数から分離 + +キーワード引数とpositionalな引数(ふつうの引数)の間の自動変換が非推奨となりました。この変換はRuby 3で除去される予定です。[[Feature #14183]](https://bugs.ruby-lang.org/issues/14183) + +* メソッド呼び出しにおいて最後の引数としてハッシュオブジェクトを渡し、他にキーワード引数を渡さず、かつ、呼ばれたメソッドがキーワード引数を受け取るとき、警告が表示されます。キーワード引数として扱いたい場合は、明示的にdouble splat演算子(`**`)を足すことで警告を回避できます。このように書けばRuby 3でも同じ意味で動きます。 + + {% highlight ruby %} + def foo(key: 42); end; foo({key: 42}) # warned + def foo(**kw); end; foo({key: 42}) # warned + def foo(key: 42); end; foo(**{key: 42}) # OK + def foo(**kw); end; foo(**{key: 42}) # OK + {% endhighlight %} + +* キーワード引数を受け取るメソッドにキーワード引数を渡すが、必須引数が不足している場合に、キーワード引数は最後の必須引数として解釈され、警告が表示されます。警告を回避するには、キーワードではなく明示的にハッシュとして渡してください。このように書けばRuby 3でも同じ意味で動きます。 + + {% highlight ruby %} + def foo(h, **kw); end; foo(key: 42) # warned + def foo(h, key: 42); end; foo(key: 42) # warned + def foo(h, **kw); end; foo({key: 42}) # OK + def foo(h, key: 42); end; foo({key: 42}) # OK + {% endhighlight %} + +* メソッドがキーワード引数を受け取るがdouble splat引数は受け取らず、かつ、メソッド呼び出しでSymbolと非Symbolの混ざったハッシュを渡す(もしくはハッシュをdouble splatでキーワードとして渡す)場合、ハッシュは分割され、警告が表示されます。Ruby 3でもハッシュの分割を続けたい場合は、呼び出し側で明示的に分けるようにしてください。 + + {% highlight ruby %} + def foo(h={}, key: 42); end; foo("key" => 43, key: 42) # warned + def foo(h={}, key: 42); end; foo({"key" => 43, key: 42}) # warned + def foo(h={}, key: 42); end; foo({"key" => 43}, key: 42) # OK + {% endhighlight %} + +* メソッドがキーワード引数を受け取らず、呼び出し側でキーワード引数を渡した場合、ハッシュの引数としてみなされる挙動は変わらず、警告も表示されません。Ruby 3でもこのコードは動き続ける予定です。 + + {% highlight ruby %} + def foo(opt={}); end; foo( key: 42 ) # OK + {% endhighlight %} + +* メソッドが任意のキーワードを受け取る場合、非Symbolがキーワード引数のキーとして許容されるようになります。[[Feature #14183]](https://bugs.ruby-lang.org/issues/14183) + + {% highlight ruby %} + def foo(**kw); p kw; end; foo("str" => 1) #=> {"str"=>1} + {% endhighlight %} + +* メソッド定義で**nilと書くことで、このメソッドがキーワードを受け取らないことを明示できるようになりました。このようなメソッドをキーワード引数付きで呼び出すとArgumentErrorになります。[[Feature #14183]](https://bugs.ruby-lang.org/issues/14183) + + {% highlight ruby %} + def foo(h, **nil); end; foo(key: 1) # ArgumentError + def foo(h, **nil); end; foo(**{key: 1}) # ArgumentError + def foo(h, **nil); end; foo("str" => 1) # ArgumentError + def foo(h, **nil); end; foo({key: 1}) # OK + def foo(h, **nil); end; foo({"str" => 1}) # OK + {% endhighlight %} + +* キーワード引数を受け取らないメソッドに対して空のハッシュをdouble splatで渡すとき、空のハッシュが渡る挙動はなくなりました。ただし、必須引数が不足する場合は空のハッシュが渡され、警告が表示されます。ハッシュの引数として渡したい場合はdouble splatをつけないようにしてください。 + + {% highlight ruby %} + h = {}; def foo(*a) a end; foo(**h) # [] + h = {}; def foo(a) a end; foo(**h) # {} and warning + h = {}; def foo(*a) a end; foo(h) # [{}] + h = {}; def foo(a) a end; foo(h) # {} + {% endhighlight %} + +注意:キーワード引数の非互換に関する警告が大量すぎるという詩的があります。現在、廃止に関する警告をデフォルトでオフにする ([#16345](https://bugs.ruby-lang.org/issues/16345)) か、一度警告した箇所を二度は警告しない ([#16289](https://bugs.ruby-lang.org/issues/16289)) という2つの解決方法が議論されています。最終決定はなされていませんが、正式リリースまでには修正される予定です。 + +## 主要な新機能 + +* メソッド参照演算子 .: が以前のプレビューリリースで試験的に導入されていましたが、削除されました。[[Feature #12125]](https://bugs.ruby-lang.org/issues/12125), [[Feature #13581]]( https://bugs.ruby-lang.org/issues/13581), [[Feature #16275]](https://bugs.ruby-lang.org/issues/16275) + +* デフォルトのブロックの仮引数として番号指定パラメータが試験的に導入されました。[[Feature #4475]](https://bugs.ruby-lang.org/issues/4475) + +* 開始値省略範囲式が試験的に導入されました。これは終了値省略範囲式ほど有用ではないと思われますが、しかし DSL のような目的には役立つかもしれません。 [[Feature #14799]](https://bugs.ruby-lang.org/issues/14799) + + {% highlight ruby %} + ary[..3] # identical to ary[0..3] + rel.where(sales: ..100) + {% endhighlight %} + +* `Enumerable#tally` が追加されました。各要素の出現回数を数えます。 + + {% highlight ruby %} + ["a", "b", "c", "b"].tally + #=> {"a"=>1, "b"=>2, "c"=>1} + {% endhighlight %} + +* レシーバを`self`としてprivateメソッドを呼び出すことが許容されるようになりました。 [[Feature #11297]](https://bugs.ruby-lang.org/issues/11297) [[Feature #16123]](https://bugs.ruby-lang.org/issues/16123) + + {% highlight ruby %} + def foo + end + private :foo + self.foo + {% endhighlight %} + +* `Enumerator::Lazy#eager` が追加されました。lazyなEnumeratorを非lazyなEnumeratorに変換します。 + + {% highlight ruby %} + a = %w(foo bar baz) + e = a.lazy.map {|x| x.upcase }.map {|x| x + "!" }.eager + p e.class #=> Enumerator + p e.map {|x| x + "?" } #=> ["FOO!?", "BAR!?", "BAZ!?"] + {% endhighlight %} + +## パフォーマンスの改善 + +* JIT [Experimental] + + * 最適化の際の仮定が無効とされた場合、JIT 化されていたコードがより最適化度が低いコードに再コンパイルされるようになりました。 + + * あるメソッドが「純粋」であると判定された場合、メソッドのインライン化が行われるようになりました。この最適化はまだ実験的であり、また多数のメソッドが今はまだ「純粋」と判定されないままです。 + + * `--jit-min-calls` オプションのデフォルト値が 5 から 10,000 に変更されました。 + + * `--jit-max-cache` オプションのデフォルト値が 1,000 から 100 に変更されました。 + +* ~~`Symbol#to_s`, `Module#name`, `true.to_s`, `false.to_s` `nil.to_s` は常にfrozenな文字列を返すようになりました。返された文字列は常に同じオブジェクトとなります。 [Experimental] [[Feature #16150]](https://bugs.ruby-lang.org/issues/16150)~~ 撤回されました + +* `CGI.escapeHTML` のパフォーマンスが改善されました。 [GH-2226](https://github.com/ruby/ruby/pull/2226) + +* Monitor 及び MonitorMixin のパフォーマンスが改善されました [[Feature #16255]](https://bugs.ruby-lang.org/issues/16255) + +## その他の注目すべき 2.6 からの変更点 + +* いくつかの標準ライブラリがアップデートされました。 + * Bundler 2.1.0.pre.3 ([History](https://github.com/bundler/bundler/blob/2-1-stable/CHANGELOG.md#210pre3-november-8-2019)) + * RubyGems 3.1.0.pre.3 ([History](https://github.com/rubygems/rubygems/blob/3.1/History.txt)) + * CSV 3.1.2 ([NEWS](https://github.com/ruby/csv/blob/v3.1.2/NEWS.md)) + * Racc 1.4.15 + * REXML 3.2.3 ([NEWS](https://github.com/ruby/rexml/blob/v3.2.3/NEWS.md)) + * RSS 0.2.8 ([NEWS](https://github.com/ruby/rss/blob/v0.2.8/NEWS.md)) + * StringScanner 1.0.3 + +* 以下のライブラリが新たに default gems になりました + * 以下のライブラリは rubygems.org からアップデート可能です。 + * benchmarck + * cgi + * delegate + * getoptlong + * net-pop + * net-smtp + * open3 + * pstore + * singleton + * 以下のライブラリはまだ rubygems.org から取得できません。 + * monitor + * observer + * timeout + * tracer + * uri + * yaml + +* ブロックを渡すメソッド呼び出し中の、ブロックを伴わない `Proc.new` と `proc` が警告されるようになりました。 + +* ブロックを渡すメソッド呼び出し中の、ブロックを伴わない `lambda` はエラーとなるようになりました。 + +* Unicode および Emoji のバージョンが 11.0.0 から 12.0.0 になりました。[[Feature #15321]](https://bugs.ruby-lang.org/issues/15321) + +* Unicode のバージョンが 12.1.0 となり、新元号「令和」を表す合字 U+32FF がサポートされました。[[Feature #15195]](https://bugs.ruby-lang.org/issues/15195) + +* `Date.jisx0301`, `Date#jisx0301`, および `Date.parse` で新元号に対応しました。[[Feature #15742]](https://bugs.ruby-lang.org/issues/15742) + +* Ruby のビルドに C99 に対応したコンパイラが必要になりました。[[Misc #15347]](https://bugs.ruby-lang.org/issues/15347) + * 本件についての詳細: + +その他詳細については、[NEWS](https://github.com/ruby/ruby/blob/v2_7_0_preview3/NEWS) ファイルまたは[コミットログ](https://github.com/ruby/ruby/compare/v2_6_0...v2_7_0_preview3)を参照してください。 + +なお、こうした変更により、Ruby 2.6.0 以降では [3895 個のファイルに変更が加えられ、213426 行の追加と 96934 行の削除が行われました](https://github.com/ruby/ruby/compare/v2_6_0...v2_7_0_preview3) ! + +Ruby 2.7 で楽しいプログラミングを! + +## Download + +* + + SIZE: 14628168 bytes + SHA1: 849a96041202ad3beea82e1069694740d907d583 + SHA256: 09de8d3a014904142b7bc111195ba8094f6eeb59eb529f7bb0512d8b0fc06f5d + SHA512: 661eaff1830546cea9e36f1f5a3cb591d792a17ad18d2c00bd097d53757bf321f0d192ddb3c8fdc75c28a0ecbef587e433ad1b345cdeeb4aa6a4744f7e828fbb +* + + SIZE: 16715144 bytes + SHA1: a90300e13b4c8778c798e60b7d782f9808cfe492 + SHA256: 54300275a17a0367bab91ad54b51faf3d45955041f0bf69a4612fe7b0179f4f2 + SHA512: 9083525de830a4b2e8685681dfaa3bce14cc1ed7360f5540211f6aa97967e316983554596adf442dda52041245e31ec42bffd1982d28ad5e5c4c230be3fa7d62 +* + + SIZE: 11926312 bytes + SHA1: b40a6c8c11a0ba7c0d9f1548358da7c662673852 + SHA256: aaf3d78e2d7b3d42c668f9f619a016507771552e207f7729b3feba19b13c591a + SHA512: 2a38ac56d63522bf998eaca755fa395ce490b4eaaa065b3345e9f4b57f6a1407b8089735b3dcdf6af9b761a9efe963f716f755867955e69c52e2ab5f0680e974 +* + + SIZE: 20689945 bytes + SHA1: 0de6f8922f7be5b4341ad66e69f309473ba7b905 + SHA256: 3b227bf242de646f7479ec145bc9445e5fc6a24648a3912bfb8ac02b7effcdb7 + SHA512: a44bca1cd93e916ec137d65a0e844f1ea84f4d64409f8e2522c9bbcc16f43a61f3bdb5ff8821de62349678da344056b774762d6e625df9ee36fa66d08e244dce + +## Ruby とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 From 90443e5e222907d3a9eacb7f5614778ea9a79e8d Mon Sep 17 00:00:00 2001 From: Patrik Ragnarsson Date: Sun, 24 Nov 2019 01:15:34 +0100 Subject: [PATCH 0024/1716] Fix small typo in 2.7.0-preview3 post (en) (#2283) --- en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md index 842d6186e7..2a80a377a8 100644 --- a/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md +++ b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md @@ -9,7 +9,7 @@ lang: en We are pleased to announce the release of Ruby 2.7.0-preview3. -A preview version is released to gather feedback for the final release planned to release on December. +A preview version is released to gather feedback for the final release planned to release in December. This preview3 is mainly released to confirm the compatibility of keyword arguments. It also introduces a number of new features and performance improvements, most notably: From a299d88d8ca23f560e415eee3e1793fcb09787d6 Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Sun, 24 Nov 2019 12:59:19 +0900 Subject: [PATCH 0025/1716] Fix wrong checksums for ruby 2.7.0-preview3 --- _data/releases.yml | 29 +++++++--- ...2019-11-23-ruby-2-7-0-preview3-released.md | 53 ++++++++++--------- ...2019-11-23-ruby-2-7-0-preview3-released.md | 53 ++++++++++--------- 3 files changed, 80 insertions(+), 55 deletions(-) diff --git a/_data/releases.yml b/_data/releases.yml index 49e3b14cd0..6ff8396338 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -25,15 +25,30 @@ date: 2019-11-22 post: /en/news/2019/11/23/ruby-2-7-0-preview3-released/ url: - gz: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.tar.gz - zip: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.zip bz2: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.tar.bz2 - xz: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.tar.xz + gz: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.0-preview3.zip + size: + bz2: 14630824 + gz: 16723536 + xz: 11923988 + zip: 20691541 + sha1: + bz2: 1fa35d8a26dfc814e92fa259095f4cf70f386f87 + gz: 7554926ee29a344da4b53d67fc296d70fdbe60ca + xz: f3c54538915483e5ddc714ac23414e7c47048b12 + zip: d18b494cda4db751d8b3f5026404e348f3f682e3 sha256: - gz: 54300275a17a0367bab91ad54b51faf3d45955041f0bf69a4612fe7b0179f4f2 - zip: 3b227bf242de646f7479ec145bc9445e5fc6a24648a3912bfb8ac02b7effcdb7 - bz2: 09de8d3a014904142b7bc111195ba8094f6eeb59eb529f7bb0512d8b0fc06f5d - xz: aaf3d78e2d7b3d42c668f9f619a016507771552e207f7729b3feba19b13c591a + bz2: df2ddee659873e6fc30a8590ecffa49cf3a4ef81fa922b0d09f821b69ee88bc3 + gz: 9baa1f5096ebc2a0923df628d7dc7105da3789c1bf8b873469d9010249736b00 + xz: ad9d61e55ac224e3447a762e001965839846f9658f87a0e792840887cfe61b8c + zip: 2bc95f67f271b6a41fc3dd40536705b4a7974df8a2fa33ff0758a60822291781 + sha512: + bz2: 5d8e99e3fd984c7d05c0bc483e1504e81ccdb920cbb2d78cad3c314e197b30316b692fd0199f836acac41246e3a713cb81dc6dd64c27cba56f807df4c193db1a + gz: 8fad3e761fd54036fee974a9f33e4db31d9a8a878b1181a08724388f5a1da548ab249136356f675797e9c43b565777bf22e6a419db1364336f134b31f4e75b33 + xz: 2b6844f34d32f1013dc3110043e6ece33a083b20f1343dea9a14311bda0017e8f56fc7d73be1616999b22ce430d7ba59a77bb0892d27c6d1ec243c3860086133 + zip: af9f728aebc53693cbd9f78a632c82e851e9f83dfc0c53979fdc37c627b11482c8435ce12dbb1d5a7253e998ea989759be699e6a00aae18384d2d765650cb0d7 - version: 2.7.0-preview2 date: 2019-10-22 diff --git a/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md index 2a80a377a8..b886807c0f 100644 --- a/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md +++ b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md @@ -249,30 +249,35 @@ Enjoy programming with Ruby 2.7! ## Download -* - - SIZE: 14628168 bytes - SHA1: 849a96041202ad3beea82e1069694740d907d583 - SHA256: 09de8d3a014904142b7bc111195ba8094f6eeb59eb529f7bb0512d8b0fc06f5d - SHA512: 661eaff1830546cea9e36f1f5a3cb591d792a17ad18d2c00bd097d53757bf321f0d192ddb3c8fdc75c28a0ecbef587e433ad1b345cdeeb4aa6a4744f7e828fbb -* - - SIZE: 16715144 bytes - SHA1: a90300e13b4c8778c798e60b7d782f9808cfe492 - SHA256: 54300275a17a0367bab91ad54b51faf3d45955041f0bf69a4612fe7b0179f4f2 - SHA512: 9083525de830a4b2e8685681dfaa3bce14cc1ed7360f5540211f6aa97967e316983554596adf442dda52041245e31ec42bffd1982d28ad5e5c4c230be3fa7d62 -* - - SIZE: 11926312 bytes - SHA1: b40a6c8c11a0ba7c0d9f1548358da7c662673852 - SHA256: aaf3d78e2d7b3d42c668f9f619a016507771552e207f7729b3feba19b13c591a - SHA512: 2a38ac56d63522bf998eaca755fa395ce490b4eaaa065b3345e9f4b57f6a1407b8089735b3dcdf6af9b761a9efe963f716f755867955e69c52e2ab5f0680e974 -* - - SIZE: 20689945 bytes - SHA1: 0de6f8922f7be5b4341ad66e69f309473ba7b905 - SHA256: 3b227bf242de646f7479ec145bc9445e5fc6a24648a3912bfb8ac02b7effcdb7 - SHA512: a44bca1cd93e916ec137d65a0e844f1ea84f4d64409f8e2522c9bbcc16f43a61f3bdb5ff8821de62349678da344056b774762d6e625df9ee36fa66d08e244dce +{% assign release = site.data.releases | where: "version", "2.7.0-preview3" | first %} + +* <{{ release.url.bz2 }}> + + SIZE: {{ release.size.bz2 }} + SHA1: {{ release.sha1.bz2 }} + SHA256: {{ release.sha256.bz2 }} + SHA512: {{ release.sha512.bz2 }} + +* <{{ release.url.gz }}> + + SIZE: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + SIZE: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + SIZE: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} ## What is Ruby diff --git a/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md b/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md index ae5403393a..ba60f08da1 100644 --- a/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md +++ b/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md @@ -215,30 +215,35 @@ Ruby 2.7 で楽しいプログラミングを! ## Download -* - - SIZE: 14628168 bytes - SHA1: 849a96041202ad3beea82e1069694740d907d583 - SHA256: 09de8d3a014904142b7bc111195ba8094f6eeb59eb529f7bb0512d8b0fc06f5d - SHA512: 661eaff1830546cea9e36f1f5a3cb591d792a17ad18d2c00bd097d53757bf321f0d192ddb3c8fdc75c28a0ecbef587e433ad1b345cdeeb4aa6a4744f7e828fbb -* - - SIZE: 16715144 bytes - SHA1: a90300e13b4c8778c798e60b7d782f9808cfe492 - SHA256: 54300275a17a0367bab91ad54b51faf3d45955041f0bf69a4612fe7b0179f4f2 - SHA512: 9083525de830a4b2e8685681dfaa3bce14cc1ed7360f5540211f6aa97967e316983554596adf442dda52041245e31ec42bffd1982d28ad5e5c4c230be3fa7d62 -* - - SIZE: 11926312 bytes - SHA1: b40a6c8c11a0ba7c0d9f1548358da7c662673852 - SHA256: aaf3d78e2d7b3d42c668f9f619a016507771552e207f7729b3feba19b13c591a - SHA512: 2a38ac56d63522bf998eaca755fa395ce490b4eaaa065b3345e9f4b57f6a1407b8089735b3dcdf6af9b761a9efe963f716f755867955e69c52e2ab5f0680e974 -* - - SIZE: 20689945 bytes - SHA1: 0de6f8922f7be5b4341ad66e69f309473ba7b905 - SHA256: 3b227bf242de646f7479ec145bc9445e5fc6a24648a3912bfb8ac02b7effcdb7 - SHA512: a44bca1cd93e916ec137d65a0e844f1ea84f4d64409f8e2522c9bbcc16f43a61f3bdb5ff8821de62349678da344056b774762d6e625df9ee36fa66d08e244dce +{% assign release = site.data.releases | where: "version", "2.7.0-preview3" | first %} + +* <{{ release.url.bz2 }}> + + SIZE: {{ release.size.bz2 }} + SHA1: {{ release.sha1.bz2 }} + SHA256: {{ release.sha256.bz2 }} + SHA512: {{ release.sha512.bz2 }} + +* <{{ release.url.gz }}> + + SIZE: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + SIZE: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + SIZE: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} ## Ruby とは From 6cff6f0a3d097b6d9e037c14b0e0c52a62afc9d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0smail=20Ar=C4=B1l=C4=B1k?= Date: Sun, 24 Nov 2019 11:44:38 +0300 Subject: [PATCH 0026/1716] Fix typo in 2.7.0-preview3 post (en) (#2285) --- en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md index b886807c0f..ad050764da 100644 --- a/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md +++ b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md @@ -208,7 +208,7 @@ NOTE: Too many deprecation warnings about keyword argument incompatibility have * Promote stdlib to default gems * The following default gems was published at rubygems.org - * benchmarck + * benchmark * cgi * delegate * getoptlong From d33191df37f7a3c882d2faf9cfa916fb9ba0cb6a Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Sun, 24 Nov 2019 09:47:12 +0100 Subject: [PATCH 0027/1716] Fix typo in 2.7.0-preview3 post (ja) --- ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md b/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md index ba60f08da1..bf88e7419f 100644 --- a/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md +++ b/ja/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md @@ -177,7 +177,7 @@ Ruby に添付されている REPL (Read-Eval-Print-Loop) である `irb` で、 * 以下のライブラリが新たに default gems になりました * 以下のライブラリは rubygems.org からアップデート可能です。 - * benchmarck + * benchmark * cgi * delegate * getoptlong From 212c172989231a93b02bd22a509a6104e7c9979d Mon Sep 17 00:00:00 2001 From: Marcus Stollsteimer Date: Sun, 24 Nov 2019 19:55:27 +0100 Subject: [PATCH 0028/1716] Rewrap 2.7.0-preview3 post (en) --- ...2019-11-23-ruby-2-7-0-preview3-released.md | 170 ++++++++++++------ 1 file changed, 119 insertions(+), 51 deletions(-) diff --git a/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md index ad050764da..58dcd66dbf 100644 --- a/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md +++ b/en/news/_posts/2019-11-23-ruby-2-7-0-preview3-released.md @@ -9,10 +9,13 @@ lang: en We are pleased to announce the release of Ruby 2.7.0-preview3. -A preview version is released to gather feedback for the final release planned to release in December. -This preview3 is mainly released to confirm the compatibility of keyword arguments. +A preview version is released to gather feedback for the final release +planned to release in December. +This preview3 is mainly released to confirm the compatibility of +keyword arguments. -It also introduces a number of new features and performance improvements, most notably: +It also introduces a number of new features and performance improvements, +most notably: * Compaction GC * Pattern Matching @@ -21,15 +24,22 @@ It also introduces a number of new features and performance improvements, most n ## Compaction GC -This release introduces Compaction GC which can defragment a fragmented memory space. +This release introduces Compaction GC which can defragment +a fragmented memory space. -Some multi-threaded Ruby programs may cause memory fragmentation, leading to high memory usage and degraded speed. +Some multi-threaded Ruby programs may cause memory fragmentation, +leading to high memory usage and degraded speed. -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. [[Feature #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. +[[Feature #15626]](https://bugs.ruby-lang.org/issues/15626) ## Pattern Matching [Experimental] -Pattern matching, widely used feature in functional programming languages, is introduced as an experimental feature. [[Feature #14912]](https://bugs.ruby-lang.org/issues/14912) +Pattern matching, widely used feature in functional programming languages, +is introduced as an experimental feature. +[[Feature #14912]](https://bugs.ruby-lang.org/issues/14912) It can traverse a given object and assign its value if it matches a pattern. {% highlight ruby %} @@ -40,13 +50,21 @@ in {name: "Alice", children: [{name: "Bob", age: age}]} end {% endhighlight %} -For more details, please see [Pattern matching - New feature in Ruby 2.7](https://speakerdeck.com/k_tsj/pattern-matching-new-feature-in-ruby-2-dot-7). +For more details, please see +[Pattern matching - New feature in Ruby 2.7](https://speakerdeck.com/k_tsj/pattern-matching-new-feature-in-ruby-2-dot-7). ## 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 display the reference for a given class, module, or method. [[Feature #14683]](https://bugs.ruby-lang.org/issues/14683), [[Feature #14787]](https://bugs.ruby-lang.org/issues/14787), [[Feature #14918]](https://bugs.ruby-lang.org/issues/14918) -Besides, source lines shown at `binding.irb` and inspect results for core-class objects are now colorized. +`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 display the reference +for a given class, module, or method. +[[Feature #14683]](https://bugs.ruby-lang.org/issues/14683), +[[Feature #14787]](https://bugs.ruby-lang.org/issues/14787), +[[Feature #14918]](https://bugs.ruby-lang.org/issues/14918) +Besides, source lines shown at `binding.irb` and inspect results +for core-class objects are now colorized.