From fb5aab46142a5f8d57e792de364c0fec24377cd0 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 5 Jan 2023 11:55:32 +0900 Subject: [PATCH 001/607] Create jekyll.yml --- .github/workflows/jekyll.yml | 63 ++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .github/workflows/jekyll.yml diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml new file mode 100644 index 0000000000..a9b27882e4 --- /dev/null +++ b/.github/workflows/jekyll.yml @@ -0,0 +1,63 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. + +# Sample workflow for building and deploying a Jekyll site to GitHub Pages +name: Deploy Jekyll site to Pages + +on: + # Runs on pushes targeting the default branch + push: + branches: ["master"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow one concurrent deployment +concurrency: + group: "pages" + cancel-in-progress: true + +jobs: + # Build job + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Setup Ruby + uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0 + with: + ruby-version: '3.0' # Not needed with a .ruby-version file + bundler-cache: true # runs 'bundle install' and caches installed gems automatically + cache-version: 0 # Increment this number if you need to re-download cached gems + - name: Setup Pages + id: pages + uses: actions/configure-pages@v2 + - name: Build with Jekyll + # Outputs to the './_site' directory by default + run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" + env: + JEKYLL_ENV: production + - name: Upload artifact + # Automatically uploads an artifact from the './_site' directory by default + uses: actions/upload-pages-artifact@v1 + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v1 From 8b634e676d2734200e506592a7e065422257209b Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 24 Apr 2023 14:34:46 +0900 Subject: [PATCH 002/607] update bundles --- Gemfile.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index ca3310542b..ee7f95dfbf 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ GEM remote: https://rubygems.org/ specs: - addressable (2.8.3) + addressable (2.8.4) public_suffix (>= 2.0.2, < 6.0) colorator (1.1.0) concurrent-ruby (1.2.2) @@ -63,7 +63,7 @@ GEM public_suffix (5.0.1) racc (1.6.2) rack (2.2.6.4) - rack-protection (3.0.5) + rack-protection (3.0.6) rack rack-rewrite (1.5.1) rack-ssl (1.4.1) From 52459483eb021dbd5f0b1b69cfa85dfb1e089684 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 24 Apr 2023 14:36:42 +0900 Subject: [PATCH 003/607] Cleanup and tweak configuration --- .github/workflows/jekyll.yml | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index a9b27882e4..8559ff8c6f 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -1,56 +1,41 @@ -# This workflow uses actions that are not certified by GitHub. -# They are provided by a third-party and are governed by -# separate terms of service, privacy policy, and support -# documentation. - -# Sample workflow for building and deploying a Jekyll site to GitHub Pages name: Deploy Jekyll site to Pages on: - # Runs on pushes targeting the default branch push: branches: ["master"] - # Allows you to run this workflow manually from the Actions tab workflow_dispatch: -# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages permissions: contents: read pages: write id-token: write -# Allow one concurrent deployment concurrency: group: "pages" cancel-in-progress: true jobs: - # Build job build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 - name: Setup Ruby - uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0 + uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0 with: - ruby-version: '3.0' # Not needed with a .ruby-version file - bundler-cache: true # runs 'bundle install' and caches installed gems automatically - cache-version: 0 # Increment this number if you need to re-download cached gems + ruby-version: '3.2' + bundler-cache: true - name: Setup Pages id: pages uses: actions/configure-pages@v2 - name: Build with Jekyll - # Outputs to the './_site' directory by default run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" env: JEKYLL_ENV: production - name: Upload artifact - # Automatically uploads an artifact from the './_site' directory by default uses: actions/upload-pages-artifact@v1 - # Deployment job deploy: environment: name: github-pages From f9604a33c486a04a49e41006c5d530b44a6f6edc Mon Sep 17 00:00:00 2001 From: akinomaeni Date: Sun, 9 Apr 2023 21:58:55 +0900 Subject: [PATCH 004/607] docs(readme): avoid use deprecated flag ``` $ bundle install --without production [DEPRECATED] The `--without` flag is deprecated because it relies on being remembered across bundler invocations, which bundler will no longer do in future versions. Instead please use `bundle config set --local without 'production'`, and stop using this flag ``` --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5bc78ca803..f3596635db 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,8 @@ Then clone the repository and install the dependencies: ``` sh git clone https://github.com/ruby/www.ruby-lang.org.git cd www.ruby-lang.org/ -bundle install --without production +bundle config set --local without production +bundle install ``` ## Make Changes From 6d852fc6a295f0cc4482f33cbfa244f8b6085c67 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Apr 2023 16:03:09 +0000 Subject: [PATCH 005/607] Bump actions/configure-pages from 2 to 3 Bumps [actions/configure-pages](https://github.com/actions/configure-pages) from 2 to 3. - [Release notes](https://github.com/actions/configure-pages/releases) - [Commits](https://github.com/actions/configure-pages/compare/v2...v3) --- updated-dependencies: - dependency-name: actions/configure-pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 8559ff8c6f..23278ce6b3 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -28,7 +28,7 @@ jobs: bundler-cache: true - name: Setup Pages id: pages - uses: actions/configure-pages@v2 + uses: actions/configure-pages@v3 - name: Build with Jekyll run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" env: From ce71e4a582f15aedd46d68fd39aff04d0898e163 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Apr 2023 16:03:18 +0000 Subject: [PATCH 006/607] Bump actions/deploy-pages from 1 to 2 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 1 to 2. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/v1...v2) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 23278ce6b3..57e38eb2ea 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v1 + uses: actions/deploy-pages@v2 From 79219670831805d399a430e57fe6e95175041831 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 24 Apr 2023 16:58:56 +0900 Subject: [PATCH 007/607] Removed gems for Rack application --- Gemfile | 6 ---- Gemfile.lock | 19 ---------- Procfile | 1 - _config.yml | 3 -- config.ru | 98 ---------------------------------------------------- unicorn.rb | 18 ---------- 6 files changed, 145 deletions(-) delete mode 100644 Procfile delete mode 100644 config.ru delete mode 100644 unicorn.rb diff --git a/Gemfile b/Gemfile index b498b80c57..9a9fe540f4 100644 --- a/Gemfile +++ b/Gemfile @@ -6,12 +6,6 @@ gem "rake" gem "jekyll", "~> 4.2.0" gem "rouge" -gem "unicorn" -gem "lanyon" -gem "rack-rewrite" -gem "rack-ssl" -gem "rack-protection" - group :development do gem "minitest" gem "spidr", "~> 0.6" diff --git a/Gemfile.lock b/Gemfile.lock index ee7f95dfbf..3179dc0b14 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -35,14 +35,10 @@ GEM jekyll-watch (2.2.1) listen (~> 3.0) json (2.6.3) - kgio (2.11.4) kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) - lanyon (0.4.4) - jekyll (>= 2.0) - rack (>= 1.6, < 3.0) liquid (4.0.4) listen (3.8.0) rb-fsevent (~> 0.10, >= 0.10.3) @@ -62,13 +58,6 @@ GEM forwardable-extended (~> 2.6) public_suffix (5.0.1) racc (1.6.2) - rack (2.2.6.4) - rack-protection (3.0.6) - rack - rack-rewrite (1.5.1) - rack-ssl (1.4.1) - rack - raindrops (0.20.1) rake (13.0.6) rb-fsevent (0.11.2) rb-inotify (0.10.1) @@ -86,9 +75,6 @@ GEM tidy_ffi (1.0.1) ffi (~> 1.2) unicode-display_width (1.8.0) - unicorn (6.1.0) - kgio (~> 2.6) - raindrops (~> 0.7) validate-website (1.12.0) crass (~> 1) nokogiri (~> 1.12) @@ -111,15 +97,10 @@ PLATFORMS DEPENDENCIES jekyll (~> 4.2.0) - lanyon minitest - rack-protection - rack-rewrite - rack-ssl rake rouge spidr (~> 0.6) - unicorn validate-website (~> 1.6) RUBY VERSION diff --git a/Procfile b/Procfile deleted file mode 100644 index d34e30ba05..0000000000 --- a/Procfile +++ /dev/null @@ -1 +0,0 @@ -web: bundle exec unicorn -p $PORT -c ./unicorn.rb diff --git a/_config.yml b/_config.yml index b1d9d3978f..56e6bd819d 100644 --- a/_config.yml +++ b/_config.yml @@ -8,13 +8,10 @@ kramdown: auto_ids: false exclude: - - config.ru - Gemfile - Gemfile.lock - - Procfile - Rakefile - README.md - - unicorn.rb - lib - test - vendor diff --git a/config.ru b/config.ru deleted file mode 100644 index b590e6fa55..0000000000 --- a/config.ru +++ /dev/null @@ -1,98 +0,0 @@ -require "lanyon" -require "rack/rewrite" -require "rack/ssl" -require "rack/protection" -require "yaml" - -use Rack::CommonLogger - -use Rack::Rewrite do - - # bugreport.html (linked to from Ruby source code) - r302 %r{^/bugreport\.html$}, "https://bugs.ruby-lang.org/" - - # various redirects - r302 %r{^/(en|ja)/(LICENSE|license).txt$}, "/en/about/license.txt" - r302 %r{^/(en|ja)/install\.html$}, "/$1/downloads" - - # URL changes - r302 %r{^/(en|zh_tw)/news/2016/12/11/ruby-2-4-0-rc1-released(.*)$}, "/$1/news/2016/12/12/ruby-2-4-0-rc1-released$2" - r302 %r{^/(en|fr)/news/2016/08/31/confoo-cfp(.*)$}, "/$1/news/2015/08/31/confoo-cfp$2" - r302 %r{^/(en|de|it|ja|ko|pl)/installation(.*)$}, "/$1/documentation/installation$2" - r302 %r{^/([a-z_]+)/news/2014/09/18/ruby-2\.2\.0-preview1-released(.*)$}, "/$1/news/2014/09/18/ruby-2-2-0-preview1-released$2" - r302 %r{^/([a-z_]+)/news/2014/08/19/ruby-1\.9\.2-p330-released(.*)$}, "/$1/news/2014/08/19/ruby-1-9-2-p330-released$2" - r302 %r{^/([a-z_]+)/news/2013/12/21/semantic-versioning-after-2-1-0(.*)$}, "/$1/news/2013/12/21/ruby-version-policy-changes-with-2-1-0$2" - r302 %r{^/([a-z_]+)/documentation/ruby-from-other-languages/to-ruby-from-c-and-c-(.*)$}, "/$1/documentation/ruby-from-other-languages/to-ruby-from-c-and-cpp$2" - r302 %r{^/en/news/2010/08/18/ruby-1-9\.2-released(.*)$}, "/en/news/2010/08/18/ruby-1-9-2-released$1" - - # URL changes with Jekyll 3, May 2016 - r302 %r{^/(en|id)/news/2012/02/16/security-fix-for-ruby-openssl-module-allow-0n-splitting-as-a-prevention-for-the-tls-beast-attack-(.*)$}, "/$1/news/2012/02/16/security-fix-for-ruby-openssl-module$2" - r302 %r{^/(de)/news/2012/02/16/sicherheitsfix-fr-rubys-openssl-modul-erlaube-0n-splitting-als-gegenmanahme-fr-den-tls-beast-angriff(.*)$}, "/$1/news/2012/02/16/security-fix-for-ruby-openssl-module$2" - r302 %r{^/(en|it)/news/(201./../..)/fukuoka-ruby-award-2011-competition---grand-prize-12000(.*)$}, "/$1/news/$2/fukuoka-ruby-award-2011$3" - r302 %r{^/(en|id|it)/news/(201./../..)/2013-fukuoka-ruby-award-competitionentries-to-be-judged-by-matz(.*)$}, "/$1/news/$2/fukuoka-ruby-award-2013$3" - r302 %r{^/(en)/news/2011/10/12/upcoming-ruby-programming-competitions-with-matz---grand-prize---1000000-jpy(.*)$}, "/$1/news/2011/10/12/programming-competitions-with-matz$2" - r302 %r{^/(de)/news/2011/10/13/anstehende-ruby-programmierwettbewerbe-mit-matz---groer-preis-1-000-000-(.*)$}, "/$1/news/2011/10/12/programming-competitions-with-matz$2" - r302 %r{^/(en|de|ko)/news/2003/01/31/raasuccversion--230(.*)$}, "/$1/news/2003/01/31/raa-2-3-0$2" - r302 %r{^/(en|de|ko)/news/2002/12/07/my20021207-raasuccversion--210(.*)$}, "/$1/news/2002/12/07/raa-2-1-0$2" - r302 %r{^/(en|ko)/news/2002/12/11/ruby-hacking-guide-is-out-though-(.*)$}, "/$1/news/2002/12/11/ruby-hacking-guide$2" - r302 %r{^/(de)/news/2002/12/11/ruby-hacking-guide-ist-da-obwohl-(.*)$}, "/$1/news/2002/12/11/ruby-hacking-guide$2" - r302 %r{^/(pl)/news/2012/10/22/rupy-2012---pita-edycja-konferencji-niebawem(.*)$}, "/$1/news/2012/10/22/rupy-2012$2" - r302 %r{^/(ko)/news/2008/06/12/-1-8-7-(.*)$}, "/$1/news/2008/06/12/ruby-1-8-7$2" - r302 %r{^/(ko)/news/2007/09/10/-4-(.*)$}, "/$1/news/2007/09/10/ruby-kr-seminar-4$2" - r302 %r{^/(ko)/news/2006/11/10/-2006-11-25(.*)$}, "/$1/news/2006/11/10/meeting-2006-11-25$2" - r302 %r{^/(bg|es|ja|ko|zh_cn|zh_tw)/news/(.*)-(|/|/index\.html)$}, "/$1/news/$2$3" - - # removed resources (some are still linked to from old news posts) - r302 %r{^/ja/install\.cgi(\?.+)?$}, "/ja/downloads" - r302 %r{^/ja/20030611\.html$}, "/ja/downloads" - - r302 %r{^/cgi-bin/cvsweb\.cgi(/.*)?$}, "https://svn.ruby-lang.org/" - - r302 %r{^/ja/(man|old-man)/.*$}, "https://docs.ruby-lang.org/ja/" - - r302 %r{^/ja/man/archive/ruby-refm-1.8.6-chm.zip$}, "ftp://ftp.ruby-lang.org/pub/ruby/doc/ruby-refm-1.8.6-chm.zip" - r302 %r{^/ja/man/archive/ruby-refm-1.9.0-chm.zip$}, "ftp://ftp.ruby-lang.org/pub/ruby/doc/ruby-refm-1.9.0-chm.zip" - r302 %r{^/ja/man/archive/ruby-refm-1.9.0-dynamic.tar.bz2$}, "ftp://ftp.ruby-lang.org/pub/ruby/doc/ruby-refm-1.9.0-dynamic.tar.bz2" - r302 %r{^/ja/man/archive/ruby-refm-1.9.0-dynamic.tar.gz$}, "ftp://ftp.ruby-lang.org/pub/ruby/doc/ruby-refm-1.9.0-dynamic.tar.gz" - r302 %r{^/ja/man/archive/ruby-refm-1.9.0-dynamic.zip$}, "ftp://ftp.ruby-lang.org/pub/ruby/doc/ruby-refm-1.9.0-dynamic.zip" - - # legacy URLs of translated sites - r302 %r{^/zh_TW(.*)$}, "/zh_tw$1" - - r302 %r{^/pl/spolecznosc/listy-mailingowe(.*)$}, "/pl/community/mailing-lists$1" - r302 %r{^/pl/spolecznosc/grupy-uzytkownikow(.*)$}, "/pl/community/user-groups$1" - r302 %r{^/pl/spolecznosc/blogi(.*)$}, "/pl/community/weblogs$1" - r302 %r{^/pl/spolecznosc(.*)$}, "/pl/community$1" - r302 %r{^/pl/dokumentacja/ruby-w-20-minut(.*)$}, "/pl/documentation/quickstart$1" - r302 %r{^/pl/dokumentacja/ruby-a-inne-jezyki-programowania/ruby-a-(.*)$}, "/pl/documentation/ruby-from-other-languages/to-ruby-from-$1" - r302 %r{^/pl/dokumentacja/ruby-a-inne-jezyki-programowania(.*)$}, "/pl/documentation/ruby-from-other-languages$1" - r302 %r{^/pl/dokumentacja/udane-wdrozenia(.*)$}, "/pl/documentation/success-stories$1" - r302 %r{^/pl/dokumentacja(.*)$}, "/pl/documentation$1" - - r302 %r{^/pt/noticias-recentes$}, "/pt/news" - r302 %r{^/pt/noticias-recentes/(.*)$}, "/pt/news/$1" - r302 %r{^/pt/feeds/noticias.rss$}, "/pt/feeds/news.rss" - r302 %r{^/pt/sobre-o-ruby(.*)$}, "/pt/about$1" - r302 %r{^/pt/comunidade/conferencias-de-ruby(.*)$}, "/pt/community/conferences$1" - r302 %r{^/pt/comunidade/listas-de-correio/instrucoes-de-subscricao-manual(.*)$}, "/pt/community/mailing-lists/manual-instructions$1" - r302 %r{^/pt/comunidade/listas-de-correio(.*)$}, "/pt/community/mailing-lists$1" - r302 %r{^/pt/comunidade/nucleo-de-ruby(.*)$}, "/pt/community/ruby-core$1" - r302 %r{^/pt/comunidade/grupos-de-utilizadores(.*)$}, "/pt/community/user-groups$1" - r302 %r{^/pt/comunidade/weblogs(.*)$}, "/pt/community/weblogs$1" - r302 %r{^/pt/comunidade(.*)$}, "/pt/community$1" - r302 %r{^/pt/documentacao/ruby-a-partir-de-outras-linguagens/para-ruby-a-partir-de-c-e-c-mais-mais(.*)$}, "/pt/documentation/ruby-from-other-languages/to-ruby-from-c-and-cpp$1" - r302 %r{^/pt/documentacao/ruby-a-partir-de-outras-linguagens/para-ruby-a-partir-de-(.*)$}, "/pt/documentation/ruby-from-other-languages/to-ruby-from-$1" - r302 %r{^/pt/documentacao/ruby-a-partir-de-outras-linguagens(.*)$}, "/pt/documentation/ruby-from-other-languages$1" - r302 %r{^/pt/documentacao/historias-de-sucesso(.*)$}, "/pt/documentation/success-stories$1" - r302 %r{^/pt/documentacao(.*)$}, "/pt/documentation$1" - r302 %r{^/pt/bibliotecas/top-de-projectos-ruby(.*)$}, "/pt/libraries/top-projects$1" - r302 %r{^/pt/bibliotecas(.*)$}, "/pt/libraries$1" -end - -if ENV["RACK_ENV"] == "production" - use Rack::SSL - use Rack::Protection::HttpOrigin - use Rack::Protection::FrameOptions -end - -run Lanyon.application(skip_build: true) diff --git a/unicorn.rb b/unicorn.rb deleted file mode 100644 index 9c5bb77c13..0000000000 --- a/unicorn.rb +++ /dev/null @@ -1,18 +0,0 @@ -# https://devcenter.heroku.com/articles/rails-unicorn - -worker_processes Integer(ENV["WEB_CONCURRENCY"] || 3) -timeout 15 -preload_app true - -before_fork do |server, worker| - Signal.trap "TERM" do - puts "Unicorn master intercepting TERM and sending myself QUIT instead" - Process.kill "QUIT", Process.pid - end -end - -after_fork do |server, worker| - Signal.trap "TERM" do - puts "Unicorn worker intercepting TERM and doing nothing. Wait for master to send QUIT" - end -end From 7af5bd215ef15f755b78bb0e25b401f48c3fa90e Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 24 Apr 2023 17:11:42 +0900 Subject: [PATCH 008/607] Replaced Lanyon to Jekyll commands --- Rakefile | 35 +++++------------------------------ 1 file changed, 5 insertions(+), 30 deletions(-) diff --git a/Rakefile b/Rakefile index e2d9b20cb3..2147f45be6 100644 --- a/Rakefile +++ b/Rakefile @@ -18,41 +18,16 @@ task test: %i[test-news-plugin test-linter lint build] desc "Build the Jekyll site" task :build do - require "lanyon" + require "jekyll" - Lanyon.build -end - -namespace :build do - - def build_subpage(lang) - require "yaml" - require "lanyon" - - exclude_config = YAML.load_file(CONFIG)["exclude"] - exclude_langs = (LANGUAGES - [lang]).map {|x| "#{x}/" } - - exclude = exclude_config + exclude_langs - - Lanyon.build(exclude: exclude) - end - - desc "Build the Jekyll site (`lang' language part only)" - task :lang do - puts "Please specify one of the valid language codes:" - puts LANGUAGES.join(", ") << "." - end - - LANGUAGES.each do |lang| - task lang.to_sym do - build_subpage(lang) - end - end + Jekyll::Commands::Build.process({}) end desc "Serve the Jekyll site locally" task :serve do - sh "rackup config.ru" + require "jekyll" + + Jekyll::Commands::Serve.process({}) end namespace :new_post do From 3be1b883604be176a3d099ba26fd2a43f477d3f6 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 25 Apr 2023 10:55:04 +0900 Subject: [PATCH 009/607] Try to use Jekyll 4.3+ again --- Gemfile | 2 +- Gemfile.lock | 39 ++++++++++++++++++++++++--------------- 2 files changed, 25 insertions(+), 16 deletions(-) diff --git a/Gemfile b/Gemfile index 9a9fe540f4..3e25e76223 100644 --- a/Gemfile +++ b/Gemfile @@ -3,7 +3,7 @@ source "https://rubygems.org" ruby "~> 3.2.2" gem "rake" -gem "jekyll", "~> 4.2.0" +gem "jekyll" gem "rouge" group :development do diff --git a/Gemfile.lock b/Gemfile.lock index 3179dc0b14..d6a19a862a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -12,26 +12,30 @@ GEM eventmachine (1.2.7) ffi (1.15.5) forwardable-extended (2.6.0) + google-protobuf (3.22.3) + google-protobuf (3.22.3-arm64-darwin) + google-protobuf (3.22.3-x86_64-linux) http_parser.rb (0.8.0) i18n (1.12.0) concurrent-ruby (~> 1.0) - jekyll (4.2.2) + jekyll (4.3.2) addressable (~> 2.4) colorator (~> 1.0) em-websocket (~> 0.5) i18n (~> 1.0) - jekyll-sass-converter (~> 2.0) + jekyll-sass-converter (>= 2.0, < 4.0) jekyll-watch (~> 2.0) - kramdown (~> 2.3) + kramdown (~> 2.3, >= 2.3.1) kramdown-parser-gfm (~> 1.0) liquid (~> 4.0) - mercenary (~> 0.4.0) + mercenary (>= 0.3.6, < 0.5) pathutil (~> 0.9) - rouge (~> 3.0) + rouge (>= 3.0, < 5.0) safe_yaml (~> 1.0) - terminal-table (~> 2.0) - jekyll-sass-converter (2.2.0) - sassc (> 2.0.1, < 3.0) + terminal-table (>= 1.8, < 4.0) + webrick (~> 1.7) + jekyll-sass-converter (3.0.0) + sass-embedded (~> 1.54) jekyll-watch (2.2.1) listen (~> 3.0) json (2.6.3) @@ -63,18 +67,23 @@ GEM rb-inotify (0.10.1) ffi (~> 1.0) rexml (3.2.5) - rouge (3.30.0) + rouge (4.1.0) safe_yaml (1.0.5) - sassc (2.4.0) - ffi (~> 1.9) + sass-embedded (1.62.0) + google-protobuf (~> 3.21) + rake (>= 10.0.0) + sass-embedded (1.62.0-arm64-darwin) + google-protobuf (~> 3.21) + sass-embedded (1.62.0-x86_64-linux-gnu) + google-protobuf (~> 3.21) slop (4.10.1) spidr (0.7.0) nokogiri (~> 1.3) - terminal-table (2.0.0) - unicode-display_width (~> 1.1, >= 1.1.1) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) tidy_ffi (1.0.1) ffi (~> 1.2) - unicode-display_width (1.8.0) + unicode-display_width (2.4.2) validate-website (1.12.0) crass (~> 1) nokogiri (~> 1.12) @@ -96,7 +105,7 @@ PLATFORMS x86_64-linux DEPENDENCIES - jekyll (~> 4.2.0) + jekyll minitest rake rouge From 374f20e9a29130eb809b2a50a31cff1c109943c8 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 25 Apr 2023 10:56:14 +0900 Subject: [PATCH 010/607] We don't need to specify Ruby version for Heroku app --- Gemfile | 2 -- Gemfile.lock | 3 --- 2 files changed, 5 deletions(-) diff --git a/Gemfile b/Gemfile index 3e25e76223..7a723e1818 100644 --- a/Gemfile +++ b/Gemfile @@ -1,7 +1,5 @@ source "https://rubygems.org" -ruby "~> 3.2.2" - gem "rake" gem "jekyll" gem "rouge" diff --git a/Gemfile.lock b/Gemfile.lock index d6a19a862a..f3d99bf748 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -112,8 +112,5 @@ DEPENDENCIES spidr (~> 0.6) validate-website (~> 1.6) -RUBY VERSION - ruby 3.2.2p53 - BUNDLED WITH 2.4.10 From f0de8f5ed312b85398f2b74a45101e1fd73d8048 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 25 Apr 2023 11:21:10 +0900 Subject: [PATCH 011/607] Use html-proofer instead of spidr --- Gemfile | 2 +- Gemfile.lock | 38 +++++++++++++++++++++++++++++++++++++- Rakefile | 20 +++++++++++++++----- lib/link_checker.rb | 31 ------------------------------- 4 files changed, 53 insertions(+), 38 deletions(-) delete mode 100644 lib/link_checker.rb diff --git a/Gemfile b/Gemfile index 7a723e1818..bfed5db29b 100644 --- a/Gemfile +++ b/Gemfile @@ -6,6 +6,6 @@ gem "rouge" group :development do gem "minitest" - gem "spidr", "~> 0.6" + gem "html-proofer" gem "validate-website", "~> 1.6" end diff --git a/Gemfile.lock b/Gemfile.lock index f3d99bf748..3235b504b6 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,23 +1,45 @@ GEM remote: https://rubygems.org/ specs: + Ascii85 (1.1.0) addressable (2.8.4) public_suffix (>= 2.0.2, < 6.0) + afm (0.2.2) + async (2.5.0) + console (~> 1.10) + io-event (~> 1.1) + timers (~> 4.1) colorator (1.1.0) concurrent-ruby (1.2.2) + console (1.16.2) + fiber-local crass (1.0.6) em-websocket (0.5.3) eventmachine (>= 0.12.9) http_parser.rb (~> 0) + ethon (0.16.0) + ffi (>= 1.15.0) eventmachine (1.2.7) ffi (1.15.5) + fiber-local (1.0.0) forwardable-extended (2.6.0) google-protobuf (3.22.3) google-protobuf (3.22.3-arm64-darwin) google-protobuf (3.22.3-x86_64-linux) + hashery (2.1.2) + html-proofer (5.0.7) + addressable (~> 2.3) + async (~> 2.1) + nokogiri (~> 1.13) + pdf-reader (~> 2.11) + rainbow (~> 3.0) + typhoeus (~> 1.3) + yell (~> 2.0) + zeitwerk (~> 2.5) http_parser.rb (0.8.0) i18n (1.12.0) concurrent-ruby (~> 1.0) + io-event (1.1.7) jekyll (4.3.2) addressable (~> 2.4) colorator (~> 1.0) @@ -60,14 +82,22 @@ GEM paint (2.3.0) pathutil (0.16.2) forwardable-extended (~> 2.6) + pdf-reader (2.11.0) + Ascii85 (~> 1.0) + afm (~> 0.2.1) + hashery (~> 2.0) + ruby-rc4 + ttfunk public_suffix (5.0.1) racc (1.6.2) + rainbow (3.1.1) rake (13.0.6) rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) rexml (3.2.5) rouge (4.1.0) + ruby-rc4 (0.1.5) safe_yaml (1.0.5) sass-embedded (1.62.0) google-protobuf (~> 3.21) @@ -83,6 +113,10 @@ GEM unicode-display_width (>= 1.1.1, < 3) tidy_ffi (1.0.1) ffi (~> 1.2) + timers (4.3.5) + ttfunk (1.7.0) + typhoeus (1.4.0) + ethon (>= 0.9.0) unicode-display_width (2.4.2) validate-website (1.12.0) crass (~> 1) @@ -98,6 +132,8 @@ GEM nokogiri (~> 1.6) rexml (~> 3.2) webrick (1.8.1) + yell (2.2.2) + zeitwerk (2.6.7) PLATFORMS arm64-darwin-22 @@ -105,11 +141,11 @@ PLATFORMS x86_64-linux DEPENDENCIES + html-proofer jekyll minitest rake rouge - spidr (~> 0.6) validate-website (~> 1.6) BUNDLED WITH diff --git a/Rakefile b/Rakefile index 2147f45be6..49e2b98856 100644 --- a/Rakefile +++ b/Rakefile @@ -89,12 +89,22 @@ end namespace :check do - localport = 9292 - - desc "Check for broken internal links on http://localhost:#{localport}/" + desc "Check for broken internal links" task :links do - require_relative "lib/link_checker" - LinkChecker.new.check(localport: localport, languages: LANGUAGES) + require "html-proofer" + options = { + checks: [ + 'Links', + 'Images', + 'Scripts', + ], + ignore_empty_alt: true, + ignore_missing_alt: true, + check_external_hash: false, + check_internal_hash: false, + } + + HTMLProofer.check_directory('_site', options).run end desc "Validate _site markup with validate-website" diff --git a/lib/link_checker.rb b/lib/link_checker.rb deleted file mode 100644 index 65e0702afa..0000000000 --- a/lib/link_checker.rb +++ /dev/null @@ -1,31 +0,0 @@ -# frozen_string_literal: true - -gem "spidr", "~> 0.6" -require "spidr" - -class LinkChecker - - # Check for broken internal links on http://localhost:localport/ - def check(localport:, languages:) - url_map = Hash.new {|hash, key| hash[key] = [] } - - Spidr.site("http://localhost:#{localport}/") do |agent| - languages.each do |lang| - agent.enqueue("http://localhost:#{localport}/#{lang}/") - end - - agent.every_link do |origin, dest| - url_map[dest] << origin - end - - agent.every_page do |page| - if page.code == 404 - origin = url_map[page.url].last - dest = page.url.request_uri - - puts "Broken Link: #{origin} -> #{dest}" - end - end - end - end -end From 7f29ddedf3b51a59eaa90043d1c4342b85bba671 Mon Sep 17 00:00:00 2001 From: ytjmt <46666464+ytjmt@users.noreply.github.com> Date: Thu, 6 Apr 2023 00:51:07 +0900 Subject: [PATCH 012/607] Translate "Ruby 2.7.8 Released" (ja) --- .../_posts/2023-03-30-ruby-2-7-8-released.md | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 ja/news/_posts/2023-03-30-ruby-2-7-8-released.md diff --git a/ja/news/_posts/2023-03-30-ruby-2-7-8-released.md b/ja/news/_posts/2023-03-30-ruby-2-7-8-released.md new file mode 100644 index 0000000000..a9652d8637 --- /dev/null +++ b/ja/news/_posts/2023-03-30-ruby-2-7-8-released.md @@ -0,0 +1,60 @@ +--- +layout: news_post +title: "Ruby 2.7.8 リリース" +author: "usa" +translator: "ytjmt" +date: 2023-03-30 12:00:00 +0000 +lang: ja +--- + +Ruby 2.7.8 がリリースされました。 + +このリリースでは以下の脆弱性修正が含まれています。 +詳しくは以下の記事を参照してください。 + +* [CVE-2023-28755: ReDoS vulnerability in URI]({%link en/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: ReDoS vulnerability in Time]({%link en/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +このリリースには、いくつかのビルド上の問題への対応も含まれています。 +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v2_7_8) を参照してください。 + +このリリースをもって、Ruby 2.7 系列は EOL となります。即ち、Ruby 2.7.8 が Ruby 2.7 系列の最後のリリースとなる予定です。 +これ以降、仮に新たな脆弱性が発見されても、Ruby 2.7.9 などはリリースされません(ただし、深刻なリグレッションが発見された場合にはリリースする可能性があります)。 +全ての Ruby 2.7 ユーザーの皆様は、速やかに 3.2、3.1、3.0 への移行を開始することをお勧めします。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "2.7.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 }} + +## リリースコメント + +Ruby 開発者の皆様、バグや脆弱性を報告してくれたユーザーの皆様のご協力により本リリースは行われています。 +皆様のご協力に感謝します。 From 2952dd9a34dfbe75907b8fbad673128f7d074ac1 Mon Sep 17 00:00:00 2001 From: ytjmt <46666464+ytjmt@users.noreply.github.com> Date: Thu, 6 Apr 2023 00:51:34 +0900 Subject: [PATCH 013/607] Translate "Ruby 3.0.6 Released" (ja) --- .../_posts/2023-03-30-ruby-3-0-6-released.md | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 ja/news/_posts/2023-03-30-ruby-3-0-6-released.md diff --git a/ja/news/_posts/2023-03-30-ruby-3-0-6-released.md b/ja/news/_posts/2023-03-30-ruby-3-0-6-released.md new file mode 100644 index 0000000000..8a929859da --- /dev/null +++ b/ja/news/_posts/2023-03-30-ruby-3-0-6-released.md @@ -0,0 +1,57 @@ +--- +layout: news_post +title: "Ruby 3.0.6 リリース" +author: "usa" +translator: "ytjmt" +date: 2023-03-30 12:00:00 +0000 +lang: ja +--- + +Ruby 3.0.6 がリリースされました。 + +このリリースでは以下の脆弱性修正が含まれています。 +詳しくは以下の記事を参照してください。 + +* [CVE-2023-28755: ReDoS vulnerability in URI]({%link en/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: ReDoS vulnerability in Time]({%link en/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +このリリースには、いくつかのビルド上の問題への対応も含まれています。 +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_0_6) を参照してください。 + +このリリースをもって、Ruby 3.0 系列の通常メンテナンスフェーズは終了し、セキュリティメンテナンスフェーズに移行します。 +セキュリティメンテナンスフェーズにおいては、単なるバグの修正は行われず、セキュリティ上の問題の修正のみが行われます。 + +セキュリティメンテナンスフェーズの期間は 1 年間を予定しており、その期間が過ぎると、Ruby 3.0 系列のメンテナンスは完全に終了します。 +したがって、ユーザーの皆様におかれましては、速やかに Ruby 3.1 あるいは 3.2 への移行を計画し、準備を進めることをお薦めします。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.0.6" | first %} + +* <{{ 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 開発者の皆様、バグや脆弱性を報告してくれたユーザーの皆様のご協力により本リリースは行われています。 +皆様のご協力に感謝します。 + +本リリースを含む Ruby 3.0 のメンテナンスは Ruby アソシエーションの「Ruby 安定版保守事業」に基づき行われています。 From fc3fbbfd34f89a5d826662c6317710e357e4bbf9 Mon Sep 17 00:00:00 2001 From: ytjmt <46666464+ytjmt@users.noreply.github.com> Date: Thu, 6 Apr 2023 00:51:46 +0900 Subject: [PATCH 014/607] Translate "Ruby 3.1.4 Released" (ja) --- .../_posts/2023-03-30-ruby-3-1-4-released.md | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 ja/news/_posts/2023-03-30-ruby-3-1-4-released.md diff --git a/ja/news/_posts/2023-03-30-ruby-3-1-4-released.md b/ja/news/_posts/2023-03-30-ruby-3-1-4-released.md new file mode 100644 index 0000000000..8405389ced --- /dev/null +++ b/ja/news/_posts/2023-03-30-ruby-3-1-4-released.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "Ruby 3.1.4 リリース" +author: "nagachika" +translator: "ytjmt" +date: 2023-03-30 12:00:00 +0000 +lang: ja +--- + +Ruby 3.1.4 がリリースされました。 + +このリリースでは以下の脆弱性修正が含まれています。 +詳しくは以下の記事を参照してください。 + +* [CVE-2023-28755: ReDoS vulnerability in URI]({%link en/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: ReDoS vulnerability in Time]({%link en/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_4) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.1.4" | first %} + +* <{{ 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 3f60bd7a7838812af23e65b37d6bc32d67c350f3 Mon Sep 17 00:00:00 2001 From: ytjmt <46666464+ytjmt@users.noreply.github.com> Date: Thu, 6 Apr 2023 00:51:58 +0900 Subject: [PATCH 015/607] Translate "Ruby 3.2.2 Released" (ja) --- .../_posts/2023-03-30-ruby-3-2-2-released.md | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 ja/news/_posts/2023-03-30-ruby-3-2-2-released.md diff --git a/ja/news/_posts/2023-03-30-ruby-3-2-2-released.md b/ja/news/_posts/2023-03-30-ruby-3-2-2-released.md new file mode 100644 index 0000000000..0b94dc68ae --- /dev/null +++ b/ja/news/_posts/2023-03-30-ruby-3-2-2-released.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "Ruby 3.2.2 リリース" +author: "naruse" +translator: "ytjmt" +date: 2023-03-30 12:00:00 +0000 +lang: ja +--- + +Ruby 3.2.2 がリリースされました。 + +このリリースでは以下の脆弱性修正が含まれています。 +詳しくは以下の記事を参照してください。 + +* [CVE-2023-28755: ReDoS vulnerability in URI]({%link en/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: ReDoS vulnerability in Time]({%link en/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_2) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.2.2" | first %} + +* <{{ 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 e11d901466c0921a344a76c3d2ec99297c363cc0 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Wed, 5 Apr 2023 22:02:09 +0700 Subject: [PATCH 016/607] Translate Ruby 3.2.1 released news post (id) --- .../_posts/2023-02-08-ruby-3-2-1-released.md | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 id/news/_posts/2023-02-08-ruby-3-2-1-released.md diff --git a/id/news/_posts/2023-02-08-ruby-3-2-1-released.md b/id/news/_posts/2023-02-08-ruby-3-2-1-released.md new file mode 100644 index 0000000000..32b428954e --- /dev/null +++ b/id/news/_posts/2023-02-08-ruby-3-2-1-released.md @@ -0,0 +1,45 @@ +--- +layout: news_post +title: "Ruby 3.2.1 Dirilis" +author: "naruse" +translator: "meisyal" +date: 2023-02-08 12:00:00 +0000 +lang: id +--- + +Ruby 3.2.1 telah dirilis. + +Ini adalah versi rilis TEENY pertama dari rangkaian Ruby yang *stable*. + +Lihat [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_1) untuk +lebih detail. + +## Unduh + +{% assign release = site.data.releases | where: "version", "3.2.1" | first %} + +* <{{ 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 }} + +## Komentar Rilis + +Banyak *committer*, pengembang, dan pengguna yang telah menyediakan laporan +*bug* membantu kami untuk membuat rilis ini. Terima kasih atas kontribusinya. From f6e9921244ef49777d9de43b55f9e4935acd6646 Mon Sep 17 00:00:00 2001 From: StepSecurity Bot Date: Tue, 25 Apr 2023 03:06:34 +0000 Subject: [PATCH 017/607] [StepSecurity] ci: Harden GitHub Actions Signed-off-by: StepSecurity Bot --- .github/workflows/jekyll.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 57e38eb2ea..398d4c9207 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Setup Ruby uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0 with: @@ -28,13 +28,13 @@ jobs: bundler-cache: true - name: Setup Pages id: pages - uses: actions/configure-pages@v3 + uses: actions/configure-pages@f156874f8191504dae5b037505266ed5dda6c382 # v3.0.6 - name: Build with Jekyll run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" env: JEKYLL_ENV: production - name: Upload artifact - uses: actions/upload-pages-artifact@v1 + uses: actions/upload-pages-artifact@64bcae551a7b18bcb9a09042ddf1960979799187 # v1.0.8 deploy: environment: @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v2 + uses: actions/deploy-pages@af48cf94a42f2c634308b1c9dc0151830b6f190a # v2.0.1 From e5c78e42f500dc0ea9e901b6fee04fe6777365fe Mon Sep 17 00:00:00 2001 From: Gustavo Villa Date: Wed, 26 Apr 2023 15:16:20 -0400 Subject: [PATCH 018/607] Use cve.org instead of nist.gov --- .../_posts/2012-02-16-security-fix-for-ruby-openssl-module.md | 2 +- de/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- de/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- .../_posts/2012-02-16-security-fix-for-ruby-openssl-module.md | 2 +- en/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- en/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- en/news/_posts/2021-05-02-os-command-injection-in-rdoc.md | 2 +- en/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md | 2 +- .../_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md | 2 +- ...021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md | 2 +- ...-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md | 2 +- ...okie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md | 4 ++-- ...-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md | 2 +- ...-04-12-double-free-in-regexp-compilation-cve-2022-28738.md | 2 +- ...022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md | 2 +- es/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- es/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- es/news/_posts/2021-05-02-os-command-injection-in-rdoc.md | 2 +- es/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md | 2 +- .../_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md | 2 +- ...021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md | 2 +- ...-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md | 2 +- ...okie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md | 4 ++-- ...-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md | 2 +- ...-04-12-double-free-in-regexp-compilation-cve-2022-28738.md | 2 +- ...022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md | 2 +- ...correction-dune-faille-de-scurit-dans-le-module-openssl.md | 2 +- fr/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- fr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md | 2 +- fr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md | 2 +- .../_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md | 2 +- ...021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md | 2 +- ...-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md | 2 +- ...okie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md | 4 ++-- .../_posts/2012-02-16-security-fix-for-ruby-openssl-module.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- id/news/_posts/2021-05-02-os-command-injection-in-rdoc.md | 2 +- id/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md | 2 +- .../_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md | 2 +- ...021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md | 2 +- ...-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md | 2 +- ...okie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md | 4 ++-- ...-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md | 2 +- ...-04-12-double-free-in-regexp-compilation-cve-2022-28738.md | 2 +- ...022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md | 2 +- it/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- it/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- ja/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- ja/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- ja/news/_posts/2021-05-02-os-command-injection-in-rdoc.md | 2 +- ja/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md | 2 +- .../_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md | 2 +- ...-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md | 2 +- ...okie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md | 4 ++-- ...-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md | 2 +- ...-04-12-double-free-in-regexp-compilation-cve-2022-28738.md | 2 +- ...022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md | 2 +- ja/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md | 2 +- ko/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- ko/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- ko/news/_posts/2021-05-02-os-command-injection-in-rdoc.md | 2 +- ko/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md | 2 +- .../_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md | 2 +- ...021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md | 2 +- ...-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md | 2 +- ...okie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md | 4 ++-- ...-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md | 2 +- ...-04-12-double-free-in-regexp-compilation-cve-2022-28738.md | 2 +- ...022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md | 2 +- pl/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- pl/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- ...022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md | 2 +- ru/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- ru/news/_posts/2021-05-02-os-command-injection-in-rdoc.md | 2 +- ru/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md | 2 +- .../_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- tr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md | 2 +- tr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md | 2 +- .../_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md | 2 +- vi/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- zh_cn/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- ...-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md | 2 +- ...-04-12-double-free-in-regexp-compilation-cve-2022-28738.md | 2 +- ...022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md | 2 +- zh_tw/news/_posts/2014-04-10-severe-openssl-vulnerability.md | 2 +- zh_tw/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md | 2 +- .../2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md | 4 ++-- ...-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md | 2 +- ...-04-12-double-free-in-regexp-compilation-cve-2022-28738.md | 2 +- 98 files changed, 115 insertions(+), 115 deletions(-) diff --git a/de/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md b/de/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md index 76cd773780..54d2963d96 100644 --- a/de/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md +++ b/de/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md @@ -55,6 +55,6 @@ um CVE-2011-3389 durchlesen. [1]: http://www.openssl.org/~bodo/tls-cbc.txt -[2]: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2011-3389 +[2]: https://www.cve.org/CVERecord?id=CVE-2011-3389 [3]: https://bugs.ruby-lang.org/5353 [4]: http://mla.n-z.jp/?ruby-talk=393484 diff --git a/de/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/de/news/_posts/2014-04-10-severe-openssl-vulnerability.md index 39beafa105..978c5d0b76 100644 --- a/de/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/de/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -12,7 +12,7 @@ In der OpenSSL-Implementation der Heartbeat-Erweiterung (`RFC6520`) von TLS/DTLS (Protokolle zum Verschlüsseln der Transportschicht) wurde eine kritische Sicherheitslücke entdeckt. Es handelt sich hierbei um ein schwerwiegendes Sicherheitsproblem, dem die CVE-Kennung -[CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160) +[CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160) zugewiesen wurde. Seine Ausnutzung kann das Auslesen des Serverspeichers durch den diff --git a/de/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/de/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 1156f7f3e3..50d6598bb0 100644 --- a/de/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/de/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -54,4 +54,4 @@ Wir ermutigen Sie dazu, auf eine stabile und unterstützte [Version von Ruby](https://www.ruby-lang.org/de/downloads/) zu aktualisieren. -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/de/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/de/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index 05fba4466b..9c7f931207 100644 --- a/de/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/de/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -18,8 +18,8 @@ wurde. Es wurden die folgenden Schwachstellen gemeldet: -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) Es wird allen Ruby-Nutzern nachdrücklich empfohlen, die Ruby-Version zu aktualisieren oder wenigstens einen der nachfolgenden Workarounds diff --git a/en/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md b/en/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md index 89ed543b94..473b6ef3a5 100644 --- a/en/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md +++ b/en/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md @@ -45,6 +45,6 @@ details, please find discussions and resources around CVE-2011-3389. [1]: http://www.openssl.org/~bodo/tls-cbc.txt -[2]: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2011-3389 +[2]: https://www.cve.org/CVERecord?id=CVE-2011-3389 [3]: https://bugs.ruby-lang.org/5353 [4]: http://mla.n-z.jp/?ruby-talk=393484 diff --git a/en/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/en/news/_posts/2014-04-10-severe-openssl-vulnerability.md index 1fe5380466..d167ccb06b 100644 --- a/en/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/en/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -11,7 +11,7 @@ lang: en There is a severe vulnerability in OpenSSL's implementation of the TLS/DTLS (transport layer security protocols) heartbeat extension (`RFC6520`). This a serious vulnerability which has been assigned the CVE identifier -[CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160). +[CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160). Exploitation may lead to disclosure of memory contents from the server to the client and from the client to the server. An attacker can remotely retrieve diff --git a/en/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/en/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 8f3ce89848..7b85206fa7 100644 --- a/en/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/en/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -52,4 +52,4 @@ You can read the original report on the bug tracker: We encourage you to upgrade to a stable and maintained [version of Ruby](https://www.ruby-lang.org/en/downloads/). -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/en/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/en/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index f34f39db32..58ba01edd7 100644 --- a/en/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/en/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -16,8 +16,8 @@ All Ruby users are recommended to update Ruby to the latest release which includ The following vulnerabilities have been reported. -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) It is strongly recommended for all Ruby users to upgrade your Ruby installation or take one of the following workarounds as soon as possible. You also have to re-generate existing RDoc documentations to completely mitigate the vulnerabilities. diff --git a/en/news/_posts/2021-05-02-os-command-injection-in-rdoc.md b/en/news/_posts/2021-05-02-os-command-injection-in-rdoc.md index 37fbad8658..6735d41920 100644 --- a/en/news/_posts/2021-05-02-os-command-injection-in-rdoc.md +++ b/en/news/_posts/2021-05-02-os-command-injection-in-rdoc.md @@ -15,7 +15,7 @@ It is recommended that all Ruby users update RDoc to the latest version that fix The following vulnerability has been reported. -* [CVE-2021-31799](https://nvd.nist.gov/vuln/detail/CVE-2021-31799) +* [CVE-2021-31799](https://www.cve.org/CVERecord?id=CVE-2021-31799) RDoc used to call `Kernel#open` to open a local file. If a Ruby project has a file whose name starts with `|` and ends with `tags`, the command following the pipe character is executed. A malicious Ruby project could exploit it to run an arbitrary command execution against a user who attempts to run `rdoc` command. diff --git a/en/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md b/en/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md index bdbb3357ba..195a45726e 100644 --- a/en/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md +++ b/en/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md @@ -9,7 +9,7 @@ lang: en --- A StartTLS stripping vulnerability was discovered in Net::IMAP. -This vulnerability has been assigned the CVE identifier [CVE-2021-32066](https://nvd.nist.gov/vuln/detail/CVE-2021-32066). +This vulnerability has been assigned the CVE identifier [CVE-2021-32066](https://www.cve.org/CVERecord?id=CVE-2021-32066). We strongly recommend upgrading Ruby. net-imap is a default gem in Ruby 3.0.1 but it has a packaging issue, so please upgrade Ruby itself. diff --git a/en/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md b/en/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md index 871644b8c8..05b1b0073e 100644 --- a/en/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md +++ b/en/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md @@ -9,7 +9,7 @@ lang: en --- A trusting FTP PASV responses vulnerability was discovered in Net::FTP. -This vulnerability has been assigned the CVE identifier [CVE-2021-31810](https://nvd.nist.gov/vuln/detail/CVE-2021-31810). +This vulnerability has been assigned the CVE identifier [CVE-2021-31810](https://www.cve.org/CVERecord?id=CVE-2021-31810). We strongly recommend upgrading Ruby. net-ftp is a default gem in Ruby 3.0.1 but it has a packaging issue, so please upgrade Ruby itself. diff --git a/en/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md b/en/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md index a67e911725..fa52f26d84 100644 --- a/en/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md +++ b/en/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md @@ -9,7 +9,7 @@ lang: en --- We have released date gem version 3.2.1, 3.1.2, 3.0.2, and 2.0.1 that include a security fix for a regular expression denial of service vulnerability (ReDoS) on date parsing methods. An attacker can exploit this vulnerability to cause an effective DoS attack. -This vulnerability has been assigned the CVE identifier [CVE-2021-41817](https://nvd.nist.gov/vuln/detail/CVE-2021-41817). +This vulnerability has been assigned the CVE identifier [CVE-2021-41817](https://www.cve.org/CVERecord?id=CVE-2021-41817). ## Details diff --git a/en/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md b/en/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md index ddf2f7210c..4dacb7cc3a 100644 --- a/en/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md +++ b/en/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md @@ -9,7 +9,7 @@ lang: en --- A buffer overrun vulnerability was discovered in CGI.escape_html. -This vulnerability has been assigned the CVE identifier [CVE-2021-41816](https://nvd.nist.gov/vuln/detail/CVE-2021-41816). +This vulnerability has been assigned the CVE identifier [CVE-2021-41816](https://www.cve.org/CVERecord?id=CVE-2021-41816). We strongly recommend upgrading Ruby. ## Details diff --git a/en/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md b/en/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md index a5977aaed6..7da367d880 100644 --- a/en/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md +++ b/en/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md @@ -9,7 +9,7 @@ lang: en --- A cookie prefix spoofing vulnerability was discovered in CGI::Cookie.parse. -This vulnerability has been assigned the CVE identifier [CVE-2021-41819](https://nvd.nist.gov/vuln/detail/CVE-2021-41819). +This vulnerability has been assigned the CVE identifier [CVE-2021-41819](https://www.cve.org/CVERecord?id=CVE-2021-41819). We strongly recommend upgrading Ruby. ## Details @@ -20,7 +20,7 @@ An attacker could exploit this vulnerability to spoof security prefixes in cooki By this fix, `CGI::Cookie.parse` no longer decodes cookie names. Note that this is an incompatibility if cookie names that you are using include non-alphanumeric characters that are URL-encoded. -This is the same issue of [CVE-2020-8184](https://nvd.nist.gov/vuln/detail/CVE-2020-8184). +This is the same issue of [CVE-2020-8184](https://www.cve.org/CVERecord?id=CVE-2020-8184). If you are using Ruby 2.7 or 3.0: diff --git a/en/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md b/en/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md index 2fb26a02c5..0c898c355b 100644 --- a/en/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md +++ b/en/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md @@ -9,7 +9,7 @@ lang: en --- A buffer-overrun vulnerability is discovered in a conversion algorithm from a String to a Float. -This vulnerability has been assigned the CVE identifier [CVE-2022-28739](https://nvd.nist.gov/vuln/detail/CVE-2022-28739). +This vulnerability has been assigned the CVE identifier [CVE-2022-28739](https://www.cve.org/CVERecord?id=CVE-2022-28739). We strongly recommend upgrading Ruby. ## Details diff --git a/en/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md b/en/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md index 9aecdec3d1..5b27831746 100644 --- a/en/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md +++ b/en/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md @@ -9,7 +9,7 @@ lang: en --- A double-free vulnerability is discovered in Regexp compilation. -This vulnerability has been assigned the CVE identifier [CVE-2022-28738](https://nvd.nist.gov/vuln/detail/CVE-2022-28738). +This vulnerability has been assigned the CVE identifier [CVE-2022-28738](https://www.cve.org/CVERecord?id=CVE-2022-28738). We strongly recommend upgrading Ruby. ## Details diff --git a/en/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md b/en/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md index 9f599f7fdd..79fbbfc0dd 100644 --- a/en/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md +++ b/en/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md @@ -9,7 +9,7 @@ lang: en --- We have released the cgi gem version 0.3.5, 0.2.2, and 0.1.0.2 that has a security fix for a HTTP response splitting vulnerability. -This vulnerability has been assigned the CVE identifier [CVE-2021-33621](https://nvd.nist.gov/vuln/detail/CVE-2021-33621). +This vulnerability has been assigned the CVE identifier [CVE-2021-33621](https://www.cve.org/CVERecord?id=CVE-2021-33621). ## Details diff --git a/es/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/es/news/_posts/2014-04-10-severe-openssl-vulnerability.md index 4e01fe1416..d9af2b2efb 100644 --- a/es/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/es/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -11,7 +11,7 @@ lang: es Existe una vulnerabilidad severa en la implementación OpenSSL de la extensión TLS/DTLS (transport layer security protocols) heartbeat (`RFC6520`). Esta vulnerabilidad es muy severa y se le ha asignado el identificador -[CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160). +[CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160). La explotación de esta vulnerabilidad puede llevar a la revelación de el contenido de la memoria del servidor al cliente y del cliente hacia el servidor. diff --git a/es/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/es/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index dbf70e2b94..80f77aa902 100644 --- a/es/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/es/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -53,4 +53,4 @@ Puedes leer el reporte original de el problema en el tracker: Te recomendamos que actualices a una versión [estable y mantendida de Ruby](https://www.ruby-lang.org/es/downloads/). -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/es/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/es/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index f92e952be0..5766edac94 100644 --- a/es/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/es/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -18,8 +18,8 @@ más reciente que incluye la versión reparada de RDoc. Se han reportado las siguientes vulnerabilidades. -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) Se recomienda de manera especial a todos los usuarios de Ruby actualizar la instalación de Ruby o emplear tan pronto sea posible una de las diff --git a/es/news/_posts/2021-05-02-os-command-injection-in-rdoc.md b/es/news/_posts/2021-05-02-os-command-injection-in-rdoc.md index f9e4c4b8c4..00ec8c093d 100644 --- a/es/news/_posts/2021-05-02-os-command-injection-in-rdoc.md +++ b/es/news/_posts/2021-05-02-os-command-injection-in-rdoc.md @@ -17,7 +17,7 @@ la versión más reciente que resuelve el problema. Se ha reportado la siguiente vulnerabilidad. -* [CVE-2021-31799](https://nvd.nist.gov/vuln/detail/CVE-2021-31799) +* [CVE-2021-31799](https://www.cve.org/CVERecord?id=CVE-2021-31799) RDoc solía llamar `Kernel#open` para abrir un archivo local. Si un proyecto Ruby tiene un archivo cuyo nombre comience con `|` diff --git a/es/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md b/es/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md index 1823df767e..c71ae3e075 100644 --- a/es/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md +++ b/es/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md @@ -10,7 +10,7 @@ lang: es Se descubrió una vulnerabilidad de recortado de StartTLS en Net::IMAP. A esta vulnerabilidad se le ha asignado el identificador CVE -[CVE-2021-32066](https://nvd.nist.gov/vuln/detail/CVE-2021-32066). +[CVE-2021-32066](https://www.cve.org/CVERecord?id=CVE-2021-32066). Recomendamos enfáticamente actualizar Ruby. net-imap es una gema predeterminada en Ruby 3.0.1 pero tiene un problema diff --git a/es/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md b/es/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md index 22063c9bfa..c4e5e4c4ff 100644 --- a/es/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md +++ b/es/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md @@ -11,7 +11,7 @@ lang: es Se ha descubierto una vulnerabilidad en Net::FTP por confiar en respuestas FTP PASV. A eta vulnerabilidad se le ha asignado el identificador CVE -[CVE-2021-31810](https://nvd.nist.gov/vuln/detail/CVE-2021-31810). +[CVE-2021-31810](https://www.cve.org/CVERecord?id=CVE-2021-31810). Recomendamos enfáticamente actualizar Ruby. net-ftp es una gema predeterminada en Ruby 3.0.1 pero tiene un diff --git a/es/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md b/es/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md index 8f1bacc61e..6fbdedec9e 100644 --- a/es/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md +++ b/es/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md @@ -16,7 +16,7 @@ Un atacante podría explotar esta vulnerabilidad para generar un ataque de denegación de servicio efectivo. A esta vulnerabilidad se le ha asignado el identificador CVE -[CVE-2021-41817](https://nvd.nist.gov/vuln/detail/CVE-2021-41817). +[CVE-2021-41817](https://www.cve.org/CVERecord?id=CVE-2021-41817). ## Detalles diff --git a/es/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md b/es/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md index 6a2e0b3807..d13a586580 100644 --- a/es/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md +++ b/es/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md @@ -11,7 +11,7 @@ lang: es Una vulnerabilidad de desbordamiento de búfer fue descubierta en CGI.escape_html. A esta vulnerabilidad se le ha asignado el identificador CVE -[CVE-2021-41816](https://nvd.nist.gov/vuln/detail/CVE-2021-41816). +[CVE-2021-41816](https://www.cve.org/CVERecord?id=CVE-2021-41816). Recomendamos enfáticamente actualizar Ruby. ## Detalles diff --git a/es/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md b/es/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md index 0ea1eb17ae..d17988aee2 100644 --- a/es/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md +++ b/es/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md @@ -11,7 +11,7 @@ lang: es Se descubrió una vulnerabilidad de suplantación de identidad de prefijos de galletas (cookies) en CGI::Cookie.parse. A esta vulnerabilidad se el ha asignado el identificador -CVE [CVE-2021-41819](https://nvd.nist.gov/vuln/detail/CVE-2021-41819). +CVE [CVE-2021-41819](https://www.cve.org/CVERecord?id=CVE-2021-41819). Recomendamos con énfasis actualizar Ruby. ## Detalles @@ -28,7 +28,7 @@ Note que esto es una incompatibilidad si los nombres de galletas que está usando incluyendo carácteres no alfanuméricos que no están codificados como URL. -Este es el mismo incidente [CVE-2020-8184](https://nvd.nist.gov/vuln/detail/CVE-2020-8184). +Este es el mismo incidente [CVE-2020-8184](https://www.cve.org/CVERecord?id=CVE-2020-8184). Si está usando Ruby 2.7 o 3.0: diff --git a/es/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md b/es/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md index a8d143515e..ffe71204a5 100644 --- a/es/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md +++ b/es/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md @@ -11,7 +11,7 @@ lang: es Se descubrió una vulnerabilidad de desbordamiento de buffer en un algoritmo de conversión de String a Float. A esta vulnerabilidad se le ha asignado el identificador CVE -[CVE-2022-28739](https://nvd.nist.gov/vuln/detail/CVE-2022-28739). +[CVE-2022-28739](https://www.cve.org/CVERecord?id=CVE-2022-28739). Recomendamos actualizar Ruby con urgencia. ## Detalles diff --git a/es/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md b/es/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md index 96c3f5e9eb..8403ea9e5a 100644 --- a/es/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md +++ b/es/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md @@ -11,7 +11,7 @@ lang: es Una vulnerabilidad de doble free ha sido descubierta en la compilación de expresiones regulares. A esta vulnerabilidad se le ha asignado el identificador CVE -[CVE-2022-28738](https://nvd.nist.gov/vuln/detail/CVE-2022-28738). +[CVE-2022-28738](https://www.cve.org/CVERecord?id=CVE-2022-28738). Recomendamos actualizar Ruby con urgencia. ## Detalles diff --git a/es/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md b/es/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md index 2ab26debb9..b1f96f54ba 100644 --- a/es/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md +++ b/es/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md @@ -12,7 +12,7 @@ Hemos publicado las versiones 0.3.5, 0.2.2 y 0.1.0.2 de la gema cgi, que incluyen una corrección de seguridad para una vulnerabilidad de división de respuesta HTTP. A esta vulnerabilidad se le ha asignado el identificador CVE -[CVE-2021-33621](https://nvd.nist.gov/vuln/detail/CVE-2021-33621). +[CVE-2021-33621](https://www.cve.org/CVERecord?id=CVE-2021-33621). ## Detalles diff --git a/fr/news/_posts/2012-02-16-correction-dune-faille-de-scurit-dans-le-module-openssl.md b/fr/news/_posts/2012-02-16-correction-dune-faille-de-scurit-dans-le-module-openssl.md index 52a70f853d..aa1280972b 100644 --- a/fr/news/_posts/2012-02-16-correction-dune-faille-de-scurit-dans-le-module-openssl.md +++ b/fr/news/_posts/2012-02-16-correction-dune-faille-de-scurit-dans-le-module-openssl.md @@ -51,6 +51,6 @@ renseignez-vous sur CVE-2011-3389. [1]: http://www.openssl.org/~bodo/tls-cbc.txt -[2]: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2011-3389 +[2]: https://www.cve.org/CVERecord?id=CVE-2011-3389 [3]: https://bugs.ruby-lang.org/5353 [4]: http://mla.n-z.jp/?ruby-talk=393484 diff --git a/fr/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/fr/news/_posts/2014-04-10-severe-openssl-vulnerability.md index 6a4b5a9c0d..371f9d2714 100644 --- a/fr/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/fr/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -11,7 +11,7 @@ lang: fr Une faille critique a été découverte dans l'implémentation d'OpenSSL de l'extension TLS/DTLS (transport layer security protocols) heartbeat (`RFC6520`). Cette faille est critique et est référencée par l'identifiant CVE (Common Vulnerabilities and Exposures) -[CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160). +[CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160). L'exploitation de cette faille peut permettre l'accès au contenu de la mémoire du serveur au client et du client au serveur. Un attaquant peut récupérer à diff --git a/fr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md b/fr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md index 7a0e46f25c..d8703d3805 100644 --- a/fr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md +++ b/fr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md @@ -15,7 +15,7 @@ Il est recommandé aux utilisateurs de Ruby de mettre à jour RDoc vers la derni La faille suivante a été signalée. -- [CVE-2021-31799](https://nvd.nist.gov/vuln/detail/CVE-2021-31799) +- [CVE-2021-31799](https://www.cve.org/CVERecord?id=CVE-2021-31799) RDoc fait appel à `Kernel#open` pour ouvrir un fichier localement. Si un projet Ruby possède un fichier dont le nom commence par `|` et se termine par `tags`, alors la commande suivant le pipe (barre verticale) est exécutée. Un projet Ruby malveillant pourrait exploiter ce comportement pour exécuter des commandes arbitraires à l'encontre de l'utilisateur qui tente de lancer `rdoc` diff --git a/fr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md b/fr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md index 8574b3db89..77a671f064 100644 --- a/fr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md +++ b/fr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md @@ -9,7 +9,7 @@ lang: fr --- Une vulnérabilité StartTLS stripping a été découverte dans Net::IMAP. -Cette vulnérabilité possède l'identifiant CVE [CVE-2021-32066](https://nvd.nist.gov/vuln/detail/CVE-2021-32066). +Cette vulnérabilité possède l'identifiant CVE [CVE-2021-32066](https://www.cve.org/CVERecord?id=CVE-2021-32066). Nous vous recommandons fortement de mettre à jour Ruby. net-imap est une gemme incluse par défaut dans Ruby 3.0.1, mais a un problème d'empaquetage. Veuillez donc mettre à jour Ruby lui-même. diff --git a/fr/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md b/fr/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md index 4e3d446bf8..aeb8d15055 100644 --- a/fr/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md +++ b/fr/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md @@ -9,7 +9,7 @@ lang: fr --- Une vulnérabilité concernant la confiance des réponses FTP PASV a été découverte dans Net::FTP. -Cette vulnérabilité possède l'identifiant CVE [CVE-2021-31810](https://nvd.nist.gov/vuln/detail/CVE-2021-31810). +Cette vulnérabilité possède l'identifiant CVE [CVE-2021-31810](https://www.cve.org/CVERecord?id=CVE-2021-31810). Nous vous recommandons fortement de mettre à jour Ruby. net-ftp est une gemme incluse par défaut dans Ruby 3.0.1, mais a un problème d'empaquetage. Veuillez donc mettre à jour Ruby lui-même. diff --git a/fr/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md b/fr/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md index c507d7bd94..ff191dddc0 100644 --- a/fr/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md +++ b/fr/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md @@ -8,7 +8,7 @@ tags: security lang: fr --- -Nous avons publié les versions 3.2.1, 3.1.2, 3.0.2 et 2.0.1 de la gemme date qui incluent un correctif de sécurité pour une vulnérabilité de déni de service d'expression régulière (ReDoS) sur les méthodes d'analyse de date. Un attaquant peut exploiter cette vulnérabilité pour provoquer une attaque DoS efficace. Cette vulnérabilité a reçu l'identifiant CVE [CVE-2021-41817](https://nvd.nist.gov/vuln/detail/CVE-2021-41817). +Nous avons publié les versions 3.2.1, 3.1.2, 3.0.2 et 2.0.1 de la gemme date qui incluent un correctif de sécurité pour une vulnérabilité de déni de service d'expression régulière (ReDoS) sur les méthodes d'analyse de date. Un attaquant peut exploiter cette vulnérabilité pour provoquer une attaque DoS efficace. Cette vulnérabilité a reçu l'identifiant CVE [CVE-2021-41817](https://www.cve.org/CVERecord?id=CVE-2021-41817). ## Détails diff --git a/fr/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md b/fr/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md index 7f697a2dc5..3e02a47484 100644 --- a/fr/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md +++ b/fr/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md @@ -8,7 +8,7 @@ tags: security lang: fr --- -Une vulnérabilité de dépassement de mémoire tampon a été découverte dans CGI.escape_html. Cette vulnérabilité a reçu l'identifiant CVE [CVE-2021-41816](https://nvd.nist.gov/vuln/detail/CVE-2021-41816). +Une vulnérabilité de dépassement de mémoire tampon a été découverte dans CGI.escape_html. Cette vulnérabilité a reçu l'identifiant CVE [CVE-2021-41816](https://www.cve.org/CVERecord?id=CVE-2021-41816). Nous vous recommandons fortement de mettre à jour Ruby. ## Détails diff --git a/fr/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md b/fr/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md index 44887fb4a5..7e80421d30 100644 --- a/fr/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md +++ b/fr/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md @@ -8,7 +8,7 @@ tags: security lang: fr --- -Une vulnérabilité d'usurpation de préfixes de cookie a été découverte dans CGI::Cookie.parse. Cette vulnérabilité a reçu l'identifiant CVE [CVE-2021-41819](https://nvd.nist.gov/vuln/detail/CVE-2021-41819). +Une vulnérabilité d'usurpation de préfixes de cookie a été découverte dans CGI::Cookie.parse. Cette vulnérabilité a reçu l'identifiant CVE [CVE-2021-41819](https://www.cve.org/CVERecord?id=CVE-2021-41819). Nous vous recommandons fortement de mettre à jour Ruby. ## Détails @@ -17,7 +17,7 @@ Les anciennes versions de `CGI::Cookie.parse` appliquent le décodage d'URL aux Par ce correctif, `CGI::Cookie.parse` ne décode plus les noms de cookies. Notez qu'il s'agit d'une incompatibilité si les noms de cookies que vous utilisez incluent des caractères non alphanumériques URL encodés. -C'est le même problème que [CVE-2020-8184](https://nvd.nist.gov/vuln/detail/CVE-2020-8184). +C'est le même problème que [CVE-2020-8184](https://www.cve.org/CVERecord?id=CVE-2020-8184). Si vous utilisez Ruby 2.7 ou 3.0 : diff --git a/id/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md b/id/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md index c005c523f0..5c1a0015fe 100644 --- a/id/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md +++ b/id/news/_posts/2012-02-16-security-fix-for-ruby-openssl-module.md @@ -46,6 +46,6 @@ seputar CVE-2011-3389. [1]: http://www.openssl.org/~bodo/tls-cbc.txt -[2]: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2011-3389 +[2]: https://www.cve.org/CVERecord?id=CVE-2011-3389 [3]: https://bugs.ruby-lang.org/5353 [4]: http://mla.n-z.jp/?ruby-talk=393484 diff --git a/id/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/id/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index 7aaf6fb37b..e6fc99b011 100644 --- a/id/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/id/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -18,8 +18,8 @@ mana berisi perbaikan versi RDoc. Kerentanan berikut ini telah dilaporkan. -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) Semua pengguna Ruby sangat disarankan untuk memperbarui Ruby atau mengambil salah satu solusi berikut segera mungkin. diff --git a/id/news/_posts/2021-05-02-os-command-injection-in-rdoc.md b/id/news/_posts/2021-05-02-os-command-injection-in-rdoc.md index 1fedaee221..0a13631ea6 100644 --- a/id/news/_posts/2021-05-02-os-command-injection-in-rdoc.md +++ b/id/news/_posts/2021-05-02-os-command-injection-in-rdoc.md @@ -16,7 +16,7 @@ terbaru untuk memperbaiki kerentanan ini. Berikut adalah kerentanan yang telah dilaporkan. -* [CVE-2021-31799](https://nvd.nist.gov/vuln/detail/CVE-2021-31799) +* [CVE-2021-31799](https://www.cve.org/CVERecord?id=CVE-2021-31799) RDoc sebelumnya memanggil `Kernel#open` untuk membuat sebuah berkas lokal. Jika sebuah proyek Ruby memiliki sebuah berkas yang mana nama berkas dimulai dengan diff --git a/id/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md b/id/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md index 0e83033da3..9b5c6032cc 100644 --- a/id/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md +++ b/id/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md @@ -10,7 +10,7 @@ lang: id Sebuah kerentanan StartTLS *stripping* telah ditemukan pada Net::IMAP. Kerentanan ini telah ditetapkan dengan penanda CVE -[CVE-2021-32066](https://nvd.nist.gov/vuln/detail/CVE-2021-32066). +[CVE-2021-32066](https://www.cve.org/CVERecord?id=CVE-2021-32066). Kami sangat merekomendasikan untuk memperbarui Ruby. net-imap adalah sebuah *default gem* pada Ruby 3.0.1, tetapi *gem* tersebut diff --git a/id/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md b/id/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md index 6dad71eca8..acad4cb893 100644 --- a/id/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md +++ b/id/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md @@ -10,7 +10,7 @@ lang: id Sebuah kerentanan respons FTP PASV yang dipercaya telah ditemukan pada Net::FTP. Kerentanan ini telah ditetapkan dengan penanda CVE -[CVE-2021-31810](https://nvd.nist.gov/vuln/detail/CVE-2021-31810). +[CVE-2021-31810](https://www.cve.org/CVERecord?id=CVE-2021-31810). Kami sangat merekomendasikan Anda untuk memperbarui Ruby. net-ftp adalah sebuah *default gem* pada Ruby 3.0.1, tetapi *gem* tersebut diff --git a/id/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md b/id/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md index d8b96662e4..3ae82918eb 100644 --- a/id/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md +++ b/id/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md @@ -13,7 +13,7 @@ sebuah perbaikan keamanan untuk *regular expression denial of service vulnerability* (ReDoS) pada *date parsing method*. Seorang penyerang dapat mengeksploitasi kerentanan ini sehingga menyebabkan sebuah serangan DoS yang efektif. Kerentanan ini telah ditetapkan dengan penanda CVE -[CVE-2021-41817](https://nvd.nist.gov/vuln/detail/CVE-2021-41817). +[CVE-2021-41817](https://www.cve.org/CVERecord?id=CVE-2021-41817). ## Detail diff --git a/id/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md b/id/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md index 758e8e612b..96a0a09270 100644 --- a/id/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md +++ b/id/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md @@ -10,7 +10,7 @@ lang: id Sebuah kerentanan *buffer overrun* telah ditemukan pada CGI.escape_html. Kerentanan ini telah ditetapkan dengan penanda CVE -[CVE-2021-41816](https://nvd.nist.gov/vuln/detail/CVE-2021-41816). +[CVE-2021-41816](https://www.cve.org/CVERecord?id=CVE-2021-41816). Kami sangat merekomendasikan Anda untuk memperbarui Ruby. ## Detail diff --git a/id/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md b/id/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md index e83fc04204..dd9fd52f2f 100644 --- a/id/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md +++ b/id/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md @@ -10,7 +10,7 @@ lang: id Sebuah kerentanan *cookie prefix spoofing* telah ditemukan pada CGI::Cookie.parse. Kerentanan ini telah ditetapkan dengan penanda CVE -[CVE-2021-41819](https://nvd.nist.gov/vuln/detail/CVE-2021-41819). Kami sangat +[CVE-2021-41819](https://www.cve.org/CVERecord?id=CVE-2021-41819). Kami sangat merekomendasikan untuk memperbarui Ruby. ## Detail @@ -25,7 +25,7 @@ Catat bahwa ada sebuah inkompatibilitas jika nama *cookie* yang sedang Anda gunakan memasukkan karakter bukan alfanumerik yang URL-*encoded*. Kerentanan ini sama dengan -[CVE-2020-8184](https://nvd.nist.gov/vuln/detail/CVE-2020-8184). +[CVE-2020-8184](https://www.cve.org/CVERecord?id=CVE-2020-8184). Jika Anda sedang menggunakan Ruby 2.7 atau 3.0: diff --git a/id/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md b/id/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md index afe9afad93..6d3f86297b 100644 --- a/id/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md +++ b/id/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md @@ -10,7 +10,7 @@ lang: id Sebuah kerentanan *buffer-overrun* telah ditemukan pada algoritma konversi dari sebuah *String* ke *Float*. Kerentanan ini telah ditetapkan dengan penanda CVE -[CVE-2022-28739](https://nvd.nist.gov/vuln/detail/CVE-2022-28739). +[CVE-2022-28739](https://www.cve.org/CVERecord?id=CVE-2022-28739). Kami sangat merekomendasikan untuk memperbarui Ruby. ## Detail diff --git a/id/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md b/id/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md index 87bc69b98c..704ce156b4 100644 --- a/id/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md +++ b/id/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md @@ -10,7 +10,7 @@ lang: id Sebuah kerentanan *double-free* ditemukan pada *Regexp compilation*. Kerentanan ini telah ditetapkan dengan penanda CVE -[CVE-2022-28738](https://nvd.nist.gov/vuln/detail/CVE-2022-28738). +[CVE-2022-28738](https://www.cve.org/CVERecord?id=CVE-2022-28738). Kami sangat merekomendasikan Anda untuk memperbarui Ruby. ## Detail diff --git a/id/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md b/id/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md index 911318db9c..204adabe30 100644 --- a/id/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md +++ b/id/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md @@ -11,7 +11,7 @@ lang: id Kami telah merilis *gem* cgi versi 0.3.5, 0.2.2, dan 0.1.0.2 yang memiliki sebuah kerentanan HTTP *response splitting*. Kerentanan ini telah ditetapkan dengan penanda CVE -[CVE-2021-33621](https://nvd.nist.gov/vuln/detail/CVE-2021-33621). +[CVE-2021-33621](https://www.cve.org/CVERecord?id=CVE-2021-33621). ## Detail diff --git a/it/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/it/news/_posts/2014-04-10-severe-openssl-vulnerability.md index 556eac571a..16c4a0ef67 100644 --- a/it/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/it/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -11,7 +11,7 @@ lang: it C'è una grave vulnerabilità nell'implementazione del TLS/DTLS (protocolli transport layer security) heartbeat extension (`RFC6520`) di OpenSSL. Questa è una seria vulnerabilità a cui è stato assegnato l'identificativo CVE -[CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160). +[CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160). Lo sfruttamento potrebbe causare la divulgazione del contenuto della memoria dal server al client e dal client al server. Un utente diff --git a/it/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/it/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 0b6f062c30..0486dffd8e 100644 --- a/it/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/it/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -53,4 +53,4 @@ Vi incoraggiamo ad aggiornare ad una [versione di Ruby](https://www.ruby-lang.org/it/downloads/) stabile e mantenuta. -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/ja/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/ja/news/_posts/2014-04-10-severe-openssl-vulnerability.md index fdf6a520d2..4b7585eb05 100644 --- a/ja/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/ja/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -9,7 +9,7 @@ lang: ja --- OpenSSL の TLS/DTLS(トランスポート層セキュアプロトコル)ハートビート拡張(`RFC6520`)の実装で重大な脆弱性が発見されました。 -この脆弱性は [CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160) として登録されています。 +この脆弱性は [CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160) として登録されています。 悪用されると、サーバーからクライアントへ、およびクライアントからサーバーへのメモリの内容が漏洩する可能性があります。 攻撃者は、SSL 暗号化に使用される秘密鍵や認証トークンなどを含む機密データをメモリから遠隔操作によって取得できます。 diff --git a/ja/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/ja/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 9411a633df..60cd7528d5 100644 --- a/ja/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/ja/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -46,4 +46,4 @@ ruby -v -ruri -e'URI.decode_www_form_component "A string that causes catastrophi われわれはより安定し、メンテナンスされている[バージョンの Ruby](https://www.ruby-lang.org/ja/downloads/) へのアップグレードを推奨します。 -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/ja/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/ja/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index 7d37765727..244a11c279 100644 --- a/ja/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/ja/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -15,8 +15,8 @@ Ruby の標準添付ライブラリである RDoc に含まれる jQuery にお 以下の脆弱性が報告されています。 -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) この問題の影響を受けるバージョンの Ruby のユーザーは、最新の Ruby に更新するか、下記の回避策を取ってください。 また、問題を完全に修正するためには、既に生成されている RDoc ドキュメントを再生成する必要があります。 diff --git a/ja/news/_posts/2021-05-02-os-command-injection-in-rdoc.md b/ja/news/_posts/2021-05-02-os-command-injection-in-rdoc.md index 1e3b02c797..f0f2f9ed01 100644 --- a/ja/news/_posts/2021-05-02-os-command-injection-in-rdoc.md +++ b/ja/news/_posts/2021-05-02-os-command-injection-in-rdoc.md @@ -15,7 +15,7 @@ Ruby の標準添付ツールである RDoc にコマンドインジェクショ 以下の脆弱性が報告されています。 -* [CVE-2021-31799](https://nvd.nist.gov/vuln/detail/CVE-2021-31799) +* [CVE-2021-31799](https://www.cve.org/CVERecord?id=CVE-2021-31799) RDoc はローカルのファイルを開くために、`Kernel#open` を使用していました。しかし、もし Ruby プロジェクトに `|` で始まり `tags` で終わる名前のファイルが存在していた場合、パイプ文字以降に並べられたコマンドが実行されてしまいます。悪意のある Ruby プロジェクトは、ドキュメントを生成しようとしたユーザに任意のコマンドを実行させることができます。 diff --git a/ja/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md b/ja/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md index 0a54c65239..71ff036ab8 100644 --- a/ja/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md +++ b/ja/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md @@ -9,7 +9,7 @@ lang: ja --- Net::IMAP 内の StartTLS ストリッピングに脆弱性が発見されました。 -この脆弱性は [CVE-2021-32066](https://nvd.nist.gov/vuln/detail/CVE-2021-32066) として登録されています。 +この脆弱性は [CVE-2021-32066](https://www.cve.org/CVERecord?id=CVE-2021-32066) として登録されています。 Ruby をアップグレードすることを強く推奨します。 net-imap は Ruby 3.0.1 の デフォルト gem ですが、パッケージ化に問題があるため、Ruby 自体をアップグレードしてください。 diff --git a/ja/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md b/ja/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md index 6e122de845..736310b389 100644 --- a/ja/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md +++ b/ja/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md @@ -9,7 +9,7 @@ lang: ja --- 信頼性のある FTP PASV 応答の脆弱性が Net::FTP で発見されました。 -この脆弱性は [CVE-2021-31810](https://nvd.nist.gov/vuln/detail/CVE-2021-31810) として登録されています。 +この脆弱性は [CVE-2021-31810](https://www.cve.org/CVERecord?id=CVE-2021-31810) として登録されています。 Ruby をアップグレードすることを強く推奨します。 net-ftp は Ruby 3.0.1 の デフォルト gem ですが、パッケージ化の問題があるため、Ruby 自体をアップグレードしてください。 diff --git a/ja/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md b/ja/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md index 6414233097..096675e4ca 100644 --- a/ja/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md +++ b/ja/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md @@ -9,7 +9,7 @@ lang: ja --- CGI.escape_html 内のバッファオーバーランの脆弱性が発見されました。 -この脆弱性は、[CVE-2021-41816](https://nvd.nist.gov/vuln/detail/CVE-2021-41816)として登録されています。 +この脆弱性は、[CVE-2021-41816](https://www.cve.org/CVERecord?id=CVE-2021-41816)として登録されています。 Ruby をアップグレードすることを強く推奨します。 ## 詳細 diff --git a/ja/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md b/ja/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md index 5296d1d12f..ec6b91d55a 100644 --- a/ja/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md +++ b/ja/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md @@ -9,7 +9,7 @@ lang: ja --- CGI :: Cookie.parse 内で Cookie プレフィックスを偽装する脆弱性が発見されました。 -この脆弱性は、[CVE-2021-41819](https://nvd.nist.gov/vuln/detail/CVE-2021-41819) として登録されています。 +この脆弱性は、[CVE-2021-41819](https://www.cve.org/CVERecord?id=CVE-2021-41819) として登録されています。 Ruby をアップグレードすることを強く推奨します。 ## 詳細 @@ -20,7 +20,7 @@ Ruby をアップグレードすることを強く推奨します。 この修正により、 `CGI :: Cookie.parse` は Cookie 名をデコードしなくなりました。 使用している Cookie 名に、URL エンコードされた英数字以外の文字が含まれている場合、これは非互換であることに注意してください。 -これは [CVE-2020-8184](https://nvd.nist.gov/vuln/detail/CVE-2020-8184) と同じ問題です。 +これは [CVE-2020-8184](https://www.cve.org/CVERecord?id=CVE-2020-8184) と同じ問題です。 Ruby 2.7 もしくは 3.0 を使用している場合: diff --git a/ja/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md b/ja/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md index 08ac5c1277..6a772b5adf 100644 --- a/ja/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md +++ b/ja/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md @@ -9,7 +9,7 @@ lang: ja --- String から Float への変換アルゴリズムに、バッファオーバーランの脆弱性が発見されました。 -この脆弱性は、[CVE-2022-28739](https://nvd.nist.gov/vuln/detail/CVE-2022-28739) として登録されています。 +この脆弱性は、[CVE-2022-28739](https://www.cve.org/CVERecord?id=CVE-2022-28739) として登録されています。 Ruby をアップグレードすることを強く推奨します。 ## 詳細 diff --git a/ja/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md b/ja/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md index 85be6cc071..87b04f35d4 100644 --- a/ja/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md +++ b/ja/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md @@ -9,7 +9,7 @@ lang: ja --- Regexp コンパイル時に、ダブルフリーをする脆弱性が発見されました。 -この脆弱性は、[CVE-2022-28738](https://nvd.nist.gov/vuln/detail/CVE-2022-28738) として登録されています。 +この脆弱性は、[CVE-2022-28738](https://www.cve.org/CVERecord?id=CVE-2022-28738) として登録されています。 Ruby をアップグレードすることを強く推奨します。 ## 詳細 diff --git a/ja/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md b/ja/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md index 6e0be96edf..ec41a4ba2f 100644 --- a/ja/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md +++ b/ja/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md @@ -9,7 +9,7 @@ lang: ja --- HTTP レスポンス分割の脆弱性に対するセキュリティ修正を含む、cgi gem 0.3.5、0.2.2、0.1.0.2 をリリースしました。 -この脆弱性は、[CVE-2021-33621](https://nvd.nist.gov/vuln/detail/CVE-2021-33621) として登録されています。 +この脆弱性は、[CVE-2021-33621](https://www.cve.org/CVERecord?id=CVE-2021-33621) として登録されています。 ## 詳細 diff --git a/ja/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md b/ja/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md index 5387c38176..14b0e97a69 100644 --- a/ja/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md +++ b/ja/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md @@ -9,7 +9,7 @@ lang: ja --- ReDoS 脆弱性のセキュリティ修正を含む、uri gem 0.12.1、0.11.1、0.10.2、0.10.0.1 をリリースしました。 -この脆弱性は、[CVE-2023-28755](https://nvd.nist.gov/vuln/detail/CVE-2023-28755) として登録されています。 +この脆弱性は、[CVE-2023-28755](https://www.cve.org/CVERecord?id=CVE-2023-28755) として登録されています。 ## 詳細 diff --git a/ko/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/ko/news/_posts/2014-04-10-severe-openssl-vulnerability.md index 54d2c27075..0c700a04e9 100644 --- a/ko/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/ko/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -12,7 +12,7 @@ TLS/DTLS (transport layer security protocols) 하트비트 확장(`RFC6520`)의 OpenSSL 구현에 심각한 취약점이 있습니다. 이 심각한 취약점은 CVE 아이디 -[CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160)에 +[CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160)에 할당되었습니다. 악용하면 클라이언트에서 서버, 서버에서 클라이언트로 보내는 메모리의 내용이 diff --git a/ko/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/ko/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index ab679d6960..825e224e6f 100644 --- a/ko/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/ko/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -49,4 +49,4 @@ ruby -v -ruri -e'URI.decode_www_form_component "A string that causes catastrophi 안정적이고 관리되고 있는 [루비 버전](https://www.ruby-lang.org/ko/downloads/)을 사용하시는 것을 권장합니다. -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/ko/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/ko/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index dda930225e..4e16d9127c 100644 --- a/ko/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/ko/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -16,8 +16,8 @@ lang: ko 아래와 같은 취약점이 보고되었습니다. -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) 모든 루비 사용자는 가능한 빨리 설치된 루비를 업그레이드하거나 아래 해결 방법으로 조치하기 바랍니다. 취약점을 완전히 해소하려면 기존의 RDoc 문서를 다시 생성해야 합니다. diff --git a/ko/news/_posts/2021-05-02-os-command-injection-in-rdoc.md b/ko/news/_posts/2021-05-02-os-command-injection-in-rdoc.md index b54e1a1ff2..2a5d7b50b3 100644 --- a/ko/news/_posts/2021-05-02-os-command-injection-in-rdoc.md +++ b/ko/news/_posts/2021-05-02-os-command-injection-in-rdoc.md @@ -15,7 +15,7 @@ Ruby에 포함된 RDoc에 명령 주입 취약점이 있습니다. 다음 취약점이 보고되었습니다. -* [CVE-2021-31799](https://nvd.nist.gov/vuln/detail/CVE-2021-31799) +* [CVE-2021-31799](https://www.cve.org/CVERecord?id=CVE-2021-31799) RDoc은 로컬 파일을 열기 위해 `Kernel#open`을 호출했습니다. Ruby 프로젝트에 `|`로 시작하고 `tags`로 끝나는 이름을 가진 파일이 있다면, 파이프 문자 뒤의 명령이 실행되었습니다. 악의적인 Ruby 프로젝트가 `rdoc` 명령을 실행하려고 하는 사용자에 대해 임의의 명령을 실행할 수 있습니다. diff --git a/ko/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md b/ko/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md index 0d6ca6277c..b7592be514 100644 --- a/ko/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md +++ b/ko/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md @@ -9,7 +9,7 @@ lang: ko --- Net::IMAP에서 StartTLS 스트립 취약점이 발견되었습니다. -이 취약점은 CVE 번호 [CVE-2021-32066](https://nvd.nist.gov/vuln/detail/CVE-2021-32066)에 할당되었습니다. +이 취약점은 CVE 번호 [CVE-2021-32066](https://www.cve.org/CVERecord?id=CVE-2021-32066)에 할당되었습니다. Ruby를 업그레이드하시길 강력히 권합니다. net-imap은 Ruby 3.0.1의 기본 gem이지만, 패키징 문제가 있으므로 Ruby 자체를 업그레이드하시기 바랍니다. diff --git a/ko/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md b/ko/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md index 7477e1cc6b..a3e6ce48c4 100644 --- a/ko/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md +++ b/ko/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md @@ -9,7 +9,7 @@ lang: ko --- Net::FTP에서 FTP PASV 응답 신뢰 취약점이 발견되었습니다. -이 취약점에 CVE 번호 [CVE-2021-31810](https://nvd.nist.gov/vuln/detail/CVE-2021-31810)이 할당되었습니다. +이 취약점에 CVE 번호 [CVE-2021-31810](https://www.cve.org/CVERecord?id=CVE-2021-31810)이 할당되었습니다. Ruby를 업그레이드하시길 강력히 권합니다. net-ftp는 Ruby 3.0.1의 기본 gem이지만, 패키징 문제가 있으므로 Ruby 자체를 업그레이드하시기 바랍니다. diff --git a/ko/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md b/ko/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md index 1cdfe4fddd..a20668c4e7 100644 --- a/ko/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md +++ b/ko/news/_posts/2021-11-15-date-parsing-method-regexp-dos-cve-2021-41817.md @@ -9,7 +9,7 @@ lang: ko --- date gem의 날짜 구문 분석 메서드에 정규표현식 서비스 거부(ReDoS) 취약점이 있어, 해당 취약점의 보안 수정을 포함한 3.2.1, 3.1.2, 3.0.2, 2.0.1 버전을 릴리스했습니다. 공격자는 이 취약점을 이용해 유효한 DoS 공격을 수행할 수 있습니다. -이 취약점은 CVE 번호 [CVE-2021-41817](https://nvd.nist.gov/vuln/detail/CVE-2021-41817)에 할당되었습니다. +이 취약점은 CVE 번호 [CVE-2021-41817](https://www.cve.org/CVERecord?id=CVE-2021-41817)에 할당되었습니다. ## 세부 내용 diff --git a/ko/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md b/ko/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md index eb9b9ca22b..7c3c24ab6b 100644 --- a/ko/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md +++ b/ko/news/_posts/2021-11-24-buffer-overrun-in-cgi-escape_html-cve-2021-41816.md @@ -9,7 +9,7 @@ lang: ko --- CGI.escape_html에서 버퍼 오버런 취약점이 발견되었습니다. -이 취약점은 CVE 번호 [CVE-2021-41816](https://nvd.nist.gov/vuln/detail/CVE-2021-41816)으로 등록되었습니다. +이 취약점은 CVE 번호 [CVE-2021-41816](https://www.cve.org/CVERecord?id=CVE-2021-41816)으로 등록되었습니다. Ruby를 갱신하는 것을 강력히 권장합니다. ## 세부 내용 diff --git a/ko/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md b/ko/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md index ad01350d4b..fe83006413 100644 --- a/ko/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md +++ b/ko/news/_posts/2021-11-24-cookie-prefix-spoofing-in-cgi-cookie-parse-cve-2021-41819.md @@ -9,7 +9,7 @@ lang: ko --- CGI::Cookie.parse에서 쿠키 접두사 위장 취약점이 발견되었습니다. -이 취약점은 CVE 번호 [CVE-2021-41819](https://nvd.nist.gov/vuln/detail/CVE-2021-41819)로 등록되었습니다. +이 취약점은 CVE 번호 [CVE-2021-41819](https://www.cve.org/CVERecord?id=CVE-2021-41819)로 등록되었습니다. Ruby를 갱신하는 것을 강력히 권장합니다. ## 세부 내용 @@ -20,7 +20,7 @@ Ruby를 갱신하는 것을 강력히 권장합니다. 이 수정으로 `CGI::Cookie.parse`는 더 이상 쿠키 이름에 URL 디코딩을 적용하지 않습니다. 사용하고 있는 쿠키 이름에 영숫자 이외의 문자가 URL 인코딩을 적용해 사용되었을 경우 호환되지 않으므로 주의하세요. -이는 [CVE-2020-8184](https://nvd.nist.gov/vuln/detail/CVE-2020-8184)와 동일한 문제입니다. +이는 [CVE-2020-8184](https://www.cve.org/CVERecord?id=CVE-2020-8184)와 동일한 문제입니다. Ruby 2.7이나 3.0을 사용하고 있는 경우, diff --git a/ko/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md b/ko/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md index 9f93e2c1d7..379a427dba 100644 --- a/ko/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md +++ b/ko/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md @@ -9,7 +9,7 @@ lang: ko --- String에서 Float로 변환하는 알고리즘에서 버퍼 오버런 취약점이 발견되었습니다. -이 취약점은 CVE 번호 [CVE-2022-28739](https://nvd.nist.gov/vuln/detail/CVE-2022-28739)로 등록되었습니다. +이 취약점은 CVE 번호 [CVE-2022-28739](https://www.cve.org/CVERecord?id=CVE-2022-28739)로 등록되었습니다. Ruby를 갱신하는 것을 강력히 권장합니다. ## 세부 내용 diff --git a/ko/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md b/ko/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md index 2811e845d3..49d2383b19 100644 --- a/ko/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md +++ b/ko/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md @@ -9,7 +9,7 @@ lang: ko --- 정규표현식 컴파일 중에 중복 할당 해제 취약점이 발견되었습니다. -이 취약점은 CVE 번호 [CVE-2022-28738](https://nvd.nist.gov/vuln/detail/CVE-2022-28738)로 등록되었습니다. +이 취약점은 CVE 번호 [CVE-2022-28738](https://www.cve.org/CVERecord?id=CVE-2022-28738)로 등록되었습니다. Ruby를 갱신하는 것을 강력히 권장합니다. ## 세부 내용 diff --git a/ko/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md b/ko/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md index 6d38bc3b4a..7f909dceff 100644 --- a/ko/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md +++ b/ko/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md @@ -9,7 +9,7 @@ lang: ko --- HTTP 응답 분할 취약점에 대한 보안 수정을 포함하는 cgi gem 버전 0.3.5, 0.2.2, 0.1.0.2를 릴리스했습니다. -이 취약점은 CVE 번호 [CVE-2021-33621](https://nvd.nist.gov/vuln/detail/CVE-2021-33621)로 등록되어 있습니다. +이 취약점은 CVE 번호 [CVE-2021-33621](https://www.cve.org/CVERecord?id=CVE-2021-33621)로 등록되어 있습니다. ## 세부 내용 diff --git a/pl/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/pl/news/_posts/2014-04-10-severe-openssl-vulnerability.md index 623144164b..28927d747a 100644 --- a/pl/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/pl/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -11,7 +11,7 @@ lang: pl Jest ciężka podatność w implementacji OpenSSL w TLS/DTLS (warstwa transportowa protokołów bezpieczeństwa) heartbeat extension (`RFC6520`). Jest to poważna podatność, której został przydzielony identyfikator -[CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160). +[CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160). Eksploatacja może doprowadzić do ujawnienia zawartości pamięci z serwera do klienta i od klienta do serwera. Atakujący może zdalnie pobrać poufne dane diff --git a/pl/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/pl/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 19c72888a8..c0e133d565 100644 --- a/pl/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/pl/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -52,4 +52,4 @@ Możesz przeczytać oryginalny raport o błędzie: Zalecamy zaktualizowanie do stabilnej i wspieranej [wersji Rubiego](https://www.ruby-lang.org/pl/downloads/). -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/pt/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/pt/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index 9076bed08f..2315f1765f 100644 --- a/pt/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/pt/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -15,8 +15,8 @@ Todas as pessoas usuárias de Ruby são orientadas a atualizar Ruby para a últi As seguintes vulnerabilidades foram reportadas. -- [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -- [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +- [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +- [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) É fortemente recomendado para todas as pessoas usuárias de Ruby que atualizem sua instalação de Ruby ou tome uma das seguintes soluções alternativas assim que possível. Você também deve regerar toda documentação existente de RDoc para mitigar completamente as vulnerabilidades. diff --git a/pt/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md b/pt/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md index f6b05c6adb..6a1dc2953e 100644 --- a/pt/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md +++ b/pt/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md @@ -9,7 +9,7 @@ lang: pt --- Nós lançamos as versões da gem cgi 0.3.5, 0.2.2, e 0.1.0.2 que possuem uma correção de segurança para uma vulnerabilidade de HTTP response splitting. -Essa vulnerabilidade foi atribuída ao identificador [CVE-2021-33621](https://nvd.nist.gov/vuln/detail/CVE-2021-33621). +Essa vulnerabilidade foi atribuída ao identificador [CVE-2021-33621](https://www.cve.org/CVERecord?id=CVE-2021-33621). ## Detalhes diff --git a/ru/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/ru/news/_posts/2014-04-10-severe-openssl-vulnerability.md index 9e26533184..a9880cd393 100644 --- a/ru/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/ru/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -10,7 +10,7 @@ lang: ru В реализации OpenSSL обнаружена серьезная уязвимость в расширении heartbeat (`RFC6520`) TLS/DTLS (протоколов защиты транспортного уровня). Этой уязвимости присвоен номер -[CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160). +[CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160). Использование эксплоита может привести к раскрытию содержимого при передаче как от сервера на клиент, так и в обратном направлении. Атакующий может удаленно получить diff --git a/ru/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/ru/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index f82a9ea71e..b8b72f6025 100644 --- a/ru/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/ru/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -15,8 +15,8 @@ lang: ru Были зарегистрированы следующие уязвимости. -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) Всем пользователям Ruby настоятельно рекомендуется как можно скорее обновить Ruby или воспользоваться одним из следующих способов устранения проблем. Также вам понадобится повторно перегенерировать существующие документы RDoc, чтобы полностью исключить уязвимости. diff --git a/ru/news/_posts/2021-05-02-os-command-injection-in-rdoc.md b/ru/news/_posts/2021-05-02-os-command-injection-in-rdoc.md index 81ac9011ef..7f5a04d31a 100644 --- a/ru/news/_posts/2021-05-02-os-command-injection-in-rdoc.md +++ b/ru/news/_posts/2021-05-02-os-command-injection-in-rdoc.md @@ -15,7 +15,7 @@ lang: ru Сообщество об уязвимости: -* [CVE-2021-31799](https://nvd.nist.gov/vuln/detail/CVE-2021-31799) +* [CVE-2021-31799](https://www.cve.org/CVERecord?id=CVE-2021-31799) RDoc использовал `Kernel#open` для открытия локальных файлов. Если имя файла в проекте на Ruby начинается с `|`, а заканчивается на `tags`, то будет выполнена команда, идущая после символа `|`. Вредоносный код на Ruby мог использовать это для выполнения произвольной команды, когда пользователь вводит команду `rdoc`. diff --git a/ru/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md b/ru/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md index 1b69125bef..dcc5d43af1 100644 --- a/ru/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md +++ b/ru/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md @@ -9,7 +9,7 @@ lang: ru --- В Net::IMAP обнаружена уязвимость StartTLS stripping. -Этой уязвимости присвоен идентификатор [CVE-2021-32066](https://nvd.nist.gov/vuln/detail/CVE-2021-32066). +Этой уязвимости присвоен идентификатор [CVE-2021-32066](https://www.cve.org/CVERecord?id=CVE-2021-32066). Мы настоятельно рекомендуем обновить Ruby. net-imap является встроенным гемом Ruby 3.0.1, но т.к. есть трудности с его поставкой, следует обновить Ruby целиком. diff --git a/ru/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md b/ru/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md index 807e3a0f07..60fbddbfb4 100644 --- a/ru/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md +++ b/ru/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md @@ -9,7 +9,7 @@ lang: ru --- В Net::FTP обнаружена уязвимость доверия к PASV-ответам FTP. -Этой уязвимости присвоен идентификатор [CVE-2021-31810](https://nvd.nist.gov/vuln/detail/CVE-2021-31810). +Этой уязвимости присвоен идентификатор [CVE-2021-31810](https://www.cve.org/CVERecord?id=CVE-2021-31810). Мы настоятельно рекомендуем обновить Ruby. net-ftp является встроенным гемом Ruby 3.0.1, но т.к. есть трудности с его поставкой, следует обновить Ruby целиком. diff --git a/tr/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/tr/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index 4ae4742346..d62976e9b1 100644 --- a/tr/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/tr/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -17,8 +17,8 @@ düzeltilmiş sürümünün bulunduğu son sürüme güncelleme yapmaları öner Aşağıdaki güvenlik açıkları bildirildi. -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) Tüm Ruby kullanıcılarının en kısa zamanda Ruby kurulumlarını yükseltmeleri ya da aşağıdaki geçici çözümlerden birini kullanmaları şiddetle tavsiye edilir. diff --git a/tr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md b/tr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md index ce41879cc1..59e3019f28 100644 --- a/tr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md +++ b/tr/news/_posts/2021-05-02-os-command-injection-in-rdoc.md @@ -15,7 +15,7 @@ Tüm Ruby kullanıcılarına bu zaafiyeti çözen son RDoc sürümüne güncelle Aşağıdaki zaafiyet bildirilmiştir. -* [CVE-2021-31799](https://nvd.nist.gov/vuln/detail/CVE-2021-31799) +* [CVE-2021-31799](https://www.cve.org/CVERecord?id=CVE-2021-31799) RDoc yerel bir dosyayı açmak için `Kernel#open` metodunu çağırıyordu. Eğer bir Ruby projesi `|` ile başlayan ve `tags` ile biten bir dosyaya sahipse, boru karakterini takip eden komut çalıştırılır. diff --git a/tr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md b/tr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md index bcf0100dcf..2eca925001 100644 --- a/tr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md +++ b/tr/news/_posts/2021-07-07-starttls-stripping-in-net-imap.md @@ -9,7 +9,7 @@ lang: tr --- Bir StartTLS çıkarma zaafiyeti Net::IMAP'te keşfedildi. -Bu zaafiyet [CVE-2021-32066](https://nvd.nist.gov/vuln/detail/CVE-2021-32066) CVE belirtecine atanmıştır. +Bu zaafiyet [CVE-2021-32066](https://www.cve.org/CVERecord?id=CVE-2021-32066) CVE belirtecine atanmıştır. Ruby'yi güncellemenizi şiddetle tavsiye ederiz. net-imap, Ruby 3.0.1'de varsayılan bir gem fakat paketleme sorunlarına sahip, yani lütfen Ruby'nin kendisini güncelleyin. diff --git a/tr/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md b/tr/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md index 9cdbf412a8..206a27f04e 100644 --- a/tr/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md +++ b/tr/news/_posts/2021-07-07-trusting-pasv-responses-in-net-ftp.md @@ -9,7 +9,7 @@ lang: tr --- Net::FTP'de bir FTP PASV yanıtlarına güvenme zaafiyeti keşfedildi. -Bu zaafiyete [CVE-2021-31810](https://nvd.nist.gov/vuln/detail/CVE-2021-31810) CVE belirteci atanmıştır. +Bu zaafiyete [CVE-2021-31810](https://www.cve.org/CVERecord?id=CVE-2021-31810) CVE belirteci atanmıştır. Şiddetle Ruby'yi güncellemenizi tavsiye ederiz. net-ftp Ruby 3.0.1 ile gelen varsayılan bir gem'dir fakat paketleme sorunlarına sahiptir, yani lütfen Ruby'nin kendisini güncelleyin. diff --git a/vi/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/vi/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 1f66b1c934..d859aeb9e2 100644 --- a/vi/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/vi/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -53,4 +53,4 @@ Bạn có thể đọc bản báo cáo gốc trên bug tracker: Chúng tôi khuyến khích bạn nâng cấp lên [bản ổn định mới nhất của Ruby](https://www.ruby-lang.org/vi/downloads/). -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/zh_cn/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/zh_cn/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 506e5958ee..b974d6c5c4 100644 --- a/zh_cn/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/zh_cn/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -47,4 +47,4 @@ ruby -v -ruri -e'URI.decode_www_form_component "A string that causes catastrophi 我们建议你升级到一个稳定的并处于维护中的 [Ruby 版本](https://www.ruby-lang.org/zh_cn/downloads/)。 -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/zh_cn/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/zh_cn/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index 32e688224c..a7d9ed251a 100644 --- a/zh_cn/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/zh_cn/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -15,8 +15,8 @@ Ruby 内置的 RDoc 所附带的 jQuery 存在关于跨站脚本攻击(XSS) 以下为被报告的缺陷。 -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) 强烈建议所有 Ruby 使用者升级你的 Ruby,或尽快采用下述临时解决方案。你还需要重新生成现有的 RDoc 文档以完全解决问题。 diff --git a/zh_cn/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md b/zh_cn/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md index 8e895e59ee..b33881d039 100644 --- a/zh_cn/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md +++ b/zh_cn/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md @@ -8,7 +8,7 @@ tags: security lang: zh_cn --- -在 String 到 Float 的转换算法中发现了缓冲区溢出漏洞。此漏洞已分配 CVE 编号 [CVE-2022-28739](https://nvd.nist.gov/vuln/detail/CVE-2022-28739)。 +在 String 到 Float 的转换算法中发现了缓冲区溢出漏洞。此漏洞已分配 CVE 编号 [CVE-2022-28739](https://www.cve.org/CVERecord?id=CVE-2022-28739)。 我们强烈建议更新 Ruby。 ## 详情 diff --git a/zh_cn/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md b/zh_cn/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md index 1aed026bba..50629cdebd 100644 --- a/zh_cn/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md +++ b/zh_cn/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md @@ -9,7 +9,7 @@ lang: zh_cn --- Regexp 编译中发现了一个双重释放(double free)漏洞。 -此漏洞已分配 CVE 编号 [CVE-2022-28738](https://nvd.nist.gov/vuln/detail/CVE-2022-28738). +此漏洞已分配 CVE 编号 [CVE-2022-28738](https://www.cve.org/CVERecord?id=CVE-2022-28738). 我们强烈建议更新 Ruby。 ## 详情 diff --git a/zh_cn/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md b/zh_cn/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md index bee478bc2a..3b70983852 100644 --- a/zh_cn/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md +++ b/zh_cn/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md @@ -9,7 +9,7 @@ lang: zh_cn --- 我们发布了 cgi gem 0.3.5, 0.2.2 和 0.1.0.2,对 HTTP 响应拆分漏洞进行了安全修复。 -此漏洞已分配 CVE 编号 [CVE-2021-33621](https://nvd.nist.gov/vuln/detail/CVE-2021-33621)。 +此漏洞已分配 CVE 编号 [CVE-2021-33621](https://www.cve.org/CVERecord?id=CVE-2021-33621)。 ## 详情 diff --git a/zh_tw/news/_posts/2014-04-10-severe-openssl-vulnerability.md b/zh_tw/news/_posts/2014-04-10-severe-openssl-vulnerability.md index 5561f0f1d0..fda9315a11 100644 --- a/zh_tw/news/_posts/2014-04-10-severe-openssl-vulnerability.md +++ b/zh_tw/news/_posts/2014-04-10-severe-openssl-vulnerability.md @@ -9,7 +9,7 @@ lang: zh_tw --- OpenSSL 在 TLS/DTLS heartbeat -extension (`RFC6520`) 實作存在嚴重風險(傳輸層的安全性協議)。這個嚴重安全性風險的 CVE 識別號為 [CVE-2014-0160](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0160)。 +extension (`RFC6520`) 實作存在嚴重風險(傳輸層的安全性協議)。這個嚴重安全性風險的 CVE 識別號為 [CVE-2014-0160](https://www.cve.org/CVERecord?id=CVE-2014-0160)。 利用此弱點攻擊,可導致客戶端與伺服器之間記憶體資料洩漏。攻擊者可於遠端取得機敏資料,包含用來加密 SSL 密鑰與認證用的 Token。 diff --git a/zh_tw/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/zh_tw/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index f750f229a6..e884233201 100644 --- a/zh_tw/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/zh_tw/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -45,4 +45,4 @@ ruby -v -ruri -e'URI.decode_www_form_component "A string that causes catastrophi 我們建議升級至穩定並仍在維護的 [Ruby 版本](https://www.ruby-lang.org/zh_tw/downloads/)。 -[CVE-2014-6438]: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6438 +[CVE-2014-6438]: https://www.cve.org/CVERecord?id=CVE-2014-6438 diff --git a/zh_tw/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md b/zh_tw/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md index 37b871d7fc..fe85914490 100644 --- a/zh_tw/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md +++ b/zh_tw/news/_posts/2019-08-28-multiple-jquery-vulnerabilities-in-rdoc.md @@ -16,8 +16,8 @@ lang: zh_tw 以下為已回報的安全性風險 -* [CVE-2012-6708](https://nvd.nist.gov/vuln/detail/CVE-2012-6708) -* [CVE-2015-9251](https://nvd.nist.gov/vuln/detail/CVE-2015-9251) +* [CVE-2012-6708](https://www.cve.org/CVERecord?id=CVE-2012-6708) +* [CVE-2015-9251](https://www.cve.org/CVERecord?id=CVE-2015-9251) 強烈建議所有 Ruby 使用者升級你的 Ruby,或盡快採用以下解決方法。 你仍須重新產生現有的 RDoc 文件,以完全緩解風險。 diff --git a/zh_tw/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md b/zh_tw/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md index aa97b61ff3..18ad559847 100644 --- a/zh_tw/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md +++ b/zh_tw/news/_posts/2022-04-12-buffer-overrun-in-string-to-float-cve-2022-28739.md @@ -9,7 +9,7 @@ lang: zh_tw --- 在 String 轉換 Float 的演算法中發現了一個緩衝區溢位漏洞。 -此風險的 CVE 識別號為 [CVE-2022-28739](https://nvd.nist.gov/vuln/detail/CVE-2022-28739)。 +此風險的 CVE 識別號為 [CVE-2022-28739](https://www.cve.org/CVERecord?id=CVE-2022-28739)。 我們強烈建議您升級 Ruby。 ## 風險細節 diff --git a/zh_tw/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md b/zh_tw/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md index 4293930c2f..049d3cce8b 100644 --- a/zh_tw/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md +++ b/zh_tw/news/_posts/2022-04-12-double-free-in-regexp-compilation-cve-2022-28738.md @@ -9,7 +9,7 @@ lang: zh_tw --- 在 Regexp 編譯時發現一個雙重釋放(Double free)的風險。 -此風險的 CVE 識別號為 [CVE-2022-28738](https://nvd.nist.gov/vuln/detail/CVE-2022-28738)。 +此風險的 CVE 識別號為 [CVE-2022-28738](https://www.cve.org/CVERecord?id=CVE-2022-28738)。 我們強烈建議您升級 Ruby。 ## 風險細節 From c2f62d63bddf570243c151139e1f8205d34faec5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Fri, 28 Apr 2023 03:51:33 -0500 Subject: [PATCH 019/607] Translate CVE-2023-28756: ReDoS vulnerability in Time (es) (#3041) --- ...2023-03-30-redos-in-time-cve-2023-28756.md | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 es/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md diff --git a/es/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md b/es/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md new file mode 100644 index 0000000000..f610192d42 --- /dev/null +++ b/es/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md @@ -0,0 +1,53 @@ +--- +layout: news_post +title: "CVE-2023-28756: Vulnerabilidad ReDoS en Time" +author: "hsbt" +translator: vtamara +date: 2023-03-30 11:00:00 +0000 +tags: security +lang: es +--- + +Hemos publicado la gema `time` versiones 0.1.1 y 0.2.2 que +tienen una corrección de seguridad para una vulnerabilidad ReDoS. +A esta vulnerabilidad se le ha asignado el identificador CVE +[CVE-2023-28756](https://www.cve.org/CVERecord?id=CVE-2023-28756). + +## Detalles + +El reconocedor de la gema Time no maneja bien cadenas invalidas que +tienen caracteres específicos. Esto cause un aumento en el tiempo de +ejecución al reconocer cadenas del objeto Time. + +Una ReDoS (Denegación de Servicio por Expresión Regular) fue descubierta +en la gema Time versiones 0.1.0 y 0.2.1 la librería Time de Ruby 2.7.7. + +## Acción recomendada + +Recomendamos actualizar la gema `time` a la versión +0.2.2 o posterior. Para asegurar compatibilidad con versiones +incluidas en series de Ruby anteriores, puede actualizar así: + +* Para usuarios de Ruby 3.0: Actualizar a `time` 0.1.1 +* Para usuarios de Ruby 3.1/3.2: Actualizar a `time` 0.2.2 + +Puede usar `gem update time` para actualizarla. Si usa bundler, +por favor añada `gem "time", ">= 0.2.2"` a su `Gemfile`. + +Infortunadamente, la gema `time` sólo opera con Ruby 3.0 o posterior. +Si estás usando ruby 2.7, por favor usa la versión más reciente de Ruby. + +## Versiones afectadas + +* Ruby 2.7.7 o anterior +* Gema time 0.1.0 +* Gema time 0.2.1 + +## Créditos + +Agradecemos a [ooooooo_q](https://hackerone.com/ooooooo_q?type=user) +por descubrir este problema. + +## Historia + +* Publicado originalmente el 2023-03-30 11:00:00 (UTC) From 136a3c9d9763c091bb794b08cc181ba7d25438f9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 May 2023 16:05:16 +0000 Subject: [PATCH 020/607] Bump ruby/setup-ruby from 1.146.0 to 1.148.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.146.0 to 1.148.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/55283cc23133118229fd3f97f9336ee23a179fcf...d2b39ad0b52eca07d23f3aa14fdf2a3fcc1f411c) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 48670513d2..346dc1231e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0 + uses: ruby/setup-ruby@d2b39ad0b52eca07d23f3aa14fdf2a3fcc1f411c # v1.148.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 398d4c9207..882a176bd0 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Setup Ruby - uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0 + uses: ruby/setup-ruby@d2b39ad0b52eca07d23f3aa14fdf2a3fcc1f411c # v1.148.0 with: ruby-version: '3.2' bundler-cache: true From fd2e95e9323819f66147931db4cee5990f32b60a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Wed, 3 May 2023 19:30:06 -0500 Subject: [PATCH 021/607] Translations of Ruby 3-x release notes of March 30th 2023 (es) (#3052) * Translations of Ruby 3-x release notes of March 30th 2023 (es) * Thanks to @gvfcastro for corrections --- .../_posts/2023-03-30-ruby-3-2-2-released.md | 4 +- .../_posts/2023-03-30-ruby-2-7-8-released.md | 65 ++++++++++++++++++ .../_posts/2023-03-30-ruby-3-0-6-released.md | 66 +++++++++++++++++++ .../_posts/2023-03-30-ruby-3-1-4-released.md | 44 +++++++++++++ .../_posts/2023-03-30-ruby-3-2-2-released.md | 49 ++++++++++++++ 5 files changed, 226 insertions(+), 2 deletions(-) create mode 100644 es/news/_posts/2023-03-30-ruby-2-7-8-released.md create mode 100644 es/news/_posts/2023-03-30-ruby-3-0-6-released.md create mode 100644 es/news/_posts/2023-03-30-ruby-3-1-4-released.md create mode 100644 es/news/_posts/2023-03-30-ruby-3-2-2-released.md diff --git a/en/news/_posts/2023-03-30-ruby-3-2-2-released.md b/en/news/_posts/2023-03-30-ruby-3-2-2-released.md index ea63747b83..51487fa691 100644 --- a/en/news/_posts/2023-03-30-ruby-3-2-2-released.md +++ b/en/news/_posts/2023-03-30-ruby-3-2-2-released.md @@ -12,8 +12,8 @@ Ruby 3.2.2 has been released. This release includes security fixes. Please check the topics below for details. -* [CVE-2023-28755: ReDoS vulnerability in URI]({%link en/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) -* [CVE-2023-28756: ReDoS vulnerability in Time]({%link en/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) +* [CVE-2023-28755: ReDoS vulnerability in URI]({%link es/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: ReDoS vulnerability in Time]({%link es/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_2) for further details. diff --git a/es/news/_posts/2023-03-30-ruby-2-7-8-released.md b/es/news/_posts/2023-03-30-ruby-2-7-8-released.md new file mode 100644 index 0000000000..453004f7aa --- /dev/null +++ b/es/news/_posts/2023-03-30-ruby-2-7-8-released.md @@ -0,0 +1,65 @@ +--- +layout: news_post +title: "Publicado Ruby 2.7.8" +author: "usa" +translator: vtamara +date: 2023-03-30 12:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 2.7.8. + +Esta versión incluye correcciones de seguridad. +Por favor revise detalles en los siguientes temas. + +* [CVE-2023-28755: Vulnerabilidad ReDoS en URI]({%link es/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: Vulnerabilidad ReDoS en Time]({%link es/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +Esta versión también incluye correcciones a problemas de construcción. +Ver más detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v2_7_8). + +Después de esta versión, Ruby 2.7 llega a su EOL (fin de vida). +En otras palabras, se espera que esta sea la última versión de la serie +Ruby 2.7. +No publicaremos Ruby 2.7.9 incluso si se encuentra una vulnerabilidad +de seguridad (pero podría publicarse si se encuentra una regresión severa). +Recomendamos a todos los usuarios de Ruby 2.7 que comiencen a migrar a +Ruby 3.2, 3.1, o 3.0 de inmediato. + +## Descargas + +{% assign release = site.data.releases | where: "version", "2.7.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 }} + +## Notas de publicación + +Muchos contribuyentes, desarrolladores, y usuarios que proveyeron +reportes de fallas nos ayudaron a hacer esta versión. +Gracias por sus contribuciones. diff --git a/es/news/_posts/2023-03-30-ruby-3-0-6-released.md b/es/news/_posts/2023-03-30-ruby-3-0-6-released.md new file mode 100644 index 0000000000..8e34e282d5 --- /dev/null +++ b/es/news/_posts/2023-03-30-ruby-3-0-6-released.md @@ -0,0 +1,66 @@ +--- +layout: news_post +title: "Publicado Ruby 3.0.6" +author: "usa" +translator: vtamara +date: 2023-03-30 12:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 3.0.6. + +Esta versión incluye correcciones de seguridad. +Por favor vea detalles en los siguientes temas. + +* [CVE-2023-28755: Vulnerabilidad ReDoS en URI]({%link es/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: Vulnerabilidad ReDoS en Time]({%link es/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +Esta versión también incluye algunas soluciones a fallas. +Ver más detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_0_6). + +Después de esta versión, terminamos la fase normal de mantenimiento de +Ruby 3.0, y Ruby 3.0 entra a la fase de seguridad. +Esto significa que ya no retro-portaremos soluciones a fallas en Ruby 3.0 +excepto a fallas de seguridad. + +El periodo de la fase de mantenimiento de seguridad se ha programada a +un año. +Ruby 3.0 llegará a su EOL (fin de vida) y su soporte oficial terminará +al final de la fase de mantenimiento. +Por tanto, le recomendamos comenzar a planear la actualización a Ruby 3.1 +o 3.2. + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.0.6" | first %} + +* <{{ 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 }} + +## Notas de publicación + +Muchos contribuyentes, desarrolladores, y usuarios que proveyeron +reportes de fallas nos ayudaron a hacer esta versión. +Gracias por sus contribuciones. + +El mantenimiento de Ruby 3.0, incluyendo esta versión, +se basa en el "Acuerdo por una versión estable de Ruby" de la +Asociación Ruby. diff --git a/es/news/_posts/2023-03-30-ruby-3-1-4-released.md b/es/news/_posts/2023-03-30-ruby-3-1-4-released.md new file mode 100644 index 0000000000..fed39a8e34 --- /dev/null +++ b/es/news/_posts/2023-03-30-ruby-3-1-4-released.md @@ -0,0 +1,44 @@ +--- +layout: news_post +title: "Publicado Ruby 3.1.4" +author: "nagachika" +translator: vtamara +date: 2023-03-30 12:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 3.1.4. + +Ver detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_1_4). + + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.1.4" | first %} + +* <{{ 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 }} + +## Notas de publicación + +Muchos contribuyentes, desarrolladores, y usuarios que proveyeron +reportes de fallas nos ayudaron a hacer esta versión. +Gracias por sus contribuciones. diff --git a/es/news/_posts/2023-03-30-ruby-3-2-2-released.md b/es/news/_posts/2023-03-30-ruby-3-2-2-released.md new file mode 100644 index 0000000000..1b37dd119e --- /dev/null +++ b/es/news/_posts/2023-03-30-ruby-3-2-2-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Publicado Ruby 3.2.2" +author: "naruse" +translator: vtamara +date: 2023-03-30 12:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 3.2.2. + +Esta versión incluye correcciones de seguridad. +Por favor vea detalles en los siguientes temas. + +* [CVE-2023-28755: Vulnerabilidad ReDoS en URI]({%link en/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: Vulnerabilidad ReDoS en Time]({%link en/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +Ver más detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_2_2). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.2.2" | first %} + +* <{{ 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 }} + +## Notas de publicación + +Muchos contribuyentes, desarrolladores, y usuarios que proveyeron +reportes de fallas nos ayudaron a hacer esta versión. +Gracias por sus contribuciones. From cc3efe91365c8729df523cb99d7d3ea9d5c7eeb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Thu, 4 May 2023 10:31:12 -0500 Subject: [PATCH 022/607] Completes post of Ruby 3.1.4 as suggested by @gvfcastro (#3054) --- es/news/_posts/2023-03-30-ruby-3-1-4-released.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/es/news/_posts/2023-03-30-ruby-3-1-4-released.md b/es/news/_posts/2023-03-30-ruby-3-1-4-released.md index fed39a8e34..703cc67dbc 100644 --- a/es/news/_posts/2023-03-30-ruby-3-1-4-released.md +++ b/es/news/_posts/2023-03-30-ruby-3-1-4-released.md @@ -11,6 +11,13 @@ Se ha publicado Ruby 3.1.4. Ver detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_1_4). +Esta versión incluye correcciones de seguridad. +Por favor vea detalles en los siguientes temas. + +* [CVE-2023-28755: Vulnerabilidad ReDoS en URI]({%link es/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: Vulnerabilidad ReDoS en Time]({%link es/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +Ver más detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_1_4). ## Descargas From 34d4d12de874b7597c89696113b1baf3edfef832 Mon Sep 17 00:00:00 2001 From: akinomaeni Date: Sun, 30 Apr 2023 21:02:06 +0900 Subject: [PATCH 023/607] Move 3.0.6 from stable to security_maintenance --- _data/downloads.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/downloads.yml b/_data/downloads.yml index 17cf8a5e92..88c36176f7 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -9,11 +9,11 @@ stable: - 3.2.2 - 3.1.4 - - 3.0.6 # optional security_maintenance: + - 3.0.6 # optional eol: From 28f4f595ebee56e7ca0689b25d45df0a61846108 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Fri, 12 May 2023 19:54:17 +0900 Subject: [PATCH 024/607] Ruby 3.3.0-preview1 Released (#3058) --- _data/branches.yml | 5 + _data/downloads.yml | 1 + _data/releases.yml | 31 ++++ ...2023-05-12-ruby-3-3-0-preview1-released.md | 169 ++++++++++++++++++ ...2023-05-12-ruby-3-3-0-preview1-released.md | 157 ++++++++++++++++ 5 files changed, 363 insertions(+) create mode 100644 en/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md create mode 100644 ja/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md diff --git a/_data/branches.yml b/_data/branches.yml index c07b076db9..54cfc1f133 100644 --- a/_data/branches.yml +++ b/_data/branches.yml @@ -8,6 +8,11 @@ # date: date of first stable release (YYYY-MM-DD) # eol_date: date of EOL (YYYY-MM-DD) +- name: 3.3 + status: preview + date: + eol_date: + - name: 3.2 status: normal maintenance date: 2022-12-25 diff --git a/_data/downloads.yml b/_data/downloads.yml index 88c36176f7..15c73caddc 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,6 +4,7 @@ # optional preview: + - 3.3.0-preview1 stable: diff --git a/_data/releases.yml b/_data/releases.yml index 678a059518..a995996516 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -19,6 +19,37 @@ # In order to get the release listed on the downloads page, # you also need to add an entry to `_data/downloads.yml'. +# 3.3 series + +- version: 3.3.0-preview1 + date: 2023-05-12 + post: /en/news/2023/05/12/ruby-3-3-0-preview1-released/ + tag: v3_3_0_preview1 + stats: + files_changed: 1922 + insertions: 75283 + deletions: 44896 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-preview1.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-preview1.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-preview1.tar.xz + size: + gz: 20428213 + zip: 24846962 + xz: 15074600 + sha1: + gz: 5445eec1cd9ddb44e03e74568cac94209c91b42d + zip: 31774fa653c54107b6afc30adda3a0350d8f41d2 + xz: 4c22ebca287c87811e1050bf4d59b7d32255b212 + sha256: + gz: c3454a911779b8d747ab0ea87041030d002d533edacb2485fe558b7084da25ed + zip: 6ecafecf83f2cacf446b2326012f2b6ee1a0614d8dd29bb1fb3f105c27e2c553 + xz: ae300b49e06c13087dd163b97eddd38db895dc8e0c9904284119795d75303fbb + sha512: + gz: 0f891f140ddc6372aa7c4459f8784126e0c341db7b80e72c51e441c5153c43c2d7b965f7807c076862ac84b9b8b0c6a66bbf66fc341746016151397bb21c782a + zip: 794bef847fefbbdbbdced85975a00c9289ef6464810408af3f0f2055052d6b5ef5576dbd41e0d87bb73f1ad276d8e27c36018610f8e2b9936828c0e692f611f0 + xz: 46c1134dba5810847f7f6b4298900a91f5225679d7873548b271f4ef2ad1dc168722562a2e468a2ccf136314176ee613d8c7792fd4411a3f7a44c80b93b417ee + # 3.2 series - version: 3.2.2 diff --git a/en/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md b/en/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md new file mode 100644 index 0000000000..edc72bba0f --- /dev/null +++ b/en/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -0,0 +1,169 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview1 Released" +author: "naruse" +translator: +date: 2023-05-12 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview1" | first %} + +We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 adds a new pure-Ruby JIT compiler named RJIT, uses lrama as a parser generator, and many performance improvements especially YJIT. + +## RJIT + +* Introduced a pure-Ruby JIT compiler RJIT and replaced MJIT. + * RJIT supports only x86\_64 architecture on Unix platforms. + * Unlike MJIT, it doesn't require a C compiler at runtime. +* RJIT exists only for experimental purposes. + * You should keep using YJIT in production. +* If you are interested in developing JIT for Ruby, please check out [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## Use Lrama instead of Bison + +* Replace Bison with [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637] + * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + +## YJIT + +* Significant performance improvements over 3.2 + * Splat and rest arguments support has been improved. + * Registers are allocated for stack operations of the virtual machine. + * More calls with optional arguments are compiled. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` are specially optimized. + * Instance variables no longer exit to the interpreter + with megamorphic Object Shapes. +* Metadata for compiled code uses a lot less memory. +* Improved code generation on ARM64 +* Option to start YJIT in paused mode and then later enable it manually + * `--yjit-pause` and `RubyVM::YJIT.resume` + * This can be used to enable YJIT only once your application is done booting +* Exit tracing option now supports sampling + * `--trace-exits-sample-rate=N` +* Multiple bug fixes + + + +## Other Notable New Features + +### Language + + + +## Performance improvements + +* `defined?(@ivar)` is optimized with Object Shapes. + +## Other notable changes since 3.2 + + + +## Compatibility issues + +Note: Excluding feature bug fixes. + +### Removed constants + +The following deprecated constants are removed. + + + +### Removed methods + +The following deprecated methods are removed. + + + +## Stdlib compatibility issues + +### `ext/readline` is retired + +* We have `reline` that is pure Ruby implementation compatible with `ext/readline` API. We rely on `reline` in the future. If you need to use `ext/readline`, you can install `ext/readline` via rubygems.org with `gem install readline-ext`. +* We no longer need to install libraries like `libreadline` or `libedit`. + +## C API updates + +### Updated C APIs + +The following APIs are updated. + + + +### Removed C APIs + +The following deprecated APIs are removed. + + + +## Standard library updates + + + +The following default gems are updated. + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.7 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.6.4 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.3 +* stringio 3.0.7 +* strscan 3.0.7 +* syntax_suggest 1.0.4 +* time 0.2.2 +* timeout 0.3.2 +* uri 0.12.1 + +The following bundled gems are updated. + +* minitest 5.18.0 +* rbs 3.1.0 +* typeprof 0.21.7 +* debug 1.8.0 + +See GitHub releases like [Logger](https://github.com/ruby/logger/releases) or +changelog for details of the default gems or bundled gems. + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +since Ruby 3.2.0! + +Merry Christmas, Happy Holidays, and enjoy programming with Ruby 3.3! + +## Download + +* <{{ 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 + +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/2023-05-12-ruby-3-3-0-preview1-released.md b/ja/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md new file mode 100644 index 0000000000..41d503a92e --- /dev/null +++ b/ja/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -0,0 +1,157 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview1 リリース" +author: "naruse" +translator: +date: 2023-05-12 00:00:00 +0000 +lang: ja +--- + +Ruby 3.3.0-preview1 が公開されました。Ruby 3.3ではRJITという新たなJITの仕組みを追加するとともに、YJITの高速化など様々な改善が行われています。 + +{% assign release = site.data.releases | where: "version", "3.3.0-preview1" | first %} + +## RJIT + +* Introduced a pure-Ruby JIT compiler RJIT and replaced MJIT. + * RJIT supports only x86\_64 architecture on Unix platforms. + * Unlike MJIT, it doesn't require a C compiler at runtime. +* RJIT exists only for experimental purposes. + * You should keep using YJIT in production. +* If you are interested in developing JIT for Ruby, please check out [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## Use Lrama instead of Bison + +* Replace Bison with [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637] + * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * See also: [Ruby Parser開発日誌 (5) - Lrama LALR (1) parser generatorを実装した](https://yui-knk.hatenablog.com/entry/2023/03/13/101951) + + +## YJIT + +* Significant performance improvements over 3.2 + * Splat and rest arguments support has been improved. + * Registers are allocated for stack operations of the virtual machine. + * More calls with optional arguments are compiled. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` are specially optimized. + * Instance variables no longer exit to the interpreter + with megamorphic Object Shapes. +* Metadata for compiled code uses a lot less memory. +* Improved code generation on ARM64 +* Option to start YJIT in paused mode and then later enable it manually + * `--yjit-pause` and `RubyVM::YJIT.resume` + * This can be used to enable YJIT only once your application is done booting +* Exit tracing option now supports sampling + * `--trace-exits-sample-rate=N` +* Multiple bug fixes + +* + +## その他の主要な新機能 + +### 言語機能 + + +## パフォーマンスの改善 + +## その他の注目すべき 3.2 からの変更点 + +## 互換性に関する変更 + +### 定数の削除 + +以下の非推奨定数は削除されました + + + +### メソッドの削除 + +以下の非推奨のメソッドは削除されました + + +## 標準添付ライブラリの互換性に関する変更 + +### `ext/readline` の削除 + +* 今後は Ruby で書かれた GNU Readline の互換ライブラリである `reline` をすべての環境で標準で利用し、`ext/readline` は削除されました。以前の `ext/readline` が必要なユーザーは `gem install readline-ext` でインストールすることができます。 +* この変更により、Ruby のインストール時に `libreadline` や `libedit` などのライブラリのインストールは不要となります。 + +## C API の変更 + +### C API の更新 + +以下の API が更新されました + +### C API の削除 + +以下の非推奨の API は削除されました + + +## 標準添付ライブラリのアップデート + + + +* 以下の default gems のバージョンがアップデートされました。 + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.7 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.6.4 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.3 +* stringio 3.0.7 +* strscan 3.0.7 +* syntax_suggest 1.0.4 +* time 0.2.2 +* timeout 0.3.2 +* uri 0.12.1 + +* 以下の bundled gems のバージョンがアップデートされました。 + +* minitest 5.18.0 +* rbs 3.1.0 +* typeprof 0.21.7 +* debug 1.8.0 + + + +default gems と bundled gems の詳細については [Logger の GitHub Releases](https://github.com/ruby/logger/releases) のような GitHub releases または changelog ファイルを参照してください。 + + +その他詳細については、[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) ファイルまたは[コミットログ](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})を参照してください。 + +なお、こうした変更により、Ruby 3.2.0 以降では [{{ release.stats.files_changed }} 個のファイルに変更が加えられ、{{ release.stats.insertions }} 行の追加と {{ release.stats.deletions }} 行の削除が行われました](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) ! + +メリークリスマス、Ruby 3.3 とともによいお年をお迎えください! + +## ダウンロード + +* <{{ 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 とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 From 6cefa1613c818c7b912a58e2cac9c2e1faea93ab Mon Sep 17 00:00:00 2001 From: Gustavo Villa Date: Fri, 12 May 2023 15:56:20 -0300 Subject: [PATCH 025/607] Improve release note of Ruby 3.3.0-preview1 (en) --- en/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/en/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md b/en/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md index edc72bba0f..14e92cd87e 100644 --- a/en/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md +++ b/en/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -9,7 +9,7 @@ lang: en {% assign release = site.data.releases | where: "version", "3.3.0-preview1" | first %} -We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 adds a new pure-Ruby JIT compiler named RJIT, uses lrama as a parser generator, and many performance improvements especially YJIT. +We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 adds a new pure-Ruby JIT compiler named RJIT, uses Lrama as a parser generator, and many performance improvements especially YJIT. ## RJIT @@ -22,7 +22,7 @@ We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 a ## Use Lrama instead of Bison -* Replace Bison with [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637] +* Replace Bison with [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) ## YJIT @@ -137,8 +137,6 @@ for more details. With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) since Ruby 3.2.0! -Merry Christmas, Happy Holidays, and enjoy programming with Ruby 3.3! - ## Download * <{{ release.url.gz }}> From 412a4babe79892da8c4133e32916879d793be80b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 May 2023 16:02:09 +0000 Subject: [PATCH 026/607] Bump ruby/setup-ruby from 1.148.0 to 1.149.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.148.0 to 1.149.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/d2b39ad0b52eca07d23f3aa14fdf2a3fcc1f411c...7d546f4868fb108ed378764d873683f920672ae2) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 346dc1231e..10fa794c34 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@d2b39ad0b52eca07d23f3aa14fdf2a3fcc1f411c # v1.148.0 + uses: ruby/setup-ruby@7d546f4868fb108ed378764d873683f920672ae2 # v1.149.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 882a176bd0..1f9316e15b 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Setup Ruby - uses: ruby/setup-ruby@d2b39ad0b52eca07d23f3aa14fdf2a3fcc1f411c # v1.148.0 + uses: ruby/setup-ruby@7d546f4868fb108ed378764d873683f920672ae2 # v1.149.0 with: ruby-version: '3.2' bundler-cache: true From 03e3c67093f7a25895b27868019b818e824ad40d Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 18 May 2023 16:26:33 +0900 Subject: [PATCH 027/607] Translate "Ruby 3.3.0-preview1 Released" (ko) (#3062) * cp {en,ko}/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md * Translate 3.3.0 preview1 * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ...2023-05-12-ruby-3-3-0-preview1-released.md | 167 ++++++++++++++++++ 1 file changed, 167 insertions(+) create mode 100644 ko/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md diff --git a/ko/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md b/ko/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md new file mode 100644 index 0000000000..e950d8c281 --- /dev/null +++ b/ko/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -0,0 +1,167 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview1 Released" +author: "naruse" +translator: "shia" +date: 2023-05-12 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview1" | first %} + +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.3은 RJIT으로 명명된 새로운 순수 Ruby JIT 컴파일러를 추가하고, 파서 생성기로 Lrama를 사용하며, 특히 YJIT에서 많은 성능 향상이 있습니다. + +## RJIT + +* 순수 Ruby JIT 컴파일러 RJIT을 도입하고 MJIT을 대체했습니다. + * RJIT은 Unix 플랫폼에서 x86\_64 아키텍처만 지원합니다. + * MJIT과 달리 런타임에 C 컴파일러가 필요하지 않습니다. +* RJIT은 실험 목적으로 존재합니다. + * 프로덕션 환경에서는 YJIT을 계속 사용해야 합니다. +* Ruby용 JIT 개발에 관심이 있다면 [RubyKaigi 2023 3일차에 있었던 k0kubun의 발표](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)를 확인하세요. + +## Bison을 Lrama로 대체 + +* Bison 대신 [Lrama LALR 파서 생성기](https://github.com/yui-knk/lrama)를 사용하도록 변경했습니다. [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * 관심이 있다면 [Ruby 파서의 미래 비전](https://rubykaigi.org/2023/presentations/spikeolaf.html)을 참고하세요. + +## YJIT + +* 3.2 버전 대비 성능 대폭 향상 + * 스플랫과 나머지 인자 지원이 개선되었습니다. + * 가상 머신의 스택 연산을 위해 레지스터가 할당됩니다. + * 선택적 인수가 포함된 더 많은 호출이 컴파일됩니다. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===`은 특별히 최적화되었습니다. + * 클래스의 인스턴스 변수가 가지는 객체 형상의 조합이 매우 복잡한 경우에도 + 컴파일되기 전의 바이트 코드로 전환되지 않습니다. +* 컴파일된 코드의 메타데이터가 훨씬 적은 메모리를 사용합니다. +* ARM64에서의 코드 생성 개선 +* 일시 중지 모드에서 YJIT을 시작한 다음 나중에 수동으로 재개하는 옵션 추가 + * `--yjit-pause`와 `RubyVM::YJIT.resume` + * 애플리케이션 부팅이 완료된 후에만 YJIT을 재개할 수 있습니다. +* 종료 추적 옵션이 이제 샘플링을 지원합니다. + * `--trace-exits-sample-rate=N` +* 여러 버그 수정 + + + +## 그 이외의 주목할 만한 새 기능 + +### 언어 + + + +## 성능 향상 + +* `defined?(@ivar)`가 객체 형상에 맞게 최적화되었습니다. + +## 그 이외의 3.2 이후로 주목할 만한 변경 + + + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + +### 삭제된 상수 + +폐기 예정이었던 상수가 삭제됩니다. + + + +### 삭제된 메서드 + +폐기 예정이었던 메서드가 삭제됩니다. + + + +## Stdlib 호환성 문제 + +### `ext/readline` 폐기 + +* 우리는 `ext/readline` API와 호환되는 순수 Ruby 구현인 `reline`을 가지고 있습니다. 앞으로는 `reline`에 의존할 것입니다. `ext/readline`을 사용해야 하는 경우, `gem install readline-ext`를 사용하여 rubygems.org를 통해 `ext/readline`을 설치할 수 있습니다. +* 이제 더 이상 `libreadline` 또는 `libedit`과 같은 라이브러리를 설치할 필요가 없습니다. + +## C API 변경 + +### 갱신된 C API + +다음 API가 갱신됩니다. + + + +### 삭제된 C API + +다음 폐기 예정인 API가 삭제됩니다. + + + +### 표준 라이브러리 갱신 + + + +다음 기본 gem이 갱신되었습니다. + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.7 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.6.4 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.3 +* stringio 3.0.7 +* strscan 3.0.7 +* syntax_suggest 1.0.4 +* time 0.2.2 +* timeout 0.3.2 +* uri 0.12.1 + +다음 내장 gem이 갱신되었습니다. + +* minitest 5.18.0 +* rbs 3.1.0 +* typeprof 0.21.7 +* debug 1.8.0 + +기본 gem 또는 내장 gem에 대한 자세한 내용은 [Logger](https://github.com/ruby/logger/releases)와 같은 +GitHub 릴리스 또는 변경 로그에서 확인하세요. + +더 자세한 내용은 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.2.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. From ae253ee36690e4fd93dd75e90afc6e32c7fa8a6f Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 18 May 2023 16:26:43 +0900 Subject: [PATCH 028/607] =?UTF-8?q?Use=20'=EA=B0=9D=EC=B2=B4=20=ED=98=95?= =?UTF-8?q?=EC=83=81'=20instead=20of=20'Object=20shape'=20(#3064)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ko/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md | 2 +- ko/news/_posts/2022-12-25-ruby-3-2-0-released.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ko/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md b/ko/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md index 09e28bdf59..001a46a94c 100644 --- a/ko/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md +++ b/ko/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md @@ -220,7 +220,7 @@ sum = ary[0] + ary[1] `freed_code_size`를 반환합니다. * `RubyVM::YJIT.runtime_stats`가 제공하는 통계 정보가 이번 릴리스부터 이용 가능합니다. * 통계 정보를 계산하고 얻기 위해서는 Ruby를 `--yjit-stats`와 함께 실행하세요(약간의 실행시간 오버헤드가 발생합니다). -* YJIT은 Object shape를 이용해 최적화합니다. [[Feature #18776]] +* YJIT은 객체 형상을 이용해 최적화합니다. [[Feature #18776]] * 상수를 무효화하는 단위를 작게 하여 새 상수를 정의할 때 더 적은 코드를 무효화합니다. [[Feature #18589]] ### MJIT diff --git a/ko/news/_posts/2022-12-25-ruby-3-2-0-released.md b/ko/news/_posts/2022-12-25-ruby-3-2-0-released.md index 31eb08c65b..3981588715 100644 --- a/ko/news/_posts/2022-12-25-ruby-3-2-0-released.md +++ b/ko/news/_posts/2022-12-25-ruby-3-2-0-released.md @@ -66,7 +66,7 @@ Ruby의 웹어셈블리/WASI 지원은 이러한 프로젝트들을 활용하기 `freed_code_size`를 반환합니다. * `RubyVM::YJIT.runtime_stats`가 제공하는 통계 정보가 이번 릴리스부터 이용 가능합니다. * 통계 정보를 계산하고 얻기 위해서는 Ruby를 `--yjit-stats`와 함께 실행하세요(약간의 실행시간 오버헤드가 발생합니다). -* YJIT은 Object shape를 이용해 최적화합니다. [[Feature #18776]] +* YJIT은 객체 형상을 이용해 최적화합니다. [[Feature #18776]] * 상수를 무효화하는 단위를 작게 하여 새 상수를 정의할 때 더 적은 코드를 무효화합니다. [[Feature #18589]] * `--yjit-exec-mem-size`의 기본값이 64(MiB)로 변경됩니다. * `--yjit-call-threshold`의 기본값이 30으로 변경됩니다. From c48d009894c5051f0bbdc7cc0a341f064f9f9cc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Thu, 18 May 2023 09:48:06 -0400 Subject: [PATCH 029/607] Translate release of Ruby 3.3.0.preview1 (es) (#3059) * Translate release of Ruby 3.3.0.preview1 (es) * Mejoras gracias a @gvfcastro --- ...2023-05-12-ruby-3-3-0-preview1-released.md | 173 ++++++++++++++++++ 1 file changed, 173 insertions(+) create mode 100644 es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md diff --git a/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md b/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md new file mode 100644 index 0000000000..f8802a56dd --- /dev/null +++ b/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -0,0 +1,173 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.0-preview1" +author: "naruse" +translator: vtamara +date: 2023-05-12 00:00:00 +0000 +lang: es +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview1" | first %} + +Nos complace anunciar la publicación de Ruby {{ release.version }}. Ruby 3.3 +añade un nuevo compilador JIT en puro Ruby llamado RJIT, usa Lrama +como generador del analizador sintáctico así como muchas mejoras +de desempeño especialmente de YJIT. + +## RJIT + +* Se introdujo RJIT un compilador JIT en puro Ruby que remplaza a MJIT. + * RJIT soporta sólo la arquitectura x86\_64 en plataformas Unix. + * A diferencia de MJIT, no require de un compilador C en tiempo de ejecución. +* RJIT existe sólo con propósitos experimentales. + * Debería seguir usando YJIT en producción. +* Si le interesa desarrollar un compilador JIT para Ruby, por favor + revise la [presentación de k0kubun en el día 3 de RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## Usa Lrama en lugar de Bison + +* Remplaza Bison con [el generador de analizadores sintácticos LALR Lrama](https://github.com/yui-knk/lrama) [Feature #19637] + * Si tiene interés por favor vea [la visión futura de los analizadores sintácticos de Ruby](https://rubykaigi.org/2023/presentations/spikeolaf.html) + +## YJIT + +* Mejoras en desempeño significativas respecto a 3.2 + * Mejorado el soporte para argumentos splat y para el resto de argumentos. + * Los registros se localizan para una operación en pila de la máquina virtual. + * Se compila más llamados con argumentos opcionales. + * Se optimizaron especialmente `Integer#!=`, `String#!=`, + `Kernel#block_given?`, `Kernel#is_a?`, `Kernel#instance_of?` y + `Module#===`. + * Las variables de instancia ya no salen al interprete con Formas de Objetos + mega-mórficas. +* Los metadatos para el código compilado usa mucha menos memoria. +* Generación de código mejorada en ARM64 +* Opción para iniciar YJIT en modo pausado para después habilitarlo + manualmente + * `--yjit-pause` y `RubyVM::YJIT.resume` + * Esto puede usarse para habilitar YJIT sólo después de que su aplicación + hay completado el arranque. +* La opción para salir del modo con trazas ahora soporta muestreo + * `--trace-exits-sample-rate=N` +* Correcciones a múltiples fallas + + +## Otros Características Nuevas Notables + +### Lenguaje + +## Mejoras en desempeño + +* `defined?(@ivar)` se optimiza con Formas de Objetos + +## Otros cambios notables desde 3.2 + + + +## Incidentes de compatibilidad + +Nota: Correciones a falla que excluía características. + +### Constantes elminadas + +Las siguientes constantes que eran despreciadas han sido eliminadas. + + +### Métodos eliminados + +Los siguientes métodos que eran despreciados han sido eliminados. + + +## Problemas de compatibilidad con Stdlib + +### Eliminación de `ext/readline` + +* Tenemos `reline` que es una implementación en Ruby puro compatible con + el API de `ext/readline`. Dependeremos de `reline` a futuro. Si + necesita usar `ext/readline`, puede instalar `ext/readline` vía rubygems.org + con `gem install readline-ext`. +* Ya no necesitamos instalar librerías como `libreadline` o `libedit`. + +## Actualizaciones al API en C + +### APIs en C actualizados + +Los siguientes APIs han sido actualizados. + + + +### APIs en C eliminados + +Los siguientes APIs despreciados han sido eliminados. + +## Actualizaciones a la librería estándar. + + +Las siguientes gemas predeterminadas se han actualizado. + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.7 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.6.4 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.3 +* stringio 3.0.7 +* strscan 3.0.7 +* syntax_suggest 1.0.4 +* time 0.2.2 +* timeout 0.3.2 +* uri 0.12.1 + +Las siguientes gemas incluídas han sido actualizadas. + +* minitest 5.18.0 +* rbs 3.1.0 +* typeprof 0.21.7 +* debug 1.8.0 + +Ve la publicación en GitHub com [Logger](https://github.com/ruby/logger/releases) o +ben la bitácora de cambios con detalles de las gemas predeterminadas +y las gemas incluidas. + + +Ver detalles en el archivo +[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +o en [la bitácora de cambios](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}). + +Con estos cambios, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +desde Ruby 3.2.0! + +¡Feliz Navidad, Felices Fiestas, y disfruten programando con Ruby 3.3! + +## Descargas + +* <{{ 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 }} + +## Qué es Ruby + +Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, +y ahora es desarrollado como Código Abieto. Corre en múltiples +plataformas y es usado en todo el mundo especialmente para desarrollo web. From 5cf22efccd640a6a41133c5be8fce47bf733f883 Mon Sep 17 00:00:00 2001 From: Gustavo Villa Date: Thu, 18 May 2023 15:58:23 -0300 Subject: [PATCH 030/607] Improve release note of Ruby 3.3.0-preview1 (es) --- .../_posts/2023-05-12-ruby-3-3-0-preview1-released.md | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md b/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md index f8802a56dd..3885be5a52 100644 --- a/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md +++ b/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -26,7 +26,7 @@ de desempeño especialmente de YJIT. ## Usa Lrama en lugar de Bison -* Remplaza Bison con [el generador de analizadores sintácticos LALR Lrama](https://github.com/yui-knk/lrama) [Feature #19637] +* Remplaza Bison con [el generador de analizadores sintácticos LALR Lrama](https://github.com/yui-knk/lrama) [Característica #19637](https://bugs.ruby-lang.org/issues/19637) * Si tiene interés por favor vea [la visión futura de los analizadores sintácticos de Ruby](https://rubykaigi.org/2023/presentations/spikeolaf.html) ## YJIT @@ -58,7 +58,7 @@ de desempeño especialmente de YJIT. ## Mejoras en desempeño -* `defined?(@ivar)` se optimiza con Formas de Objetos +* `defined?(@ivar)` se optimiza con Formas de Objetos. ## Otros cambios notables desde 3.2 @@ -100,7 +100,7 @@ Los siguientes APIs han sido actualizados. Los siguientes APIs despreciados han sido eliminados. -## Actualizaciones a la librería estándar. +## Actualizaciones a la librería estándar Las siguientes gemas predeterminadas se han actualizado. @@ -133,16 +133,13 @@ Ve la publicación en GitHub com [Logger](https://github.com/ruby/logger/release ben la bitácora de cambios con detalles de las gemas predeterminadas y las gemas incluidas. - Ver detalles en el archivo [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) o en [la bitácora de cambios](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}). -Con estos cambios, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +¡Con estos cambios, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) desde Ruby 3.2.0! -¡Feliz Navidad, Felices Fiestas, y disfruten programando con Ruby 3.3! - ## Descargas * <{{ release.url.gz }}> From 49b727bde8fdb1c816153d8ec853e8345a10b82d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 May 2023 16:02:06 +0000 Subject: [PATCH 031/607] Bump ruby/setup-ruby from 1.149.0 to 1.150.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.149.0 to 1.150.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/7d546f4868fb108ed378764d873683f920672ae2...8a45918450651f5e4784b6031db26f4b9f76b251) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 10fa794c34..5e62e10953 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@7d546f4868fb108ed378764d873683f920672ae2 # v1.149.0 + uses: ruby/setup-ruby@8a45918450651f5e4784b6031db26f4b9f76b251 # v1.150.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 1f9316e15b..9278a86bc9 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Setup Ruby - uses: ruby/setup-ruby@7d546f4868fb108ed378764d873683f920672ae2 # v1.149.0 + uses: ruby/setup-ruby@8a45918450651f5e4784b6031db26f4b9f76b251 # v1.150.0 with: ruby-version: '3.2' bundler-cache: true From 1fb6041c2891b36c56ec237e1fc8086a909a3303 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Jun 2023 16:01:45 +0000 Subject: [PATCH 032/607] Bump actions/checkout from 3.5.2 to 3.5.3 Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.2 to 3.5.3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/8e5e7e5ab8b370d6c329ec480221332ada57f0ab...c85c95e3d7251135ab7dc9ce3241c5835cc595a9) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5e62e10953..df97fdd305 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 9278a86bc9..aa2be3351c 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 - name: Setup Ruby uses: ruby/setup-ruby@8a45918450651f5e4784b6031db26f4b9f76b251 # v1.150.0 with: From 493b5fe3edf59c2e526910f7d825065830b13e71 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Jun 2023 16:01:56 +0000 Subject: [PATCH 033/607] Bump ruby/setup-ruby from 1.150.0 to 1.151.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.150.0 to 1.151.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/8a45918450651f5e4784b6031db26f4b9f76b251...bc1dd263b68cb5626dbb55d5c89777d79372c484) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index df97fdd305..69a64d9ca5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@8a45918450651f5e4784b6031db26f4b9f76b251 # v1.150.0 + uses: ruby/setup-ruby@bc1dd263b68cb5626dbb55d5c89777d79372c484 # v1.151.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index aa2be3351c..15ea276e41 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 - name: Setup Ruby - uses: ruby/setup-ruby@8a45918450651f5e4784b6031db26f4b9f76b251 # v1.150.0 + uses: ruby/setup-ruby@bc1dd263b68cb5626dbb55d5c89777d79372c484 # v1.151.0 with: ruby-version: '3.2' bundler-cache: true From 3ee5c5fd53e3c02ac1b9a7d298244d0012e6a0cb Mon Sep 17 00:00:00 2001 From: Akseluhreyter Date: Mon, 8 May 2023 21:21:45 -0400 Subject: [PATCH 034/607] Update invites to Discord The invite links to the Ruby Discord have expired. This updates the links to a new invite. --- en/community/index.md | 2 +- fr/community/index.md | 2 +- id/community/index.md | 2 +- ko/community/index.md | 2 +- tr/community/index.md | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/en/community/index.md b/en/community/index.md index eab2142b53..053df6f70b 100644 --- a/en/community/index.md +++ b/en/community/index.md @@ -61,6 +61,6 @@ General Ruby Information [ruby-central]: http://rubycentral.org/ -[ruby-discord]: https://discord.gg/EnSevaRfct +[ruby-discord]: https://discord.gg/ad2acQFtkh [ruby-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/ [rails-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/Software/Frameworks/Rails/ diff --git a/fr/community/index.md b/fr/community/index.md index e425b46926..15b17d7bea 100644 --- a/fr/community/index.md +++ b/fr/community/index.md @@ -59,6 +59,6 @@ Informations générales [ruby-central]: http://rubycentral.org/ -[ruby-discord]: https://ruby-discord.com/ +[ruby-discord]: https://discord.gg/ad2acQFtkh [ruby-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/ [rails-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/Software/Frameworks/Rails/ diff --git a/id/community/index.md b/id/community/index.md index bf39ca0f90..da349b98a9 100644 --- a/id/community/index.md +++ b/id/community/index.md @@ -73,7 +73,7 @@ Informasi Umum Tentang Ruby -[ruby-discord]: https://discord.gg/EnSevaRfct +[ruby-discord]: https://discord.gg/ad2acQFtkh [ruby-id-group]: http://tech.groups.yahoo.com/group/id-ruby/ [ruby-central]: http://rubycentral.org/ [ruby-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/ diff --git a/ko/community/index.md b/ko/community/index.md index cdf5a45da6..51a59d1b7e 100644 --- a/ko/community/index.md +++ b/ko/community/index.md @@ -59,6 +59,6 @@ Ruby의 장점, 특징에 대한 설명에서 빠지지 않고 등장하는 것 * [Rails at Open Directory Project][rails-opendir] [ruby-central]: http://rubycentral.org/ -[ruby-discord]: https://discord.gg/EnSevaRfct +[ruby-discord]: https://discord.gg/ad2acQFtkh [ruby-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/ [rails-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/Software/Frameworks/Rails/ diff --git a/tr/community/index.md b/tr/community/index.md index da7a06fb3b..7065657966 100644 --- a/tr/community/index.md +++ b/tr/community/index.md @@ -66,7 +66,7 @@ Genel Ruby Kaynakları [ruby-central]: http://rubycentral.org/ -[ruby-discord]: https://discord.gg/EnSevaRfct +[ruby-discord]: https://discord.gg/ad2acQFtkh [ruby-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/ [rails-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/Software/Frameworks/Rails/ [ruby-turkiye-slack]: https://rubytr.herokuapp.com/ From ae33be445a96bd3a05881f4a9fb4c681f7533ebc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 Jun 2023 16:01:45 +0000 Subject: [PATCH 035/607] Bump ruby/setup-ruby from 1.151.0 to 1.152.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.151.0 to 1.152.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/bc1dd263b68cb5626dbb55d5c89777d79372c484...250fcd6a742febb1123a77a841497ccaa8b9e939) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 69a64d9ca5..e9600851db 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@bc1dd263b68cb5626dbb55d5c89777d79372c484 # v1.151.0 + uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 15ea276e41..1f50b9b87a 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 - name: Setup Ruby - uses: ruby/setup-ruby@bc1dd263b68cb5626dbb55d5c89777d79372c484 # v1.151.0 + uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0 with: ruby-version: '3.2' bundler-cache: true From 80d3e6de1f6b8864ad9cfefd7e2abc100e531a10 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 Jun 2023 16:01:38 +0000 Subject: [PATCH 036/607] Bump actions/deploy-pages from 2.0.1 to 2.0.2 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 2.0.1 to 2.0.2. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/af48cf94a42f2c634308b1c9dc0151830b6f190a...ee48c7b82e077d7b8ef30b50a719e6a792a50c9a) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 1f50b9b87a..b6b5004c9d 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@af48cf94a42f2c634308b1c9dc0151830b6f190a # v2.0.1 + uses: actions/deploy-pages@ee48c7b82e077d7b8ef30b50a719e6a792a50c9a # v2.0.2 From 602d8af32071918a4b9246f27b817ea10d50484a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 Jun 2023 16:01:36 +0000 Subject: [PATCH 037/607] Bump actions/upload-pages-artifact from 1.0.8 to 1.0.9 Bumps [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) from 1.0.8 to 1.0.9. - [Release notes](https://github.com/actions/upload-pages-artifact/releases) - [Commits](https://github.com/actions/upload-pages-artifact/compare/64bcae551a7b18bcb9a09042ddf1960979799187...66b63f4a7de003f4f00cc8e9af4b83b8f2abdb96) --- updated-dependencies: - dependency-name: actions/upload-pages-artifact dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index b6b5004c9d..4ffa2deaa3 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -34,7 +34,7 @@ jobs: env: JEKYLL_ENV: production - name: Upload artifact - uses: actions/upload-pages-artifact@64bcae551a7b18bcb9a09042ddf1960979799187 # v1.0.8 + uses: actions/upload-pages-artifact@66b63f4a7de003f4f00cc8e9af4b83b8f2abdb96 # v1.0.9 deploy: environment: From 8887ecebecc687b9309c7930a0b5cd4b596f11aa Mon Sep 17 00:00:00 2001 From: ydah <13041216+ydah@users.noreply.github.com> Date: Tue, 20 Jun 2023 12:18:32 +0900 Subject: [PATCH 038/607] Fix some broken link to bugs.ruby-lang.org wiki Several links are broken due to migrate the wiki from bugs.ruby-lang.org to the ruby/ruby GitHub repository. - https://bugs.ruby-lang.org/issues/19679 This PR migrated what we can in this PR, but the following links doesn't seem to exist for the migrated page: - https://bugs.ruby-lang.org/projects/ruby/wiki/200UpgradeNotesDraft - https://bugs.ruby-lang.org/projects/ruby/wiki/200SpecialThanks - https://bugs.ruby-lang.org/projects/ruby/wiki/MJIT --- bg/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- de/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- de/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md | 4 ++-- de/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md | 4 ++-- de/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md | 4 ++-- en/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- en/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md | 4 ++-- en/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md | 4 ++-- en/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md | 4 ++-- es/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- es/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md | 4 ++-- es/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md | 4 ++-- es/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md | 4 ++-- fr/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md | 4 ++-- fr/news/_posts/2016-12-25-ruby-2-4-0-released.md | 2 +- id/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- id/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md | 4 ++-- id/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md | 4 ++-- id/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md | 4 ++-- it/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md | 4 ++-- ja/dev/index.md | 6 +++--- ja/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md | 4 ++-- ko/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- ko/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md | 4 ++-- ko/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md | 4 ++-- ko/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md | 4 ++-- pl/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- pt/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- pt/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md | 4 ++-- pt/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md | 4 ++-- ru/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- vi/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- vi/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md | 4 ++-- .../news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- zh_cn/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md | 4 ++-- .../news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md | 4 ++-- .../news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md | 4 ++-- .../news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md | 4 ++-- zh_tw/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md | 4 ++-- 39 files changed, 78 insertions(+), 78 deletions(-) diff --git a/bg/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/bg/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index 24a82a0a06..78c5925b8d 100644 --- a/bg/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/bg/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -12,7 +12,7 @@ lang: bg Това е първият предварителен преглед на Ruby 2.4.0. Излиза по-рано от обикновено, защото включва много новости и подобрения. Не се колебайте да -[изпращате обратна връзка](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport), +[изпращате обратна връзка](https://github.com/ruby/ruby/wiki/How-To-Report), тъй като все още имате възможност да повлияете на промените. ## [Обединяване на Fixnum и Bignum в Integer](https://bugs.ruby-lang.org/issues/12005) @@ -64,7 +64,7 @@ Ruby 2.4 показва нишките заедно с техният backtrace, зависят от тях. Приятно ползване на Ruby 2.4.0-preview1! -[Свържете се с нас](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[Свържете се с нас](https://github.com/ruby/ruby/wiki/How-To-Report) с вашите коментари и преложения. ## Важни промени от 2.3 diff --git a/de/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/de/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index 2a4eb7cfb7..45d920088c 100644 --- a/de/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/de/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -13,7 +13,7 @@ geben zu können. Ruby 2.4.0-preview1 ist die erste Vorschau auf Ruby 2.4.0 und sie kommt früher als üblich, weil sie zahlreiche neue Features und Verbesserungen enthält. Wenn Sie noch Einfluss auf die Zukunft nehmen -wollen, dann [geben Sie uns Rückmeldung](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport). +wollen, dann [geben Sie uns Rückmeldung](https://github.com/ruby/ruby/wiki/How-To-Report). ## [Zusammenführung von Fixnum und Bignum in Integer](https://bugs.ruby-lang.org/issues/12005) @@ -71,7 +71,7 @@ Die Deadlock-Erkennung von Ruby 2.4 listet Threads nun mit ihrem Backtrace und abhängigen Threads. Versuchen Sie Ruby 2.4.0-preview1, haben Sie Spaß daran und [geben Sie -Rückmeldung](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +Rückmeldung](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Wesentliche Änderungen seit 2.3 diff --git a/de/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md b/de/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md index 91385e9f2e..6739dafb4a 100644 --- a/de/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md +++ b/de/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md @@ -12,7 +12,7 @@ bekanntgeben zu können. Ruby 2.4.0-preview2 ist die zweite Vorschau auf Ruby 2.4.0 und wird in der Absicht veröffentlicht, Meinungen und Feedback durch die -Community einzuholen. Wir möchten Sie daher ermutigen, [uns Rückmeldung zu geben](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport), +Community einzuholen. Wir möchten Sie daher ermutigen, [uns Rückmeldung zu geben](https://github.com/ruby/ruby/wiki/How-To-Report), wodurch Sie noch Einfluss auf die weitere Entwicklung nehmen können. ## [Zusammenführung von Fixnum und Bignum in Integer](https://bugs.ruby-lang.org/issues/12005) @@ -75,7 +75,7 @@ sinnvolles Debugging. Die Deadlock-Erkennung von Ruby 2.4 listet Threads nun mit ihrem Backtrace und abhängigen Threads. -Versuchen Sie Ruby 2.4.0-preview1, haben Sie Spaß daran und [geben Sie Rückmeldung](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +Versuchen Sie Ruby 2.4.0-preview1, haben Sie Spaß daran und [geben Sie Rückmeldung](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Sonstige wesentliche Änderungen seit 2.3 diff --git a/de/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md b/de/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md index e9e5e77fb0..2921bb14ec 100644 --- a/de/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md +++ b/de/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md @@ -13,7 +13,7 @@ ankündigen zu können. Ruby 2.4.0-preview3 ist die dritte Vorschau auf Ruby 2.4.0 und wird in der Absicht veröffentlicht, Feedback von der Gemeinschaft zu erhalten. Bitte -[geben Sie uns Rückmeldung](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport), +[geben Sie uns Rückmeldung](https://github.com/ruby/ruby/wiki/How-To-Report), da Sie immer noch Einfluss auf die Features nehmen können. ## [Verbesserung der Hash-Tabellen (von Wladimir Makarow)](https://bugs.ruby-lang.org/issues/12142) @@ -96,7 +96,7 @@ sinnvolles Debugging. Die Deadlock-Erkennung von Ruby 2.4 listet Threads nun mit ihrem Backtrace und abhängigen Threads. -Versuchen Sie Ruby 2.4.0-preview3, haben Sie Spaß daran und [geben Sie Rückmeldung](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +Versuchen Sie Ruby 2.4.0-preview3, haben Sie Spaß daran und [geben Sie Rückmeldung](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Sonstige wesentliche Änderungen seit 2.3 diff --git a/de/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md b/de/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md index a100683332..1d4e45d984 100644 --- a/de/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md +++ b/de/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md @@ -12,7 +12,7 @@ zu können. Ruby 2.4.0-rc1 ist der erste Veröffentlichungskandidat von Ruby 2.4.0 und dient dazu, Rückmeldungen aus der Community zu -sammeln. Bitte [geben Sie uns Feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport), +sammeln. Bitte [geben Sie uns Feedback](https://github.com/ruby/ruby/wiki/How-To-Report), da noch immer die Möglichkeit besteht, Einfluss auf die Features zu nehmen. @@ -96,7 +96,7 @@ sinnvolles Debugging. Die Deadlock-Erkennung von Ruby 2.4 listet Threads nun mit ihrem Backtrace und abhängigen Threads. -Versuchen Sie Ruby 2.4.0-rc1, haben Sie Spaß daran und [geben Sie Rückmeldung](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +Versuchen Sie Ruby 2.4.0-rc1, haben Sie Spaß daran und [geben Sie Rückmeldung](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Sonstige wesentliche Änderungen seit 2.3 diff --git a/en/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/en/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index 3ecbacc53a..e54bee06da 100644 --- a/en/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/en/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -13,7 +13,7 @@ Ruby 2.4.0-preview1 is the first preview of Ruby 2.4.0. This preview1 is released earlier than usual because it includes so many new features and improvements. Feel free to -[send feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[send feedback](https://github.com/ruby/ruby/wiki/How-To-Report) since you can still change the features. ## [Unify Fixnum and Bignum into Integer](https://bugs.ruby-lang.org/issues/12005) @@ -66,7 +66,7 @@ Ruby 2.4's deadlock detection shows threads with their backtrace and dependent threads. Try and enjoy programming with Ruby 2.4.0-preview1, and -[send us feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[send us feedback](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Notable Changes since 2.3 diff --git a/en/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md b/en/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md index 1de02f1c7d..3ed381265b 100644 --- a/en/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md +++ b/en/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md @@ -12,7 +12,7 @@ We are pleased to announce the release of Ruby 2.4.0-preview2. Ruby 2.4.0-preview2 is the second preview of Ruby 2.4.0. This preview2 is released to get feedback from the community. Feel free to -[send feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[send feedback](https://github.com/ruby/ruby/wiki/How-To-Report) since you can still influence the features. ## [Unify Fixnum and Bignum into Integer](https://bugs.ruby-lang.org/issues/12005) @@ -69,7 +69,7 @@ Ruby 2.4's deadlock detection shows threads with their backtrace and dependent threads. Try and enjoy programming with Ruby 2.4.0-preview2, and -[send us feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[send us feedback](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Other notable changes since 2.3 diff --git a/en/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md b/en/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md index 368bf946e5..3907524c0e 100644 --- a/en/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md +++ b/en/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md @@ -12,7 +12,7 @@ We are pleased to announce the release of Ruby 2.4.0-preview3. Ruby 2.4.0-preview3 is the third preview of Ruby 2.4.0. This preview3 is released to get feedback from the community. Feel free to -[send feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[send feedback](https://github.com/ruby/ruby/wiki/How-To-Report) since you can still influence the features. ## [Introduce hash table improvement (by Vladimir Makarov)](https://bugs.ruby-lang.org/issues/12142) @@ -83,7 +83,7 @@ Ruby 2.4's deadlock detection shows threads with their backtrace and dependent threads. Try and enjoy programming with Ruby 2.4.0-preview3, and -[send us feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[send us feedback](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Other notable changes since 2.3 diff --git a/en/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md b/en/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md index 812c0fe41c..8e6f8d26c1 100644 --- a/en/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md +++ b/en/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md @@ -12,7 +12,7 @@ We are pleased to announce the release of Ruby 2.4.0-rc1. Ruby 2.4.0-rc1 is the first release candidate of Ruby 2.4.0. This rc1 is released to get feedback from the community. Feel free to -[send feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[send feedback](https://github.com/ruby/ruby/wiki/How-To-Report) since you can still fix the features. ## [Introduce hash table improvement (by Vladimir Makarov)](https://bugs.ruby-lang.org/issues/12142) @@ -83,7 +83,7 @@ Ruby 2.4's deadlock detection shows threads with their backtrace and dependent threads. Try and enjoy programming with Ruby 2.4.0-rc1, and -[send us feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[send us feedback](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Other notable changes since 2.3 diff --git a/es/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/es/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index 88895cb99a..ac7a4f3734 100644 --- a/es/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/es/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -12,7 +12,7 @@ Nos complace anunciar la entrega de Ruby 2.4.0-preview1. Esta versión es la primera vista previa a Ruby 2.4.0 y ha sido liberada antes de lo usual porque incluye muchas mejoras y características nuevas. Por favor no olvides enviar -[tus comentarios](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[tus comentarios](https://github.com/ruby/ruby/wiki/How-To-Report) ya que aún estamos a buen tiempo de hacer cambios. ## [Integrar Fixnum y Bignum en Integer](https://bugs.ruby-lang.org/issues/12005) @@ -66,7 +66,7 @@ La detección de puntos muertos en Ruby 2.4 ahora muestra los threads con su traza inversa y los threads dependientes. Esperamos que disfrutes programar con Ruby 2.4.0-preview1 y no olvides -[enviar tus comentarios](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[enviar tus comentarios](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Cambios significantes desde 2.3 diff --git a/es/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md b/es/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md index 8224848ba2..903d73ab35 100644 --- a/es/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md +++ b/es/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md @@ -12,7 +12,7 @@ Nos complace anunciar el lanzamiento de Ruby 2.4.0-preview2. Ruby 2.4.0-preview2 es la segunda vista previa de Ruby 2.4.0. Este preview2 es liberado para obtener retroalimentación de la comunidad. Siéntete libre de -[enviar tus comentarios](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[enviar tus comentarios](https://github.com/ruby/ruby/wiki/How-To-Report) ya que aún puedes influir en las funcionalidades. ## [Unificación de Fixnum y Bignum en Integer](https://bugs.ruby-lang.org/issues/12005) @@ -67,7 +67,7 @@ no incluye suficiente información para depuración. La detección de deadlocks en Ruby 2.4 muestra los hilos con sus respectivas trazas e hilos dependientes. ¡Prueba y disfruta programar con Ruby 2.4.0-preview2, y -[envíanos retroalimentación](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[envíanos retroalimentación](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Otros cambios notables desde 2.3 diff --git a/es/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md b/es/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md index 98329af1b0..baea1456dc 100644 --- a/es/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md +++ b/es/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md @@ -12,7 +12,7 @@ Nos complace anunciar el lanzamiento de Ruby 2.4.0-preview3. Ruby 2.4.0-preview3 es las tercer versión preelimiar de Ruby 2.4.0. Esta versión preview3 es liberada para obtener retroalimentación de la comunidad. Tómate la libertad de -[enviar tus comentarios](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[enviar tus comentarios](https://github.com/ruby/ruby/wiki/How-To-Report) ya que aún puedes influir en las funcionalidades. ## [Presentamos una mejora a las tablas de hash por Vladimir Makarov](https://bugs.ruby-lang.org/issues/12142) @@ -81,7 +81,7 @@ no incluye suficiente información para depuración. La detección de deadlocks en Ruby 2.4 muestra los hilos con sus respectivas trazas e hilos dependientes. ¡Prueba y disfruta programar con Ruby 2.4.0-preview3, y -[envíanos retroalimentación](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[envíanos retroalimentación](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Otros cambios notables desde 2.3 diff --git a/es/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md b/es/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md index d3dc23c332..67179a1011 100644 --- a/es/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md +++ b/es/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md @@ -12,7 +12,7 @@ Nos complace anunciar el lanzamiento de Ruby 2.4.0-rc1. Ruby 2.4.0-rc1 es el primer candidato a lanzamiento de Ruby 2.4.0. Esta versión rc1 es liberada para obtener retroalimentación de la comunidad. Siéntete libre de -[enviar tu retroalimentación](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[enviar tu retroalimentación](https://github.com/ruby/ruby/wiki/How-To-Report) ya que aún puedes arreglar las funcionalidades. ## [Presentamos una mejora a las tablas de hash por Vladimir Makarov](https://bugs.ruby-lang.org/issues/12142) @@ -87,7 +87,7 @@ de deadlocks en Ruby 2.4 muestra los hilos con sus respectivas trazas e hilos dependientes. ¡Prueba y disfruta programar con Ruby 2.4.0-rc1, y -[envíanos retroalimentación](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[envíanos retroalimentación](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Otros cambios notables desde 2.3 diff --git a/fr/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md b/fr/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md index f782e877cd..be58636054 100644 --- a/fr/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md +++ b/fr/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md @@ -11,7 +11,7 @@ Nous sommes heureux d'annoncer la sortie de Ruby 2.4.0-rc1. Ruby 2.4.0-rc1 est la première *release candidate* pour la version stable 2.4.0 Le but de cette version est d'obtenir des retours de la communauté : n'hésitez -pas à nous [envoyer vos remarques](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport). +pas à nous [envoyer vos remarques](https://github.com/ruby/ruby/wiki/How-To-Report). ## [Améliorations de la table de hachage (par Vladimir Makarov)](https://bugs.ruby-lang.org/issues/12142) @@ -91,7 +91,7 @@ Ruby 2.4 ajoute la backtrace au rapport, ainsi qu'une liste des threads dépendants. Nous vous invitons à essayer tous ces changements apportés par Ruby 2.4.0-rc1 -et à nous [faire vos retours](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) ! +et à nous [faire vos retours](https://github.com/ruby/ruby/wiki/How-To-Report) ! ## Autres changements notables depuis la version 2.3 diff --git a/fr/news/_posts/2016-12-25-ruby-2-4-0-released.md b/fr/news/_posts/2016-12-25-ruby-2-4-0-released.md index f784cf294e..63d57850b8 100644 --- a/fr/news/_posts/2016-12-25-ruby-2-4-0-released.md +++ b/fr/news/_posts/2016-12-25-ruby-2-4-0-released.md @@ -90,7 +90,7 @@ Ruby 2.4 ajoute la backtrace au rapport, ainsi qu'une liste des threads dépendants. Nous vous invitons à essayer tous ces changements apportés par Ruby 2.4.0-rc1 -et à nous [faire vos retours](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) ! +et à nous [faire vos retours](https://github.com/ruby/ruby/wiki/How-To-Report) ! ## Autres changements notables depuis la version 2.3 diff --git a/id/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/id/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index fa9a7e710f..c9eb97f840 100644 --- a/id/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/id/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -13,7 +13,7 @@ Ruby 2.4.0-preview1 adalah *preview* pertama dari Ruby 2.4.0. Preview1 ini dirilis lebih awal dari biasanya karena versi ini mencakup banyak fitur baru dan perbaikan. Jangan ragu untuk -[mengirimkan umpan balik](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[mengirimkan umpan balik](https://github.com/ruby/ruby/wiki/How-To-Report) karena Anda masih bisa mengubah fitur-fitur ini. ## [Menyatukan Fixnum dan Bignum ke dalam Integer](https://bugs.ruby-lang.org/issues/12005) @@ -67,7 +67,7 @@ mencakup informasi yang cukup untuk *debugging*. *dependency*-nya. Coba dan nikmati memprogram dengan Ruby 2.4.0-preview1, dan -[kirimkan umpan balik ke kami](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[kirimkan umpan balik ke kami](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Perubahan Penting sejak 2.3 diff --git a/id/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md b/id/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md index eaf3c8e2e5..f640a65486 100644 --- a/id/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md +++ b/id/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md @@ -12,7 +12,7 @@ Kami dengan senang hati mengumumkan rilis dari Ruby 2.4.0-preview2. Ruby 2.4.0-preview2 adalah *preview* kedua dari Ruby 2.4.0. Preview2 ini dirilis untuk mendapatkan umpan balik dari komunitas. Jangan ragu untuk -[mengirimkan umpan balik](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[mengirimkan umpan balik](https://github.com/ruby/ruby/wiki/How-To-Report) karena Anda masih dapat mengubah fitur-fitur ini. ## [Menyatukan Fixnum dan Bignum ke dalam Integer](https://bugs.ruby-lang.org/issues/12005) @@ -69,7 +69,7 @@ Pendeteksi *deadlock* Ruby 2.4 menunjukkan *thread* dengan *backtrace* dan *dependency thread*. Coba dan nikmati memprogram dengan Ruby 2.4.0-preview2, dan -[kirim umpan balik ke kami](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[kirim umpan balik ke kami](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Perubahan Penting sejak 2.3 diff --git a/id/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md b/id/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md index af0fe277e1..8225047da9 100644 --- a/id/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md +++ b/id/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md @@ -12,7 +12,7 @@ Kami dengan senang hati mengumumkan rilis dari Ruby 2.4.0-preview3. Ruby 2.4.0-preview3 adalah *preview* ketiga dari Ruby 2.4.0. Preview3 ini dirilis untuk mendapatkan umpan balik dari komunitas. Jangan ragu untuk -[mengirimkan umpan balik](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[mengirimkan umpan balik](https://github.com/ruby/ruby/wiki/How-To-Report) karena Anda masih bisa mengubah fitur-fitur ini. ## [Memperkenalkan penyempurnaan hash table oleh Vladimir Makarov](https://bugs.ruby-lang.org/issues/12142) @@ -87,7 +87,7 @@ tidak mengandung cukup informasi untuk *debugging*. *backtrace* dan *dependency*-nya. Coba dan nikmati memprogram dengan Ruby 2.4.0-preview3, dan -[kirimkan umpan balik ke kami](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[kirimkan umpan balik ke kami](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Perubahan penting lainnya sejak 2.3 diff --git a/id/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md b/id/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md index 72d52a899a..49afe24dd4 100644 --- a/id/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md +++ b/id/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md @@ -12,7 +12,7 @@ Kami dengan senang hati mengumumkan rilis dari Ruby 2.4.0-rc1. Ruby 2.4.0-rc1 adalah kandidat rilis pertama dari Ruby 2.4.0. rc1 ini dirilis untuk mendapatkan umpan balik dari komunitas. Jangan ragu untuk -[mengirimkan umpan balik](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[mengirimkan umpan balik](https://github.com/ruby/ruby/wiki/How-To-Report) karena Anda masih bisa memperbaiki fitur-fitur. ## [Memperkenalkan penyempurnaan hash table (oleh Vladimir Makarov)](https://bugs.ruby-lang.org/issues/12142) @@ -85,7 +85,7 @@ tidak mengandung cukup informasi untuk *debugging*. *backtrace* dan *dependency*-nya. Coba dan nikmati memprogram dengan Ruby 2.4.0-rc1, dan [kirimkan umpan balik ke -kami](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +kami](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Perubahan penting lainnya sejak 2.3 diff --git a/it/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md b/it/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md index 88fdd5fe8b..e162995a3e 100644 --- a/it/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md +++ b/it/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md @@ -11,7 +11,7 @@ Siamo lieti di annunciare la release di Ruby 2.4.0-preview2. Ruby 2.4.0-preview2 è la prima anteprima di Ruby 2.4.0. Questa preview2 è rilasciata per avere dei feedback dalla community. -[Mandate pure feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[Mandate pure feedback](https://github.com/ruby/ruby/wiki/How-To-Report) poiché potete ancora influenzare le features. ## [Fixnum e Bignum unificati in Integer](https://bugs.ruby-lang.org/issues/12005) @@ -70,7 +70,7 @@ La deadlock detection di Ruby 2.4's mostra i thread con il loro backtrace e i thread dipendenti. Dilettatevi nella programmazione con Ruby 2.4.0-preview2 e -[mandateci feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[mandateci feedback](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Modifiche importanti dalla 2.3 diff --git a/ja/dev/index.md b/ja/dev/index.md index f33422bc0e..feb685d0fc 100644 --- a/ja/dev/index.md +++ b/ja/dev/index.md @@ -9,7 +9,7 @@ lang: ja ## Wiki -Rubyの開発に関連する文書は現在主に[Redmine(問題追跡システム)のWiki][1]に集められています。 +Rubyの開発に関連する文書は現在主に[GitHubのWiki][1]に集められています。 ## 質疑応答 @@ -20,7 +20,7 @@ Rubyの開発についての議論は、主に、メーリングリストruby-de Rubyの不具合や機能追加の要望などは[Redmine(問題追跡システム)][2]で管理されています。 -また、[RedmineのWiki][1]では、Rubyの開発を追いかけるにあたって役に立つ情報が集積されています。 そちらも参照してください。 +また、[GitHubのWiki][1]では、Rubyの開発を追いかけるにあたって役に立つ情報が集積されています。 そちらも参照してください。 ## ソースコード @@ -49,7 +49,7 @@ Posted by usa on 13 Aug 2008 -[1]: https://bugs.ruby-lang.org/projects/ruby/wiki +[1]: https://github.com/ruby/ruby/wiki [2]: https://bugs.ruby-lang.org/ [3]: {{ site.data.downloads.nightly_snapshot.url.gz }} [4]: {{ site.data.downloads.stable_snapshots[0].url.gz }} diff --git a/ja/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md b/ja/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md index 30139227f2..0de7953b8f 100644 --- a/ja/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md +++ b/ja/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md @@ -11,7 +11,7 @@ Ruby 2.4.0-preview3がリリースされました. これはRuby 2.4.0に向けた3番目のプレビューリリースになります。 プレビューリリースとはRubyコミュニティのフィードバックを得るためにリリースされています。 -何かお気づきの際は、Ruby 2.4.0をよりよくするために[Ruby バグレポートガイドライン](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReportJa)を参考にしてバグレポートや提案を送ってください。 +何かお気づきの際は、Ruby 2.4.0をよりよくするために[Ruby バグレポートガイドライン](https://github.com/ruby/ruby/wiki/How-To-Report-Ja)を参考にしてバグレポートや提案を送ってください。 ## [Introduce hash table improvement by Vladimir Makarov](https://bugs.ruby-lang.org/issues/12142) @@ -77,7 +77,7 @@ Ruby 2.4's deadlock detection shows threads with their backtrace and dependent threads. Try and enjoy programming with Ruby 2.4.0-preview3, and -[send us feedback](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[send us feedback](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Other notable changes since 2.3 diff --git a/ko/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/ko/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index c0c9ce96ae..871ff6c1a1 100644 --- a/ko/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/ko/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -13,7 +13,7 @@ lang: ko 이 프리뷰는 많은 새 기능과 개선들을 포함하고 있어서 이례적으로 이르게 릴리스 되었습니다. 아직 기능이 확정되지 않았으니, 자유롭게 -[피드백](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)을 보내주세요. +[피드백](https://github.com/ruby/ruby/wiki/How-To-Report)을 보내주세요. ## [Fixnum과 Bignum을 Integer로 통합](https://bugs.ruby-lang.org/issues/12005) @@ -63,7 +63,7 @@ ASCII 대/소문자 대응 대신에 유니코드 대/소문자 대응을 지원 루비 2.4의 교착상태 탐지는 스레드의 백트레이스와 의존하고 있는 스레드에 대한 정보를 보여주게 됩니다. 루비 2.4.0-preview1로 즐겁게 프로그램을 작성해보세요. -그리고 여러분의 [느낀 점을 알려주세요](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +그리고 여러분의 [느낀 점을 알려주세요](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 2.3 이후의 주목할 만한 변경 diff --git a/ko/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md b/ko/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md index eaff49ec65..ebfaefd94a 100644 --- a/ko/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md +++ b/ko/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md @@ -11,7 +11,7 @@ lang: ko 루비 2.4.0-preview2은 루비 2.4.0의 두 번째 프리뷰입니다. 이 프리뷰는 커뮤니티의 반응을 살펴보기 위해 릴리스되었습니다. -기능에서 혼란을 느낀다면 부담없이 [피드백](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)을 보내주세요. +기능에서 혼란을 느낀다면 부담없이 [피드백](https://github.com/ruby/ruby/wiki/How-To-Report)을 보내주세요. ## [Fixnum과 Bignum을 Integer로 통합](https://bugs.ruby-lang.org/issues/12005) @@ -65,7 +65,7 @@ ASCII 대/소문자 대응 대신에 유니코드 대/소문자 대응을 지원 루비 2.4의 교착상태 탐지는 스레드의 백트레이스와 의존하고 있는 스레드에 대한 정보를 보여주게 됩니다. 루비 2.4.0-preview2로 즐겁게 프로그램을 작성해보세요. -그리고 여러분이 [느낀 점을 알려주세요](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +그리고 여러분이 [느낀 점을 알려주세요](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 2.3 이후의 주목할 만한 변경 diff --git a/ko/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md b/ko/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md index 426f6bfc60..08bd6f7719 100644 --- a/ko/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md +++ b/ko/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md @@ -11,7 +11,7 @@ lang: ko 루비 2.4.0-preview3은 루비 2.4.0의 세 번째 프리뷰입니다. 이 프리뷰는 커뮤니티의 반응을 살펴보기 위해 릴리스되었습니다. -기능에서 혼란을 느낀다면 부담없이 [피드백](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)을 보내주세요. +기능에서 혼란을 느낀다면 부담없이 [피드백](https://github.com/ruby/ruby/wiki/How-To-Report)을 보내주세요. ## [Vladimir Makarov의 해시 테이블 개선을 도입](https://bugs.ruby-lang.org/issues/12142) @@ -75,7 +75,7 @@ ASCII 대/소문자 대응 대신에 유니코드 대/소문자 대응을 지원 루비 2.4의 교착상태 탐지는 스레드의 백트레이스와 의존하고 있는 스레드에 대한 정보를 보여주게 됩니다. 루비 2.4.0-preview3으로 즐겁게 프로그램을 작성해보세요. -그리고 여러분이 [느낀 점을 알려주세요](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +그리고 여러분이 [느낀 점을 알려주세요](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 2.3 이후의 주목할 만한 변경 diff --git a/ko/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md b/ko/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md index 6a388d24ce..e95f34a672 100644 --- a/ko/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md +++ b/ko/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md @@ -12,7 +12,7 @@ lang: ko 루비 2.4.0-rc1은 루비 2.4.0의 첫 번째 릴리스 후보입니다. rc1은 커뮤니티의 피드백을 받기 위해 릴리스되었습니다. 아직 기능을 고칠 수 있으니 자유롭게 -[피드백을 보내주세요](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport). +[피드백을 보내주세요](https://github.com/ruby/ruby/wiki/How-To-Report). ## [해시 테이블의 성능을 향상시켰습니다(Vladimir Makarov)](https://bugs.ruby-lang.org/issues/12142) @@ -84,7 +84,7 @@ Fixnum이나 Bignum 클래스를 변경하는 모든 C 확장을 고쳐야 합 스레드를 보여줍니다. 루비 2.4.0-rc1로 프로그래밍 해보고 -[의견을 보내주세요](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[의견을 보내주세요](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 그 외의 중요한 2.3 이후의 변경 사항 diff --git a/pl/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/pl/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index 85a1b757e9..4b51eece83 100644 --- a/pl/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/pl/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -12,7 +12,7 @@ Jest nam miło ogłosić wydanie Rubiego 2.4.0-preview1. Ruby 2.4.0-preview1 jest pierwszym wydaniem wstępnym Rubiego 2.4.0. Wydanie preview1 pojawiło się wcześniej niż zwykle ponieważ zawiera dużo usprawnień oraz funkcjonalności. -[Podziel się](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[Podziel się](https://github.com/ruby/ruby/wiki/How-To-Report) z nami swoimi uwagami poniważ Ruby 2.4.0 jest nadal w trakcie rozwoju ## [Połączenie Fixnum i Bignum do klasy Integer](https://bugs.ruby-lang.org/issues/12005) @@ -64,7 +64,7 @@ na debugowanie. Od Rubiego 2.4 pokazywane będą zrzuty stosu oraz zależności oczekujących wątków. Wypróbuj Rubiego 2.4.0-preview1 i -[podziel się](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[podziel się](https://github.com/ruby/ruby/wiki/How-To-Report) z nami swoimi spostrzeżeniami! ## Znaczące zmiany w stosunku do wersji 2.3 diff --git a/pt/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/pt/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index 9152f01f5b..e1c3e028ec 100644 --- a/pt/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/pt/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -13,7 +13,7 @@ Ruby 2.4.0-preview1 é o primeiro *preview* do Ruby 2.4.0. Este preview1 está sendo lançado antes do usual porque ele inclui várias funcionalidades novas e melhorias. Sinta-se a vontade para -[enviar comentários](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[enviar comentários](https://github.com/ruby/ruby/wiki/How-To-Report) já que você ainda pode mudar as funcionalidades. @@ -67,7 +67,7 @@ A detecção de *deadlock* no Ruby 2.4 mostrar *threads* com seu histórico e *threads* dependentes. Experimente e aproveite programando com Ruby 2.4.0-preview1, e -[nos envie comentários](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[nos envie comentários](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Mudanças notáveis desde 2.3 diff --git a/pt/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md b/pt/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md index c10cff2be9..725a3dbdf5 100644 --- a/pt/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md +++ b/pt/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md @@ -12,7 +12,7 @@ Estamos satisfeitos em anunciar o lançamento do Ruby 2.4.0-preview2. Ruby 2.4.0-preview2 é o segundo *preview* do Ruby 2.4.0. Este preview2 está sendo lançado para receber comentários da comunidade. Sinta-se a vontade para -[enviar comentários](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[enviar comentários](https://github.com/ruby/ruby/wiki/How-To-Report) sendo que você ainda pode mudar as funcionalidades. ## [Unificação de Fixnum e Bignum em Integer](https://bugs.ruby-lang.org/issues/12005) @@ -69,7 +69,7 @@ A detecção de *deadlock* no Ruby 2.4 mostrar *threads* com seu histórico e *threads* dependentes. Experimente e aproveite programando com Ruby 2.4.0-preview2, e -[nos envie comentários](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[nos envie comentários](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Mudanças notáveis desde de 2.3 diff --git a/pt/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md b/pt/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md index 25003389a4..31c53d63dd 100644 --- a/pt/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md +++ b/pt/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md @@ -13,7 +13,7 @@ A versão 2.4.0-preview3 do Ruby é a terceira *preview* do Ruby 2.4.0, lançada com o fim de obter *feedback* da comunidade. Poderão -[enviar *feedback*](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[enviar *feedback*](https://github.com/ruby/ruby/wiki/How-To-Report) uma vez que ainda podem influenciar das funcionalidades. ## [Introdução de melhorias nas hash tables por Vladimir Makarov](https://bugs.ruby-lang.org/issues/12142) @@ -78,7 +78,7 @@ inclui informação suficiente para depuração. A deteção de *deadlocks* no Ruby 2.4 mostra *threads* com o seu *backtrace* e *threads* dependentes. Experimente e desfrute a programação com o Ruby 2.4.0-preview3 e -[envie-nos o seu *feedback*](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[envie-nos o seu *feedback*](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Outras alterações importantes desde a versão 2.3 diff --git a/ru/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/ru/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index e61bf7fc8c..338c0fac2a 100644 --- a/ru/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/ru/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -13,7 +13,7 @@ Ruby 2.4.0-preview1 – это первое превью Ruby 2.4.0. Этот preview1 вышел раньше, чем обычно, так как он содержит очень много нововведений и улучшений. Пожалуйста, присылайте -[отзывы](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport), +[отзывы](https://github.com/ruby/ruby/wiki/How-To-Report), так как вы все еще можете повлиять на нововведения. ## [Объединение Fixnum и Bignum в Integer](https://bugs.ruby-lang.org/issues/12005) @@ -65,7 +65,7 @@ Ruby игнорирует ошибки в тредах, если другой т бектрейсами и зависимыми потоками. Пробуйте и наслаждайтесь программированием на Ruby 2.4.0-preview1, и присылайте, -пожалуйста, нам [отзывы](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +пожалуйста, нам [отзывы](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Значительные изменения от версии 2.3 diff --git a/vi/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/vi/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index 6c592e7dcf..459ae703d9 100644 --- a/vi/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/vi/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -13,7 +13,7 @@ Chúng tôi rất hân hạnh được thông báo về việc phát hành Ruby Phiên bản Ruby 2.4.0-preview1 là phiên bản preview đầu tiên của Ruby 2.4.0. Bản preview1 lần này được phát hành sớm hơn so với thông thường vì nó bao gồm rất nhiều chức năng và cải tiến. Mọi người đừng ngại -[phản hồi](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) lại cho +[phản hồi](https://github.com/ruby/ruby/wiki/How-To-Report) lại cho chúng tôi về phiên bản này, vì các chức năng vẫn có thể được thay đổi và cập nhật. ## [Hợp nhất Fixnum và Bignum vào Integer](https://bugs.ruby-lang.org/issues/12005) @@ -69,7 +69,7 @@ khi phát hiện ra Deadlock, Ruby sẽ hiển thị các thread cùng với bac và các threads liên quan. Mời mọi người dùng thử và cảm nhận việc lập trình với Ruby 2.4.0-preview1, -đồng thời [gửi phản hồi cho chúng tôi](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +đồng thời [gửi phản hồi cho chúng tôi](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Thay đổi đáng chú ý so với phiên bản 2.3 diff --git a/vi/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md b/vi/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md index b541434b99..77da4206f9 100644 --- a/vi/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md +++ b/vi/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md @@ -12,7 +12,7 @@ Chúng tôi rất hân hạnh được thông báo về việc phát hành Ruby Phiên bản 2.4.0-rc1 là phiên bản release candidate đầu tiên của Ruby 2.4.0. Phiên bản rc1 này được phát hành để nhận phản hồi từ cộng đồng. Hãy thoải mái -[gửi phản hồi](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport) +[gửi phản hồi](https://github.com/ruby/ruby/wiki/How-To-Report) vì bạn vẫn có thể sửa những tính năng. ## [Giới thiệu cải tiến hash table (bởi Vladimir Makarov)](https://bugs.ruby-lang.org/issues/12142) @@ -76,7 +76,7 @@ Ruby đã có cơ chế phát hiện deadlock của các threads, tuy nhiên cá Từ bản 2.4 trở đi, khi phát hiện ra Deadlock, Ruby sẽ hiển thị các thread cùng với backtrace và các threads liên quan. Mời mọi người dùng thử và cảm nhận việc lập trình với Ruby 2.4.0-rc1, và -[gửi phản hồi cho chúng tôi](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +[gửi phản hồi cho chúng tôi](https://github.com/ruby/ruby/wiki/How-To-Report)! ## Thay đổi đáng chú ý so với phiên bản 2.3 diff --git a/zh_cn/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/zh_cn/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index 88551e4d3b..7b34cfc1b3 100644 --- a/zh_cn/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/zh_cn/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -11,7 +11,7 @@ lang: zh_cn Ruby 2.4.0-preview1 是 Ruby 2.4.0 的首个预览版。 这个预览版的发布比平常早一点,因为它包括了很多新功能和改进。 -敬请给我们[反馈](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport),因为你还可以改变一些功能。 +敬请给我们[反馈](https://github.com/ruby/ruby/wiki/How-To-Report),因为你还可以改变一些功能。 ## [统一 Fixnum 和 Bignum 为 Integer](https://bugs.ruby-lang.org/issues/12005) @@ -53,7 +53,7 @@ Ruby 忽视线程中的异常,除非另一个线程显式地执行直至结束 Ruby 在线程等待地时候会进行死锁检查,但是检查的结果没有足够的信息用来调试。 Ruby 2.4 死锁检查会显示他们的栈信息和依赖线程。 -尝试并且享受用与 Ruby 2.4.0-preview1 的编码时光,有任何问题,敬请[反馈](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +尝试并且享受用与 Ruby 2.4.0-preview1 的编码时光,有任何问题,敬请[反馈](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 自 2.3 起显著的改变 diff --git a/zh_cn/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md b/zh_cn/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md index eade7cda4e..38770d7add 100644 --- a/zh_cn/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md +++ b/zh_cn/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md @@ -11,7 +11,7 @@ lang: zh_cn Ruby 2.4.0-rc1 是 Ruby 2.4.0 的第一个候选版本。 发布 rc1 版本是为了从社区得带更多反馈。 -请[发送反馈](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport), +请[发送反馈](https://github.com/ruby/ruby/wiki/How-To-Report), 因为你可以帮助修复这些功能。 ## [哈希表的提升(由 Vladimir Makarov 提供)](https://bugs.ruby-lang.org/issues/12142) @@ -69,7 +69,7 @@ Ruby 忽视线程中的异常,除非另一个线程显式地执行直至结束 Ruby 在线程等待地时候会进行死锁检查,但是检查的结果没有足够的信息用来调试。 Ruby 2.4 死锁检查会显示他们的栈信息和依赖线程。 -尝试并且享受用与 Ruby 2.4.0-rc1 的编码时光,有任何问题,敬请[反馈](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +尝试并且享受用与 Ruby 2.4.0-rc1 的编码时光,有任何问题,敬请[反馈](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 其他自 2.3 起显著的改变 diff --git a/zh_tw/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md b/zh_tw/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md index 7fc366c4cd..aa432e3d36 100644 --- a/zh_tw/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md +++ b/zh_tw/news/_posts/2016-06-20-ruby-2-4-0-preview1-released.md @@ -11,7 +11,7 @@ lang: zh_tw Ruby 2.4.0-preview1 是 Ruby 2.4.0 的首個預覽版。 這個預覽版發佈的比平常早,因為包含了許多新功能和改良。 -有任何想修改的功能,敬請給我們[建議](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)。 +有任何想修改的功能,敬請給我們[建議](https://github.com/ruby/ruby/wiki/How-To-Report)。 ## [Fixnum 和 Bignum 統整為 Integer](https://bugs.ruby-lang.org/issues/12005) @@ -52,7 +52,7 @@ Ruby 2.4 還包括以下效能優化及語法變更: Ruby 在等待線程執行時會進行死鎖檢查,但檢查結果沒有足夠的資訊來除錯。 Ruby 2.4 的死鎖檢查會顯示錯誤資訊及相依的線程。 -請嘗試並享受與 Ruby 2.4.0-preview1 的編碼時光,有任何問題敬請[不吝指出](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +請嘗試並享受與 Ruby 2.4.0-preview1 的編碼時光,有任何問題敬請[不吝指出](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 自 2.3 起重要的變化 diff --git a/zh_tw/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md b/zh_tw/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md index de6228ed2a..d413adb705 100644 --- a/zh_tw/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md +++ b/zh_tw/news/_posts/2016-09-08-ruby-2-4-0-preview2-released.md @@ -11,7 +11,7 @@ lang: zh_tw Ruby 2.4.0-preview2 是 Ruby 2.4.0 的第二個預覽版。 為了獲得社群的寶貴意見發佈了此版本。 -請不吝[至此反饋](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport),你仍可以對將來的功能做出改變。 +請不吝[至此反饋](https://github.com/ruby/ruby/wiki/How-To-Report),你仍可以對將來的功能做出改變。 ## [Fixnum 和 Bignum 統整為 Integer](https://bugs.ruby-lang.org/issues/12005) @@ -52,7 +52,7 @@ Ruby 2.4 還包括以下效能優化及語法變更: Ruby 在等待線程執行時會進行死鎖檢查,但檢查結果沒有足夠的資訊來除錯。 Ruby 2.4 的死鎖檢查會顯示錯誤資訊及相依的線程。 -請嘗試並享受與 Ruby 2.4.0-preview2 的編碼時光,有任何問題敬請[不吝指出](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +請嘗試並享受與 Ruby 2.4.0-preview2 的編碼時光,有任何問題敬請[不吝指出](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 自 2.3 起重要的變化 diff --git a/zh_tw/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md b/zh_tw/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md index 3ac1ce0b3e..8a03ce9cc3 100644 --- a/zh_tw/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md +++ b/zh_tw/news/_posts/2016-11-09-ruby-2-4-0-preview3-released.md @@ -11,7 +11,7 @@ lang: zh_tw Ruby 2.4.0-preview3 是 Ruby 2.4.0 的第三個預覽版。 為了獲得社群的寶貴意見所以發佈了 preview3。 -請不吝[至此反饋](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport),您仍可以對將來的功能做出改變。 +請不吝[至此反饋](https://github.com/ruby/ruby/wiki/How-To-Report),您仍可以對將來的功能做出改變。 ## [Vladimir Makarov 改良了哈希表](https://bugs.ruby-lang.org/issues/12142) @@ -60,7 +60,7 @@ Ruby 2.4 還包括以下效能優化及語法變更: Ruby 在等待線程執行時會進行死鎖檢查,但檢查結果沒有足夠的資訊來除錯。 Ruby 2.4 的死鎖檢查會顯示錯誤資訊及相依的線程。 -請嘗試並享受與 Ruby 2.4.0-preview3 的編碼時光,有任何問題敬請[不吝指出](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +請嘗試並享受與 Ruby 2.4.0-preview3 的編碼時光,有任何問題敬請[不吝指出](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 自 2.3 起重要的變化 diff --git a/zh_tw/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md b/zh_tw/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md index 28cd74a0a4..7b2f1737d7 100644 --- a/zh_tw/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md +++ b/zh_tw/news/_posts/2016-12-12-ruby-2-4-0-rc1-released.md @@ -11,7 +11,7 @@ lang: zh_tw Ruby 2.4.0-rc1 是 Ruby 2.4.0 的第一個候選版本。 為了獲得社群的寶貴意見所以發佈了 rc1。 -請不吝[至此反饋](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport),您仍可以對將來的功能做出改變。 +請不吝[至此反饋](https://github.com/ruby/ruby/wiki/How-To-Report),您仍可以對將來的功能做出改變。 ## [Vladimir Makarov 改良了哈希表](https://bugs.ruby-lang.org/issues/12142) @@ -60,7 +60,7 @@ Ruby 2.4 還包括以下效能優化及語法變更: Ruby 在等待線程執行時會進行死鎖檢查,但檢查結果沒有足夠的資訊來除錯。 Ruby 2.4 的死鎖檢查會顯示錯誤資訊及相依的線程。 -請嘗試並享受與 Ruby 2.4.0-rc1 的編碼時光,有任何問題敬請[不吝指出](https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReport)! +請嘗試並享受與 Ruby 2.4.0-rc1 的編碼時光,有任何問題敬請[不吝指出](https://github.com/ruby/ruby/wiki/How-To-Report)! ## 自 2.3 起重要的變化 From 2f17b743d9bcd72d2717b7b1f09765d940f499c4 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 26 Jun 2023 14:29:46 +0900 Subject: [PATCH 039/607] Initial post for CVE-2023-36617 --- .../2023-06-29-redos-in-uri-CVE-2023-36617.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md diff --git a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md new file mode 100644 index 0000000000..6be1139eb9 --- /dev/null +++ b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "CVE-2023-36617: ReDoS vulnerability in URI" +author: "hsbt" +translator: +date: 2023-06-29 01:00:00 +0000 +tags: security +lang: en +--- + +We have released the uri gem version 0.12.1, 0.10.2 that has a security fix for a ReDoS vulnerability. +This vulnerability has been assigned the CVE identifier [CVE-2023-36617](https://www.cve.org/CVERecord?id=CVE-2023-36617). + +## Details + +A ReDoS issue was discovered in the URI component through 0.12.1 for Ruby. The URI parser mishandles invalid URLs that have specific characters. There is an increase in execution time for parsing strings to URI objects with rfc2396_parser.rb and rfc3986_parser.rb. + +NOTE: this issue exists becuse of an incomplete fix for [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/28/redos-in-uri-cve-2023-28755/). + +The `uri` gem version 0.12.1 and all versions prior 0.12.1 are vulnerable for this vulnerability. + +## Recommended action + +We recommend to update the `uri` gem to 0.12.2. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: + +* For Ruby 3.0: Update to `uri` 0.10.2 +* For Ruby 3.1 and 3.2: Update to `uri` 0.12.2 + +You can use `gem update uri` to update it. If you are using bundler, please add `gem "uri", ">= 0.12.2"` (or other version mentioned above) to your `Gemfile`. + +## Affected versions + +* uri gem 0.12.1 or before + +## Credits + +Thanks to [ooooooo_q](https://hackerone.com/ooooooo_q) for discovering this issue. + +Thanks to [nobu](https://github.com/nobu) for fixing this issue. + +## History + +* Originally published at 2023-06-29 01:00:00 (UTC) From fdde37939c6c832372ae045f0850d830667d15b9 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 29 Jun 2023 10:13:13 +0900 Subject: [PATCH 040/607] Fix a wrong version --- en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index 6be1139eb9..a590f1d456 100644 --- a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -23,7 +23,7 @@ The `uri` gem version 0.12.1 and all versions prior 0.12.1 are vulnerable for th We recommend to update the `uri` gem to 0.12.2. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: -* For Ruby 3.0: Update to `uri` 0.10.2 +* For Ruby 3.0: Update to `uri` 0.10.3 * For Ruby 3.1 and 3.2: Update to `uri` 0.12.2 You can use `gem update uri` to update it. If you are using bundler, please add `gem "uri", ">= 0.12.2"` (or other version mentioned above) to your `Gemfile`. From 9f7308a48e5ee5881d8cd01ca3e72b2a43a56cd4 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 29 Jun 2023 10:18:59 +0900 Subject: [PATCH 041/607] Update latest dependencies in lockfile --- Gemfile.lock | 51 +++++++++++++++++++++++++++------------------------ 1 file changed, 27 insertions(+), 24 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 3235b504b6..bfadc88918 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -5,13 +5,15 @@ GEM addressable (2.8.4) public_suffix (>= 2.0.2, < 6.0) afm (0.2.2) - async (2.5.0) + async (2.6.2) console (~> 1.10) + fiber-annotation io-event (~> 1.1) timers (~> 4.1) colorator (1.1.0) concurrent-ruby (1.2.2) - console (1.16.2) + console (1.17.2) + fiber-annotation fiber-local crass (1.0.6) em-websocket (0.5.3) @@ -21,11 +23,12 @@ GEM ffi (>= 1.15.0) eventmachine (1.2.7) ffi (1.15.5) + fiber-annotation (0.2.0) fiber-local (1.0.0) forwardable-extended (2.6.0) - google-protobuf (3.22.3) - google-protobuf (3.22.3-arm64-darwin) - google-protobuf (3.22.3-x86_64-linux) + google-protobuf (3.23.3) + google-protobuf (3.23.3-arm64-darwin) + google-protobuf (3.23.3-x86_64-linux) hashery (2.1.2) html-proofer (5.0.7) addressable (~> 2.3) @@ -37,9 +40,9 @@ GEM yell (~> 2.0) zeitwerk (~> 2.5) http_parser.rb (0.8.0) - i18n (1.12.0) + i18n (1.14.1) concurrent-ruby (~> 1.0) - io-event (1.1.7) + io-event (1.2.2) jekyll (4.3.2) addressable (~> 2.4) colorator (~> 1.0) @@ -70,14 +73,14 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) - mini_portile2 (2.8.1) - minitest (5.18.0) - nokogiri (1.14.3) - mini_portile2 (~> 2.8.0) + mini_portile2 (2.8.2) + minitest (5.18.1) + nokogiri (1.15.2) + mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.14.3-arm64-darwin) + nokogiri (1.15.2-arm64-darwin) racc (~> 1.4) - nokogiri (1.14.3-x86_64-linux) + nokogiri (1.15.2-x86_64-linux) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) @@ -89,23 +92,23 @@ GEM ruby-rc4 ttfunk public_suffix (5.0.1) - racc (1.6.2) + racc (1.7.1) rainbow (3.1.1) rake (13.0.6) rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) rexml (3.2.5) - rouge (4.1.0) + rouge (4.1.2) ruby-rc4 (0.1.5) safe_yaml (1.0.5) - sass-embedded (1.62.0) - google-protobuf (~> 3.21) - rake (>= 10.0.0) - sass-embedded (1.62.0-arm64-darwin) - google-protobuf (~> 3.21) - sass-embedded (1.62.0-x86_64-linux-gnu) - google-protobuf (~> 3.21) + sass-embedded (1.63.6) + google-protobuf (~> 3.23) + rake (>= 13.0.0) + sass-embedded (1.63.6-arm64-darwin) + google-protobuf (~> 3.23) + sass-embedded (1.63.6-x86_64-linux-gnu) + google-protobuf (~> 3.23) slop (4.10.1) spidr (0.7.0) nokogiri (~> 1.3) @@ -133,7 +136,7 @@ GEM rexml (~> 3.2) webrick (1.8.1) yell (2.2.2) - zeitwerk (2.6.7) + zeitwerk (2.6.8) PLATFORMS arm64-darwin-22 @@ -149,4 +152,4 @@ DEPENDENCIES validate-website (~> 1.6) BUNDLED WITH - 2.4.10 + 2.4.14 From 6f0730684de95fcbc421a8096d56e44e889be006 Mon Sep 17 00:00:00 2001 From: gaojun Date: Mon, 15 May 2023 12:19:55 +0800 Subject: [PATCH 042/607] Translate Ruby 3.3.0-preview1 Released(zh_cn) --- ...2023-05-12-ruby-3-3-0-preview1-released.md | 161 ++++++++++++++++++ 1 file changed, 161 insertions(+) create mode 100644 zh_cn/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md diff --git a/zh_cn/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md b/zh_cn/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md new file mode 100644 index 0000000000..a2e366e1c4 --- /dev/null +++ b/zh_cn/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -0,0 +1,161 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview1 已发布" +author: "naruse" +translator: "GAO Jun" +date: 2023-05-12 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview1" | first %} + +我们很高兴地宣布 Ruby {{ release.version }} 发布。Ruby 3.3 新增了纯 Ruby 实现的 JIT 编译器 RJIT;使用 Lrama 作为解析生成器;另有许多性能改进,尤其是 YJIT。 + +## RJIT + +* 引入了纯 Ruby 的 JIT 编译器 RJIT 并替代 MJIT。 + * RJIT 仅支持 x86\_64 架构上的 Unix 平台。 + * 不同于 MJIT,RJIT在运行时不需要 C 编译器。 +* RJIT 目前仅用于实验目的。 + * 您在生产环境中应当继续使用 YJIT。 +* 如果您有兴趣为 Ruby 开发 JIT,请查看[k0kubun 在 RubyKaigi 第 3 天 中的演讲](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)。 + +## 使用 Lrama 替代 Bison + +* 使用 [Lrama LALR 解析生成器](https://github.com/yui-knk/lrama) 替换 Bison [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * 如果您有兴趣,请参阅 [Ruby 解析器的未来愿景](https://rubykaigi.org/2023/presentations/spikeolaf.html) + +## YJIT + +* 相对于 3.2 有显著的性能提升 + * 改进了 splat 和 rest 参数支持。 + * 虚拟机的栈操作分配了寄存器。 + * 更多带有可选参数的调用被编译。 + * 特别优化了 `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===`。 + * 拥有复杂对象形状的实例变量不再用于解析器执行。 +* 编译代码使用的元数据使用更少的内存。 +* 改进 ARM64 中的代码生成。 +* 可以在暂停模式下启动 YJIT,并后续手动启动 + * `--yjit-pause` 和 `RubyVM::YJIT.resume` + * 这可以用来在应用程序启动完成后,仅启用 YJIT 一次 +* 退出跟踪选项现在支持采样 + * `--trace-exits-sample-rate=N` +* 多个错误修复 + + + +## 其他值得关注的新功能 + +### 语言 + + + +## 性能提升 + +* 根据对象形状,优化 `defined?(@ivar)`。 + +## 自 3.2 以来,其他值得注意的变化 + + + +## 兼容性问题 + +注意:不包括 bug 修复。 + +### 删除的常量 + +删除了以下已废弃的常量。 + + + +### 删除的方法 + +删除了以下已废除的方法。 + + + +## 标准库兼容性问题 + +### `ext/readline` 已退役 + +* 我们有了纯 Ruby 实现的 `reline`,兼容 `ext/readline` API。未来我们将依赖 `reline`。如果您需要使用 `ext/readline`,可以通过 rubygems.org 进行安装 `gem install readline-ext`。 +* 我们不再需要安装类似 `libreadline` 或 `libedit` 这样的库了。 + +## C API 更新 + +### 更新的 C API + +更新了以下 API。 + + + +### 已移除的 C API + +移除了以下废弃的 API。 + + + +## 标准库更新 + + + +更新了以下默认 gems。 + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.7 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.6.4 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.3 +* stringio 3.0.7 +* strscan 3.0.7 +* syntax_suggest 1.0.4 +* time 0.2.2 +* timeout 0.3.2 +* uri 0.12.1 + +更新了以下绑定 gems。 + +* minitest 5.18.0 +* rbs 3.1.0 +* typeprof 0.21.7 +* debug 1.8.0 + +有关默认 gems 和 绑定 gems 的细节,可以参考 GitHub 上的发布,例如 [Logger](https://github.com/ruby/logger/releases) 或相应的变更日志。 + +更多详情,可参见 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +或 [提交日志](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})。 + +自 Ruby 3.2.0 以来,[{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+), 删除 {{ release.stats.deletions }} 行(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)! + +## 下载 + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Ruby是什么 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发,现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是Web开发领域。 From 2f29e5e08af020c244c258c8b88486a5391c5d8c Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Thu, 18 May 2023 15:32:20 +0700 Subject: [PATCH 043/607] Translate Ruby 3.2.0 released news post (id) --- .../_posts/2022-12-25-ruby-3-2-0-released.md | 720 ++++++++++++++++++ 1 file changed, 720 insertions(+) create mode 100644 id/news/_posts/2022-12-25-ruby-3-2-0-released.md diff --git a/id/news/_posts/2022-12-25-ruby-3-2-0-released.md b/id/news/_posts/2022-12-25-ruby-3-2-0-released.md new file mode 100644 index 0000000000..c26c8be4fe --- /dev/null +++ b/id/news/_posts/2022-12-25-ruby-3-2-0-released.md @@ -0,0 +1,720 @@ +--- +layout: news_post +title: "Ruby 3.2.0 Dirilis" +author: "naruse" +translator: "meisyal" +date: 2022-12-25 00:00:00 +0000 +lang: id +--- + +{% assign release = site.data.releases | where: "version", "3.2.0" | first %} + +Kami dengan senang hati mengumumkan rilis dari Ruby {{ release.version }}. +Ruby 3.2 menambahkan banyak fitur dan memperbaiki kinerja. + + +## Dukungan WebAssembly berbasis WASI + +Ini adalah sebuah *port* awal dari dukungan *WebAssembly* berbasis *WASI*. +*Port* ini memperbolehkan sebuah *CRuby binary* agar tersedia pada *web browser*, +*Serverless Edge environment*, atau *WebAssembly/WASI embedder* lainnya. +Saat ini, *port* melewatkan rangkaian tes dasar dan *bootstrap* dengan +tidak menggunakan *Thread* API. + +![](https://i.imgur.com/opCgKy2.png) + +### Latar Belakang + +[WebAssembly (Wasm)](https://webassembly.org/) semula diperkenalkan untuk +menjalankan program dengan aman dan cepat pada *web browser*. Sasaran - +menjalankan program secara efisien dengan keamanan pada berbagai macam +*environment* - diinginkan sejak lama tidak hanya oleh *web*, akan tetapi oleh +aplikasi umum. + +[WASI (The WebAssembly System Interface)](https://wasi.dev/) didesain untuk +kasus penggunaan tersebut. Walaupun aplikasi perlu berkomunikasi dengan +sistem operasi, *WebAssembly* berjalan pada sebuah *virtual machine* yang mana +tidak memiliki sebuah *system interface*. *WASI* menstandarkannya. + +Dukungan *WebAssembly/WASI* pada Ruby bermaksud untuk memanfaatkan proyek +tersebut. Ini memperbolehkan pengembang Ruby untuk memprogram aplikasi yang +berjalan pada *platform* yang menjanjikan. + +### Kasus penggunaan + +Dukungan ini mendorong pengembang untuk memanfaatkan *CRuby* pada +*WebAssembly environment*. Sebuah contoh kasus penggunaan adalah dukungan +*CRuby* pada [TryRuby playground](https://try.ruby-lang.org/playground/). +Sekarang Anda bisa mencoba *CRuby* pada *web browser*. + +### Poin teknis + +*WASI* dan *WebAssembly* saat ini memiliki beberapa fitur yang tidak didukung, +seperti mengimplementasikan *Fiber*, *exception*, dan *GC* karena ini masih +terus berkembang dan juga untuk alasan keamanan. Oleh sebab itu, *CRuby* mengisi +gap tersebut dengan menggunakan *Asyncify*, yang mana adalah sebuah teknik +transformasi *binary* untuk mengendalikan eksekusi pada lingkungan pengguna. + +Sebagai tambahan, kami membangun sebuah +[VFS di atas WASI](https://github.com/kateinoigakukun/wasi-vfs/wiki/Getting-Started-with-CRuby) +sehingga kami dapat mengemas aplikasi Ruby ke dalam sebuah berkas .wasm dengan +mudah. Ini membuat distribusi aplikasi Ruby sedikit lebih mudah. + +### Tautan terkait + +* [Add WASI based WebAssembly support #5407](https://github.com/ruby/ruby/pull/5407) +* [An Update on WebAssembly/WASI Support in Ruby](https://itnext.io/final-report-webassembly-wasi-support-in-ruby-4aface7d90c9) + + +## Production-ready YJIT + +![](https://i.imgur.com/X9ulfac.png) + +* YJIT tidak lagi eksperimental + * Telah dites dengan beban *production* selama lebih dari satu tahun dan terbukti cukup stabil. +* YJIT sekarang mendukung baik CPU x86-64 maupun arm64/aarch64 pada Linux, MacOS, BSD, dan *platform* UNIX lainnya. + * Rilis ini membawa dukungan untuk Apple M1/M2, AWS Graviton, Raspberry Pi 4, dan lebih banyak lagi. +* Membangun YJIT sekarang membutuhkan Rust 1.58.0+. [[Feature #18481]] + * Untuk memastikan CRuby dibangun dengan YJIT, mohon pasang `rustc` >= 1.58.0 sebelum + menjalankan skrip `./configure`. + * Mohon hubungi tim YJIT jika Anda menemui masalah. +* YJIT 3.2 lebih cepat dibandingkan 3.1 dan memiliki sekitar 1/3 *memory overhead* lebih banyak. + * Secara keseluruhan YJIT 41% lebih cepat (*geometric mean*) daripada Ruby *interpreter* pada [yjit-bench](https://github.com/Shopify/yjit-bench). + * *Physical memory* untuk kode JIT dialokasikan dengan malas. Tidak seperti Ruby 3.1, + RSS dari sebuah proses Ruby diminimalisasi karena *virtual memory page* dialokasikan + oleh `--yjit-exec-mem-size` tidak akan dipetakan ke *physical memory page* + hingga sepenuhnya dibutuhkan oleh kode JIT. + * Mengenalkan Code GC yang membebaskan semua *code page* ketika memori yang + dikonsumsi oleh kode JIT mencapai `--yjit-exec-mem-size`. + * `RubyVM::YJIT.runtime_stats` mengembalikan metrik Code GC sebagai tambahan + `inline_code_size` dan `outlined_code_size` keys: + `code_gc_count`, `live_page_count`, `freed_page_count`, dan `freed_code_size`. +* Statistik yang diproduksi oleh `RubyVM::YJIT.runtime_stats` sekarang tersedia pada *release build*. + * Jalankan ruby dengan `--yjit-stats` untuk menghitung dan menimbun statistik (menimbulkan + sedikit *run-time overhead*). +* YJIT sekarang dioptimalkan untuk mengambil kelebihan dari *object shape*. [[Feature #18776]] +* Mengambil kelebihan dari *finer-grained constant invalidation* untuk tidak + memvalidasi kode yang lebih sedikit ketika mendefinisikan konstanta baru. [[Feature #18589]] +* Nilai *default* dari `--yjit-exec-mem-size` diubah menjadi 64 (MiB). +* Nilai *default* dari `--yjit-call-threshold` diubah menjadi 30. + +## Peningkatan Regexp melawan ReDoS + +Diketahui bahwa *Regexp matching* mungkin membutuhkan waktu yang lama. Jika +kode Anda mencoba untuk mencocokkan sebuah *Regexp* yang tidak efisien dengan +sebuah masukan yang tidak terpercaya, seorang penyerang bisa mengeksploitasi +ini untuk *Denial of Service* yang efisien (disebut *Regular expression DoS* +atau *ReDoS*). + +Kami telah memperkenalkan dua peningkatan untuk memitigasi ReDoS secara +signifikan. + +### Peningkatan algoritma Regexp matching + +Sejak Ruby 3.2, algoritma *Regexp matching* telah ditingkatkan dengan +menggunakan teknik *memoization*. + +``` +# Regexp matching ini membutuhkan waktu 10 detik pada Ruby 3.1 dan 0.003 detik pada Ruby 3.2 + +/^a*b?a*$/ =~ "a" * 50000 + "x" +``` + +![](https://cache.ruby-lang.org/pub/media/ruby320_regex_1.png) +![](https://cache.ruby-lang.org/pub/media/ruby320_regex_2.png) + +Peningkatan algoritma *matching* memperbolehkan eksekusi (sekitar 90% dari eksperimen kami) +selesai dalam waktu linier. + +Peningkatan ini akan mengonsumsi memori sepadan dengan panjang masukan untuk +setiap *matching*. Kami mengharapkan tidak ada masalah yang muncul karena +alokasi memori biasanya tertunda dan sebuah *Regexp matching* biasa mengonsumsi +paling banyak 10 kali memori sepanjang masukan. Jika Anda kehabisan +memori ketika mengeksekusi pada sebuah aplikasi, mohon laporkan. + +Proposal asli di + +### Regexp timeout + +Peningkatan di atas tidak dapat diterapkan pada *regular expression* tertentu, +seperti mengandung fitur lanjutan (contoh, *back-references* atau *look-around*), +atau dengan pengulangan dalam jumlah tetap yang sangat besar. Sebagai penanganan, +Sebuah fitur *timeout* pada *Regexp matching* juga diperkenalkan. + +```ruby +Regexp.timeout = 1.0 + +/^a*b?a*()\1$/ =~ "a" * 50000 + "x" +#=> Regexp::TimeoutError akan muncul dalam waktu satu detik +``` + +Catat bahwa `Regexp.timeout` adalah sebuah pengaturan global. Jika Anda ingin +menggunakan pengaturan yang berbeda untuk *Regexp* tertentu, Anda bisa +menggunakan kata kunci `timeout` pada `Regexp.new`. + +```ruby +Regexp.timeout = 1.0 + +# regexp ini tidak memiliki timeout +long_time_re = Regexp.new('^a*b?a*()\1$', timeout: Float::INFINITY) + +long_time_re =~ "a" * 50000 + "x" # tidak pernah diinterupsi +``` + +Proposal asli di . + +## Fitur penting lainnya + +### SyntaxSuggest + +* Fitur `syntax_suggest` (dahulu `dead_end`) terintegrasi dengan Ruby. Ini + membantu Anda untuk menemukan posisi *error*, seperti kelupaan atau kelebihan + `end`, dengan cepat, seperti contoh berikut: + + ``` + Ketidakcocokan `end', kata kunci hilang (`do', `def`, `if`, etc.) ? + + 1 class Dog + > 2 defbark + > 4 end + 5 end + ``` + + [[Feature #18159]] + + +### ErrorHighlight + +* Saat ini, fitur menunjuk pada argumen yang relevan pada TypeError dan ArgumentError + +``` +test.rb:2:in `+': nil can't be coerced into Integer (TypeError) + +sum = ary[0] + ary[1] + ^^^^^^ +``` + +### Bahasa + +* Argumen dari *anonymous rest* dan *keyword rest* sekarang dapat dilewatkan + sebagai argumen daripada sekadar digunakan pada parameter *method*. + [[Feature #18351]] + + ```ruby + def foo(*) + bar(*) + end + def baz(**) + quux(**) + end + ``` + +* Sebuah *proc* yang menerima sebuah *positional argument* dan *keyword* + tidak akan lagi *autosplat*. [[Bug #18633]] + + ```ruby + proc{|a, **k| a}.call([1, 2]) + # Ruby 3.1 dan sebelumnya + # => 1 + # Ruby 3.2 dan setelahnya + # => [1, 2] + ``` + +* Urutan evaluasi dari *constant assignment* pada objek eksplisit telah dibuat + konsisten dengan urutan evaluasi tunggal. Pada kode berikut: + + ```ruby + foo::BAR = baz + ``` + + `foo` sekarang dipanggil sebelum `baz`. Demikian pula, untuk *multiple assignment* + pada *constant*, urutan evaluasi *left-to-right* digunakan. Pada kode berikut: + + ```ruby + foo1::BAR1, foo2::BAR2 = baz1, baz2 + ``` + + Urutan evaluasi berikut sekarang digunakan: + + 1. `foo1` + 2. `foo2` + 3. `baz1` + 4. `baz2` + + [[Bug #15928]] + +* Pencarian *pattern* tidak lagi eksperimental. + [[Feature #18585]] + +* *Method* mengambil sebuah parameter lain (seperti `*args`) dan mengharapkan + untuk mendelegasikan *keyword argument* melalui `foo(*args)` sekarang harus + ditandai dengan `ruby2_keywords` (jika belum terjadi). Dengan kata lain, semua + *method* mengharapkan untuk mendelegasikan *keyword argument* melalui `*args` + sekarang harus ditandai dengan `ruby2_keywords`, tanpa kecuali. Ini akan membuat + transisi lebih mudah ke bentuk delegasi lain saat sebuah pustaka memerlukan + Ruby 3+. Sebelumnya, penanda `ruby2_keywords` dijaga jika *method* penerima + mengambil `*args`, tetapi ini adalah sebuah bug dan ketidakkonsistenan. + Sebuah teknik yang bagus untuk menemukan potensi hilang dari `ruby2_keywords` + adalah menjalankan rangkaian tes, dimana pun tes gagal cari *method* terakhir + yang harus menerima *keyword argument*, menggunakan `puts nil, caller, nil`, dan + mengecek setiap *method/block* pada rantai pemanggilan yang harus mendelegasikan + *keyword* ditandai dengan benar sebagai `ruby2_keywords`. + [[Bug #18625]] [[Bug #16466]] + + ```ruby + def target(**kw) + end + + # Secara tidak sengaja, berjalan tanpa ruby2_keywords pada Ruby 2.7-3.1, + # ruby2_keywords dibutuhkan pada 3.2+. Sama halnya dengan (*args, **kwargs) + # atau (...) yang juga dibutuhkan baik #foo maupun #bar ketika migrasi + # dari ruby2_keywords. + ruby2_keywords def bar(*args) + target(*args) + end + + ruby2_keywords def foo(*args) + bar(*args) + end + + foo(k: 1) + ``` + +## Perbaikan kinerja + +### MJIT + +* MJIT *compiler* diimplementasikan kembali pada Ruby sebagai pustaka standar `ruby_vm/mjit/compiler`. +* MJIT *compiler* dieksekusi dalam sebuah *fork* dari proses Ruby ketimbang + mengeksekusi dalam sebuah *native thread* yang dikenal MJIT *worker*. [[Feature #18968]] + * Akibatnya, Microsoft Visual Studio (MSWIN) tidak lagi didukung. +* MinGW tidak lagi didukung. [[Feature #18824]] +* Mengganti nama `--mjit-min-calls` menjadi `--mjit-call-threshold`. +* Mengubah nilai *default* `--mjit-max-cache` dari 10000 ke 100. + +### PubGrub + +* Bundler 2.4 sekarang menggunakan [PubGrub](https://github.com/jhawthorn/pub_grub) *resolver* + ketimbang [Molinillo](https://github.com/CocoaPods/Molinillo). + + * PubGrub adalah algoritma generasi berikutnya yang digunakan oleh `pub` *package manager* + untuk bahasa pemograman Dart. + * Anda mungkin mendapatkan hasil yang berbeda setelah perubahan ini. Mohon laporkan + masalah tersebut ke [RubyGems/Bundler issues](https://github.com/rubygems/rubygems/issues) + +* RubyGems masih menggunakan Molinillo *resolver* pada Ruby 3.2. Kami merencanakan untuk + mengganti dengan PubGrub di masa yang akan datang. + +## Perubahan penting lainnya sejak 3.1 + +* Data + * Kelas inti baru untuk merepresentasikan nilai dari objek yang *immutable*. + Kelas ini mirip dengan Struct dan sebagian berbagi sebuah implementasi, tetapi + lebih memiliki API yang *lean* dan *strict*. [[Feature #16122]] + + ```ruby + Measure = Data.define(:amount, :unit) + distance = Measure.new(100, 'km') #=> # + weight = Measure.new(amount: 50, unit: 'kg') #=> # + weight.with(amount: 40) #=> # + weight.amount #=> 50 + weight.amount = 40 #=> NoMethodError: undefined method `amount=' + ``` + +* Hash + * `Hash#shift` sekarang selalu mengembalikan *nil* jika *hash* kosong ketimbang + mengembalikan nilai *default* atau memanggil *default proc*. [[Bug #16908]] + +* MatchData + * `MatchData#byteoffset` telah ditambahkan. [[Feature #13110]] + +* Module + * `Module.used_refinements` telah ditambahkan. [[Feature #14332]] + * `Module#refinements` telah ditambahkan. [[Feature #12737]] + * `Module#const_added` telah ditambahkan. [[Feature #17881]] + +* Proc + * `Proc#dup` mengembalikan sebuah *instance* dari *subclass*. [[Bug #17545]] + * `Proc#parameters` sekarang menerima kata kunci *lambda*. [[Feature #15357]] + +* Refinement + * `Refinement#refined_class` telah ditambahkan. [[Feature #12737]] + +* RubyVM:AbstractSyntaxTree + * Menambahkan opsi `error_tolerant` pada `parse`, `parse_file`, dan `of`. [[Feature #19013]] + Dengan opsi ini + 1. SyntaxError disembunyikan + 2. AST dikembalikan untuk masukan yang tidak valid + 3. `end` disempurnakan ketika sebuah *parser* menjangkau akhir dari masukan, tetapi `end` tidak cukup + 4. `end` dianggap sebagai kata kunci berdasarkan lekukan baris + + ```ruby + # Tanpa opsi error_tolerant + root = RubyVM::AbstractSyntaxTree.parse(<<~RUBY) + def m + a = 10 + if + end + RUBY + # => :33:in `parse': syntax error, unexpected `end' (SyntaxError) + + # Dengan opsi error_tolerant + root = RubyVM::AbstractSyntaxTree.parse(<<~RUBY, error_tolerant: true) + def m + a = 10 + if + end + RUBY + p root # => # + + # `end` dianggap sebagai kata kunci berdasarkan lekukan baris + root = RubyVM::AbstractSyntaxTree.parse(<<~RUBY, error_tolerant: true) + module Z + class Foo + foo. + end + + def bar + end + end + RUBY + p root.children[-1].children[-1].children[-1].children[-2..-1] + # => [#, #] + ``` + + * Menambahkan opsi `keep_tokens` pada `parse`, `parse_file` dan `of`. [[Feature #19070]] + + ```ruby + root = RubyVM::AbstractSyntaxTree.parse("x = 1 + 2", keep_tokens: true) + root.tokens # => [[0, :tIDENTIFIER, "x", [1, 0, 1, 1]], [1, :tSP, " ", [1, 1, 1, 2]], ...] + root.tokens.map{_1[2]}.join # => "x = 1 + 2" + ``` + +* Set + * Set sekarang tersedia sebagai sebuah *builtin class* tanpa membutuhkan `require "set"`. [[Feature #16989]] + Ini dimuatkan secara otomatis melalui `Set` *constant* atau sebuah pemanggilan `Enumerable#to_set`. + +* String + * `String#byteindex` dan `String#byterindex` telah ditambahkan. [[Feature #13110]] + * Memperbarui versi *Unicode* ke 15.0.0 dan *Emoji* ke 15.0. [[Feature #18639]] + (juga diaplikasikan pada *Regexp*) + * `String#bytesplice` telah ditambahkan. [[Feature #18598]] + +* Struct + * Sebuah *class* Struct juga dapat diinisialisasi dengan argumen *keyword* + tanpa `keyword_init: true` pada `Struct.new` [[Feature #16806]] + + ```ruby + Post = Struct.new(:id, :name) + Post.new(1, "hello") #=> # + # Mulai Ruby 3.2, kode berikut bekerja tanpa keyword_init: true. + Post.new(id: 1, name: "hello") #=> # + ``` + +## Isu kompatibilitas + +Catatan: tidak termasuk perbaikan *bug*. + +### Constant terhapus + +Berikut ini adalah *constant* yang telah dihapus. + +* `Fixnum` dan `Bignum` [[Feature #12005]] +* `Random::DEFAULT` [[Feature #17351]] +* `Struct::Group` +* `Struct::Passwd` + +### Method terhapus + +Berikut ini adalah *method* yang telah dihapus. + +* `Dir.exists?` [[Feature #17391]] +* `File.exists?` [[Feature #17391]] +* `Kernel#=~` [[Feature #15231]] +* `Kernel#taint`, `Kernel#untaint`, `Kernel#tainted?` + [[Feature #16131]] +* `Kernel#trust`, `Kernel#untrust`, `Kernel#untrusted?` + [[Feature #16131]] + +## Isu kompatibilitas Stdlib + +### Tidak lagi membundel sumber pihak ketiga + +* Kami tidak lagi membundel sumber dari pihak ketiga, seperti `libyaml`, `libffi`. + + * libyaml telah dihapus dari psych. Anda mungkin membutuhkan untuk memasang + `libyaml-dev` dengan *Ubuntu/Debian platform*. Nama *package* berbeda untuk setiap *platform*. + + * libffi juga telah dihapus dari `fiddle` + +* Psych dan fiddle mendukung *static build* dengan versi spesifik dari libyaml dan libffi. + Anda dapat membangun psych dengan libyaml-0.2.5 seperti ini: + + ```bash + $ ./configure --with-libyaml-source-dir=/path/to/libyaml-0.2.5 + ``` + + Dan Anda dapat membangun fiddle dengan libffi-3.4.4: + + ```bash + $ ./configure --with-libffi-source-dir=/path/to/libffi-3.4.4 + ``` + + [[Feature #18571]] + +## Pembaruan C API + +### C API diperbarui + +Berikut ini adalah API yang telah diperbarui. + +* Pembaruan PRNG + * `rb_random_interface_t` diperbarui dan diberikan versi. + Pustaka *extension* yang menggunakan *interface* ini dan untuk versi lama. + `init_int32` juga perlu didefinisikan. + +### C API terhapus + +Berikut ini adalah API yang telah dihapus. + +* Variabel `rb_cData`. +* *Function* "taintedness" dan "trustedness". [[Feature #16131]] + +### Pembaruan pustaka standar + +* Bundler + + * Menambahkan dukungan --ext=rust untuk membundel *gem* dengan ekstensi Rust. + [[GH-rubygems-6149]] + * Membuat salinan *git repo* lebih cepat [[GH-rubygems-4475]] + +* RubyGems + + * Menambahkan dukungan mswin untuk *cargo builder*. [[GH-rubygems-6167]] + +* ERB + + * `ERB::Util.html_escape` dibuat lebih cepat dibandingkan `CGI.escapeHTML`. + * Ini tidak lagi mengalokasikan sebuah objek String ketika tidak ada karakter yang perlu diloloskan. + * Ini mengabaikan pemanggilan *method* `#to_s` jika sebuah argumen sudah berupa String. + * `ERB::Escape.html_escape` ditambahkan sebagai sebuah alias untuk `ERB::Util.html_escape`, + yang mana belum di-*monkey-patch* oleh Rails. + +* IRB + * Perintah integrasi debug.gem telah ditambahkan: `debug`, `break`, `catch`, + `next`, `delete`, `step`, `continue`, `finish`, `backtrace`, `info` + * Perintah ini bekerja walaupun Anda tidak memiliki `gem "debug"` pada Gemfile Anda. + * Lihat juga: [What's new in Ruby 3.2's IRB?](https://st0012.dev/whats-new-in-ruby-3-2-irb) + * Perintah dan fitur Pry-like lainnya telah ditambahkan. + * `edit` dan `show_cmds` (seperti `help` pada Pry) ditambahkan. + * `ls` mengambil opsi `-g` atau `-G` untuk menyaring keluaran. + * `show_source` adalah alias dari `$` dan menerima masukan tanpa kutipan. + * `whereami` adalah alias dari `@`. + +* Berikut ini adalah *default gem* yang telah diperbarui. + + * RubyGems 3.4.1 + * abbrev 0.1.1 + * benchmark 0.2.1 + * bigdecimal 3.1.3 + * bundler 2.4.1 + * cgi 0.3.6 + * csv 3.2.6 + * date 3.3.3 + * delegate 0.3.0 + * did_you_mean 1.6.3 + * digest 3.1.1 + * drb 2.1.1 + * english 0.7.2 + * erb 4.0.2 + * error_highlight 0.5.1 + * etc 1.4.2 + * fcntl 1.0.2 + * fiddle 1.1.1 + * fileutils 1.7.0 + * forwardable 1.3.3 + * getoptlong 0.2.0 + * io-console 0.6.0 + * io-nonblock 0.2.0 + * io-wait 0.3.0 + * ipaddr 1.2.5 + * irb 1.6.2 + * json 2.6.3 + * logger 1.5.3 + * mutex_m 0.1.2 + * net-http 0.3.2 + * net-protocol 0.2.1 + * nkf 0.1.2 + * open-uri 0.3.0 + * open3 0.1.2 + * openssl 3.1.0 + * optparse 0.3.1 + * ostruct 0.5.5 + * pathname 0.2.1 + * pp 0.4.0 + * pstore 0.1.2 + * psych 5.0.1 + * racc 1.6.2 + * rdoc 6.5.0 + * readline-ext 0.1.5 + * reline 0.3.2 + * resolv 0.2.2 + * resolv-replace 0.1.1 + * securerandom 0.2.2 + * set 1.0.3 + * stringio 3.0.4 + * strscan 3.0.5 + * syntax_suggest 1.0.2 + * syslog 0.1.1 + * tempfile 0.1.3 + * time 0.2.1 + * timeout 0.3.1 + * tmpdir 0.1.3 + * tsort 0.1.1 + * un 0.2.1 + * uri 0.12.0 + * weakref 0.1.2 + * win32ole 1.8.9 + * yaml 0.2.1 + * zlib 3.0.0 + +* Berikut ini adalah *bundled gem* yang telah diperbarui. + + * minitest 5.16.3 + * power_assert 2.0.3 + * test-unit 3.5.7 + * net-ftp 0.2.0 + * net-imap 0.3.3 + * net-pop 0.1.2 + * net-smtp 0.3.3 + * rbs 2.8.2 + * typeprof 0.21.3 + * debug 1.7.1 + +Lihat rilis GitHub seperti [GitHub Releases of logger](https://github.com/ruby/logger/releases) atau *changelog* untuk detail dari *default* atau *bundled gem*. + +Lihat [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +atau [commit logs](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}) +untuk lebih detail. + +Dengan perubahan tersebut, [{{ release.stats.files_changed }} berkas berubah, {{ release.stats.insertions }} sisipan(+), {{ release.stats.deletions }} terhapus(-)](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}#file_bucket) +sejak Ruby 3.1.0! + +Selamat natal, selamat berlibur, dan nikmati memprogram dengan Ruby 3.2! + +## Unduh + +* <{{ 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 }} + +## Apa itu Ruby + +Ruby pertama kali dikembangkan oleh Matz (Yukihiro Matsumoto) pada 1993 +dan sekarang dikembangkan sebagai *Open Source*. Ruby berjalan pada berbagai +*platform* dan digunakan di seluruh dunia, khususnya pengembangan *web*. + +[Feature #12005]: https://bugs.ruby-lang.org/issues/12005 +[Feature #12084]: https://bugs.ruby-lang.org/issues/12084 +[Feature #12655]: https://bugs.ruby-lang.org/issues/12655 +[Feature #12737]: https://bugs.ruby-lang.org/issues/12737 +[Feature #13110]: https://bugs.ruby-lang.org/issues/13110 +[Feature #14332]: https://bugs.ruby-lang.org/issues/14332 +[Feature #15231]: https://bugs.ruby-lang.org/issues/15231 +[Feature #15357]: https://bugs.ruby-lang.org/issues/15357 +[Bug #15928]: https://bugs.ruby-lang.org/issues/15928 +[Feature #16122]: https://bugs.ruby-lang.org/issues/16122 +[Feature #16131]: https://bugs.ruby-lang.org/issues/16131 +[Bug #16466]: https://bugs.ruby-lang.org/issues/16466 +[Feature #16663]: https://bugs.ruby-lang.org/issues/16663 +[Feature #16806]: https://bugs.ruby-lang.org/issues/16806 +[Bug #16889]: https://bugs.ruby-lang.org/issues/16889 +[Bug #16908]: https://bugs.ruby-lang.org/issues/16908 +[Feature #16989]: https://bugs.ruby-lang.org/issues/16989 +[Feature #17351]: https://bugs.ruby-lang.org/issues/17351 +[Feature #17391]: https://bugs.ruby-lang.org/issues/17391 +[Bug #17545]: https://bugs.ruby-lang.org/issues/17545 +[Bug #17767]: https://bugs.ruby-lang.org/issues/17767 +[Feature #17837]: https://bugs.ruby-lang.org/issues/17837 +[Feature #17881]: https://bugs.ruby-lang.org/issues/17881 +[Feature #18033]: https://bugs.ruby-lang.org/issues/18033 +[Feature #18159]: https://bugs.ruby-lang.org/issues/18159 +[Feature #18239]: https://bugs.ruby-lang.org/issues/18239#note-17 +[Feature #18351]: https://bugs.ruby-lang.org/issues/18351 +[Feature #18367]: https://bugs.ruby-lang.org/issues/18367 +[Bug #18435]: https://bugs.ruby-lang.org/issues/18435 +[Feature #18462]: https://bugs.ruby-lang.org/issues/18462 +[Feature #18481]: https://bugs.ruby-lang.org/issues/18481 +[Bug #18487]: https://bugs.ruby-lang.org/issues/18487 +[Feature #18564]: https://bugs.ruby-lang.org/issues/18564 +[Feature #18571]: https://bugs.ruby-lang.org/issues/18571 +[Feature #18585]: https://bugs.ruby-lang.org/issues/18585 +[Feature #18589]: https://bugs.ruby-lang.org/issues/18589 +[Feature #18595]: https://bugs.ruby-lang.org/issues/18595 +[Feature #18598]: https://bugs.ruby-lang.org/issues/18598 +[Bug #18625]: https://bugs.ruby-lang.org/issues/18625 +[Feature #18630]: https://bugs.ruby-lang.org/issues/18630 +[Bug #18633]: https://bugs.ruby-lang.org/issues/18633 +[Feature #18639]: https://bugs.ruby-lang.org/issues/18639 +[Feature #18685]: https://bugs.ruby-lang.org/issues/18685 +[Bug #18729]: https://bugs.ruby-lang.org/issues/18729 +[Bug #18751]: https://bugs.ruby-lang.org/issues/18751 +[Feature #18774]: https://bugs.ruby-lang.org/issues/18774 +[Feature #18776]: https://bugs.ruby-lang.org/issues/18776 +[Bug #18782]: https://bugs.ruby-lang.org/issues/18782 +[Feature #18788]: https://bugs.ruby-lang.org/issues/18788 +[Feature #18798]: https://bugs.ruby-lang.org/issues/18798 +[Feature #18809]: https://bugs.ruby-lang.org/issues/18809 +[Feature #18821]: https://bugs.ruby-lang.org/issues/18821 +[Feature #18822]: https://bugs.ruby-lang.org/issues/18822 +[Feature #18824]: https://bugs.ruby-lang.org/issues/18824 +[Feature #18832]: https://bugs.ruby-lang.org/issues/18832 +[Feature #18875]: https://bugs.ruby-lang.org/issues/18875 +[Feature #18925]: https://bugs.ruby-lang.org/issues/18925 +[Feature #18944]: https://bugs.ruby-lang.org/issues/18944 +[Feature #18949]: https://bugs.ruby-lang.org/issues/18949 +[Feature #18968]: https://bugs.ruby-lang.org/issues/18968 +[Feature #19008]: https://bugs.ruby-lang.org/issues/19008 +[Feature #19013]: https://bugs.ruby-lang.org/issues/19013 +[Feature #19026]: https://bugs.ruby-lang.org/issues/19026 +[Feature #19036]: https://bugs.ruby-lang.org/issues/19036 +[Feature #19060]: https://bugs.ruby-lang.org/issues/19060 +[Feature #19070]: https://bugs.ruby-lang.org/issues/19070 +[Feature #19071]: https://bugs.ruby-lang.org/issues/19071 +[Feature #19078]: https://bugs.ruby-lang.org/issues/19078 +[Bug #19087]: https://bugs.ruby-lang.org/issues/19087 +[Bug #19100]: https://bugs.ruby-lang.org/issues/19100 +[Feature #19104]: https://bugs.ruby-lang.org/issues/19104 +[Feature #19135]: https://bugs.ruby-lang.org/issues/19135 +[Feature #19138]: https://bugs.ruby-lang.org/issues/19138 +[Feature #19194]: https://bugs.ruby-lang.org/issues/19194 +[Molinillo]: https://github.com/CocoaPods/Molinillo +[PubGrub]: https://github.com/jhawthorn/pub_grub +[GH-net-protocol-14]: https://github.com/ruby/net-protocol/pull/14 +[GH-pathname-20]: https://github.com/ruby/pathname/pull/20 +[GH-6791]: https://github.com/ruby/ruby/pull/6791 +[GH-6868]: https://github.com/ruby/ruby/pull/6868 +[GH-rubygems-4475]: https://github.com/rubygems/rubygems/pull/4475 +[GH-rubygems-6149]: https://github.com/rubygems/rubygems/pull/6149 +[GH-rubygems-6167]: https://github.com/rubygems/rubygems/pull/6167 +[sec-156615]: https://hackerone.com/reports/156615 +[CVE-2021-33621]: https://www.ruby-lang.org/en/news/2022/11/22/http-response-splitting-in-cgi-cve-2021-33621/ +[wasm/README.md]: https://github.com/ruby/ruby/blob/master/wasm/README.md +[ruby.wasm]: https://github.com/ruby/ruby.wasm From 9a7ed8a9e49def8df9030458264de281ceede84a Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Tue, 30 May 2023 21:31:52 +0700 Subject: [PATCH 044/607] Translate CVE-2023-28756 news post (id) --- ...2023-03-30-redos-in-time-cve-2023-28756.md | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 id/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md diff --git a/id/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md b/id/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md new file mode 100644 index 0000000000..2ee5b8b298 --- /dev/null +++ b/id/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md @@ -0,0 +1,52 @@ +--- +layout: news_post +title: "CVE-2023-28756: Kerentanan ReDoS pada Time" +author: "hsbt" +translator: "meisyal" +date: 2023-03-30 11:00:00 +0000 +tags: security +lang: id +--- + +Kami telah merilis versi *gem* time 0.1.1 dan 0.2.2 yang mengandung perbaikan +keamanan untuk kerentanan ReDoS. Kerentanan ini telah ditetapkan dengan penanda +CVE [CVE-2023-28756](https://www.cve.org/CVERecord?id=CVE-2023-28756). + +## Detail + +*Parser* dari Time menangani *string* yang tidak valid yang memiliki karakter +tertentu dengan tidak benar. Ini menyebabkan peningkatan waktu eksekusi untuk +mem-*parsing* *string* menjadi objek Time. + +Isu ini ditemukan pada versi *gem* Time 0.1.0 dan 0.2.1 serta pustaka Time dari +Ruby 2.7.7. + +## Rekomendasi tindakan + +Kami merekomendasikan untuk memperbarui *gem* time ke 0.2.2 atau setelahnya. +Untuk memastikan kompatibilitas dengan versi yang dibundel pada rangkaian +Ruby lama, Anda bisa memperbarui dengan langkah berikut: + +* Untuk pengguna Ruby 3.0: Perbarui `time` ke 0.1.1 +* Untuk pengguna Ruby 3.1/3.2: Perbarui `time` ke 0.2.2 + +Anda dapat menggunakan perintah `gem update time`. Jika Anda menggunakan *bundler*, +mohon tambahkan `gem "time", ">= 0.2.2"` pada `Gemfile` Anda. + +Sayangnya, *gem* time hanya berjalan pada Ruby 3.0 atau setelahnya. Jika Anda +sedang menggunakan Ruby 2.7, mohon gunakan versi Ruby terbaru. + +## Versi terimbas + +* Ruby 2.7.7 atau sebelumnya +* *gem* time 0.1.0 +* *gem* time 0.2.1 + +## Rujukan + +Terima kasih kepada [ooooooo_q](https://hackerone.com/ooooooo_q?type=user) +yang telah menemukan isu ini. + +## Riwayat + +* Semula dipublikasikan pada 2023-03-30 11:00:00 (UTC) From ec1872e511894c0990e6299292ff693c394d086a Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Wed, 24 May 2023 17:07:34 +0700 Subject: [PATCH 045/607] Translate CVE-2023-28755 news post (id) --- .../2023-03-28-redos-in-uri-cve-2023-28755.md | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 id/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md diff --git a/id/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md b/id/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md new file mode 100644 index 0000000000..6797410575 --- /dev/null +++ b/id/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md @@ -0,0 +1,56 @@ +--- +layout: news_post +title: "CVE-2023-28755: Kerentanan ReDoS pada URI" +author: "hsbt" +translator: "meisyal" +date: 2023-03-28 01:00:00 +0000 +tags: security +lang: id +--- + +Kami telah merilis versi *gem* uri 0.12.1, 0.11.1, 0.10.2, dan 0.10.0.1 yang +mengandung perbaikan keamanan untuk kerentanan ReDoS. +Kerentanan ini telah ditetapkan dengan penanda CVE +[CVE-2023-28755](https://www.cve.org/CVERecord?id=CVE-2023-28755). + +## Detail + +Isu ReDoS ditemukan pada komponen URI. *Parser* dari URI menangani URL yang +tidak valid yang memiliki karakter tertentu dengan tidak benar. Ini menyebabkan +peningkatan waktu eksekusi untuk mem-*parsing* *string* dari objek URI. + +Versi *gem* `uri` 0.12.0, 0.11.0, 0.10.0, dan semua versi sebelum 0.10.0 rentan +terhadap isu ini. + +## Rekomendasi tindakan + +Kami merekomendasikan untuk memperbarui *gem* `uri` ke 0.12.1. Untuk memastikan +kompatibilitas dengan versi yang dibundel pada rangkaian Ruby lama, Anda bisa +memperbarui dengan langkah berikut: + +* Untuk Ruby 2.7: Perbarui `uri` ke 0.10.0.1 +* Untuk Ruby 3.0: Perbarui `uri` ke 0.10.2 +* Untuk Ruby 3.1: Perbarui `uri` ke 0.11.1 +* Untuk Ruby 3.2: Perbarui `uri` ke 0.12.1 + +Anda dapat menggunakan perintah `gem update uri`. Jika Anda menggunakan *bundler*, +mohon tambahkan `gem "uri", ">= 0.12.1"` (atau versi yang telah disebut sebelumnya) +pada `Gemfile` Anda. + +## Versi terimbas + +* *gem* uri 0.12.0 +* *gem* uri 0.11.0 +* *gem* uri 0.10.1 +* *gem* uri 0.10.0 atau sebelumnya + +## Rujukan + +Terima kasih kepada [Dominic Couture](https://hackerone.com/dee-see?type=user) +yang telah menemukan isu ini. + +## Riwayat + +* Semula dipublikasikan pada 2023-03-28 01:00:00 (UTC) +* Memperbarui versi terimbas pada 2023-03-28 02:00:00 (UTC) +* Memperbarui URL penanda CVE pada 2023-03-28 04:00:00 (UTC) From 0fbaf50bd12ce7b2fe8559de8af330b830ed1d78 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 29 Jun 2023 10:55:05 +0900 Subject: [PATCH 046/607] Create CNAME --- CNAME | 1 + 1 file changed, 1 insertion(+) create mode 100644 CNAME diff --git a/CNAME b/CNAME new file mode 100644 index 0000000000..74d637cce6 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +www.ruby-lang.org \ No newline at end of file From fbdc635d1e48f1f1120581166cbaa88915cfaf25 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 29 Jun 2023 11:11:10 +0900 Subject: [PATCH 047/607] Removed accidentally commit --- CNAME | 1 - 1 file changed, 1 deletion(-) delete mode 100644 CNAME diff --git a/CNAME b/CNAME deleted file mode 100644 index 74d637cce6..0000000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -www.ruby-lang.org \ No newline at end of file From 61f322cdb039ea567e4ed2f290c8c9aa10a7dea5 Mon Sep 17 00:00:00 2001 From: akinomaeni Date: Thu, 29 Jun 2023 16:03:58 +0900 Subject: [PATCH 048/607] Fix typo in 2023-06-29-redos-in-uri-CVE-2023-36617.md --- en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index a590f1d456..e7c68b6d65 100644 --- a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -8,7 +8,7 @@ tags: security lang: en --- -We have released the uri gem version 0.12.1, 0.10.2 that has a security fix for a ReDoS vulnerability. +We have released the uri gem version 0.12.2, 0.10.3 that has a security fix for a ReDoS vulnerability. This vulnerability has been assigned the CVE identifier [CVE-2023-36617](https://www.cve.org/CVERecord?id=CVE-2023-36617). ## Details From 0988589c7aec5f761f273f5303dda0620d41589d Mon Sep 17 00:00:00 2001 From: ytjmt <46666464+ytjmt@users.noreply.github.com> Date: Thu, 29 Jun 2023 23:19:47 +0900 Subject: [PATCH 049/607] Translate "CVE-2023-36617: ReDoS vulnerability in Time" (ja) --- .../2023-06-29-redos-in-uri-CVE-2023-36617.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md diff --git a/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md new file mode 100644 index 0000000000..26979dc2d1 --- /dev/null +++ b/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "CVE-2023-36617: URI における ReDoS 脆弱性について" +author: "hsbt" +translator: "ytjmt" +date: 2023-06-29 01:00:00 +0000 +tags: security +lang: ja +--- + +ReDoS 脆弱性のセキュリティ修正を含む、uri gem 0.12.2、0.10.3 をリリースしました。 +この脆弱性は、[CVE-2023-36617](https://www.cve.org/CVERecord?id=CVE-2023-36617) として登録されています。 + +## 詳細 + +0.12.1 までのバージョンの URI コンポーネントに ReDoS 脆弱性が見つかりました。特定の文字を含む無効な URL を URI パーサーが誤って取り扱っていました。rfc2396_parser.rb と rfc3986_parser.rb を用いて文字列を URI オブジェクトにパースする際に実行時間が増加していました。 + +注意: [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/28/redos-in-uri-cve-2023-28755/) に対する不完全な修正がこの問題の原因でした。 + +0.12.1 およびそれ以前の全てのバージョンの `uri` gem はこの脆弱性の影響を受けます。 + +## 推奨する対応 + +`uri` gem を 0.12.2 にアップデートすることを推奨します。古い系列の Ruby で同梱されているバージョンとの互換性を確保するためには、以下のようにアップデートできます: + +* Ruby 3.0: `uri` を 0.10.3 にアップデート +* Ruby 3.1 および 3.2: `uri` を 0.12.2 にアップデート + +`gem update uri` でアップデートできます。もし bundler を使っている場合は、`Gemfile` に `gem "uri", ">= 0.12.2"` (または上記の他のバージョン)を追加してください。 + +## 影響を受けるバージョン + +* uri gem 0.12.1 およびそれ以前のバージョン + +## クレジット + +この脆弱性情報は、[ooooooo_q](https://hackerone.com/ooooooo_q) 氏によって報告されました。 + +この脆弱性は、[nobu](https://github.com/nobu) 氏によって修正されました。 + +## 更新履歴 + +* 2023-06-29 10:00:00 (JST) 初版 From 9207e368f287ba13af316ced9bd2eb171609bbf3 Mon Sep 17 00:00:00 2001 From: ooooooo_q Date: Mon, 17 Jul 2023 14:06:45 +0900 Subject: [PATCH 050/607] fix typo CVE-2023-36617 --- en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index e7c68b6d65..332794fdc9 100644 --- a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -15,7 +15,7 @@ This vulnerability has been assigned the CVE identifier [CVE-2023-36617](https:/ A ReDoS issue was discovered in the URI component through 0.12.1 for Ruby. The URI parser mishandles invalid URLs that have specific characters. There is an increase in execution time for parsing strings to URI objects with rfc2396_parser.rb and rfc3986_parser.rb. -NOTE: this issue exists becuse of an incomplete fix for [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/28/redos-in-uri-cve-2023-28755/). +NOTE: this issue exists because of an incomplete fix for [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/28/redos-in-uri-cve-2023-28755/). The `uri` gem version 0.12.1 and all versions prior 0.12.1 are vulnerable for this vulnerability. From 45006fdf289126f61e1e5a7216f786bf989b00a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jul 2023 15:58:01 +0000 Subject: [PATCH 051/607] Bump actions/upload-pages-artifact from 1.0.9 to 2.0.0 Bumps [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) from 1.0.9 to 2.0.0. - [Release notes](https://github.com/actions/upload-pages-artifact/releases) - [Commits](https://github.com/actions/upload-pages-artifact/compare/66b63f4a7de003f4f00cc8e9af4b83b8f2abdb96...a753861a5debcf57bf8b404356158c8e1e33150c) --- updated-dependencies: - dependency-name: actions/upload-pages-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 4ffa2deaa3..e2fdd0040d 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -34,7 +34,7 @@ jobs: env: JEKYLL_ENV: production - name: Upload artifact - uses: actions/upload-pages-artifact@66b63f4a7de003f4f00cc8e9af4b83b8f2abdb96 # v1.0.9 + uses: actions/upload-pages-artifact@a753861a5debcf57bf8b404356158c8e1e33150c # v2.0.0 deploy: environment: From 21badff791eb063eeae1a99b5e640203556a48b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jul 2023 15:58:05 +0000 Subject: [PATCH 052/607] Bump actions/deploy-pages from 2.0.2 to 2.0.3 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 2.0.2 to 2.0.3. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/ee48c7b82e077d7b8ef30b50a719e6a792a50c9a...12ab2b16cf43a7a061fe99da74b6f8f11fb77f5b) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index e2fdd0040d..e74e1345e8 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@ee48c7b82e077d7b8ef30b50a719e6a792a50c9a # v2.0.2 + uses: actions/deploy-pages@12ab2b16cf43a7a061fe99da74b6f8f11fb77f5b # v2.0.3 From 59b2b7066b76e37bcd6db9c39fc50687334dd1f8 Mon Sep 17 00:00:00 2001 From: Marcelo Junior Date: Mon, 17 Jul 2023 11:43:32 -0300 Subject: [PATCH 053/607] Fix typo --- pt/news/_posts/2022-12-25-ruby-3-2-0-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pt/news/_posts/2022-12-25-ruby-3-2-0-released.md b/pt/news/_posts/2022-12-25-ruby-3-2-0-released.md index d5d245c37d..b606a7f114 100644 --- a/pt/news/_posts/2022-12-25-ruby-3-2-0-released.md +++ b/pt/news/_posts/2022-12-25-ruby-3-2-0-released.md @@ -212,7 +212,7 @@ sum = ary[0] + ary[1] `ruby2_keywords` foi mantida se o método recebedor levava `*args`, mas isso era um bug de inconsistência. Uma boa técnica pra encontrar potenciais `ruby2_keywords` faltantes é rodar a suíte de testes, encontrar o último método que deve receber - argumentos para cada lugar onte a suíte de teste falha, e usar `puts nil, caller, nil` + argumentos para cada lugar onde a suíte de teste falha, e usar `puts nil, caller, nil` lá. Então verifique que cada método/bloco da cadeia de chamada que deve delegar palavras-chave está corretamente marcado com `ruby2_keywords`. [[Bug #18625]] [[Bug #16466]] From f1e57dcf02a26a64c079e45e71e6c0b505a58e53 Mon Sep 17 00:00:00 2001 From: Shia Date: Sun, 30 Jul 2023 17:41:06 +0900 Subject: [PATCH 054/607] Translate "CVE-2023-36617: ReDoS vulnerability in URI" (ko) (#3094) * cp {en,ko}/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md * Translate to ko * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../2023-06-29-redos-in-uri-CVE-2023-36617.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md diff --git a/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md new file mode 100644 index 0000000000..b11eb1e597 --- /dev/null +++ b/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "CVE-2023-36617: URI의 ReDoS 취약점" +author: "hsbt" +translator: "shia" +date: 2023-06-29 01:00:00 +0000 +tags: security +lang: ko +--- + +ReDoS 취약점에 대한 보안 수정이 포함된 uri gem 버전 0.12.2, 0.10.3을 릴리스했습니다. +이 취약점에는 CVE 식별자 [CVE-2023-36617](https://www.cve.org/CVERecord?id=CVE-2023-36617)이 할당되었습니다. + +## 세부 내용 + +0.12.1 이전의 URI 구성 요소에서 ReDoS 문제가 발견되었습니다. URI 구문 분석기가 특정 문자가 포함된 유효하지 않은 URL을 잘못 처리합니다. 이로 인해 `rfc2396_parser.rb`와 `rfc3986_parser.rb`를 사용해 문자열을 URI 객체로 구문 분석하는 데 걸리는 실행 시간이 증가합니다. + +NOTE: 이 문제는 [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/28/redos-in-uri-cve-2023-28755/)의 불완전한 수정으로 발생했습니다. + +`uri` gem의 0.12.1과 모든 0.12.1 이하 버전이 이 취약점에 취약합니다. + +## 권장 조치 + +`uri` gem을 0.12.2로 업데이트하는 것이 좋습니다. 이전 Ruby 버전대에 포함된 버전과의 호환성을 보장하기 위해 다음과 같이 업데이트할 수 있습니다. + +* Ruby 3.0: `uri` 0.10.3으로 업데이트 +* Ruby 3.1과 3.2: `uri` 0.12.2로 업데이트 + +`gem update uri`를 사용하여 업데이트할 수 있습니다. bundler를 사용하는 경우 `gem "uri", ">= 0.12.2"`(또는 위에 언급된 다른 버전)을 `Gemfile`에 추가하세요. + +## 해당 버전 + +* uri gem 0.12.1과 그 이하 + +## 도움을 준 사람 + +이 문제를 발견해 준 [ooooooo_q](https://hackerone.com/ooooooo_q)에게 감사를 표합니다. + +이 문제를 수정해 준 [nobu](https://github.com/nobu)에게 감사를 표합니다. + +## 수정 이력 + +* 2023-06-29 01:00:00 (UTC) 최초 공개 From 3ae15a6afb8b058f44dfea1c4e8c088e6cf0fa50 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Aug 2023 15:07:15 +0000 Subject: [PATCH 055/607] Bump actions/deploy-pages from 2.0.3 to 2.0.4 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 2.0.3 to 2.0.4. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/12ab2b16cf43a7a061fe99da74b6f8f11fb77f5b...9dbe3824824f8a1377b8e298bafde1a50ede43e5) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index e74e1345e8..d8dc7d3afc 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@12ab2b16cf43a7a061fe99da74b6f8f11fb77f5b # v2.0.3 + uses: actions/deploy-pages@9dbe3824824f8a1377b8e298bafde1a50ede43e5 # v2.0.4 From 952d4e6a6d713439264dea8f929595977c84007b Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Tue, 8 Aug 2023 19:34:45 +0700 Subject: [PATCH 056/607] Fix links to ReDoS vulnerability posts in Ruby 3.2.2 released news (en) --- en/news/_posts/2023-03-30-ruby-3-2-2-released.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2023-03-30-ruby-3-2-2-released.md b/en/news/_posts/2023-03-30-ruby-3-2-2-released.md index 51487fa691..ea63747b83 100644 --- a/en/news/_posts/2023-03-30-ruby-3-2-2-released.md +++ b/en/news/_posts/2023-03-30-ruby-3-2-2-released.md @@ -12,8 +12,8 @@ Ruby 3.2.2 has been released. This release includes security fixes. Please check the topics below for details. -* [CVE-2023-28755: ReDoS vulnerability in URI]({%link es/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) -* [CVE-2023-28756: ReDoS vulnerability in Time]({%link es/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) +* [CVE-2023-28755: ReDoS vulnerability in URI]({%link en/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: ReDoS vulnerability in Time]({%link en/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_2) for further details. From fb736380db2049c1cc1af104a4af30c93e7da93b Mon Sep 17 00:00:00 2001 From: Kentaro Goto Date: Mon, 28 Aug 2023 00:04:26 +0900 Subject: [PATCH 057/607] Skip preview branch in the timeline charts on downloads/branches/ --- javascripts/branch-timeline.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/javascripts/branch-timeline.js b/javascripts/branch-timeline.js index dfe7a5d061..6cf27da689 100644 --- a/javascripts/branch-timeline.js +++ b/javascripts/branch-timeline.js @@ -6,7 +6,7 @@ function drawChart() { const source = - JSON.parse(document.getElementById("branches.json").innerHTML).slice(0, 5).reverse() + JSON.parse(document.getElementById("branches.json").innerHTML).filter(e=>e.status != "preview").slice(0, 5).reverse() .map(e => { return { ...e, From 8f53e1dd08f97f44a288163d3e6f4c2b465a0ea9 Mon Sep 17 00:00:00 2001 From: gaojun Date: Fri, 28 Jul 2023 22:16:50 +0800 Subject: [PATCH 058/607] Translate "CVE-2023-36617: ReDoS vulnerability in URI" (zh_cn) --- .../2023-06-29-redos-in-uri-CVE-2023-36617.md | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 zh_cn/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md diff --git a/zh_cn/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/zh_cn/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md new file mode 100644 index 0000000000..1a344a6b65 --- /dev/null +++ b/zh_cn/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -0,0 +1,44 @@ +--- +layout: news_post +title: "CVE-2023-36617: URI 包中的 ReDoS 漏洞" +author: "hsbt" +translator: "GAO Jun" +date: 2023-06-29 01:00:00 +0000 +tags: security +lang: zh_cn +--- + +我们刚发布了包含 ReDoS 漏洞补丁的 `uri` gem 版本 0.12.2 和 0.10.3。 +此漏洞的 CVE 编号为 [CVE-2023-36617](https://www.cve.org/CVERecord?id=CVE-2023-36617)。 + +## 详情 + +在 URI 组件 0.12.1 中发现了一个 ReDoS 问题。URI 解析器会错误处理包含特殊字符的错误 URL。 +导致通过 rf2396_parser.rb 和 rfc3986_parser.rb 将字符串解析为 URI 对象的处理时间增长。 + +注意:此问题是由于 [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/28/redos-in-uri-cve-2023-28755/) 的不完整修复而导致的。 + +受此漏洞影响的 `uri` gem 版本包括:0.12.1 以及 0.12.1 之前的版本。 + +## 建议操作 + +我们建议将 `uri` gem 更新到 0.12.1。为了保证各个 Ruby 系列中绑定版本的兼容性您也可以按照下列方式进行更新: + +* Ruby 3.0:更新 `uri` 至 0.10.3 +* Ruby 3.1 和 3.2:更新 `uri` 至 0.12.2 + +您可以通过 `gem update uri` 进行更新。如果您使用 bundler,请在您的 `Gemfile` 中增加 `gem "uri", ">= 0.12.2"` (或上面提到的其他版本)。 + +## 受影响版本 + +* uri gem 0.12.1 及之前版本 + +## 致谢 + +感谢 [ooooooo_q](https://hackerone.com/ooooooo_q) 发现此问题。 + +感谢 [nobu](https://github.com/nobu) 修复此问题。 + +## 历史 + +* 最初发布于 2023-06-29 01:00:00 (UTC) From 4a1f09ba65ec2b155aff0c08beeea6291a8a6478 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Aug 2023 15:43:26 +0000 Subject: [PATCH 059/607] Bump actions/checkout from 3.5.3 to 3.6.0 Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.3 to 3.6.0. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/c85c95e3d7251135ab7dc9ce3241c5835cc595a9...f43a0e5ff2bd294095638e18286ca9a3d1956744) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e9600851db..e17970071c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 + uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index d8dc7d3afc..a8aba12851 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 + uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 - name: Setup Ruby uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0 with: From 8fba693cc4af028735a329a593429faaa3b2d886 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Thu, 29 Jun 2023 12:27:06 +0700 Subject: [PATCH 060/607] Translate Ruby 2.7.8 released news post (id) --- .../_posts/2023-03-30-ruby-2-7-8-released.md | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 id/news/_posts/2023-03-30-ruby-2-7-8-released.md diff --git a/id/news/_posts/2023-03-30-ruby-2-7-8-released.md b/id/news/_posts/2023-03-30-ruby-2-7-8-released.md new file mode 100644 index 0000000000..98daab8240 --- /dev/null +++ b/id/news/_posts/2023-03-30-ruby-2-7-8-released.md @@ -0,0 +1,64 @@ +--- +layout: news_post +title: "Ruby 2.7.8 Dirilis" +author: "usa" +translator: "meisyal" +date: 2023-03-30 12:00:00 +0000 +lang: id +--- + +Ruby 2.7.8 telah dirilis. + +Rilis ini mencakup perbaikan keamanan. +Mohon cek topik-topik di bawah ini untuk detail. + +* [CVE-2023-28755: Kerentanan ReDoS pada URI]({%link id/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: Kerentanan ReDoS pada Time]({%link id/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +Rilis ini juga mencakup beberapa perbaikan pada *build*. +Lihat [GitHub releases](https://github.com/ruby/ruby/releases/tag/v2_7_8) untuk +lebih detail. + +Setelah rilis ini, Ruby 2.7 akan mencapai EOL. Dengan kata lain, ini akan menjadi +rilis terakhir dari rangkaian Ruby 2.7. +Kami tidak akan merilis Ruby 2.7.9 walaupun ada kerentanan keamanan ditemukan +(tetapi, kami mungkin merilis jika sebuah regresi signifikan ditemukan). +Kami merekomendasikan semua pengguna Ruby 2.7 untuk mulai migrasi ke Ruby 3.2, +3.1, atau 3.0 segera. + +## Unduh + +{% assign release = site.data.releases | where: "version", "2.7.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 }} + +## Komentar rilis + +Banyak *committer*, pengembang, dan pengguna yang telah menyediakan laporan +*bug* membantu kami untuk membuat rilis ini. Terima kasih atas kontribusinya. From d0d0ad28c7d99003c8d788753348dda82d9fef14 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Mon, 10 Jul 2023 19:15:37 +0700 Subject: [PATCH 061/607] Translate Ruby 3.0.6 released news post (id) --- .../_posts/2023-03-30-ruby-3-0-6-released.md | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 id/news/_posts/2023-03-30-ruby-3-0-6-released.md diff --git a/id/news/_posts/2023-03-30-ruby-3-0-6-released.md b/id/news/_posts/2023-03-30-ruby-3-0-6-released.md new file mode 100644 index 0000000000..678da565f1 --- /dev/null +++ b/id/news/_posts/2023-03-30-ruby-3-0-6-released.md @@ -0,0 +1,64 @@ +--- +layout: news_post +title: "Ruby 3.0.6 Dirilis" +author: "usa" +translator: "meisyal" +date: 2023-03-30 12:00:00 +0000 +lang: id +--- + +Ruby 3.0.6 telah dirilis. + +Rilis ini mencakup perbaikan keamanan. +Mohon cek topik-topik di bawah ini untuk detail. + +* [CVE-2023-28755: Kerentanan ReDoS pada URI]({%link id/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: Kerentanan ReDoS pada Time]({%link id/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +Rilis ini juga mencakup beberapa perbaikan *bug*. +Lihat [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_0_6) untuk +lebih detail. + +Setelah rilis ini, kami akan mengakhiri fase perawatan normal dari Ruby 3.0 dan +Ruby 3.0 akan memasuki fase perawatan keamanan. +Ini artinya kami tidak akan melakukan *backport* perbaikan *bug* apa pun, kecuali +perbaikan keamanan. + +Ketentuan dari fase perawatan keamanan dijadwalkan selama satu tahun. +Ruby 3.0 akan mencapai EOL dan dukungan resmi berakhir pada akhir dari fase +perawatan keamanan. +Oleh sebab itu, kami merekomendasikan Anda untuk mulai memperbarui Ruby ke +3.1 atau 3.2. + +## Unduh + +{% assign release = site.data.releases | where: "version", "3.0.6" | first %} + +* <{{ 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 }} + +## Komentar Rilis + +Banyak *committer*, pengembang, dan pengguna yang telah menyediakan laporan +*bug* membantu kami untuk membuat rilis ini. Terima kasih atas kontribusinya. + +Perawatan Ruby 3.0, termasuk rilis ini, didasarkan pada +"Agreement for the Ruby stable version" dari Ruby Association. From 8eeb816130a9293517020d847db182d23240a1f5 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Sat, 22 Jul 2023 22:28:06 +0700 Subject: [PATCH 062/607] Translate Ruby 3.1.4 released news post (id) --- .../_posts/2023-03-30-ruby-3-1-4-released.md | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 id/news/_posts/2023-03-30-ruby-3-1-4-released.md diff --git a/id/news/_posts/2023-03-30-ruby-3-1-4-released.md b/id/news/_posts/2023-03-30-ruby-3-1-4-released.md new file mode 100644 index 0000000000..66f82cdcf5 --- /dev/null +++ b/id/news/_posts/2023-03-30-ruby-3-1-4-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.1.4 Dirilis" +author: "nagachika" +translator: "meisyal" +date: 2023-03-30 12:00:00 +0000 +lang: id +--- + +Ruby 3.1.4 telah dirilis. + +Rilis ini mencakup perbaikan keamanan. +Mohon cek topik-topik di bawah ini untuk detail. + +* [CVE-2023-28755: Kerentanan ReDoS pada URI]({%link id/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: Kerentanan ReDoS pada Time]({%link id/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +Lihat [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_4) untuk +lebih detail. + +## Unduh + +{% assign release = site.data.releases | where: "version", "3.1.4" | first %} + +* <{{ 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 }} + +## Komentar Rilis + +Banyak *committer*, pengembang, dan pengguna yang telah menyediakan laporan *bug* +membantu kami untuk membuat rilis ini. Terima kasih atas kontribusinya. From be2d7abf7e8e6fbc8a876443e4a5f9b78f867b61 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Fri, 28 Jul 2023 18:15:28 +0700 Subject: [PATCH 063/607] Translate Ruby 3.2.2 released news post (id) --- .../_posts/2023-03-30-ruby-3-2-2-released.md | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 id/news/_posts/2023-03-30-ruby-3-2-2-released.md diff --git a/id/news/_posts/2023-03-30-ruby-3-2-2-released.md b/id/news/_posts/2023-03-30-ruby-3-2-2-released.md new file mode 100644 index 0000000000..99a50652b2 --- /dev/null +++ b/id/news/_posts/2023-03-30-ruby-3-2-2-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.2.2 Dirilis" +author: "naruse" +translator: "meisyal" +date: 2023-03-30 12:00:00 +0000 +lang: id +--- + +Ruby 3.2.2 telah dirilis. + +Rilis ini mencakup perbaikan keamanan. +Mohon cek topik-topik di bawah ini untuk detail. + +* [CVE-2023-28755: Kerentanan ReDoS pada URI]({%link id/news/_posts/2023-03-28-redos-in-uri-cve-2023-28755.md %}) +* [CVE-2023-28756: Kerentanan ReDoS pada Time]({%link id/news/_posts/2023-03-30-redos-in-time-cve-2023-28756.md %}) + +Lihat [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_2) untuk +lebih detail. + +## Unduh + +{% assign release = site.data.releases | where: "version", "3.2.2" | first %} + +* <{{ 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 }} + +## Komentar Rilis + +Banyak *committer*, pengembang, dan pengguna yang telah menyediakan laporan *bug* +membantu kami untuk membuat rilis ini. Terima kasih atas kontribusinya. From c53fca5d510e794132dd9766fc908b41c1ed92d8 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Sun, 20 Aug 2023 15:44:57 +0700 Subject: [PATCH 064/607] Translate Ruby 3.3.0-preview1 released news post (id) --- ...2023-05-12-ruby-3-3-0-preview1-released.md | 174 ++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 id/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md diff --git a/id/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md b/id/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md new file mode 100644 index 0000000000..50cd9992d4 --- /dev/null +++ b/id/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -0,0 +1,174 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview1 Dirilis" +author: "naruse" +translator: "meisyal" +date: 2023-05-12 00:00:00 +0000 +lang: id +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview1" | first %} + +Kami dengan senang hati mengumumkan rilis dari Ruby {{ release.version }}. +Ruby 3.3. menambahkan sebuah *pure-Ruby* JIT *compiler* baru yang bernama RJIT, +menggunakan Lrama sebagai *parser generator*, dan memperbaiki performa khususnya +YJIT. + +## RJIT + +* Memperkenalkan sebuah *pure-Ruby* JIT *compiler* dan menggantikan MJIT. + * RJIT hanya mendukung arsitektur x86\_64 pada *platform Unix*. + * Berbeda dengan MJIT, RJIT tidak membutuhkan sebuah C *compiler* saat *runtime*. +* RJIT ada untuk tujuan eksperimen. + * Anda harus tetap menggunakan YJIT pada *production*. +* Jika Anda tertarik untuk mengembangkan JIT pada Ruby, mohon cek + [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## Menggunakan Lrama ketimbang Bison + +* Mengganti Bison dengan [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * Jika Anda tertarik, silakan lihat [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + +## YJIT + +* Peningkatan performa yang signifikan dibanding Ruby 3.2 + * Dukungan *splat* dan *rest argument* telah ditingkatkan. + * *Register* dialokasikan untuk operasi *stack* dari *virtual machine*. + * Pemanggilan dengan *optional argument* dikompilasi. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` dioptimisasi. + * *Instant variable* tidak lagi keluar ke *intepreter* dengan *Object Shapes* + yang sangat besar. +* *Metadata* dari kode yang dikompilasi menggunakan *memory* lebih sedikit. +* Peningkatan *code generation* pada ARM64 +* Opsi untuk menjalankan YJIT pada *paused mode* dan mengaktifkan kembali secara manual + * `--yjit-pause` dan `RubyVM::YJIT.resume` + * Ini dapat digunakan untuk mengaktifkan YJIT ketika aplikasi Anda selesai *booting* +* Opsi *exit tracing* sekarang mendukung *sampling* + * `--trace-exits-sample-rate=N` +* Perbaikan beberapa *bug* + + + +## Fitur Penting Lainnya + +### Bahasa + + + +## Perbaikan performa + +* `defined?(@ivar)` dioptimisasi dengan *Object Shapes*. + +## Perubahan penting lainnya sejak 3.2 + + + +## Isu kompatibilitas + +Catatan: Tidak termasuk perbaikan *bug* dari fitur. + +### Constant terhapus + +Berikut ini adalah *constant* yang telah dihapus. + + + +### Method terhapus + +Berikut ini adalah *method* yang telah dihapus. + + + +## Isu kompatibilitas Stdlib + +### `ext/readline` dipensiunkan + +* Kami memiliki `reline` yang merupakan implementasi Ruby murni dan kompatibel + dengan `ext/readline` API. Kami bergantung pada `reline` di masa depan. Jika + Anda perlu untuk menggunakan `ext/readline`, Anda dapat memasang `ext/readline` + melalui rubygems.org dengan `gem install readline-ext`. +* Kami tidak lagi memasang pustaka, seperti `libreadline` atau `libedit`. + +## Pembaruan C API + +### C API diperbarui + +Berikut adalah API yang telah diperbarui. + + + +### C API terhapus + +Berikut adalah API yang telah dihapus. + + + +## Pembaruan pustaka standar + + + +Berikut adalah *default gem* yang telah diperbarui. + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.7 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.6.4 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.3 +* stringio 3.0.7 +* strscan 3.0.7 +* syntax_suggest 1.0.4 +* time 0.2.2 +* timeout 0.3.2 +* uri 0.12.1 + +Berikut adalah *bundled gem* yang telah diperbarui. + +* minitest 5.18.0 +* rbs 3.1.0 +* typeprof 0.21.7 +* debug 1.8.0 + +Lihat rilis GitHub, seperti [Logger](https://github.com/ruby/logger/releases) +atau *changelog* untuk detail dari *default gem* atau *bundled gem*. + +Lihat [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +atau [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) +untuk lebih detail. + +Dengan perubahan tersebut, [{{ release.stats.files_changed }} berkas berubah, {{ release.stats.insertions }} sisipan(+), {{ release.stats.deletions }} terhapus(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +sejak Ruby 3.2.0! + +## Unduh + +* <{{ 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 }} + +## Apa itu Ruby + +Ruby pertama kali dikembangkan oleh Matz (Yukihiro Matsumoto) pada 1993 +dan sekarang dikembangkan sebagai *Open Source*. Ruby berjalan pada berbagai +*platform* dan digunakan di seluruh dunia, khususnya pengembangan *web*. From e573cc570ab26511114182c59973e514332aba1d Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Sat, 2 Sep 2023 20:38:15 +0700 Subject: [PATCH 065/607] Translate CVE-2023-36617: ReDoS vulnerability in URI (id) --- .../2023-06-29-redos-in-uri-CVE-2023-36617.md | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 id/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md diff --git a/id/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/id/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md new file mode 100644 index 0000000000..21ac39eca0 --- /dev/null +++ b/id/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -0,0 +1,55 @@ +--- +layout: news_post +title: "CVE-2023-36617: Kerentanan ReDoS pada URI" +author: "hsbt" +translator: "meisyal" +date: 2023-06-29 01:00:00 +0000 +tags: security +lang: id +--- + +Kami telah merilis versi *gem* uri 0.12.2, 0.10.3 yang memiliki perbaikan +keamanan untuk kerentanan ReDoS. +Kerentanan ini telah ditetapkan dengan penanda CVE +[CVE-2023-36617](https://www.cve.org/CVERecord?id=CVE-2023-36617). + +## Detail + +Sebuah isu ReDoS ditemukan pada komponen URI hingga versi 0.12.1. URI *parser* +menangani URL yang tidak valid yang memiliki karakter tertentu secara tidak tepat. +Ini menyebabkan kenaikan waktu eksekusi untuk mem-*parse string* ke objek URI +dengan rfc2396_parser.rb dan rfc3986_parser.rb. + +Catatan: isu ini ada karena perbaikan kurang sempurna pada +[CVE-2023-28755](https://www.ruby-lang.org/id/news/2023/03/28/redos-in-uri-cve-2023-28755/). + +*Gem* `uri` versi 0.12.1 dan semua versi sebelum 0.12.1 rentan terhadap isu ini. + +## Tindakan yang direkomendasikan + +Kami merekomendasikan untuk memperbarui *gem* `uri` ke 0.12.2. Untuk memastikan +kompatibilitas dengan versi yang dibundel pada rangkaian Ruby lama, Anda bisa +memperbarui dengan langkah berikut. + +* Untuk Ruby 3.0: Perbarui `uri` ke 0.10.3 +* Untuk Ruby 3.1 dan 3.2: Perbarui `uri` ke 0.12.2 + +Anda dapat menggunakan `gem update uri` untuk memperbarui. Jika Anda menggunakan +*bundler*, mohon tambahkan `gem "uri", ">= 0.12.2"` (atau versi lain yang disebut +sebelumnya) pada `Gemfile` Anda. + +## Versi terimbas + +* *Gem* uri 0.12.1 atau sebelumnya + +## Rujukan + +Terima kasih kepada [ooooooo_q](https://hackerone.com/ooooooo_q) yang telah +menemukan isu ini. + +Terima kasih kepada [nobu](https://github.com/nobu) yang telah memperbaiki isu +ini. + +## Riwayat + +* Semula dipublikasikan pada 2023-06-29 01:00:00 (UTC) From 33e255c417bd921aeeea9b5b08a6f4490b486c44 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sun, 27 Aug 2023 13:10:25 +0800 Subject: [PATCH 066/607] Translate Ruby 3.2.0 preview2 released news post (zh_tw) --- ...2022-09-09-ruby-3-2-0-preview2-released.md | 312 ++++++++++++++++++ 1 file changed, 312 insertions(+) create mode 100644 zh_tw/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md diff --git a/zh_tw/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md b/zh_tw/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md new file mode 100644 index 0000000000..565029b98d --- /dev/null +++ b/zh_tw/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md @@ -0,0 +1,312 @@ +--- +layout: news_post +title: "Ruby 3.2.0 Preview 2 Released" +author: "naruse" +translator: "Bear Su" +date: 2022-09-09 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.2.0-preview2" | first %} + +我們很高興宣佈 Ruby {{ release.version }} 發佈了. Ruby 3.2 新增許多新功能及效能提升. + + +## 基於 WASI 的 WebAssembly 支援 + +這是首次基於 WASI 支援 WebAssembly。使得 CRuby binary 可用於網頁瀏覽器、Serverless Edge 環境、與其他 WebAssembly/WASI 嵌入式環境. 目前已通過 basic 與 bootstrap 測試,但不包括 Thread API。 + +![](https://i.imgur.com/opCgKy2.png) + +### 背景 + +[WebAssembly (Wasm)](https://webassembly.org/) 最初是為了在網頁瀏覽器中安全快速地執行程式。但其目標 - 在不同的環境上安全又有效率的執行程式,不僅是 web 應用程式,也是其他一般應用程式的目標。 + +[WASI (The WebAssembly System Interface)](https://wasi.dev/) 被設計用於此使用場景。 儘管應用程式需要與作業系統溝通,但 WebAssembly 卻是運行在沒有系統介面的虛擬機中。WASI 將其標準化了。 + +Ruby 中的 WebAssembly/WASI 支援透過這些專案,允許 Ruby 開發者可以開發在相容此功能的平台上執行的應用程式。 + +### 使用場景 + +此支援功能使得開發者可以在 WebAssembly 環境上使用 CRuby。 其中一個範例就是 [TryRuby playground](https://try.ruby-lang.org/playground/) 的 CRuby 支援。現在您可以在您的網頁瀏覽器上嘗試原生的 CRuby。 + +### 技術特點 + +因為目前 WASI 和 WebAssembly 不斷地再改進與安全性理由,仍缺少一些功能來實現 Fiber、異常、和 GC。所以 CRuby 透過使用 Asyncify,一個在使用者空間的 binary 轉換技術,來彌補中間的差距。 + +並且,我們建置了 [a VFS on top of WASI](https://github.com/kateinoigakukun/wasi-vfs/wiki/Getting-Started-with-CRuby),讓我們可以很容易地將 Ruby 應用程式打包成單一 .wasm 檔案。簡化了 Ruby 應用程式的分發過程。 + + +### 相關連結 + +* [Add WASI based WebAssembly support #5407](https://github.com/ruby/ruby/pull/5407) +* [An Update on WebAssembly/WASI Support in Ruby](https://itnext.io/final-report-webassembly-wasi-support-in-ruby-4aface7d90c9) + +## Regexp 逾時設定 + +新增 Regexp matching 的逾時設定。 + +```ruby +Regexp.timeout = 1.0 + +/^a*b?a*$/ =~ "a" * 50000 + "x" +#=> 1 秒後拋出 Regexp::TimeoutError +``` + +眾所皆知 Regexp matching 所花的時間可能會非預期的久。如果您的程式使用效率可能較低的 Regexp 來比對不可信的輸入內容,攻擊者可能可以藉此來發動服務阻斷攻擊。(稱為 Regular expression DoS, or ReDoS)。 + +根據您的 Ruby 應用程式需求,可以透過設定 `Regexp.timeout` 來避免或是減輕被 DoS 的風險。請在您的應用程式中嘗試使用,我們歡迎您的任何建議。 + +注意 `Regexp.timeout` 是全域設定。如果您想要為一些特定的 Regexps 使用不同的逾時設定,您可以在呼叫 `Regexp.new` 時使用 `timeout` keyword。 + +```ruby +Regexp.timeout = 1.0 + +# 這個 regexp 沒有超時設定 +long_time_re = Regexp.new("^a*b?a*$", timeout: nil) + +long_time_re =~ "a" * 50000 + "x" # 不會被中斷 +``` + +最初提案:https://bugs.ruby-lang.org/issues/17837 + + +## 其他值得注意的新功能 + +### 不再綑綁第三方原始碼 + +* 我們不再綑綁第三方原始碼像是 `libyaml`, `libffi`。 + + * psych 中的 libyaml 原始碼已經被移除。您可能需要在 Ubuntu/Debian 平台上安裝 `libyaml-dev`。 每個平台上的套件名稱有所不同。 + + * libffi 將在 preview2 從 `fiddle` 中移除。 + +### 語言功能 + +* 除了作為方法參數,匿名不定長度參數現在也可以傳遞為其他方法的參數。 + [[Feature #18351]] + + ```ruby + def foo(*) + bar(*) + end + def baz(**) + quux(**) + end + ``` + +* 只接收單一參數的 proc 將不會自動解開封裝。 [[Bug #18633]] + + ```ruby + proc{|a, **k| a}.call([1, 2]) + # Ruby 3.1 與之前的版本 + # => 1 + # Ruby 3.2 與之後的版本 + # => [1, 2] + ``` + +* 常數賦值評估順序將與單一屬性賦值評估順序保持一致。參考以下程式碼: + + ```ruby + foo::BAR = baz + ``` + + `foo` 現在會在 `baz` 之前被呼叫。同樣地,在有多個賦值給常數的情況,會使用從左至右的順序評估。參考以下程式碼: + + ```ruby + foo1::BAR1, foo2::BAR2 = baz1, baz2 + ``` + + 現在使用下面的評估顺序: + + 1. `foo1` + 2. `foo2` + 3. `baz1` + 4. `baz2` + + [[Bug #15928]] + +* Find pattern 不再是實驗性功能。 + [[Feature #18585]] + +* 使用不定長度參數 (例如 `*args`) 的方法,如果同時希望可以作為 keyword 參數傳遞給 `foo(*args)`。必須標記為 `ruby2_keywords` (若還未標記)。 + 換句話說,希望作為接收 keyword 參數的其他方法都毫無例外地必須標記為 `ruby2_keywords`。若某個函式庫需要使用 Ruby 3+,這會是一個較為容易的過渡升級方法。 + 在此之前,當接受方法取得 `*args`時會保留 `ruby2_keywords` 標記,但這是一個錯誤且行為不一致。 + 對於找到可能缺少 `ruby2_keywords` 標記的好方法是執行測試,在測試失敗的地方,找到最後一個接收 keyword 參數的方法,在哪裡使用 `puts nil, caller, nil`,並檢查每一個在呼叫鏈上的方法/區塊,是否都被正確地標記為 `ruby2_keywords`。[[Bug #18625]] [[Bug #16466]] + + ```ruby + def target(**kw) + end + + # 意外地 Ruby 2.7-3.1 在沒有 ruby2_keywords 的情況下可以成功 + # 執行,但在 3.2+ 卻是必需的。若需移除 ruby2_keywords, + # #foo 和 #bar 需要將參數改成 (*args, **kwargs) 或 (...) + ruby2_keywords def bar(*args) + target(*args) + end + + ruby2_keywords def foo(*args) + bar(*args) + end + + foo(k: 1) + ``` + +## 效能提升 + +### YJIT + +* 支援 arm64 / aarch64 架構的 UNIX 平台。 +* 建置 YJIT 時需要 Rust 1.58.1+ 。 [[Feature #18481]] + +## 自 3.1 以來其他值得注意的變更 + +* Hash + * 當 hash 為空時, Hash#shift 現在總是回傳 nil,取代以往回傳預設值或呼叫預設的 proc。 [[Bug #16908]] + +* MatchData + * 已新增 MatchData#byteoffset。 [[Feature #13110]] + +* Module + * 已新增 Module.used_refinements。 [[Feature #14332]] + * 已新增 Module#refinements。 [[Feature #12737]] + * 已新增 Module#const_added。 [[Feature #17881]] + +* Proc + * Proc#dup 回傳子類別的實體。 [[Bug #17545]] + * Proc#parameters 現在接受 lambda keyword。 [[Feature #15357]] + +* Refinement + * 已新增 Refinement#refined_class。 [[Feature #12737]] + +* Set + * Set 現在可以直接使用,不再需要先 `require "set"`。 [[Feature #16989]] + 目前是透過 `Set` 常數或呼叫 `Enumerable#to_set` 來自動載入。 + +* String + * 已新增 String#byteindex 和 String#byterindex。 [[Feature #13110]] + * 更新 Unicode 至 Version 14.0.0 和 Emoji Version 14.0。 [[Feature #18037]] (也適用於 Regexp) + * 已新增 String#bytesplice。 [[Feature #18598]] + +* Struct + * `Struct.new` 不需要傳入 `keyword_init: true` 也可以透過 keyword 參數初始化。 [[Feature #16806]] + +## 相容性問題 + +注意:不包含功能問題的修正。 + +### 被移除的常數 + +下列廢棄的常數已被移除。 + +* `Fixnum` 和 `Bignum` [[Feature #12005]] +* `Random::DEFAULT` [[Feature #17351]] +* `Struct::Group` +* `Struct::Passwd` + +### 被移除的方法 + +下列廢棄的方法已被移除。 + +* `Dir.exists?` [[Feature #17391]] +* `File.exists?` [[Feature #17391]] +* `Kernel#=~` [[Feature #15231]] +* `Kernel#taint`, `Kernel#untaint`, `Kernel#tainted?` + [[Feature #16131]] +* `Kernel#trust`, `Kernel#untrust`, `Kernel#untrusted?` + [[Feature #16131]] + +## Stdlib 相容性問題 + +* `Psych` 不再綑綁 libyaml 原始碼. + 使用者需要透過套件管理系統自行安裝 libyaml 函式庫。 [[Feature #18571]] + +## C API 更新 + +### 被移除的 C APIs + +下列廢棄的 APIs 已被移除。 + +* `rb_cData` 變數。 +* "taintedness" 和 "trustedness" 函式. [[Feature #16131]] + +### 標準函式庫更新 + +* 下列的預設 gem 已被更新。 + + * TBD + +* 下列的 bundled gem 已被更新。 + + * TBD + +* 下列的預設 gem 現在是 bundled gems。你需要在 bundler 環境下將這些函式庫加入到 `Gemfile` 中。 + + * TBD + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}) 來了解更多。 + +自 Ruby 3.1.0 以來,計 [{{ release.stats.files_changed }} 檔案變更, {{ release.stats.insertions }} 行新增 (+), {{ release.stats.deletions }} 行刪減 (-)](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}#file_bucket)! + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 + + + +[Feature #12005]: https://bugs.ruby-lang.org/issues/12005 +[Feature #12655]: https://bugs.ruby-lang.org/issues/12655 +[Feature #12737]: https://bugs.ruby-lang.org/issues/12737 +[Feature #13110]: https://bugs.ruby-lang.org/issues/13110 +[Feature #14332]: https://bugs.ruby-lang.org/issues/14332 +[Feature #15231]: https://bugs.ruby-lang.org/issues/15231 +[Feature #15357]: https://bugs.ruby-lang.org/issues/15357 +[Bug #15928]: https://bugs.ruby-lang.org/issues/15928 +[Feature #16131]: https://bugs.ruby-lang.org/issues/16131 +[Bug #16466]: https://bugs.ruby-lang.org/issues/16466 +[Feature #16806]: https://bugs.ruby-lang.org/issues/16806 +[Bug #16889]: https://bugs.ruby-lang.org/issues/16889 +[Bug #16908]: https://bugs.ruby-lang.org/issues/16908 +[Feature #16989]: https://bugs.ruby-lang.org/issues/16989 +[Feature #17351]: https://bugs.ruby-lang.org/issues/17351 +[Feature #17391]: https://bugs.ruby-lang.org/issues/17391 +[Bug #17545]: https://bugs.ruby-lang.org/issues/17545 +[Feature #17881]: https://bugs.ruby-lang.org/issues/17881 +[Feature #18037]: https://bugs.ruby-lang.org/issues/18037 +[Feature #18159]: https://bugs.ruby-lang.org/issues/18159 +[Feature #18351]: https://bugs.ruby-lang.org/issues/18351 +[Bug #18487]: https://bugs.ruby-lang.org/issues/18487 +[Feature #18571]: https://bugs.ruby-lang.org/issues/18571 +[Feature #18585]: https://bugs.ruby-lang.org/issues/18585 +[Feature #18598]: https://bugs.ruby-lang.org/issues/18598 +[Bug #18625]: https://bugs.ruby-lang.org/issues/18625 +[Bug #18633]: https://bugs.ruby-lang.org/issues/18633 +[Feature #18685]: https://bugs.ruby-lang.org/issues/18685 +[Bug #18782]: https://bugs.ruby-lang.org/issues/18782 +[Feature #18788]: https://bugs.ruby-lang.org/issues/18788 +[Feature #18809]: https://bugs.ruby-lang.org/issues/18809 +[Feature #18481]: https://bugs.ruby-lang.org/issues/18481 From 833920128596ef7aa9d766c01de3e857b16d448c Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 31 Aug 2023 21:35:00 +0800 Subject: [PATCH 067/607] Translate Ruby 3.2.0 preview3 released news post (zh_tw) --- ...2022-11-11-ruby-3-2-0-preview3-released.md | 378 ++++++++++++++++++ 1 file changed, 378 insertions(+) create mode 100644 zh_tw/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md diff --git a/zh_tw/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md b/zh_tw/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md new file mode 100644 index 0000000000..fb54c02fee --- /dev/null +++ b/zh_tw/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md @@ -0,0 +1,378 @@ +--- +layout: news_post +title: "Ruby 3.2.0 Preview 3 Released" +author: "naruse" +translator: "Bear Su" +date: 2022-11-11 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.2.0-preview3" | first %} + +我們很高興宣佈 Ruby {{ release.version }} 發佈了. Ruby 3.2 新增許多新功能及效能提升. + + +## 基於 WASI 的 WebAssembly 支援 + +這是首次基於 WASI 支援 WebAssembly。使得 CRuby binary 可用於網頁瀏覽器、Serverless Edge 環境、與其他 WebAssembly/WASI 嵌入式環境. 目前已通過 basic 與 bootstrap 測試,但不包括 Thread API。 + +![](https://i.imgur.com/opCgKy2.png) + +### 背景 + +[WebAssembly (Wasm)](https://webassembly.org/) 最初是為了在網頁瀏覽器中安全快速地執行程式。但其目標 - 在不同的環境上安全又有效率的執行程式,不僅是 web 應用程式,也是其他一般應用程式的目標。 + +[WASI (The WebAssembly System Interface)](https://wasi.dev/) 被設計用於此使用場景。 儘管應用程式需要與作業系統溝通,但 WebAssembly 卻是運行在沒有系統介面的虛擬機中。WASI 將其標準化了。 + +Ruby 中的 WebAssembly/WASI 支援透過這些專案,允許 Ruby 開發者可以開發在相容此功能的平台上執行的應用程式。 + +### 使用場景 + +此支援功能使得開發者可以在 WebAssembly 環境上使用 CRuby。 其中一個範例就是 [TryRuby playground](https://try.ruby-lang.org/playground/) 的 CRuby 支援。現在您可以在您的網頁瀏覽器上嘗試原生的 CRuby。 + +### 技術特點 + +因為目前 WASI 和 WebAssembly 不斷地再改進與安全性理由,仍缺少一些功能來實現 Fiber、異常、和 GC。所以 CRuby 透過使用 Asyncify,一個在使用者空間的 binary 轉換技術,來彌補中間的差距。 + +並且,我們建置了 [a VFS on top of WASI](https://github.com/kateinoigakukun/wasi-vfs/wiki/Getting-Started-with-CRuby),讓我們可以很容易地將 Ruby 應用程式打包成單一 .wasm 檔案。簡化了 Ruby 應用程式的分發過程。 + + +### 相關連結 + +* [Add WASI based WebAssembly support #5407](https://github.com/ruby/ruby/pull/5407) +* [An Update on WebAssembly/WASI Support in Ruby](https://itnext.io/final-report-webassembly-wasi-support-in-ruby-4aface7d90c9) + +## Regexp 增強 ReDoS 防禦 + +眾所皆知 Regexp matching 所花的時間可能會非預期的久。如果您的程式使用效率可能較低的 Regexp 來比對不可信的輸入內容,攻擊者可能可以藉此來發動服務阻斷攻擊。(稱為 Regular expression DoS, or ReDoS)。 + +我們進行了兩項改進,可以顯著降低 ReDos 攻擊的影響。 + +### 改善 Regexp 比對演算法 + +從 Ruby 3.2 開始,透過使用 memoization 技術,Regexp 的比對演算法得到了很大的改進。 + +``` +# 這個比對在 Ruby 3.1 需要花費 10 秒。 而在 Ruby 3.2 只需要花費 0.003 秒。 + +/^a*b?a*$/ =~ "a" * 50000 + "x" +``` + +改進後的演算法使得大部分的 Regexp (我們實驗中的 90%) 可以在線性時間內完成。 + +(給預覽使用者:這個改善可能會花費與輸入長度成比例的記憶體。我們預期這不會有實際問題,因為這種記憶體分配通常都會延遲,而正常的 Regexp 最多可花費輸入長度 10 倍的記憶體。如果您在現實場景中使用 Regexp 進行比對時遇到記憶題不足的問題,請向我們回報。) + +最初提案: + +### Regexp 逾時設定 + +上述的改善無法套用在某些 Regexp,像是包含進階功能 (例如:back-references 或是 look-around),或有大量固定重複次數。作為備案,我們在 Regexp 比對中導入了逾時設定。 + +```ruby +Regexp.timeout = 1.0 + +/^a*b?a*()\1$/ =~ "a" * 50000 + "x" +#=> 1 秒後拋出 Regexp::TimeoutError +``` + +注意 `Regexp.timeout` 是全域設定。如果您想要為一些特定的 Regexps 使用不同的逾時設定,您可以在呼叫 `Regexp.new` 時使用 `timeout` keyword。 + +```ruby +Regexp.timeout = 1.0 + +# This regexp has no timeout +long_time_re = Regexp.new('^a*b?a*()\1$', timeout: Float::INFINITY) + +long_time_re =~ "a" * 50000 + "x" # 不會被中斷 +``` + +最初提案: + +## 其他值得注意的新功能 + +### 不再綑綁第三方原始碼 + +* 我們不再綑綁第三方原始碼像是 `libyaml`, `libffi`。 + + * psych 中的 libyaml 原始碼已經被移除。您可能需要在 Ubuntu/Debian 平台上安裝 `libyaml-dev`。 每個平台上的套件名稱有所不同。 + + * 綑綁的 libffi 原始碼也從 `fiddle` 中被移除 + +### 語言功能 + +* 除了作為方法參數,匿名不定長度參數現在也可以傳遞為其他方法的參數。 + [[Feature #18351]] + + ```ruby + def foo(*) + bar(*) + end + def baz(**) + quux(**) + end + ``` + +* 只接收單一參數的 proc 將不會自動解開封裝。 [[Bug #18633]] + + ```ruby + proc{|a, **k| a}.call([1, 2]) + # Ruby 3.1 與之前的版本 + # => 1 + # Ruby 3.2 與之後的版本 + # => [1, 2] + ``` + +* 常數賦值評估順序將與單一屬性賦值評估順序保持一致。參考以下程式碼: + + ```ruby + foo::BAR = baz + ``` + + `foo` 現在會在 `baz` 之前被呼叫。同樣地,在有多個賦值給常數的情況,會使用從左至右的順序評估。參考以下程式碼: + + ```ruby + foo1::BAR1, foo2::BAR2 = baz1, baz2 + ``` + + 現在使用下面的評估顺序: + + 1. `foo1` + 2. `foo2` + 3. `baz1` + 4. `baz2` + + [[Bug #15928]] + +* Find pattern 不再是實驗性功能。 + [[Feature #18585]] + +* 使用不定長度參數 (例如 `*args`) 的方法,如果同時希望可以作為 keyword 參數傳遞給 `foo(*args)`。必須標記為 `ruby2_keywords` (若還未標記)。 + 換句話說,希望作為接收 keyword 參數的其他方法都毫無例外地必須標記為 `ruby2_keywords`。若某個函式庫需要使用 Ruby 3+,這會是一個較為容易的過渡升級方法。 + 在此之前,當接受方法取得 `*args`時會保留 `ruby2_keywords` 標記,但這是一個錯誤且行為不一致。 + 對於找到可能缺少 `ruby2_keywords` 標記的好方法是執行測試,在測試失敗的地方,找到最後一個接收 keyword 參數的方法,在哪裡使用 `puts nil, caller, nil`,並檢查每一個在呼叫鏈上的方法/區塊,是否都被正確地標記為 `ruby2_keywords`。[[Bug #18625]] [[Bug #16466]] + + ```ruby + def target(**kw) + end + + # 意外地 Ruby 2.7-3.1 在沒有 ruby2_keywords 的情況下可以成功 + # 執行,但在 3.2+ 卻是必需的。若需移除 ruby2_keywords, + # #foo 和 #bar 需要將參數改成 (*args, **kwargs) 或 (...) + ruby2_keywords def bar(*args) + target(*args) + end + + ruby2_keywords def foo(*args) + bar(*args) + end + + foo(k: 1) + ``` + +## 效能改善 + +### YJIT + +* 支援 arm64 / aarch64 架構的 UNIX 平台。 +* 建置 YJIT 時需要 Rust 1.58.1+ 。 [[Feature #18481]] + +## Other notable changes since 3.1 + +* Hash + * 當 hash 為空時, Hash#shift 現在總是回傳 nil,取代以往回傳預設值或呼叫預設的 proc。 [[Bug #16908]] + +* MatchData + * 已新增 MatchData#byteoffset。 [[Feature #13110]] + +* Module + * 已新增 Module.used_refinements。 [[Feature #14332]] + * 已新增 Module#refinements。 [[Feature #12737]] + * 已新增 Module#const_added。 [[Feature #17881]] + +* Proc + * Proc#dup 回傳子類別的實體。 [[Bug #17545]] + * Proc#parameters 現在接受 lambda keyword。 [[Feature #15357]] + +* Refinement + * 已新增 Refinement#refined_class。 [[Feature #12737]] + +* RubyVM::AbstractSyntaxTree + * `parse`, `parse_file` 和 `of` 新增 `error_tolerant` 選項。 [[Feature #19013]] + +* Set + * Set 現在可以直接使用,不再需要先 `require "set"`。 [[Feature #16989]] + 目前是透過 `Set` 常數或呼叫 `Enumerable#to_set` 來自動載入。 + + +* String + * 已新增 String#byteindex 和 String#byterindex。 [[Feature #13110]] + * 更新 Unicode 至 Version 14.0.0 和 Emoji Version 14.0。 [[Feature #18037]] (也適用於 Regexp) + * 已新增 String#bytesplice。 [[Feature #18598]] + +* Struct + * `Struct.new` 不需要傳入 `keyword_init: true` 也可以透過 keyword 參數初始化。 [[Feature #16806]] + +## 相容性問題 + +注意:不包含功能問題的修正。 + +### 被移除的常數 + +下列廢棄的常數已被移除。 + +* `Fixnum` 和 `Bignum` [[Feature #12005]] +* `Random::DEFAULT` [[Feature #17351]] +* `Struct::Group` +* `Struct::Passwd` + +### 被移除的方法 + +下列廢棄的方法已被移除。 + +* `Dir.exists?` [[Feature #17391]] +* `File.exists?` [[Feature #17391]] +* `Kernel#=~` [[Feature #15231]] +* `Kernel#taint`, `Kernel#untaint`, `Kernel#tainted?` + [[Feature #16131]] +* `Kernel#trust`, `Kernel#untrust`, `Kernel#untrusted?` + [[Feature #16131]] + +## Stdlib 相容性問題 + +* `Psych` 不再綑綁 libyaml 原始碼. + 使用者需要透過套件管理系統自行安裝 libyaml 函式庫。 [[Feature #18571]] + +## C API 更新 + +### Updated C APIs + +以下是更新的 APIs。 + +* PRNG 更新 + `rb_random_interface_t` 更新版本。 + 使用此舊版介面建置的擴展函式庫還需要定義 `init_int32` 函式。 + +### 被移除的 C APIs + +下列廢棄的 APIs 已被移除。 + +* `rb_cData` 變數。 +* "taintedness" 和 "trustedness" 函式. [[Feature #16131]] + +### 標準函式庫更新 + +* SyntaxSuggest + + * 被稱為 `dead_end` 的 `syntax_suggest` 以整合進 Ruby。 + [[Feature #18159]] + +* ErrorHighlight + * 現在指向 TypeError 和 ArgumentError 的參數 + +``` +test.rb:2:in `+': nil can't be coerced into Integer (TypeError) + +sum = ary[0] + ary[1] + ^^^^^^ +``` + +* 更新了以下預設 gems。 + * RubyGems 3.4.0.dev + * bigdecimal 3.1.2 + * bundler 2.4.0.dev + * cgi 0.3.2 + * date 3.2.3 + * error_highlight 0.4.0 + * etc 1.4.0 + * io-console 0.5.11 + * io-nonblock 0.1.1 + * io-wait 0.3.0.pre + * ipaddr 1.2.4 + * json 2.6.2 + * logger 1.5.1 + * net-http 0.2.2 + * net-protocol 0.1.3 + * ostruct 0.5.5 + * psych 5.0.0.dev + * reline 0.3.1 + * securerandom 0.2.0 + * set 1.0.3 + * stringio 3.0.3 + * syntax_suggest 0.0.1 + * timeout 0.3.0 +* 更新了以下 bundled gems。 + * minitest 5.16.3 + * net-imap 0.2.3 + * rbs 2.6.0 + * typeprof 0.21.3 + * debug 1.6.2 +* 以下預設 gems 現在成為了 bundled gems。 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}) 來了解更多。 + +自 Ruby 3.1.0 以來,計 [{{ release.stats.files_changed }} 檔案變更, {{ release.stats.insertions }} 行新增 (+), {{ release.stats.deletions }} 行刪減 (-)](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}#file_bucket)! + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 + + + +[Feature #12005]: https://bugs.ruby-lang.org/issues/12005 +[Feature #12655]: https://bugs.ruby-lang.org/issues/12655 +[Feature #12737]: https://bugs.ruby-lang.org/issues/12737 +[Feature #13110]: https://bugs.ruby-lang.org/issues/13110 +[Feature #14332]: https://bugs.ruby-lang.org/issues/14332 +[Feature #15231]: https://bugs.ruby-lang.org/issues/15231 +[Feature #15357]: https://bugs.ruby-lang.org/issues/15357 +[Bug #15928]: https://bugs.ruby-lang.org/issues/15928 +[Feature #16131]: https://bugs.ruby-lang.org/issues/16131 +[Bug #16466]: https://bugs.ruby-lang.org/issues/16466 +[Feature #16806]: https://bugs.ruby-lang.org/issues/16806 +[Bug #16889]: https://bugs.ruby-lang.org/issues/16889 +[Bug #16908]: https://bugs.ruby-lang.org/issues/16908 +[Feature #16989]: https://bugs.ruby-lang.org/issues/16989 +[Feature #17351]: https://bugs.ruby-lang.org/issues/17351 +[Feature #17391]: https://bugs.ruby-lang.org/issues/17391 +[Bug #17545]: https://bugs.ruby-lang.org/issues/17545 +[Feature #17881]: https://bugs.ruby-lang.org/issues/17881 +[Feature #18037]: https://bugs.ruby-lang.org/issues/18037 +[Feature #18159]: https://bugs.ruby-lang.org/issues/18159 +[Feature #18351]: https://bugs.ruby-lang.org/issues/18351 +[Bug #18487]: https://bugs.ruby-lang.org/issues/18487 +[Feature #18571]: https://bugs.ruby-lang.org/issues/18571 +[Feature #18585]: https://bugs.ruby-lang.org/issues/18585 +[Feature #18598]: https://bugs.ruby-lang.org/issues/18598 +[Bug #18625]: https://bugs.ruby-lang.org/issues/18625 +[Bug #18633]: https://bugs.ruby-lang.org/issues/18633 +[Feature #18685]: https://bugs.ruby-lang.org/issues/18685 +[Bug #18782]: https://bugs.ruby-lang.org/issues/18782 +[Feature #18788]: https://bugs.ruby-lang.org/issues/18788 +[Feature #18809]: https://bugs.ruby-lang.org/issues/18809 +[Feature #18481]: https://bugs.ruby-lang.org/issues/18481 +[Bug #19100]: https://bugs.ruby-lang.org/issues/19100 +[Feature #19013]: https://bugs.ruby-lang.org/issues/19013 From 654f0627459f30e71ecacb806e40343fa18eb228 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Sep 2023 15:05:24 +0000 Subject: [PATCH 068/607] Bump actions/checkout from 3.6.0 to 4.0.0 Bumps [actions/checkout](https://github.com/actions/checkout) from 3.6.0 to 4.0.0. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/f43a0e5ff2bd294095638e18286ca9a3d1956744...3df4ab11eba7bda6032a0b82a6bb43b11571feac) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e17970071c..9bf5cae212 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 + uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index a8aba12851..5f441442ee 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 + uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0 - name: Setup Ruby uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0 with: From c03a22578ad512e71cbc6ee70e8cfb4f544df4f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 12 Sep 2023 03:54:56 -0500 Subject: [PATCH 069/607] Translate ReDoS in URI CVE-2023-36617 (es) (#3108) Co-authored-by: Nombre Usuario --- .../2023-06-29-redos-in-uri-CVE-2023-36617.md | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 es/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md diff --git a/es/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/es/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md new file mode 100644 index 0000000000..26a650140d --- /dev/null +++ b/es/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -0,0 +1,56 @@ +--- +layout: news_post +title: "CVE-2023-36617: vulnerabilidad de ReDoS en URI" +author: "hsbt" +translator: vtamara +date: 2023-06-29 01:00:00 +0000 +tags: security +lang: es +--- + +Hemos publicado la gema uri versión 0.12.2 y 0.10.3 que incluyen solución +a una falla de seguridad para una vulnerabilidad ReDoS. +A esta vulnerabilidad se le ha asignado el identificador CVE [CVE-2023-36617](https://www.cve.org/CVERecord?id=CVE-2023-36617). + +## Detalles + +Un problema de denegación de servicio en expresiones regulares (ReDoS) +fue descubierto en el componente URI de Ruby hasta +la versión 0.12.1. El analizador sintáctico de URI no manejaba correctamente +URLs inválidas con ciertos caracteres específicos. Se producía un +aumento en el tiempo de ejecución al analizar cadenas para objetos +URI con rfc2396_parser.rb y rfc3986_parser.rb. + +NOTA: este problema se debió a una solución incompleta para +[CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/28/redos-in-uri-cve-2023-28755/). + +La gema `uri` versión 0.12.1 y todas las versiones anteriores a la +0.12.1 son vulnerables. + +## Acción recomendada + +Recomendamos actualizar la gema `uri` a 0.12.2. Para asegurar +compatibilidad con la versión incluida en series de Ruby anteriores, +debe actualizar así: + +* Para Ruby 3.0: Actualizar a `uri` 0.10.3 +* Para Ruby 3.1 y 3.2: Actualizar a `uri` 0.12.2 + +Puede usar `gem update uri` para actualizarla. Si está usando bundler, +por favor agregue `gem "uri", ">= 0.12.2"` (o la otra versión de las recién +mencionada) a su `Gemfile`. + +## Versiones afectadas + +* gema uri 0.12.1 y anteriores + +## Creditos + +Agradecemos a [ooooooo_q](https://hackerone.com/ooooooo_q) por descubrir +este problema. + +Agradecemos a [nobu](https://github.com/nobu) por resolver este problema. + +## Historia + +* Publicado originalmente el 2023-06-29 01:00:00 (UTC) From c390b8bd1d2f38ace19f1205163affb81686f859 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Thu, 14 Sep 2023 14:25:38 +0900 Subject: [PATCH 070/607] Ruby 3.3.0 Preview 2 Released (#3113) --- _data/downloads.yml | 2 +- _data/releases.yml | 29 +++ ...2023-09-14-ruby-3-3-0-preview2-released.md | 192 ++++++++++++++++++ ...2023-09-14-ruby-3-3-0-preview2-released.md | 176 ++++++++++++++++ 4 files changed, 398 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md create mode 100644 ja/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index 15c73caddc..d293a5b2f5 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,7 +4,7 @@ # optional preview: - - 3.3.0-preview1 + - 3.3.0-preview2 stable: diff --git a/_data/releases.yml b/_data/releases.yml index a995996516..eff98f0329 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,35 @@ # 3.3 series +- version: 3.3.0-preview2 + date: 2023-09-14 + post: /en/news/2023/09/14/ruby-3-3-0-preview2-released/ + tag: v3_3_0_preview2 + stats: + files_changed: 4970 + insertions: 239635 + deletions: 165275 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-preview2.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-preview2.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-preview2.tar.xz + size: + gz: 21074209 + zip: 26095651 + xz: 15600992 + sha1: + gz: cf7329019235dc36b8e3f382a8b8b744922b1163 + zip: 4441cd0db23d133e6e2f7dea28f931a68dac6ca5 + xz: 606d6423137a24eef4f6b07d167596b63c7aaa17 + sha256: + gz: 30ce8b0fe11b37b5ac088f5a5765744b935eac45bb89a9e381731533144f5991 + zip: c9771d24c9b1eab532c04ed076087285601693e4d1c63f131fd078c47c5c0cea + xz: 62b1c4f586c70bf1cb58f2d909d0d824506315782e835f9dd3fcc0b659a70fc1 + sha512: + gz: 1c5a13e519e8487fd40d932b96d14fa729521925c288e7841ab5eada628e506ceca2605bae36eea1aa505d9253383d53cd933b7a4bff96e6de5b1130c7c558e6 + zip: bfeed21d011f891fe22510fe7242992c98f7fd2ce863d8be5740f56a34b726134cb3f5304e8b2dcd468fbc939648f10aae482eee15c1bf6c64b705484ed9e197 + xz: 5ff609a66b7359006df0d87477cf70e6e26c5f40ced81b8254f8154f4fc82c77fed297471b55706c1a4466f2a4257999e933b2ed085f695ace265757ab9500a2 + - version: 3.3.0-preview1 date: 2023-05-12 post: /en/news/2023/05/12/ruby-3-3-0-preview1-released/ diff --git a/en/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md b/en/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md new file mode 100644 index 0000000000..1f63bbba09 --- /dev/null +++ b/en/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -0,0 +1,192 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview2 Released" +author: "naruse" +translator: +date: 2023-09-14 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview2" | first %} + +We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 adds a new pure-Ruby JIT compiler named RJIT, uses Lrama as a parser generator, and many performance improvements especially YJIT. + +## RJIT + +* Introduced a pure-Ruby JIT compiler RJIT and replaced MJIT. + * RJIT supports only x86\_64 architecture on Unix platforms. + * Unlike MJIT, it doesn't require a C compiler at runtime. +* RJIT exists only for experimental purposes. + * You should keep using YJIT in production. +* If you are interested in developing JIT for Ruby, please check out [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## Use Lrama instead of Bison + +* Replace Bison with [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + +## YJIT + +* Major performance improvements over 3.2 + * Support for splat and rest arguments has been improved. + * Registers are allocated for stack operations of the virtual machine. + * More calls with optional arguments are compiled. + * Exception handlers are also compiled. + * Instance variables no longer exit to the interpreter + with megamorphic Object Shapes. + * Unsupported call types no longer exit to the interpreter. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` are specially optimized. + * Now more than 3x faster than the interpreter on optcarrot! +* Metadata for compiled code uses a lot less memory. +* Generate more compact code on ARM64 +* Option to start YJIT in paused mode and then later enable it manually + * `--yjit-pause` and `RubyVM::YJIT.resume` + * This can be used to enable YJIT only once your application is done booting +* `ratio_in_yjit` stat produced by `--yjit-stats` is now avaiable in release builds, + a special stats or dev build is no longer required. +* Exit tracing option now supports sampling + * `--trace-exits-sample-rate=N` +* More thorough testing and multiple bug fixes + + + +## Other Notable New Features + +### Language + + + +## Performance improvements + +* `defined?(@ivar)` is optimized with Object Shapes. + +## Other notable changes since 3.2 + +### IRB + +IRB has received several enhancements, including but not limited to: + +- Advanced `irb:rdbg` integration that provides an equivalent debugging experience to `pry-byebug` ([doc](https://github.com/ruby/irb#debugging-with-irb)). +- Pager support for commands like `ls` and `show_cmds`. +- More accurate and helpful information provided by the `ls` and `show_source` commands. + +In addition, IRB has also undergone extensive refactoring and received dozens of bug fixes to facilitate easier future enhancements. + +## Compatibility issues + +Note: Excluding feature bug fixes. + +### Removed constants + +The following deprecated constants are removed. + + + +### Removed methods + +The following deprecated methods are removed. + + + +## Stdlib compatibility issues + +### `ext/readline` is retired + +* We have `reline` that is pure Ruby implementation compatible with `ext/readline` API. We rely on `reline` in the future. If you need to use `ext/readline`, you can install `ext/readline` via rubygems.org with `gem install readline-ext`. +* We no longer need to install libraries like `libreadline` or `libedit`. + +## C API updates + +### Updated C APIs + +The following APIs are updated. + + + +### Removed C APIs + +The following deprecated APIs are removed. + + + +## Standard library updates + +RubyGems and Bundler warn if users require gem that is scheduled to become the bundled gems in the future version of Ruby. + +The following default gems are updated. + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.8 +* erb 4.0.3 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.7.4 +* nkf 0.1.3 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.8 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* time 0.2.2 +* timeout 0.4.0 +* uri 0.12.2 +* yarp 0.9.0 + +The following bundled gems are updated. + +* minitest 5.19.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.3.7 +* rbs 3.2.1 +* typeprof 0.21.8 +* debug 1.8.0 + +The following default gem is now bundled. + +* racc 1.7.1 + +See GitHub releases like [Logger](https://github.com/ruby/logger/releases) or +changelog for details of the default gems or bundled gems. + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +since Ruby 3.2.0! + + +## Download + +* <{{ 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 + +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/2023-09-14-ruby-3-3-0-preview2-released.md b/ja/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md new file mode 100644 index 0000000000..daca9d68a1 --- /dev/null +++ b/ja/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -0,0 +1,176 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview2 リリース" +author: "naruse" +translator: +date: 2023-09-14 00:00:00 +0000 +lang: ja +--- + +Ruby 3.3.0-preview1 が公開されました。Ruby 3.3ではRJITという新たなJITの仕組みを追加するとともに、YJITの高速化など様々な改善が行われています。 + +{% assign release = site.data.releases | where: "version", "3.3.0-preview2" | first %} + +## RJIT + +* Introduced a pure-Ruby JIT compiler RJIT and replaced MJIT. + * RJIT supports only x86\_64 architecture on Unix platforms. + * Unlike MJIT, it doesn't require a C compiler at runtime. +* RJIT exists only for experimental purposes. + * You should keep using YJIT in production. +* If you are interested in developing JIT for Ruby, please check out [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## Use Lrama instead of Bison + +* Replace Bison with [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637] + * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * See also: [Ruby Parser開発日誌 (5) - Lrama LALR (1) parser generatorを実装した](https://yui-knk.hatenablog.com/entry/2023/03/13/101951) + + +## YJIT + +* Significant performance improvements over 3.2 + * Splat and rest arguments support has been improved. + * Registers are allocated for stack operations of the virtual machine. + * More calls with optional arguments are compiled. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` are specially optimized. + * Instance variables no longer exit to the interpreter + with megamorphic Object Shapes. +* Metadata for compiled code uses a lot less memory. +* Improved code generation on ARM64 +* Option to start YJIT in paused mode and then later enable it manually + * `--yjit-pause` and `RubyVM::YJIT.resume` + * This can be used to enable YJIT only once your application is done booting +* Exit tracing option now supports sampling + * `--trace-exits-sample-rate=N` +* Multiple bug fixes + +* + +## その他の主要な新機能 + +### 言語機能 + + +## パフォーマンスの改善 + +## その他の注目すべき 3.2 からの変更点 + +### IRB + +IRBは様々な機能強化を行いました。主なものは以下の通りです。 + +* IRBとrdbgの連携 pry-byebugのような使い心地でデバッグできるようになりました。([使い方](https://github.com/ruby/irb#debugging-with-irb)) +* lsコマンドやshow_cmdsの出力がPagerで表示されるようになりました。 +* lsコマンドやshow_sourceコマンドがより便利で詳細な情報を出力するようになりました。 + +また、機能強化以外にも、数多くのバグ修正および将来的な機能拡張を見越した大規模なリファクタリングを行ないました。 + + +## 互換性に関する変更 + +### 定数の削除 + +以下の非推奨定数は削除されました + + + +### メソッドの削除 + +以下の非推奨のメソッドは削除されました + + +## 標準添付ライブラリの互換性に関する変更 + +### `ext/readline` の削除 + +* 今後は Ruby で書かれた GNU Readline の互換ライブラリである `reline` をすべての環境で標準で利用し、`ext/readline` は削除されました。以前の `ext/readline` が必要なユーザーは `gem install readline-ext` でインストールすることができます。 +* この変更により、Ruby のインストール時に `libreadline` や `libedit` などのライブラリのインストールは不要となります。 + +## C API の変更 + +### C API の更新 + +以下の API が更新されました + +### C API の削除 + +以下の非推奨の API は削除されました + + +## 標準添付ライブラリのアップデート + +RubyGems と Bundler は将来リリースされる Ruby で bundled gems となる予定の gem が require された際に警告を行う機能が追加されました。 + +以下の default gems のバージョンがアップデートされました。 + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.8 +* erb 4.0.3 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.7.4 +* nkf 0.1.3 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.8 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* time 0.2.2 +* timeout 0.4.0 +* uri 0.12.2 +* yarp 0.9.0 + +以下の bundled gems のバージョンがアップデートされました。 + +* minitest 5.19.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.3.7 +* rbs 3.2.1 +* typeprof 0.21.8 +* debug 1.8.0 + +新たに以下の gem が bundled gems として添付されました。 + +* racc 1.7.1 + +default gems と bundled gems の詳細については [Logger の GitHub Releases](https://github.com/ruby/logger/releases) のような GitHub releases または changelog ファイルを参照してください。 + + +その他詳細については、[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) ファイルまたは[コミットログ](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})を参照してください。 + +なお、こうした変更により、Ruby 3.2.0 以降では [{{ release.stats.files_changed }} 個のファイルに変更が加えられ、{{ release.stats.insertions }} 行の追加と {{ release.stats.deletions }} 行の削除が行われました](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) ! + + +## ダウンロード + +* <{{ 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 とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 From 35b71c3280739f9b3486ecdea394c145f5e1868e Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Thu, 14 Sep 2023 14:37:47 +0900 Subject: [PATCH 071/607] fix release version --- ja/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ja/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md b/ja/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md index daca9d68a1..3137963831 100644 --- a/ja/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md +++ b/ja/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -7,7 +7,7 @@ date: 2023-09-14 00:00:00 +0000 lang: ja --- -Ruby 3.3.0-preview1 が公開されました。Ruby 3.3ではRJITという新たなJITの仕組みを追加するとともに、YJITの高速化など様々な改善が行われています。 +Ruby 3.3.0-preview2 が公開されました。Ruby 3.3ではRJITという新たなJITの仕組みを追加するとともに、YJITの高速化など様々な改善が行われています。 {% assign release = site.data.releases | where: "version", "3.3.0-preview2" | first %} From c869cf4667f2a56879d57d0578d6994cb103534d Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 15 Sep 2023 15:38:37 +0900 Subject: [PATCH 072/607] Translate "Ruby 3.3.0-preview2 Released" (ko) (#3114) * Fix preview1 title * Copy from en ver * Translate ko/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md to ko * Apply suggestions from code review Co-authored-by: Chayoung You * Backport translation improvement to 3.3.0 preview1 --------- Co-authored-by: Chayoung You --- ...2023-05-12-ruby-3-3-0-preview1-released.md | 4 +- ...2023-09-14-ruby-3-3-0-preview2-released.md | 192 ++++++++++++++++++ 2 files changed, 194 insertions(+), 2 deletions(-) create mode 100644 ko/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md diff --git a/ko/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md b/ko/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md index e950d8c281..2fee8d2be5 100644 --- a/ko/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md +++ b/ko/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.3.0-preview1 Released" +title: "Ruby 3.3.0-preview1 릴리스" author: "naruse" translator: "shia" date: 2023-05-12 00:00:00 +0000 @@ -27,7 +27,7 @@ Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.3 ## YJIT -* 3.2 버전 대비 성능 대폭 향상 +* 3.2 버전 대비 주요 성능 개선 사항 * 스플랫과 나머지 인자 지원이 개선되었습니다. * 가상 머신의 스택 연산을 위해 레지스터가 할당됩니다. * 선택적 인수가 포함된 더 많은 호출이 컴파일됩니다. diff --git a/ko/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md b/ko/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md new file mode 100644 index 0000000000..535c28964b --- /dev/null +++ b/ko/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -0,0 +1,192 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview2 릴리스" +author: "naruse" +translator: "shia" +date: 2023-09-14 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview2" | first %} + +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.3은 RJIT으로 명명된 새로운 순수 Ruby JIT 컴파일러를 추가하고, 파서 생성기로 Lrama를 사용하며, 특히 YJIT에서 많은 성능 향상이 있습니다. + +## RJIT + +* 순수 Ruby JIT 컴파일러 RJIT을 도입하고 MJIT을 대체했습니다. + * RJIT은 Unix 플랫폼에서 x86\_64 아키텍처만 지원합니다. + * MJIT과 달리 런타임에 C 컴파일러가 필요하지 않습니다. +* RJIT은 실험 목적으로 존재합니다. + * 프로덕션 환경에서는 YJIT을 계속 사용해야 합니다. +* Ruby용 JIT 개발에 관심이 있다면 [RubyKaigi 2023 3일차에 있었던 k0kubun의 발표](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)를 확인하세요. + +## Bison을 Lrama로 대체 + +* Bison 대신 [Lrama LALR 파서 생성기](https://github.com/yui-knk/lrama)를 사용하도록 변경했습니다. [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * 관심이 있다면 [Ruby 파서의 미래 비전](https://rubykaigi.org/2023/presentations/spikeolaf.html)을 참고하세요. + +## YJIT + +* 3.2 버전 대비 주요 성능 개선 사항 + * 스플랫과 나머지 인자 지원이 개선되었습니다. + * 가상 머신의 스택 연산을 위해 레지스터가 할당됩니다. + * 선택적 인수가 포함된 더 많은 호출이 컴파일됩니다. + * 예외 처리기도 컴파일됩니다. + * 클래스의 인스턴스 변수가 가지는 객체 형상의 조합이 매우 복잡한 경우에도 + 컴파일되기 전의 바이트 코드로 전환되지 않습니다. + * 지원되지 않는 호출 타입은 이제 컴파일되기 전의 바이트 코드로 전환되지 않습니다. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===`은 특별히 최적화되었습니다. + * 이제 optcarrot에서 인터프리터보다 3배 이상 빠릅니다! +* 컴파일된 코드의 메타데이터가 훨씬 적은 메모리를 사용합니다. +* ARM64에서 더 작은 코드 생성 +* 일시 중지 모드에서 YJIT을 시작한 다음 나중에 수동으로 재개하는 옵션 추가 + * `--yjit-pause`와 `RubyVM::YJIT.resume` + * 애플리케이션 부팅이 완료된 후에만 YJIT을 재개할 수 있습니다. +* `--yjit-stats`로부터 생성된 `ratio_in_yjit` 통계는 릴리스 빌드에서도 이용 가능하며, + 특수한 통계나 개발 빌드는 더 이상 필요하지 않습니다. +* 종료 추적 옵션이 이제 샘플링을 지원합니다. + * `--trace-exits-sample-rate=N` +* 보다 철저한 테스트와 여러 버그 수정 + + + +## 그 이외의 주목할 만한 새 기능 + +### 언어 + + + +## 성능 향상 + +* `defined?(@ivar)`가 객체 형상에 맞게 최적화되었습니다. + +## 그 이외의 3.2 이후로 주목할 만한 변경 + +### IRB + +IRB에 여러 개선 사항이 추가됩니다. 다음과 같은 내용이 포함됩니다. + +- 고급 `irb:rdbg` 통합 기능은 `pry-byebug`와 동등한 디버깅 경험을 제공합니다. ([문서](https://github.com/ruby/irb#debugging-with-irb)). +- `ls`와 `show_cmds`와 같은 명령어에서 페이징을 지원합니다. +- `ls`와 `show_source` 명령어에서 더 정확하고 유용한 정보를 제공합니다. + +또한, IRB는 앞으로의 개선을 더 쉽게 하기 위해 방대한 리팩토링을 진행했고 수십 개의 버그를 수정했습니다. + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + +### 삭제된 상수 + +폐기 예정이었던 상수가 삭제됩니다. + + + +### 삭제된 메서드 + +폐기 예정이었던 메서드가 삭제됩니다. + + + +## Stdlib 호환성 문제 + +### `ext/readline` 폐기 + +* 우리는 `ext/readline` API와 호환되는 순수 Ruby 구현인 `reline`을 가지고 있습니다. 앞으로는 `reline`에 의존할 것입니다. `ext/readline`을 사용해야 하는 경우, `gem install readline-ext`를 사용하여 rubygems.org를 통해 `ext/readline`을 설치할 수 있습니다. +* 이제 더 이상 `libreadline` 또는 `libedit`과 같은 라이브러리를 설치할 필요가 없습니다. + +## C API 변경 + +### 갱신된 C API + +다음 API가 갱신됩니다. + + + +### 삭제된 C API + +다음 폐기 예정인 API가 삭제됩니다. + + + +### 표준 라이브러리 갱신 + +사용자가 미래의 Ruby 버전에서 내장될 예정의 gem을 직접 불러올 때 RubyGems와 Bundler가 경고 문구를 출력합니다. + +다음 기본 gem이 갱신되었습니다. + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.8 +* erb 4.0.3 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.7.4 +* nkf 0.1.3 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.8 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* time 0.2.2 +* timeout 0.4.0 +* uri 0.12.2 +* yarp 0.9.0 + +다음 내장 gem이 갱신되었습니다. + +* minitest 5.19.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.3.7 +* rbs 3.2.1 +* typeprof 0.21.8 +* debug 1.8.0 + +다음 기본 gem이 내장됩니다. + +* racc 1.7.1 + +기본 gem 또는 내장 gem에 대한 자세한 내용은 [Logger](https://github.com/ruby/logger/releases)와 같은 +GitHub 릴리스 또는 변경 로그에서 확인하세요. + +더 자세한 내용은 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.2.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. From 9bb651ffea15d722c2c5ca2f7b49538957136257 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Sep 2023 16:02:27 +0000 Subject: [PATCH 073/607] Bump ruby/setup-ruby from 1.152.0 to 1.153.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.152.0 to 1.153.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/250fcd6a742febb1123a77a841497ccaa8b9e939...5311f05890856149502132d25c4a24985a00d426) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9bf5cae212..3830365e1e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0 + uses: ruby/setup-ruby@5311f05890856149502132d25c4a24985a00d426 # v1.153.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 5f441442ee..0510274957 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0 - name: Setup Ruby - uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0 + uses: ruby/setup-ruby@5311f05890856149502132d25c4a24985a00d426 # v1.153.0 with: ruby-version: '3.2' bundler-cache: true From e234fb80c083f4eb54af39886ed283e1c25b698b Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Sat, 23 Sep 2023 22:09:28 +0800 Subject: [PATCH 074/607] Translate Ruby 3.3.0-preview2 Released (zh_cn) (#3115) Co-authored-by: Alex Shi --- ...2023-09-14-ruby-3-3-0-preview2-released.md | 185 ++++++++++++++++++ 1 file changed, 185 insertions(+) create mode 100644 zh_cn/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md diff --git a/zh_cn/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md b/zh_cn/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md new file mode 100644 index 0000000000..84e7bec6bf --- /dev/null +++ b/zh_cn/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -0,0 +1,185 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview2 已发布" +author: "naruse" +translator: "GAO Jun" +date: 2023-09-14 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview2" | first %} + +我们很高兴地宣布 Ruby {{ release.version }} 发布。 +Ruby 3.3 新增了纯 Ruby 实现的 JIT 编译器 RJIT;使用 Lrama 作为解析生成器;另有许多性能改进,尤其是 YJIT。 + +## RJIT + +* 引入了纯 Ruby 的 JIT 编译器 RJIT 并替代 MJIT。 + * RJIT 仅支持 x86\_64 架构上的 Unix 平台。 + * 不同于 MJIT,RJIT在运行时不需要 C 编译器。 +* RJIT 目前仅用于实验目的。 + * 您在生产环境中应当继续使用 YJIT。 +* 如果您有兴趣为 Ruby 开发 JIT,请查看 [k0kubun 在 RubyKaigi 第 3 天 中的演讲](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)。 + +## 使用 Lrama 替代 Bison + +* 使用 [Lrama LALR 解析生成器](https://github.com/yui-knk/lrama) 替换 Bison [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * 如果您有兴趣,请参阅 [Ruby 解析器的未来愿景](https://rubykaigi.org/2023/presentations/spikeolaf.html) + +## YJIT + +* 相对于 3.2 的主要性能提升 + * 改进了 splat 和 rest 参数支持。 + * 虚拟机的栈操作分配了寄存器。 + * 更多带有可选参数的调用被编译。 + * 错误处理也被编译。 + * 不支持的调用类型不再退出到解释器执行。 + * 拥有复杂对象形状的实例变量不再退出到解释器执行。 + * 特别优化了 `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===`。 + * 目前比 optcarrot 的解释器快 3 倍以上! +* 编译代码使用的元数据使用更少的内存。 +* 在 ARM64 中的生成更紧凑的代码。 +* 可以在暂停模式下启动 YJIT,并后续手动启动 + * `--yjit-pause` 和 `RubyVM::YJIT.resume` + * 这可以用来在应用程序启动完成后,仅启用 YJIT 一次 +* 发布版本中,现在可以用到通过 `--yjit-stats` 产生的 `ratio_in_yjit` 统计信息,不再需要特殊的统计信息或开发版本。 +* 退出跟踪选项现在支持采样 + * `--trace-exits-sample-rate=N` +* 更彻底的测试及多个错误修复 + + + +## 其他值得关注的新功能 + +### 语言 + + + +## 性能提升 + +* 根据对象形状,优化 `defined?(@ivar)`。 + +## 自 3.2 以来,其他值得注意的变化 + +### IRB + +IRB 进行了多项增强功能,包括但不限于: + +- 高级 `irb:rdbg` 集成,提供了类似 `pry-byebug` 的调试体验([文档](https://github.com/ruby/irb#debugging-with-irb))。 +- 为 `ls` 和 `show_cmds` 这样的方法提供分页支持。 +- 为 `ls` 和 `show_source` 方法提供更准确更有用的信息。 + +另外,IRB 还进行了广泛的重构,修复了数十个错误,以便未来的增强。 + +## 兼容性问题 + +注意:不包括 bug 修复。 + +### 删除的常量 + +删除了以下已废弃的常量。 + + + +### 删除的方法 + +删除了以下已废除的方法。 + + + +## 标准库兼容性问题 + +### `ext/readline` 已退役 + +* 我们有了纯 Ruby 实现的 `reline`,兼容 `ext/readline` API。未来我们将依赖 `reline`。如果您需要使用 `ext/readline`,可以通过 rubygems.org 进行安装 `gem install readline-ext`。 +* 我们不再需要安装类似 `libreadline` 或 `libedit` 这样的库了。 + +## C API 更新 + +### 更新的 C API + +更新了以下 API。 + + + +### 已移除的 C API + +移除了以下废弃的 API。 + + + +## 标准库更新 + +当用户 require 在将来 Ruby 版本中成为绑定 gem 的库时,RubyGems 和 Bundler 会发出警告。 + +更新了以下默认 gems。 + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.8 +* erb 4.0.3 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.7.4 +* nkf 0.1.3 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.8 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* time 0.2.2 +* timeout 0.4.0 +* uri 0.12.2 +* yarp 0.9.0 + +更新了以下绑定 gems。 + +* minitest 5.19.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.3.7 +* rbs 3.2.1 +* typeprof 0.21.8 +* debug 1.8.0 + +以下默认 gem 成为绑定 gem + +* racc 1.7.1 + +有关默认 gems 和 绑定 gems 的细节,可以参考 GitHub 上的发布,例如 [日志](https://github.com/ruby/logger/releases) 或相应的变更日志。 + +更多详情,可参见 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +或 [提交日志](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})。 + +自 Ruby 3.2.0 以来,[{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+), 删除 {{ release.stats.deletions }} 行(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)! + +## Download + +* <{{ 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 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发,现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是Web开发领域。 From a49186e05694fff4f7324fe865721d0a249e8651 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sat, 23 Sep 2023 22:13:00 +0800 Subject: [PATCH 075/607] Translate CVE-2021-33621: HTTP response splitting in CGI (zh_tw) (#3109) --- ...esponse-splitting-in-cgi-cve-2021-33621.md | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 zh_tw/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md diff --git a/zh_tw/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md b/zh_tw/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md new file mode 100644 index 0000000000..6fdf259b31 --- /dev/null +++ b/zh_tw/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md @@ -0,0 +1,36 @@ +--- +layout: news_post +title: "CVE-2021-33621: CGI 存在 HTTP 響應切分風險" +author: "mame" +translator: "Bear Su" +date: 2022-11-22 02:00:00 +0000 +tags: security +lang: zh_tw +--- + +我們釋出了 gci gem 版本 0.3.5、0.2.2、和 0.1.0.2,這些版本修復了 HTTP 響應切分(response splitting)安全性風險。 +此風險的 CVE 識別號為 [CVE-2021-33621](https://www.cve.org/CVERecord?id=CVE-2021-33621)。 + +## 細節 + +如果一個應用程式透過 cgi gem 使用不受信任的使用者輸入產生 HTTP 響應,攻擊者可以利用此風險注入惡意的 HTTP 響應標頭和/或響應內文。 + +此外,`CGI::Cookie` 物件的內容未被正確檢查 。如果一個應用程式基於使用者輸入建立一個 `CGI::Cookie` 物件,攻擊者可以利用此風險在 `Set-Cookie` 標頭注入非法的屬性。 +我們認為此類應用程式不太會有這種使用情境,但我們還是進行了變更以預防性地檢查 `CGI::Cookie#initialize` 的參數。 + +請更新 cgi gem 至版本 0.3.5、0.2.2、和 0.1.0.2 或之後的版本。您可以使用 `gem update cgi` 進行更新。 +如果您使用 bundler,請將 `gem "cgi", ">= 0.3.5"` 加入到您的 `Gemfile` 中。 + +## 受影響版本 + +* cgi gem 0.3.3 以及之前的版本 +* cgi gem 0.2.1 以及之前的版本 +* cgi gem 0.1.1 或 0.1.0.1 或 0.1.0 + +## 致謝 + +感謝 [Hiroshi Tokumaru](https://hackerone.com/htokumaru?type=user) 發現此問題。 + +## 歷史 + +* 初次發佈於 2022-11-22 02:00:00 (UTC) From 8d0e67abe4c97acd44d1aa73aac473dda0775850 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sat, 23 Sep 2023 22:13:19 +0800 Subject: [PATCH 076/607] Transalate title for ruby 3.2.0 preview2 and preview3 release news (zh_tw) (#3111) --- zh_tw/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md | 2 +- zh_tw/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/zh_tw/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md b/zh_tw/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md index 565029b98d..811b0977ce 100644 --- a/zh_tw/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md +++ b/zh_tw/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.2.0 Preview 2 Released" +title: "Ruby 3.2.0 Preview 2 發布" author: "naruse" translator: "Bear Su" date: 2022-09-09 00:00:00 +0000 diff --git a/zh_tw/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md b/zh_tw/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md index fb54c02fee..0f803bd37f 100644 --- a/zh_tw/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md +++ b/zh_tw/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.2.0 Preview 3 Released" +title: "Ruby 3.2.0 Preview 3 發布" author: "naruse" translator: "Bear Su" date: 2022-11-11 00:00:00 +0000 From 060edb3d085b2f1c2a6141f658ac3165065457d0 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sat, 23 Sep 2023 22:13:45 +0800 Subject: [PATCH 077/607] Translate Ruby 3.3.0 preview2 released news post (zh_tw) (#3116) --- ...2023-09-14-ruby-3-3-0-preview2-released.md | 187 ++++++++++++++++++ 1 file changed, 187 insertions(+) create mode 100644 zh_tw/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md diff --git a/zh_tw/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md b/zh_tw/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md new file mode 100644 index 0000000000..89e0df45cf --- /dev/null +++ b/zh_tw/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -0,0 +1,187 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview2 發布" +author: "naruse" +translator: "Bear Su" +date: 2023-09-14 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview2" | first %} + +我們很高興宣布 Ruby {{ release.version }} 發佈了。Ruby 3.3 新增了名為 RJIT,純 Ruby 開發的 JIT 編譯器,使用了 Lrama 做為 Parser 產生器,以及更多效能提升,尤其是 YJIT。 + +## RJIT + +* 導入純 Ruby 開發的 JIT 編譯器 RJIT 並取代 MJIT。 + * RJIT 僅支援 x86\_64 架構的 Unix 平台。 + * 不同於 MJIT,RJIT 在執行時不需要 C 編譯器。 +* RJIT 目前還在實驗階段。 + * 您在生產環境應繼續使用 YJIT。 +* 如果您有興趣為 Ruby 開發 JIT,請參閱 [k0kubun's 在 RubyKaigi 第 3 天的演講](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)。 + +## 使用 Lrama 取代 Bison + +* 使用 [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) 取代 Bison。 + * 如果您感興趣,請參閱 [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html)。 + +## YJIT + +* 自 3.2 主要效能提升 + * 改善 splat 和 rest arguments 的支援。 + * 虛擬機器分配了暫存器,用於堆疊操作。 + * 更多帶有可選參數的呼叫會被編譯。 + * 錯誤處理也會被編譯。 + * Megamorphic Object Shapes 的實體變數不再返回給直譯器。 + * 不支援的呼叫類型不再返回給直譯器。 + * 特別改善了 `Integer#!=`、`String#!=`、`Kernel#block_given?`、`Kernel#is_a?`、 + `Kernel#instance_of?`、`Module#===`。 + * 目前比 optcarrot 的直譯器快上 3 倍! +* 已編譯的程式碼的 Metadata 使用更少的記憶體。 +* 在 ARM64 產生更緊湊的程式碼。 +* 選擇以暫停模式開啟 YJIT,然後再手動啟用 + * `--yjit-pause` 和 `RubyVM::YJIT.resume` + * 這可用於僅在您的應用程式完成啟動後啟用 YJIT。 +* 發布版本現在提供透過 `--yjit-stats` 產生的 `ratio_in_yjit` 統計資訊,不再需要特殊的統計資訊或是開發版本。 +* Exit tracing 選項現在支援抽樣 + * `--trace-exits-sample-rate=N` +* 更多測試與錯誤修復 + + + +## 其他值得注意的新功能 + +### 語言功能 + + + +## 效能提升 + +* `defined?(@ivar)` 透過 Object Shapes 提升效能。 + +## 自 3.2 以來其他值得注意的變更 + +### IRB + +IRB 進行了數項改善,包括但不限於: + +- 加強 `irb:rdbg` 整合以提供與 `pry-byebug` 相同的除錯體驗 ([文件](https://github.com/ruby/irb#debugging-with-irb))。 +- Pager 支援指令,例如 `ls` 和 `show_cmds`。 +- `ls` 和 `show_source` 指令提供了更準確和有幫助的資訊。 + +此外,IRB 還進行了大量重構和修復了許多錯誤,以方便未來強化功能。 + + +## 相容性問題 + +注意:不包含功能問題的修正。 + +### 被移除的常數 + +下列廢棄的常數已被移除。 + + + +### 被移除的方法 + +下列廢棄的方法已被移除。 + + + +## Stdlib 相容性問題 + +### `ext/readline` 已被淘汰 + +* 我們使用純 Ruby 實作並相容於 `ext/readline` API 的 `reline`。未來我們將依賴 `reline`。如果您需要使用 `ext/readline`,您可以使用 `gem install readline-ext` 透過 rubygems.org 安裝 `ext/readline`。 +* 我們將不再需要安裝函式庫例如 `libreadline` 或 `libedit`。 + + +## C API 更新 + +### 更新的 C APIs + +下列的 APIs 已被更新。 + + + +### 被移除的 C APIs + +下列廢棄的 APIs 已被移除。 + + + +## 標準函式庫更新 + +如果使用者 require 的 gem 已排定在未來 Ruby 版本中變更為 bundled gems,RubyGems 和 Bundler 將會顯示警告。 + +更新了以下的預設 gem。 + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.8 +* erb 4.0.3 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.7.4 +* nkf 0.1.3 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.8 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* time 0.2.2 +* timeout 0.4.0 +* uri 0.12.2 +* yarp 0.9.0 + +更新了以下的 bundled gem。 + +* minitest 5.19.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.3.7 +* rbs 3.2.1 +* typeprof 0.21.8 +* debug 1.8.0 + +下列的預設 gem 現在是 bundled gems。 + +* racc 1.7.1 + +請參閱 GitHub 發布如 [Logger](https://github.com/ruby/logger/releases) 和變更紀錄來了解更多關於預設 gems 與 bundled gems 的資訊。 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) 來了解更多。 + +自 Ruby 3.2.0 以來,計[{{ release.stats.files_changed }} 檔案變更,{{ release.stats.insertions }} 行新增(+),{{ release.stats.deletions }} 行刪減(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)。 + + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 From 0ca8b71714048d89310122b533678208b96ec092 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sat, 23 Sep 2023 23:04:14 +0800 Subject: [PATCH 078/607] Translate Ruby 2.7.7, 3.0.5, 3.1.3 released news posts (zh_tw) (#3110) --- .../_posts/2022-11-24-ruby-2-7-7-released.md | 54 +++++++++++++++++++ .../_posts/2022-11-24-ruby-3-0-5-released.md | 49 +++++++++++++++++ .../_posts/2022-11-24-ruby-3-1-3-released.md | 49 +++++++++++++++++ 3 files changed, 152 insertions(+) create mode 100644 zh_tw/news/_posts/2022-11-24-ruby-2-7-7-released.md create mode 100644 zh_tw/news/_posts/2022-11-24-ruby-3-0-5-released.md create mode 100644 zh_tw/news/_posts/2022-11-24-ruby-3-1-3-released.md diff --git a/zh_tw/news/_posts/2022-11-24-ruby-2-7-7-released.md b/zh_tw/news/_posts/2022-11-24-ruby-2-7-7-released.md new file mode 100644 index 0000000000..275327603c --- /dev/null +++ b/zh_tw/news/_posts/2022-11-24-ruby-2-7-7-released.md @@ -0,0 +1,54 @@ +--- +layout: news_post +title: "Ruby 2.7.7 發布" +author: "usa" +translator: "Bear Su" +date: 2022-11-24 12:00:00 +0000 +lang: zh_tw +--- + +Ruby 2.7.7 已經發布了。 + +本次發布版本包含安全性修正。 +細節請參考下列內容。 + +* [CVE-2021-33621: CGI 存在 HTTP 響應切分風險]({%link zh_tw/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md %}) + +此次發布也修復了一些編譯問題。這些修復不會影響與之前版本的相容性。 +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v2_7_7)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "2.7.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 }} + +## 發布紀錄 + +許多提交者、開發者和漏洞回報者幫助了此版本的發佈,在此感謝所有人的貢獻。 diff --git a/zh_tw/news/_posts/2022-11-24-ruby-3-0-5-released.md b/zh_tw/news/_posts/2022-11-24-ruby-3-0-5-released.md new file mode 100644 index 0000000000..93d6c72178 --- /dev/null +++ b/zh_tw/news/_posts/2022-11-24-ruby-3-0-5-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.0.5 發布" +author: "usa" +translator: "Bear Su" +date: 2022-11-24 12:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.0.5 已經發布了。 + +本次發布版本包含安全性修正。 +細節請參考下列內容。 + +* [CVE-2021-33621: CGI 存在 HTTP 響應切分風險]({%link zh_tw/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md %}) + +此次發布也修復了一些問題。 +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_0_5)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.0.5" | first %} + +* <{{ 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 3.0 的維護(包含本版本)是基於 Ruby 協會的「穩定版本協議」。 diff --git a/zh_tw/news/_posts/2022-11-24-ruby-3-1-3-released.md b/zh_tw/news/_posts/2022-11-24-ruby-3-1-3-released.md new file mode 100644 index 0000000000..a366b04f52 --- /dev/null +++ b/zh_tw/news/_posts/2022-11-24-ruby-3-1-3-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.1.3 發布" +author: "nagachika" +translator: "Bear Su" +date: 2022-11-24 12:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.1.3 已經發布了。 + +本次發布版本包含安全性修正。 +細節請參考下列內容。 + +* [CVE-2021-33621: CGI 存在 HTTP 響應切分風險]({%link zh_tw/news/_posts/2022-11-22-http-response-splitting-in-cgi-cve-2021-33621.md %}) + +此次發布也修復了在 Xcode 14 和 macOS 13 (Ventura) 上編譯失敗的問題。 +詳細的資訊請參閱[相關議題](https://bugs.ruby-lang.org/issues/18912)。 + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_1_3)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.1.3" | first %} + +* <{{ 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 1af1b12848e823902610c570528bc4ee6fbfd4c8 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sat, 23 Sep 2023 23:04:52 +0800 Subject: [PATCH 079/607] Translate installation to latest content (zh_tw) (#3103) --- zh_tw/documentation/installation/index.md | 166 +++++++++++++++++----- 1 file changed, 133 insertions(+), 33 deletions(-) diff --git a/zh_tw/documentation/installation/index.md b/zh_tw/documentation/installation/index.md index 844aee3b1e..03598af208 100644 --- a/zh_tw/documentation/installation/index.md +++ b/zh_tw/documentation/installation/index.md @@ -7,6 +7,13 @@ lang: zh_tw 有很多工具可以安裝 Ruby。本頁介紹如何使用主流的套件管理工具以及第三方工具來管理、安裝 Ruby 以及如何從原始碼來編譯 Ruby。 {: .summary} +如果您已經在您的電腦上安裝了 Ruby。您可以在 [terminal emulator][terminal] 中執行以下指令確認: + +{% highlight sh %} +ruby -v +{% endhighlight %} + +輸出結果應該會顯示已安裝的 Ruby 版本資訊。 ## 選擇安裝方式 @@ -22,19 +29,26 @@ lang: zh_tw * [套件管理系統](#package-management-systems) * [Debian、Ubuntu](#apt) * [CentOS、Fedora、RHEL](#yum) + * [Snap](#snap) * [Gentoo](#portage) * [Arch Linux](#pacman) * [macOS](#homebrew) - * [Solaris、OpenIndiana](#solaris) - * [其他發行版](#other-systems) + * [FreeBSD](#freebsd) + * [OpenBSD](#openbsd) + * [OpenIndiana](#openindiana) + * [Windows Package Manager](#winget) + * [Chocolatey package manager for Windows](#chocolatey) + * [其它發行版](#other-systems) * [安裝工具](#installers) * [ruby-build](#ruby-build) * [ruby-install](#ruby-install) * [RubyInstaller](#rubyinstaller) (Windows) - * [RailsInstaller 和 Ruby 安裝包](#railsinstaller) + * [Ruby Stack](#rubystack) * [版本管理](#managers) + * [asdf-vm](#asdf-vm) * [chruby](#chruby) * [rbenv](#rbenv) + * [rbenv for Windows](#rbenv-for-windows) * [RVM](#rvm) * [uru](#uru) * [從原始碼編譯](#building-from-source) @@ -47,19 +61,31 @@ lang: zh_tw 許多 Ruby 社群的成員強烈建議不要使用套件管理工具來安裝 Ruby,應該使用下面羅列的工具來取代。完整的優缺點超出了本文的範疇,最簡單的理由是,多數的套件管理工具安裝的 Ruby 版本老舊,如果想要使用最新版的 Ruby,確認你安裝了正確名稱的套件,或使用下面其他的工具吧。 +本文包含以下套件管理工具說明: + + * [Debian, Ubuntu](#apt) + * [CentOS, Fedora,RHEL](#yum) + * [Snap](#snap) + * [Gentoo](#portage) + * [Arch Linux](#pacman) + * [macOS](#homebrew) + * [FreeBSD](#freebsd) + * [OpenBSD](#openbsd) + * [OpenIndiana](#openindiana) + * [Windows Package manager](#winget) + * [Chocolatey package manager for Windows](#chocolatey) + * [Other Distribution](#other-systems) ### apt(Debian 或 Ubuntu) {: #apt} -Debian GNU/Linux 和 Ubuntu 的使用者可以使用 apt。 +Debian GNU/Linux 和 Ubuntu 的使用者可以使用 apt 套件管理工具。 用法: {% highlight sh %} -$ sudo apt-get install ruby +$ sudo apt-get install ruby-full {% endhighlight %} -撰文當下 `ruby` 套件在 Debian 與 Ubuntu 平台上所提供的版本是老舊的穩定版 Ruby 2.3.1。 - ### yum(CentOS、Fedora 或 RHEL) {: #yum} @@ -73,6 +99,23 @@ $ sudo yum install ruby 安裝的版本通常是作業系統發行版發行日所打包的最新版 Ruby。 +### snap (Ubuntu or other Linux distributions) +{: #snap} + +Snap 是 Canonical 所開發的套件管理工具。內建於 Ubuntu,但 snap 也能在許多其他的 Linux 發行版上使用。 +用法: + +{% highlight sh %} +$ sudo snap install ruby --classic +{% endhighlight %} + +我們為每個 Ruby 小版本提供了幾個 channel。 +例如,使用以下指令切換到 Ruby 2.3: + +{% highlight sh %} +$ sudo snap switch ruby --channel=2.3/stable +$ sudo snap refresh +{% endhighlight %} ### portage(Gentoo) {: #portage} @@ -83,7 +126,7 @@ Gentoo 使用 portage 套件管理工具。 $ sudo emerge dev-lang/ruby {% endhighlight %} -預設會試著安裝 1.9 和 2.0,但還能安裝更多版本。要安裝特定版本,在 `make.conf` 設定 `RUBY_TARGETS`。進一步了解請參考 [Gentoo Ruby 專案網站][gentoo-ruby]。 +要安裝特定版本,在 `make.conf` 設定 `RUBY_TARGETS`。進一步了解請參考 [Gentoo Ruby 專案網站][gentoo-ruby]。 ### pacman (Arch Linux) @@ -102,39 +145,81 @@ $ sudo pacman -S ruby ### Homebrew(macOS) {: #homebrew} -OS X El Capitan、Yosemite 以及 Mavericks 內建 Ruby 2.0。 -OS X Mountain Lion、Lion 以及 Snow Leopard 出廠內建 Ruby 1.8.7。 +從 macOS El Capitan(10.11) 以上內建 Ruby 2.0 以上版本。 -macOS 的使用者使用 [Homebrew][homebrew] 作為套件管理工具。 +macOS 使用者多數使用 [Homebrew][homebrew] 作為套件管理工具。 用法: {% highlight sh %} $ brew install ruby {% endhighlight %} -會安裝最新穩定版的 Ruby。 +會安裝最新版的 Ruby。 + +### FreeBSD +{: #freebsd} + +FreeBSD 提供以預編譯和從原始碼編譯的方法安裝 Ruby。 +預編譯的套件可以透過 pkg 工具安裝: + +{% highlight sh %} +$ pkg install ruby +{% endhighlight %} +從原始碼編譯的方法可以透過使用 [Ports Collection][freebsd-ports-collection] 來安裝 Ruby。 +當您想要客製化建置設定選項時,這非常好用。 -### Solaris 和 OpenIndiana 平台 -{: #solaris} +更多在 FreeBSD 上使用 Ruby 與其生態系的資訊,請參考 [FreeBSD Ruby Project website][freebsd-ruby]。 -[Sunfreeware][sunfreeware] 上的 Solaris 8 到 10 版有 Ruby 1.8.7 可用,同時 Blastwave 上也有 Ruby 1.8.7。Ruby 1.9.2p0 在 [Sunfreeware][sunfreeware] 也有,但版本已經過時了。 +### OpenBSD +{: #openbsd} -要在 [OpenIndiana][openindiana] 安裝 Ruby,請使用: -[Image Packaging System (IPS)][opensolaris-pkg] 客戶端。 -這會直接從 OpenSolaris 網路的原始碼庫安裝最新的 Ruby 1.9 以及 RubyGems: +OpenBSD 在發行版本 adJ 中有三個主要 Ruby 版本套件。以下指令可以看到可用的版本並進行安裝: {% highlight sh %} -$ pkg install runtime/ruby-18 +$ doas pkg_add ruby +{% endhighlight %} + +您可以同時安裝多個主要版本,因為它們的執行檔的名稱不同 (例如:`ruby27`, `ruby26`)。 + +OpenBSD ports collection 的 `HEAD` 分支可能會在最新的 Ruby 版本釋出幾天後,在該平台提供,請參考 [最新 ports collections 的 lang/ruby][openbsd-current-ruby-ports]。 + +### Ruby on OpenIndiana +{: #openindiana} + +在 [OpenIndiana][openindiana] 上安裝 Ruby,請使用 Image Packaging System (IPS) 客戶端。 +這將會直接從 OpenIndiana repositories 安裝 Ruby 與 RubyGems。用法: + +{% highlight sh %} +$ pkg install runtime/ruby {% endhighlight %} 但用第三方工具來獲得最新版本 Ruby 可能比較好。 +### Windows Package Manager +{: #winget} + +在 Windows 上您可以使用 [Windows Package Manager CLI](https://github.com/microsoft/winget-cli) 來安裝 Ruby: + +{% highlight sh %} +> winget install RubyInstallerTeam.Ruby +{% endhighlight %} + +### Chocolatey package manager for Windows +{: #chocolatey} + +在 Windows 上您也可以使用 [Chocolatey Package Manager](https://chocolatey.org/install) 來安裝 Ruby: + +{% highlight sh %} +> choco install ruby +{% endhighlight %} + +它會使用現有的 `msys2` 或是進行安裝以提供完整的 Ruby 開發環境。 ### 其它發行版 {: #other-systems} -其它作業系統可以在發行版的套件庫上搜尋 Ruby,或是使用第三方工具可能會比較好。 +其它作業系統可以在發行版的套件庫上搜尋 Ruby,或是使用 [第三方工具](#installers) 可能會比較好。 ## 安裝工具 @@ -164,14 +249,11 @@ Windows 使用者,可以使用這個很棒的專案來幫助您安裝 Ruby: 下載、執行,即可! -### RailsInstaller 和 Ruby 安裝包 -{: #railsinstaller} +### Ruby Stack +{: #rubystack} 若安裝 Ruby 是為了要開發 Ruby on Rails,則可用下列的安裝工具: -* [RailsInstaller][railsinstaller], - 背後使用的是 RubyInstaller,但帶有 Rails 開發環境所需的工具。 - 支援 OS X 與 Windows。 * [Bitnami Ruby Stack][rubystack], 提供完整的 Rails 開發環境。 兼容 macOS、Linux、Windows、虛擬機器以及雲鏡像。 @@ -182,17 +264,26 @@ Windows 使用者,可以使用這個很棒的專案來幫助您安裝 Ruby: 許多 Rubyists 使用 Ruby 版本管理工具來管理多版本的 Ruby。版本管理工具有很多優點,但要注意 Ruby 官方並不提供技術支援。但要提的是每個工具背後的社群都非常有幫助。 +### asdf-vm +{: #asdf-vm} + +[asdf-vm][asdf-vm] 是一個可擴展的版本管理工具,可基於個別專案來管理多語言執行版本。您需要 [asdf-ruby][asdf-ruby] 插件 (使用 [ruby-build][ruby-build]) 來安裝 Ruby。 + ### chruby {: #chruby} -[chruby][chruby] 可以切換 Ruby 版本。chruby 可以管理由 [ruby-install](#ruby-install) 所安裝的 Ruby,或是從原始碼所編譯的 Ruby。 - +[chruby][chruby] 可以在系統上管理多個版本的 Ruby。chruby 本身無法安裝 Ruby 但可以透過插件像是 [ruby-install][ruby-install] 或 [ruby-build][ruby-build] 安裝 Ruby。支援 macOS、Linux 和其他類 UNIX 的作業系統。 ### rbenv {: #rbenv} -[rbenv][rbenv] 可以在系統上安裝多個版本的 Ruby。rbenv 本身不能安裝 Ruby,但有一個流行的插件,叫做 ruby-build,可以用來安裝 Ruby。支援 macOS、Linux 和其它類 Unix 的作業系統。 +[rbenv][rbenv] 可以在系統上管理多個版本的 Ruby。rbenv 本身不能安裝 Ruby,但可以使用插件 [ruby-build][ruby-build] 安裝 Ruby。支援 macOS、Linux 和其它類 Unix 的作業系統。 + +### rbenv for Windows +{: #rbenv-for-windows} + +[rbenv for Windows][rbenv-for-windows] 可以在 Windows 作業系統上安裝多個版本的 Ruby。它是用 PowerShell 撰寫並提供 Windows 使用者原生方法來使用 Ruby。使用方式相容於在類 Unix 的作業系統上的 [rbenv][rbenv]。 ### RVM ("Ruby Version Manager") @@ -221,20 +312,29 @@ $ sudo make install 預設會安裝 Ruby 到 `/usr/local` 目錄。要更改安裝目錄請在使用 `./configure` 腳本時傳入 `--prefix=DIR` 選項。 +您可以在 [Building Ruby instructions][building-ruby] 找到更多關於從原始碼編譯的資訊。 + 使用第三方工具或套件管理工具來安裝可能比較好,因為從原始碼編譯安裝的 Ruby 無法用任何工具管理。 [rvm]: http://rvm.io/ -[rbenv]: https://github.com/rbenv/rbenv#readme +[rbenv]: https://github.com/rbenv/rbenv +[rbenv-for-windows]: https://github.com/ccmywish/rbenv-for-windows#readme [ruby-build]: https://github.com/rbenv/ruby-build#readme [ruby-install]: https://github.com/postmodern/ruby-install#readme -[chruby]: https://github.com/postmodern/chruby#readme -[uru]: https://bitbucket.org/jonforums/uru +[chruby]: https://github.com/postmodern/chruby +[uru]: https://bitbucket.org/jonforums/uru/src/master/ [rubyinstaller]: https://rubyinstaller.org/ -[railsinstaller]: http://railsinstaller.org/ [rubystack]: http://bitnami.com/stack/ruby/installer -[sunfreeware]: http://www.sunfreeware.com [openindiana]: http://openindiana.org/ [opensolaris-pkg]: http://opensolaris.org/os/project/pkg/ [gentoo-ruby]: http://www.gentoo.org/proj/en/prog_lang/ruby/ +[freebsd-ruby]: https://wiki.freebsd.org/Ruby +[freebsd-ports-collection]: https://docs.freebsd.org/en/books/handbook/ports/#ports-using [homebrew]: http://brew.sh/ +[terminal]: https://en.wikipedia.org/wiki/List_of_terminal_emulators +[building-ruby]: https://github.com/ruby/ruby/blob/master/doc/contributing/building_ruby.md +[wsl]: https://learn.microsoft.com/zh-tw/windows/wsl/about +[asdf-vm]: https://asdf-vm.com/ +[asdf-ruby]: https://github.com/asdf-vm/asdf-ruby +[openbsd-current-ruby-ports]: https://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/lang/ruby/?only_with_tag=HEAD From 63a9c9d9c7236f48a30be5f9cfc19273756267f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Sep 2023 15:08:42 +0000 Subject: [PATCH 080/607] Bump actions/checkout from 4.0.0 to 4.1.0 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.0.0 to 4.1.0. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/3df4ab11eba7bda6032a0b82a6bb43b11571feac...8ade135a41bc03ea155e62e844d188df1ea18608) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3830365e1e..0b33242c8a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0 + uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 0510274957..898c34bba0 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0 + uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 - name: Setup Ruby uses: ruby/setup-ruby@5311f05890856149502132d25c4a24985a00d426 # v1.153.0 with: From 65fe4b023f571bf18aa01b732d5849a56033ac55 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Sep 2023 15:08:39 +0000 Subject: [PATCH 081/607] Bump ruby/setup-ruby from 1.153.0 to 1.154.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.153.0 to 1.154.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/5311f05890856149502132d25c4a24985a00d426...52b8784594ec115fd17094752708121dc5dabb47) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0b33242c8a..031c7e2fd5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@5311f05890856149502132d25c4a24985a00d426 # v1.153.0 + uses: ruby/setup-ruby@52b8784594ec115fd17094752708121dc5dabb47 # v1.154.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 898c34bba0..83f2afdcca 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 - name: Setup Ruby - uses: ruby/setup-ruby@5311f05890856149502132d25c4a24985a00d426 # v1.153.0 + uses: ruby/setup-ruby@52b8784594ec115fd17094752708121dc5dabb47 # v1.154.0 with: ruby-version: '3.2' bundler-cache: true From 887f1c38e282e614b547af173bb6c941eafe18c0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Oct 2023 15:31:49 +0000 Subject: [PATCH 082/607] Bump ruby/setup-ruby from 1.154.0 to 1.155.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.154.0 to 1.155.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/52b8784594ec115fd17094752708121dc5dabb47...d37167af451eb51448db3354e1057b75c4b268f7) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 031c7e2fd5..cade73d184 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@52b8784594ec115fd17094752708121dc5dabb47 # v1.154.0 + uses: ruby/setup-ruby@d37167af451eb51448db3354e1057b75c4b268f7 # v1.155.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 83f2afdcca..7c4b6da39d 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 - name: Setup Ruby - uses: ruby/setup-ruby@52b8784594ec115fd17094752708121dc5dabb47 # v1.154.0 + uses: ruby/setup-ruby@d37167af451eb51448db3354e1057b75c4b268f7 # v1.155.0 with: ruby-version: '3.2' bundler-cache: true From a64bb7be4cb3268f5c57acdc3fc4dffd8dc964d2 Mon Sep 17 00:00:00 2001 From: nopeless <38830903+nopeless@users.noreply.github.com> Date: Tue, 10 Oct 2023 11:50:24 -0500 Subject: [PATCH 083/607] Improve winget installation instructions --- en/documentation/installation/index.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/en/documentation/installation/index.md b/en/documentation/installation/index.md index 0170db5621..50fbf76273 100644 --- a/en/documentation/installation/index.md +++ b/en/documentation/installation/index.md @@ -225,8 +225,14 @@ latest version of Ruby. On Windows, you can use the [Windows Package Manager CLI](https://github.com/microsoft/winget-cli) to install Ruby: -{% highlight sh %} -> winget install RubyInstallerTeam.Ruby +{% highlight ps1 %} +> winget install RubyInstallerTeam.Ruby.{MAJOR}.{MINOR} +# Example +> winget install RubyInstallerTeam.Ruby.3.2 +# To see all versions avaliable +> winget search RubyInstallerTeam.Ruby +# Note: if you are installing ruby for projects, you may want to install RubyWithDevKit +> winget install RubyInstallerTeam.RubyWithDevKit.3.2 {% endhighlight %} ### Chocolatey package manager for Windows From 2d7c75b353f3c0789426565cce7b8844bdb84ead Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Thu, 12 Oct 2023 15:09:01 +0900 Subject: [PATCH 084/607] Improve winget installation instructions (ko) (#3127) --- ko/documentation/installation/index.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/ko/documentation/installation/index.md b/ko/documentation/installation/index.md index c5ddf8269e..56cd89788f 100644 --- a/ko/documentation/installation/index.md +++ b/ko/documentation/installation/index.md @@ -212,8 +212,14 @@ $ pkg install runtime/ruby Windows에서 [Windows 패키지 관리자 CLI](https://github.com/microsoft/winget-cli)를 사용해서 Ruby를 설치할 수 있습니다. -{% highlight sh %} -> winget install Ruby +{% highlight ps1 %} +> winget install RubyInstallerTeam.Ruby.{MAJOR}.{MINOR} +# 예시 +> winget install RubyInstallerTeam.Ruby.3.2 +# 사용 가능한 버전 목록 +> winget search RubyInstallerTeam.Ruby +# 주의: 프로젝트에 사용할 Ruby를 설치하는 경우, RubyWithDevKit을 설치할 수 있음 +> winget install RubyInstallerTeam.RubyWithDevKit.3.2 {% endhighlight %} ### Chocolatey 패키지 관리자 From 9a17e532e51d4e84d1aaa7da68168ded4786d47c Mon Sep 17 00:00:00 2001 From: Bear Su Date: Fri, 13 Oct 2023 09:04:13 -0500 Subject: [PATCH 085/607] Improve winget installation instructions (zh_tw) (#3129) --- zh_tw/documentation/installation/index.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/zh_tw/documentation/installation/index.md b/zh_tw/documentation/installation/index.md index 03598af208..e5d50b5ca7 100644 --- a/zh_tw/documentation/installation/index.md +++ b/zh_tw/documentation/installation/index.md @@ -202,7 +202,13 @@ $ pkg install runtime/ruby 在 Windows 上您可以使用 [Windows Package Manager CLI](https://github.com/microsoft/winget-cli) 來安裝 Ruby: {% highlight sh %} -> winget install RubyInstallerTeam.Ruby +> winget install RubyInstallerTeam.Ruby.{MAJOR}.{MINOR} +# 範例 +> winget install RubyInstallerTeam.Ruby.3.2 +# 查看所有可用的版本 +> winget search RubyInstallerTeam.Ruby +# 注意:如果你正在為專案安裝 ruby,你可能也希望安裝 RubyWithDevKit +> winget install RubyInstallerTeam.RubyWithDevKit.3.2 {% endhighlight %} ### Chocolatey package manager for Windows From e1feee25e2dfada729c4199516052e3756387683 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Oct 2023 15:06:54 +0000 Subject: [PATCH 086/607] Bump ruby/setup-ruby from 1.155.0 to 1.156.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.155.0 to 1.156.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/d37167af451eb51448db3354e1057b75c4b268f7...5cfe23c062c0aac352e765b1b7cc12ea5255ccc4) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cade73d184..5c2888e6ea 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@d37167af451eb51448db3354e1057b75c4b268f7 # v1.155.0 + uses: ruby/setup-ruby@5cfe23c062c0aac352e765b1b7cc12ea5255ccc4 # v1.156.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 7c4b6da39d..4ed1903330 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 - name: Setup Ruby - uses: ruby/setup-ruby@d37167af451eb51448db3354e1057b75c4b268f7 # v1.155.0 + uses: ruby/setup-ruby@5cfe23c062c0aac352e765b1b7cc12ea5255ccc4 # v1.156.0 with: ruby-version: '3.2' bundler-cache: true From 52da250ef17cdba239f8385261eadcf238f29ca7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Wed, 18 Oct 2023 11:41:35 -0500 Subject: [PATCH 087/607] Translate Ruby 3.3.0 preview2 released news post (es) (#3131) Co-authored-by: Nombre Usuario --- ...2023-09-14-ruby-3-3-0-preview2-released.md | 203 ++++++++++++++++++ 1 file changed, 203 insertions(+) create mode 100644 es/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md diff --git a/es/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md b/es/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md new file mode 100644 index 0000000000..95bd6b2405 --- /dev/null +++ b/es/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -0,0 +1,203 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.0-preview2" +author: "naruse" +translator: vtamara +date: 2023-09-14 00:00:00 +0000 +lang: es +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview2" | first %} + +Nos complace anunciar la publicación de Ruby {{ release.version }}. Ruby 3.3 +añade un nuevo compilador JIT en puro Ruby llamado RJIT, usa Lrama +como generador del analizador sintáctico así como muchas mejoras +de desempeño especialmente de YJIT. + +## RJIT + +* Se introdujo RJIT un compilador JIT en puro Ruby que remplaza a MJIT. + * RJIT soporta sólo la arquitectura x86\_64 en plataformas Unix. + * A diferencia de MJIT, no require de un compilador C en tiempo de ejecución. +* RJIT existe sólo con propósitos experimentales. + * Debería seguir usando YJIT en producción. +* Si le interesa desarrollar un compilador JIT para Ruby, por favor + revise la [presentación de k0kubun en el día 3 de RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## Usa Lrama en lugar de Bison + +* Remplaza Bison con [el generador de analizadores sintácticos LALR Lrama](https://github.com/yui-knk/lrama) [Característica #19637](https://bugs.ruby-lang.org/issues/19637) + * Si tiene interés por favor vea [la visión futura de los analizadores sintácticos de Ruby](https://rubykaigi.org/2023/presentations/spikeolaf.html) + +## YJIT + +* Mejoras mayores en desempeño respecto a 3.2 + * Mejorado el soporte para argumentos splat y para el resto de argumentos. + * Los registros se localizan para operaciones en pila de la máquina virtual. + * Se compilan más llamados con argumentos opcionales. + * Los manejadores de excepciones también se compilan. + * Las variables de instancia ya no salen al interprete con Formas de Objetos + mega-mórficas. + * Se optimizaron de manera especial `Integer#!=`, `String#!=`, + `Kernel#block_given?`, `Kernel#is_a?`, `Kernel#instance_of?` y + `Module#===`. + * Ahora es 3 veces más rápido que el interprete normal con optcarrot! +* Los metadatos para el código compilado usan mucha menos memoria. +* Generación de código más compacto en ARM64 +* Opción para iniciar YJIT en modo pausado para después habilitarlo + manualmente + * `--yjit-pause` y `RubyVM::YJIT.resume` + * Esto puede usarse para habilitar YJIT sólo después de que su aplicación + haya completado el arranque. +* La estadística `ratio_in_yjit` producida por `--yjit-stats` ahora está + disponible en compilaciones publicadas, ya no se requiere una + estadística especial o una compilación de desarrollo. +* La opción para salir del modo con trazas ahora soporta muestreo + * `--trace-exits-sample-rate=N` +* Pruebas más extensas y correcciones a múltiples fallas + + + +## Otros Características Nuevas Notables + +### Lenguaje + +## Mejoras en desempeño + +* `defined?(@ivar)` se optimiza con Formas de Objetos. + +## Otros cambios notables desde 3.2 + +### IRB + +IRB ha recibido diversas mejoras, incluyendo --no limitadas a estas: + +- Integración avanzada `irb:rdbg` que provee una experiencia + de depuración equivalente a la de `pry-byebug` + ([doc](https://github.com/ruby/irb#debugging-with-irb)). +- Soporte de paginador en ordenes como `ls` y `show_cmds`. +- Las ordenes `ls` y `show_cmds` dan información más precisa y útil. + +Además, IRB ha experimentado una re-factorización extensa y ha recibido +docenas de correcciones a fallas que facilitan ampliaciones futuras. + + +## Incidentes de compatibilidad + +Nota: Correciones a falla que excluía características. + +### Constantes elminadas + +Las siguientes constantes que eran despreciadas han sido eliminadas. + + +### Métodos eliminados + +Los siguientes métodos que eran despreciados han sido eliminados. + + +## Problemas de compatibilidad con Stdlib + +### Eliminación de `ext/readline` + +* Tenemos `reline` que es una implementación en Ruby puro compatible con + el API de `ext/readline`. Dependeremos de `reline` a futuro. Si + necesita usar `ext/readline`, puede instalar `ext/readline` vía rubygems.org + con `gem install readline-ext`. +* Ya no necesitamos instalar librerías como `libreadline` o `libedit`. + +## Actualizaciones al API en C + +### APIs en C actualizados + +Los siguientes APIs han sido actualizados. + + + +### APIs en C eliminados + +Los siguientes APIs despreciados han sido eliminados. + +## Actualizaciones a la librería estándar + +RubyGems y Bundler avisan cuando el usuario requiere gemas que están +programadas para convertirse en gemas incluidas en versiones futuras +de Ruby. + +Las siguientes gemas predeterminadas se han actualizado. + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.8 +* erb 4.0.3 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.7.4 +* nkf 0.1.3 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.8 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* time 0.2.2 +* timeout 0.4.0 +* uri 0.12.2 +* yarp 0.9.0 + +Las siguientes gemas incluidas han sido actualizadas. + +* minitest 5.19.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.3.7 +* rbs 3.2.1 +* typeprof 0.21.8 +* debug 1.8.0 + +La siguiente gema predeterminada pasa a ser gema incluida. + +* racc 1.7.1 + +Ver la publicación en GitHub como +[Logger](https://github.com/ruby/logger/releases) o +bien la bitácora de cambios con detalles de las gemas predeterminadas +y las gemas incluidas. + +Ver más detalles en el archivo +[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +o en [la bitácora de cambios](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}). + +¡Con estos cambios, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +desde Ruby 3.2.0! + +## Descargas + +* <{{ 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 }} + +## Qué es Ruby + +Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, +y ahora es desarrollado como Código Abieto. Corre en múltiples +plataformas y es usado en todo el mundo especialmente para desarrollo web. From 1f4abf5b7ebd76a9a95f31ac8e6f52189f5fc159 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sat, 21 Oct 2023 16:32:26 +0800 Subject: [PATCH 088/607] Translate Ruby 3.2.0 released news post (zh_tw) (#3123) --- .../2022-12-06-ruby-3-2-0-rc1-released.md | 465 +++++++++++++ .../_posts/2022-12-25-ruby-3-2-0-released.md | 637 ++++++++++++++++++ 2 files changed, 1102 insertions(+) create mode 100644 zh_tw/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md create mode 100644 zh_tw/news/_posts/2022-12-25-ruby-3-2-0-released.md diff --git a/zh_tw/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md b/zh_tw/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md new file mode 100644 index 0000000000..a491c13251 --- /dev/null +++ b/zh_tw/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md @@ -0,0 +1,465 @@ +--- +layout: news_post +title: "Ruby 3.2.0 RC 1 Released" +author: "naruse" +translator: "Bear Su" +date: 2022-12-06 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.2.0-rc1" | first %} + +我們很高興宣佈 Ruby {{ release.version }} 發佈了。Ruby 3.2 新增許多新功能及效能提升。 + +## 基於 WASI 的 WebAssembly 支援 + +這是首次基於 WASI 支援 WebAssembly。使得 CRuby binary 可用於網頁瀏覽器、Serverless Edge 環境、與其他 WebAssembly/WASI 嵌入式環境. 目前已通過 basic 與 bootstrap 測試,但不包括 Thread API。 + +![](https://i.imgur.com/opCgKy2.png) + +### 背景 + +[WebAssembly (Wasm)](https://webassembly.org/) 最初是為了在網頁瀏覽器中安全快速地執行程式。但其目標 - 在不同的環境上安全又有效率的執行程式,不僅是 web 應用程式,也是其他一般應用程式的目標。 + +[WASI (The WebAssembly System Interface)](https://wasi.dev/) 被設計用於此使用場景。 儘管應用程式需要與作業系統溝通,但 WebAssembly 卻是運行在沒有系統介面的虛擬機中。WASI 將其標準化了。 + +Ruby 中的 WebAssembly/WASI 支援透過這些專案,允許 Ruby 開發者可以開發在相容此功能的平台上執行的應用程式。 + +### 使用場景 + +此支援功能使得開發者可以在 WebAssembly 環境上使用 CRuby。 其中一個範例就是 [TryRuby playground](https://try.ruby-lang.org/playground/) 的 CRuby 支援。現在您可以在您的網頁瀏覽器上嘗試原生的 CRuby。 + +### 技術特點 + +因為目前 WASI 和 WebAssembly 不斷地再改進與安全性理由,仍缺少一些功能來實現 Fiber、異常、和 GC。所以 CRuby 透過使用 Asyncify,一個在使用者空間的 binary 轉換技術,來彌補中間的差距。 + +並且,我們建置了 [a VFS on top of WASI](https://github.com/kateinoigakukun/wasi-vfs/wiki/Getting-Started-with-CRuby),讓我們可以很容易地將 Ruby 應用程式打包成單一 .wasm 檔案。簡化了 Ruby 應用程式的分發過程。 + + +### 相關連結 + +* [Add WASI based WebAssembly support #5407](https://github.com/ruby/ruby/pull/5407) +* [An Update on WebAssembly/WASI Support in Ruby](https://itnext.io/final-report-webassembly-wasi-support-in-ruby-4aface7d90c9) + +## Regexp 增強 ReDoS 防禦 + +眾所皆知 Regexp matching 所花的時間可能會非預期的久。如果您的程式使用效率可能較低的 Regexp 來比對不可信的輸入內容,攻擊者可能可以藉此來發動服務阻斷攻擊。(稱為 Regular expression DoS, or ReDoS)。 + +我們進行了兩項改進,可以顯著降低 ReDos 攻擊的影響。 + +### 改善 Regexp 比對演算法 + +從 Ruby 3.2 開始,透過使用 memoization 技術,Regexp 的比對演算法得到了很大的改進。 + +``` +# 這個比對在 Ruby 3.1 需要花費 10 秒。 而在 Ruby 3.2 只需要花費 0.003 秒。 + +/^a*b?a*$/ =~ "a" * 50000 + "x" +``` + +![](https://cache.ruby-lang.org/pub/media/ruby320_regex_1.png) +![](https://cache.ruby-lang.org/pub/media/ruby320_regex_2.png) + +改進後的演算法使得大部分的 Regexp (我們實驗中的 90%) 可以在線性時間內完成。 + +(給預覽使用者:這個改善可能會花費與輸入長度成比例的記憶體。我們預期這不會有實際問題,因為這種記憶體分配通常都會延遲,而正常的 Regexp 最多可花費輸入長度 10 倍的記憶體。如果您在現實場景中使用 Regexp 進行比對時遇到記憶題不足的問題,請向我們回報。) + +最初提案: https://bugs.ruby-lang.org/issues/19104 + +### Regexp 逾時設定 + +上述的改善無法套用在某些 Regexp,像是包含進階功能 (例如:back-references 或是 look-around),或有大量固定重複次數。作為備案,我們在 Regexp 比對中導入了逾時設定。 + +```ruby +Regexp.timeout = 1.0 + +/^a*b?a*()\1$/ =~ "a" * 50000 + "x" +#=> 1 秒後拋出 Regexp::TimeoutError +``` + +注意 `Regexp.timeout` 是全域設定。如果您想要為一些特定的 Regexps 使用不同的逾時設定,您可以在呼叫 `Regexp.new` 時使用 `timeout` keyword。 + +```ruby +Regexp.timeout = 1.0 + +# This regexp has no timeout +long_time_re = Regexp.new('^a*b?a*()\1$', timeout: Float::INFINITY) + +long_time_re =~ "a" * 50000 + "x" # 不會被中斷 +``` + +最初提案:https://bugs.ruby-lang.org/issues/17837 + +## 其他值得注意的新功能 + +### SyntaxSuggest + +* `syntax_suggest`(前 `dead_end`)功能已整合進 Ruby 了。這可以幫助您找到錯誤所在的位置,例如缺少或多餘的 `end`,以便您能更快修正,例如以下範例: + + ``` + Unmatched `end', missing keyword (`do', `def`, `if`, etc.) ? + + 1 class Dog + > 2 defbark + > 4 end + 5 end + ``` + + [[Feature #18159]] + + +### ErrorHighlight + +* 現在會指向 TypeError 和 ArgumentError 相關的參數。 + +``` +test.rb:2:in `+': nil can't be coerced into Integer (TypeError) + +sum = ary[0] + ary[1] + ^^^^^^ +``` + +### 語言功能 + +* 除了作為方法參數,匿名不定長度參數現在也可以傳遞為其他方法的參數。 + [[Feature #18351]] + + ```ruby + def foo(*) + bar(*) + end + def baz(**) + quux(**) + end + ``` + +* 只接收單一參數的 proc 將不會自動解開封裝。 [[Bug #18633]] + + ```ruby + proc{|a, **k| a}.call([1, 2]) + # Ruby 3.1 與之前的版本 + # => 1 + # Ruby 3.2 與之後的版本 + # => [1, 2] + ``` + +* 常數賦值評估順序將與單一屬性賦值評估順序保持一致。參考以下程式碼: + + ```ruby + foo::BAR = baz + ``` + + `foo` 現在會在 `baz` 之前被呼叫。同樣地,在有多個賦值給常數的情況,會使用從左至右的順序評估。參考以下程式碼: + + ```ruby + foo1::BAR1, foo2::BAR2 = baz1, baz2 + ``` + + 現在使用下面的評估顺序: + + 1. `foo1` + 2. `foo2` + 3. `baz1` + 4. `baz2` + + [[Bug #15928]] + +* Find pattern 不再是實驗性功能。 + [[Feature #18585]] + +* 使用不定長度參數 (例如 `*args`) 的方法,如果同時希望可以作為 keyword 參數傳遞給 `foo(*args)`。必須標記為 `ruby2_keywords` (若還未標記)。 + 換句話說,希望作為接收 keyword 參數的其他方法都毫無例外地必須標記為 `ruby2_keywords`。若某個函式庫需要使用 Ruby 3+,這會是一個較為容易的過渡升級方法。 + 在此之前,當接受方法取得 `*args`時會保留 `ruby2_keywords` 標記,但這是一個錯誤且行為不一致。 + 對於找到可能缺少 `ruby2_keywords` 標記的好方法是執行測試,在測試失敗的地方,找到最後一個接收 keyword 參數的方法,在哪裡使用 `puts nil, caller, nil`,並檢查每一個在呼叫鏈上的方法/區塊,是否都被正確地標記為 `ruby2_keywords`。[[Bug #18625]] [[Bug #16466]] + + ```ruby + def target(**kw) + end + + # 意外地 Ruby 2.7-3.1 在沒有 ruby2_keywords 的情況下可以成功 + # 執行,但在 3.2+ 卻是必需的。若需移除 ruby2_keywords, + # #foo 和 #bar 需要將參數改成 (*args, **kwargs) 或 (...) + ruby2_keywords def bar(*args) + target(*args) + end + + ruby2_keywords def foo(*args) + bar(*args) + end + + foo(k: 1) + ``` + +## 效能提升 + +### YJIT + + +* YJIT 現在支援 x86-64 和 arm64/aarch64 架構的 Linux、MacOS、BSD 和其他 UNIX 平台。 + * 此發佈支援 Mac M1/M2、AWS Graviton 和 Raspberry Pi 4 ARM64 處理器. +* 建置 YJIT 時需要 Rust 1.58.1+ 。 [[Feature #18481]] + * 為了確保使用 YJIT 建置 CRuby,請安裝 rustc >= 1.58.0 並在執行 `./configure` 時加入 `--enable-yjit`。 + * 若執行時遇到任何問題請聯絡 YJIT 團隊。 +* JIT 程式碼的物理記憶體是延遲分配的。與 Ruby 3.1 不同,Ruby process 的 RSS 被最小化,因為由 `--yjit-exec-mem-size` 分配的虛擬記憶體分頁在被 JIT 程式碼實際使用之前不會被映射到物理記憶體分頁。 +* 導入 Code GC,當 JIT 程式碼使用的記憶體達到 `--yjit-exec-mem-size` 時釋放所有 code pages。 + * RubyVM::YJIT.runtime_stats 除了現有的 `inline_code_size` 和 `outlined_code_size`,還會回傳 Code GC 指標 `code_gc_count`、`live_page_count`、`freed_page_count`、和 `freed_code_size`。 +* 大部分由 RubyVM::YJIT.runtime_stats 產生的統計資料可以在建置發佈時使用。 + * 只需要使用 `--yjit-stats` 執行 ruby 計算統計資料 (會產生一些運行開銷)。 +* YJIT 現在經過最佳化可以使用 Object Shapes。[[Feature #18776]] +* 利用更細粒度的常數失效來在定義新常數時減少失效的程式碼。 [[Feature #18589]] + +### MJIT + +* MJIT 編譯器在 Ruby 已重新實作為標準函式庫 `mjit`。 +* MJIT 編譯器在 forked Ruby process 下執行,而不是在名為 MJIT worker 的原生執行緒下工作。[[Feature #18968]] + * 因此,不再支援 Microsoft Visual Studio (MSWIN)。 +* 不再支援 MinGW。[[Feature #18824]] +* 重新命名 `--mjit-min-calls` 為 `--mjit-call-threshold`. +* 將 `--mjit-max-cache` 預設值從 10000 改為 100。 + +### PubGrub + +* Bundler 2.4 現在使用 [PubGrub](https://github.com/jhawthorn/pub_grub) resolver 而不是 [Molinillo](https://github.com/CocoaPods/Molinillo)。 + * PubGrub 是 Dart 程式語言的 `pub` 套件管理器使用的下一代求解演算法。 + * 這個變更可能會導致您得到不同的解析結果。請回報問題至 [RubyGems/Bundler issues](https://github.com/rubygems/rubygems/issues)。 + +* 在 Ruby 3.2,RubyGems 仍然使用 Molinillo resolver。我們計畫未來用 PubGrub 取代。 + +## 自 3.1 以來其他值得注意的變更 + +* Hash + * 當 hash 為空時,Hash#shift 現在總是回傳 nil,取代以往回傳預設值或呼叫預設的 proc。 [[Bug #16908]] + +* MatchData + * 已新增 MatchData#byteoffset。 [[Feature #13110]] + +* Module + * 已新增 Module.used_refinements。 [[Feature #14332]] + * 已新增 Module#refinements。 [[Feature #12737]] + * 已新增 Module#const_added。 [[Feature #17881]] + +* Proc + * Proc#dup 回傳子類別的實體。 [[Bug #17545]] + * Proc#parameters 現在接受 lambda keyword。 [[Feature #15357]] + +* Refinement + * 已新增 Refinement#refined_class。 [[Feature #12737]] + +* RubyVM::AbstractSyntaxTree + * `parse`、`parse_file` 和 `of` 新增 `error_tolerant` 選項。[[Feature #19013]] + +* Set + * Set 現在可以直接使用,不再需要先 `require "set"`。 [[Feature #16989]] + 目前是透過 `Set` 常數或呼叫 `Enumerable#to_set` 來自動載入。 + +* String + * 已新增 String#byteindex 和 String#byterindex。 [[Feature #13110]] + * 更新 Unicode 至 Version 15.0.0 和 Emoji Version 15.0。 [[Feature #18639]] (也適用於 Regexp) + * 已新增 String#bytesplice。 [[Feature #18598]] + +* Struct + * `Struct.new` 不需要傳入 `keyword_init: true` 也可以透過 keyword 參數初始化。 [[Feature #16806]] + +## 相容性問題 + +注意:不包含功能問題的修正。 + +### 被移除的常數 + +下列廢棄的常數已被移除。 + +* `Fixnum` 和 `Bignum` [[Feature #12005]] +* `Random::DEFAULT` [[Feature #17351]] +* `Struct::Group` +* `Struct::Passwd` + +### 被移除的方法 + +下列廢棄的方法已被移除。 + +* `Dir.exists?` [[Feature #17391]] +* `File.exists?` [[Feature #17391]] +* `Kernel#=~` [[Feature #15231]] +* `Kernel#taint`, `Kernel#untaint`, `Kernel#tainted?` + [[Feature #16131]] +* `Kernel#trust`, `Kernel#untrust`, `Kernel#untrusted?` + [[Feature #16131]] + +## Stdlib 相容性問題 + +### 不再綑綁第三方原始碼 + +* 我們不再綑綁第三方原始碼像是 `libyaml`, `libffi`。 + + * psych 中的 libyaml 原始碼已經被移除。您可能需要在 Ubuntu/Debian 平台上安裝 `libyaml-dev`。 每個平台上的套件名稱有所不同。 + + * `fiddle` 中綑綁的 libffi 原始碼也已經移除。 + +* Psych 和 fiddle 支援指定 libyaml 和 libffi 原始碼版本來靜態建置。您可以使用 libyaml-0.2.5 建置 psych 像是: + + ```bash + $ ./configure --with-libyaml-source-dir=/path/to/libyaml-0.2.5 + ``` + + 您也能使用 libffi-3.4.4 建置 fiddle,像是: + + ```bash + $ ./configure --with-libffi-source-dir=/path/to/libffi-3.4.4 + ``` + + [[Feature #18571]] + +## C API 更新 + +### 更新的 C APIs + +下列是已更新的 APIs。 + +* PRNG 更新 + `rb_random_interface_t` 更新版本。 + 使用此舊版介面建置的擴展函式庫還需要定義 `init_int32` 函式。 + +### 被移除的 C APIs + +下列廢棄的 APIs 已被移除。 + +* `rb_cData` 變數。 +* "taintedness" 和 "trustedness" 函式. [[Feature #16131]] + +### 標準函式庫更新 + +* 更新了以下的預設 gem。 + * RubyGems 3.4.0.dev + * benchmark 0.2.1 + * bigdecimal 3.1.3 + * bundler 2.4.0.dev + * cgi 0.3.6 + * date 3.3.0 + * delegate 0.3.0 + * did_you_mean 1.6.2 + * digest 3.1.1 + * drb 2.1.1 + * erb 4.0.2 + * error_highlight 0.5.1 + * etc 1.4.1 + * fcntl 1.0.2 + * fiddle 1.1.1 + * fileutils 1.7.0 + * forwardable 1.3.3 + * getoptlong 0.2.0 + * io-console 0.5.11 + * io-nonblock 0.2.0 + * io-wait 0.3.0.pre + * ipaddr 1.2.5 + * irb 1.5.1 + * json 2.6.2 + * logger 1.5.2 + * mutex_m 0.1.2 + * net-http 0.3.1 + * net-protocol 0.2.0 + * nkf 0.1.2 + * open-uri 0.3.0 + * openssl 3.1.0.pre + * optparse 0.3.0 + * ostruct 0.5.5 + * pathname 0.2.1 + * pp 0.4.0 + * pstore 0.1.2 + * psych 5.0.0 + * racc 1.6.1 + * rdoc 6.5.0 + * reline 0.3.1 + * resolv 0.2.2 + * securerandom 0.2.1 + * set 1.0.3 + * stringio 3.0.3 + * syntax_suggest 1.0.1 + * timeout 0.3.1 + * tmpdir 0.1.3 + * tsort 0.1.1 + * un 0.2.1 + * uri 0.12.0 + * win32ole 1.8.9 + * zlib 3.0.0 +* 更新了以下的 bundled gem。 + * minitest 5.16.3 + * power_assert 2.0.2 + * test-unit 3.5.5 + * net-ftp 0.2.0 + * net-imap 0.3.1 + * net-pop 0.1.2 + * net-smtp 0.3.3 + * rbs 2.8.1 + * typeprof 0.21.3 + * debug 1.7.0 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}) 來了解更多。 + +自 Ruby 3.1.0 以來,計 [{{ release.stats.files_changed }} 檔案變更, {{ release.stats.insertions }} 行新增 (+), {{ release.stats.deletions }} 行刪減 (-)](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}#file_bucket)! + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 + + + +[Feature #12005]: https://bugs.ruby-lang.org/issues/12005 +[Feature #12655]: https://bugs.ruby-lang.org/issues/12655 +[Feature #12737]: https://bugs.ruby-lang.org/issues/12737 +[Feature #13110]: https://bugs.ruby-lang.org/issues/13110 +[Feature #14332]: https://bugs.ruby-lang.org/issues/14332 +[Feature #15231]: https://bugs.ruby-lang.org/issues/15231 +[Feature #15357]: https://bugs.ruby-lang.org/issues/15357 +[Bug #15928]: https://bugs.ruby-lang.org/issues/15928 +[Feature #16131]: https://bugs.ruby-lang.org/issues/16131 +[Bug #16466]: https://bugs.ruby-lang.org/issues/16466 +[Feature #16806]: https://bugs.ruby-lang.org/issues/16806 +[Bug #16889]: https://bugs.ruby-lang.org/issues/16889 +[Bug #16908]: https://bugs.ruby-lang.org/issues/16908 +[Feature #16989]: https://bugs.ruby-lang.org/issues/16989 +[Feature #17351]: https://bugs.ruby-lang.org/issues/17351 +[Feature #17391]: https://bugs.ruby-lang.org/issues/17391 +[Bug #17545]: https://bugs.ruby-lang.org/issues/17545 +[Feature #17881]: https://bugs.ruby-lang.org/issues/17881 +[Feature #18639]: https://bugs.ruby-lang.org/issues/18639 +[Feature #18159]: https://bugs.ruby-lang.org/issues/18159 +[Feature #18351]: https://bugs.ruby-lang.org/issues/18351 +[Feature #18481]: https://bugs.ruby-lang.org/issues/18481 +[Bug #18487]: https://bugs.ruby-lang.org/issues/18487 +[Feature #18571]: https://bugs.ruby-lang.org/issues/18571 +[Feature #18585]: https://bugs.ruby-lang.org/issues/18585 +[Feature #18589]: https://bugs.ruby-lang.org/issues/18589 +[Feature #18598]: https://bugs.ruby-lang.org/issues/18598 +[Bug #18625]: https://bugs.ruby-lang.org/issues/18625 +[Bug #18633]: https://bugs.ruby-lang.org/issues/18633 +[Feature #18685]: https://bugs.ruby-lang.org/issues/18685 +[Feature #18776]: https://bugs.ruby-lang.org/issues/18776 +[Bug #18782]: https://bugs.ruby-lang.org/issues/18782 +[Feature #18788]: https://bugs.ruby-lang.org/issues/18788 +[Feature #18809]: https://bugs.ruby-lang.org/issues/18809 +[Bug #19100]: https://bugs.ruby-lang.org/issues/19100 +[Bug #19013]: https://bugs.ruby-lang.org/issues/19013 diff --git a/zh_tw/news/_posts/2022-12-25-ruby-3-2-0-released.md b/zh_tw/news/_posts/2022-12-25-ruby-3-2-0-released.md new file mode 100644 index 0000000000..2688ca2db6 --- /dev/null +++ b/zh_tw/news/_posts/2022-12-25-ruby-3-2-0-released.md @@ -0,0 +1,637 @@ +--- +layout: news_post +title: "Ruby 3.2.0 Released" +author: "naruse" +translator: "Bear Su" +date: 2022-12-25 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.2.0" | first %} + +我們很高興宣佈 Ruby {{ release.version }} 發佈了。Ruby 3.2 新增許多新功能及效能提升。 + + +## 基於 WASI 的 WebAssembly 支援 + +這是首次基於 WASI 支援 WebAssembly。使得 CRuby binary 可用於網頁瀏覽器、Serverless Edge 環境、與其他 WebAssembly/WASI 嵌入式環境. 目前已通過 basic 與 bootstrap 測試,但不包括 Thread API。 + +![](https://i.imgur.com/opCgKy2.png) + +### 背景 + +[WebAssembly (Wasm)](https://webassembly.org/) 最初是為了在網頁瀏覽器中安全快速地執行程式。但其目標 - 在不同的環境上安全又有效率的執行程式,不僅是 web 應用程式,也是其他一般應用程式的目標。 + +[WASI (The WebAssembly System Interface)](https://wasi.dev/) 被設計用於此使用場景。 儘管應用程式需要與作業系統溝通,但 WebAssembly 卻是運行在沒有系統介面的虛擬機中。WASI 將其標準化了。 + +Ruby 中的 WebAssembly/WASI 支援透過這些專案,允許 Ruby 開發者可以開發在相容此功能的平台上執行的應用程式。 + +### 使用場景 + +此支援功能使得開發者可以在 WebAssembly 環境上使用 CRuby。 其中一個範例就是 [TryRuby playground](https://try.ruby-lang.org/playground/) 的 CRuby 支援。現在您可以在您的網頁瀏覽器上嘗試原生的 CRuby。 + +### 技術特點 + +因為目前 WASI 和 WebAssembly 不斷地再改進與安全性理由,仍缺少一些功能來實現 Fiber、異常、和 GC。所以 CRuby 透過使用 Asyncify,一個在使用者空間的 binary 轉換技術,來彌補中間的差距。 + +並且,我們建置了 [a VFS on top of WASI](https://github.com/kateinoigakukun/wasi-vfs/wiki/Getting-Started-with-CRuby),讓我們可以很容易地將 Ruby 應用程式打包成單一 .wasm 檔案。簡化了 Ruby 應用程式的分發過程。 + +### Related links + +* [Add WASI based WebAssembly support #5407](https://github.com/ruby/ruby/pull/5407) +* [An Update on WebAssembly/WASI Support in Ruby](https://itnext.io/final-report-webassembly-wasi-support-in-ruby-4aface7d90c9) + + +## 適用於生產環境的 YJIT + +![](https://i.imgur.com/X9ulfac.png) + +* YJIT 不再是實驗性功能。 + * 經過一年以上的生產工作負載測試,已證明相當穩定。 +* YJIT 現在支援 x86-64 和 arm64/aarch64 架構的 Linux、MacOS、BSD 和其他 UNIX 平台。 + * 此發佈支援 Apple M1/M2、AWS Graviton、Raspberry Pi 4 和更多。 +* 建置 YJIT 時需要 Rust 1.58.1+ 。 [[Feature #18481]] + * 為了確保使用 YJIT 建置 CRuby,請安裝 rustc >= 1.58.0 並在執行 `./configure` 時加入 `--enable-yjit`。 + * 若執行時遇到任何問題請聯絡 YJIT 團隊。 +* YJIT 3.2 版本比 3.1 更快,且耗用的記憶體開銷約為 1/3。 + * 整體而言,YJIT 在 [yjit-bench](https://github.com/Shopify/yjit-bench) 上比 Ruby 直譯器快 41%(幾何平均值)。 + * JIT 程式碼的物理記憶體是延遲分配的。與 Ruby 3.1 不同,Ruby process 的 RSS 被最小化,因為由 `--yjit-exec-mem-size` 分配的虛擬記憶體分頁在被 JIT 程式碼實際使用之前不會被映射到物理記憶體分頁。 + * 導入 Code GC,當 JIT 程式碼使用的記憶體達到 `--yjit-exec-mem-size` 時釋放所有 code pages。 + * `RubyVM::YJIT.runtime_stats` 除了現有的 `inline_code_size` 和 `outlined_code_size`,還會回傳 Code GC 指標 + `code_gc_count`、`live_page_count`、`freed_page_count`、和 `freed_code_size`。 +* 大部分由 `RubyVM::YJIT.runtime_stats` 產生的統計資料可以在建置發佈時使用。 + * 只需要使用 `--yjit-stats` 執行 ruby 計算並輸出統計資料 (會產生一些運行開銷)。 +* YJIT 現在經過最佳化可以使用 Object Shapes。[[Feature #18776]] +* 利用更細粒度的常數失效來在定義新常數時減少失效的程式碼。 [[Feature #18589]] +* `--yjit-exec-mem-size` 預設值改為 64 (MiB)。 +* `--yjit-call-threshold` 預設值改為 30。 + +## Regexp 增強 ReDoS 防禦 + +眾所皆知 Regexp matching 所花的時間可能會非預期的久。如果您的程式使用效率可能較低的 Regexp 來比對不可信的輸入內容,攻擊者可能可以藉此來發動服務阻斷攻擊。(稱為 Regular expression DoS, or ReDoS)。 + +我們進行了兩項改進,可以顯著降低 ReDos 攻擊的影響。 + +### Improved Regexp matching algorithm + +從 Ruby 3.2 開始,透過使用 memoization 技術,Regexp 的比對演算法得到了很大的改進。 + +``` +# 這個比對在 Ruby 3.1 需要花費 10 秒。 而在 Ruby 3.2 只需要花費 0.003 秒。 + +/^a*b?a*$/ =~ "a" * 50000 + "x" +``` + +![](https://cache.ruby-lang.org/pub/media/ruby320_regex_1.png) +![](https://cache.ruby-lang.org/pub/media/ruby320_regex_2.png) + +改進後的演算法使得大部分的 Regexp (我們實驗中的 90%) 可以在線性時間內完成。 + +這個改善可能會花費與輸入長度成比例的記憶體。我們預期這不會有實際問題,因為這種記憶體分配通常都會延遲,而正常的 Regexp 最多可花費輸入長度 10 倍的記憶體。如果您在現實場景中使用 Regexp 進行比對時遇到記憶題不足的問題,請向我們回報。 + +最初提案: + +### Regexp 逾時設定 + +上述的改善無法套用在某些 Regexp,像是包含進階功能 (例如:back-references 或是 look-around),或有大量固定重複次數。作為備案,我們在 Regexp 比對中導入了逾時設定。 + + +```ruby +Regexp.timeout = 1.0 + +/^a*b?a*()\1$/ =~ "a" * 50000 + "x" +#=> 1 秒後拋出 Regexp::TimeoutError +``` + +注意 `Regexp.timeout` 是全域設定。如果您想要為一些特定的 Regexps 使用不同的逾時設定,您可以在呼叫 `Regexp.new` 時使用 `timeout` keyword。 + +```ruby +Regexp.timeout = 1.0 + +# This regexp has no timeout +long_time_re = Regexp.new('^a*b?a*()\1$', timeout: Float::INFINITY) + +long_time_re =~ "a" * 50000 + "x" # 不會被中斷 +``` + +最初提案: + +## 其他值得注意的新功能 + +### SyntaxSuggest + +* `syntax_suggest`(前 `dead_end`)功能已整合進 Ruby 了。這可以幫助您找到錯誤所在的位置,例如缺少或多餘的 `end`,以便您能更快修正,例如以下範例: + + ``` + Unmatched `end', missing keyword (`do', `def`, `if`, etc.) ? + + 1 class Dog + > 2 defbark + > 3 end + 4 end + ``` + + [[Feature #18159]] + + +### ErrorHighlight + +* 現在會指向 TypeError 和 ArgumentError 相關的參數。 + +``` +test.rb:2:in `+': nil can't be coerced into Integer (TypeError) + +sum = ary[0] + ary[1] + ^^^^^^ +``` + +### 語言功能 + +* 除了作為方法參數,匿名不定長度參數現在也可以傳遞為其他方法的參數。 + [[Feature #18351]] + + ```ruby + def foo(*) + bar(*) + end + def baz(**) + quux(**) + end + ``` + +* 只接收單一參數的 proc 將不會自動解開封裝。 [[Bug #18633]] + + ```ruby + proc{|a, **k| a}.call([1, 2]) + # Ruby 3.1 與之前的版本 + # => 1 + # Ruby 3.2 與之後的版本 + # => [1, 2] + ``` + +* 常數賦值評估順序將與單一屬性賦值評估順序保持一致。參考以下程式碼: + + ```ruby + foo::BAR = baz + ``` + + `foo` 現在會在 `baz` 之前被呼叫。同樣地,在有多個賦值給常數的情況,會使用從左至右的順序評估。參考以下程式碼: + + ```ruby + foo1::BAR1, foo2::BAR2 = baz1, baz2 + ``` + + 現在使用下面的評估顺序: + + 1. `foo1` + 2. `foo2` + 3. `baz1` + 4. `baz2` + + [[Bug #15928]] + +* Find pattern 不再是實驗性功能。 + [[Feature #18585]] + +* 使用不定長度參數 (例如 `*args`) 的方法,如果同時希望可以作為 keyword 參數傳遞給 `foo(*args)`。必須標記為 `ruby2_keywords` (若還未標記)。 + 換句話說,希望作為接收 keyword 參數的其他方法都毫無例外地必須標記為 `ruby2_keywords`。若某個函式庫需要使用 Ruby 3+,這會是一個較為容易的過渡升級方法。 + 在此之前,當接受方法取得 `*args`時會保留 `ruby2_keywords` 標記,但這是一個錯誤且行為不一致。 + 對於找到可能缺少 `ruby2_keywords` 標記的好方法是執行測試,在測試失敗的地方,找到最後一個接收 keyword 參數的方法,在哪裡使用 `puts nil, caller, nil`,並檢查每一個在呼叫鏈上的方法/區塊,是否都被正確地標記為 `ruby2_keywords`。[[Bug #18625]] [[Bug #16466]] + + ```ruby + def target(**kw) + end + + # 意外地 Ruby 2.7-3.1 在沒有 ruby2_keywords 的情況下可以成功 + # 執行,但在 3.2+ 卻是必需的。若需移除 ruby2_keywords, + # #foo 和 #bar 需要將參數改成 (*args, **kwargs) 或 (...) + ruby2_keywords def bar(*args) + target(*args) + end + + ruby2_keywords def foo(*args) + bar(*args) + end + + foo(k: 1) + ``` + +## 效能提升 + +### MJIT + +* MJIT 編譯器在 Ruby 已重新實作為標準函式庫 `ruby_vm/mjit/compiler`。 +* MJIT 編譯器在 forked process 下執行,而不是在名為 MJIT worker 的原生執行緒下工作。[[Feature #18968]] + * 因此,不再支援 Microsoft Visual Studio (MSWIN)。 +* 不再支援 MinGW。[[Feature #18824]] +* 重新命名 `--mjit-min-calls` 為 `--mjit-call-threshold`. +* 將 `--mjit-max-cache` 預設值從 10000 改為 100。 + +### PubGrub + +* Bundler 2.4 現在使用 [PubGrub](https://github.com/jhawthorn/pub_grub) resolver 而不是 [Molinillo](https://github.com/CocoaPods/Molinillo)。 + * PubGrub 是 Dart 程式語言的 `pub` 套件管理器使用的下一代求解演算法。 + * 這個變更可能會導致您得到不同的解析結果。請回報問題至 [RubyGems/Bundler issues](https://github.com/rubygems/rubygems/issues)。 + +* 在 Ruby 3.2,RubyGems 仍然使用 Molinillo resolver。我們計畫未來用 PubGrub 取代。 + +## 自 3.1 以來其他值得注意的變更 + +* Data + * 新增了一個核心類別來表示簡單的不可變值物件。該類別類似於 Struct 並部分共用實作,但具有更精簡和嚴格的 API。 [[Feature #16122]] + + ```ruby + Measure = Data.define(:amount, :unit) + distance = Measure.new(100, 'km') #=> # + weight = Measure.new(amount: 50, unit: 'kg') #=> # + weight.with(amount: 40) #=> # + weight.amount #=> 50 + weight.amount = 40 #=> NoMethodError: undefined method `amount=' + ``` + +* Hash + * 當 hash 為空時,`Hash#shift` 現在總是回傳 nil,取代以往回傳預設值或呼叫預設的 proc。 [[Bug #16908]] + +* MatchData + * 已新增 `MatchData#byteoffset`。 [[Feature #13110]] + +* Module + * 已新增 `Module.used_refinements`。 [[Feature #14332]] + * 已新增 `Module#refinements`。 [[Feature #12737]] + * 已新增 `Module#const_added`。 [[Feature #17881]] + +* Proc + * `Proc#dup` 回傳子類別的實體。 [[Bug #17545]] + * `Proc#parameters` 現在接受 lambda keyword。 [[Feature #15357]] + +* Refinement + * 已新增 `Refinement#refined_class`。 [[Feature #12737]] + +* RubyVM::AbstractSyntaxTree + * `parse`、`parse_file` 和 `of` 新增 `error_tolerant` 選項。[[Feature #19013]] 使用這個選項: + 1. SyntaxError 會被抑制 + 2. 無效的輸入會回傳 AST + 3. 當解析器到達輸入結尾時但缺少 `end` 時會補充 `end` + 4. `end` 會基於縮排視為關鍵字 + + ```ruby + # Without error_tolerant option + root = RubyVM::AbstractSyntaxTree.parse(<<~RUBY) + def m + a = 10 + if + end + RUBY + # => :33:in `parse': syntax error, unexpected `end' (SyntaxError) + + # With error_tolerant option + root = RubyVM::AbstractSyntaxTree.parse(<<~RUBY, error_tolerant: true) + def m + a = 10 + if + end + RUBY + p root # => # + + # `end` is treated as keyword based on indent + root = RubyVM::AbstractSyntaxTree.parse(<<~RUBY, error_tolerant: true) + module Z + class Foo + foo. + end + + def bar + end + end + RUBY + p root.children[-1].children[-1].children[-1].children[-2..-1] + # => [#, #] + ``` + + * `parse`, `parse_file` 和 `of` 新增 `keep_tokens` 選項。 [[Feature #19070]] + + ```ruby + root = RubyVM::AbstractSyntaxTree.parse("x = 1 + 2", keep_tokens: true) + root.tokens # => [[0, :tIDENTIFIER, "x", [1, 0, 1, 1]], [1, :tSP, " ", [1, 1, 1, 2]], ...] + root.tokens.map{_1[2]}.join # => "x = 1 + 2" + ``` + +* Set + * Set 現在可以直接使用,不再需要先 `require "set"`。 [[Feature #16989]] + 目前是透過 `Set` 常數或呼叫 `Enumerable#to_set` 來自動載入。 + +* String + * 已新增 `String#byteindex` 和 `String#byterindex`。 [[Feature #13110]] + * 更新 Unicode 至 Version 15.0.0 和 Emoji Version 15.0。 [[Feature #18639]] (也適用於 Regexp) + * 已新增 `String#bytesplice`。 [[Feature #18598]] + +* Struct + * `Struct.new` 不需要傳入 `keyword_init: true` 也可以透過 keyword 參數初始化。 [[Feature #16806]] + + ```ruby + Post = Struct.new(:id, :name) + Post.new(1, "hello") #=> # + # 從 Ruby 3.2 開始,以下程式碼也能在沒有 keyword_init: true 的情況下工作。 + Post.new(id: 1, name: "hello") #=> # + ``` + +## 相容性問題 + +注意:不包含功能問題的修正。 + +### 被移除的常數 + +下列廢棄的常數已被移除。 + +* `Fixnum` 和 `Bignum` [[Feature #12005]] +* `Random::DEFAULT` [[Feature #17351]] +* `Struct::Group` +* `Struct::Passwd` + +### 被移除的方法 + +下列廢棄的方法已被移除。 + +* `Dir.exists?` [[Feature #17391]] +* `File.exists?` [[Feature #17391]] +* `Kernel#=~` [[Feature #15231]] +* `Kernel#taint`, `Kernel#untaint`, `Kernel#tainted?` + [[Feature #16131]] +* `Kernel#trust`, `Kernel#untrust`, `Kernel#untrusted?` + [[Feature #16131]] + +## Stdlib 相容性問題 + +### 不再綑綁第三方原始碼 + +* 我們不再綑綁第三方原始碼像是 `libyaml`, `libffi`。 + + * psych 中的 libyaml 原始碼已經被移除。您可能需要在 Ubuntu/Debian 平台上安裝 `libyaml-dev`。 每個平台上的套件名稱有所不同。 + + * `fiddle` 中綑綁的 libffi 原始碼也已經移除。 + +* Psych 和 fiddle 支援指定 libyaml 和 libffi 原始碼版本來靜態建置。您可以使用 libyaml-0.2.5 建置 psych 像是: + + ```bash + $ ./configure --with-libyaml-source-dir=/path/to/libyaml-0.2.5 + ``` + + 您也能使用 libffi-3.4.4 建置 fiddle,像是: + + ```bash + $ ./configure --with-libffi-source-dir=/path/to/libffi-3.4.4 + ``` + + [[Feature #18571]] + +## C API 更新 + +### 更新的 C APIs + +The following APIs are updated. + +* PRNG 更新 + * `rb_random_interface_t` 更新版本。 + 使用此舊版介面建置的擴展函式庫還需要定義 `init_int32` 函式。 + +### 被移除的 C APIs + +下列廢棄的 APIs 已被移除。 + +* `rb_cData` 變數。 +* "taintedness" 和 "trustedness" 函式. [[Feature #16131]] + +### 標準函式庫更新 + +* Bundler + + * bundle gem 新增 --ext=rust 支援,以便建立使用 Rust extensions 的簡單 gem。 + [[GH-rubygems-6149]] + * 加速 cloning git repos。 [[GH-rubygems-4475]] + +* RubyGems + + * cargo builder 新增 mswin 支援。 [[GH-rubygems-6167]] + +* ERB + + * `ERB::Util.html_escape` 變得比 `CGI.escapeHTML` 更快. + * 當不需要跳脫任何字元時,不再分配 String 物件。 + * 當參數已經是 String 物件時,不再呼叫 `#to_s` 方法。 + * `ERB::Escape.html_escape` 已作為 `ERB::Util.html_escape` 的別名,尚未被 Rails monkey-patched。 + +* IRB + + * debug.gem 整合指令已新增:`debug`、`break`、`catch`, + `next`、`delete`、`step`、`continue`、`finish`、`backtrace`、`info` + * 即使您的 Gemfile 中沒有加入 `gem "debug"`,依然能夠使用它們。 + * 參見: [What's new in Ruby 3.2's IRB?](https://st0012.dev/whats-new-in-ruby-3-2-irb) + * 已新增更多 Pry-like 指令與功能。 + * 已新增 `edit` 和 `show_cmds` (類似 Pry 的 `help`)。 + * `ls` 使用 `-g` 或 `-G` 選項來過濾輸出。 + * `show_source` 新增別名 `$` 並接受不含引號的輸入。 + * `whereami` 新增別名 `@`。 + +* 更新了以下的預設 gem。 + + * RubyGems 3.4.1 + * abbrev 0.1.1 + * benchmark 0.2.1 + * bigdecimal 3.1.3 + * bundler 2.4.1 + * cgi 0.3.6 + * csv 3.2.6 + * date 3.3.3 + * delegate 0.3.0 + * did_you_mean 1.6.3 + * digest 3.1.1 + * drb 2.1.1 + * english 0.7.2 + * erb 4.0.2 + * error_highlight 0.5.1 + * etc 1.4.2 + * fcntl 1.0.2 + * fiddle 1.1.1 + * fileutils 1.7.0 + * forwardable 1.3.3 + * getoptlong 0.2.0 + * io-console 0.6.0 + * io-nonblock 0.2.0 + * io-wait 0.3.0 + * ipaddr 1.2.5 + * irb 1.6.2 + * json 2.6.3 + * logger 1.5.3 + * mutex_m 0.1.2 + * net-http 0.3.2 + * net-protocol 0.2.1 + * nkf 0.1.2 + * open-uri 0.3.0 + * open3 0.1.2 + * openssl 3.1.0 + * optparse 0.3.1 + * ostruct 0.5.5 + * pathname 0.2.1 + * pp 0.4.0 + * pstore 0.1.2 + * psych 5.0.1 + * racc 1.6.2 + * rdoc 6.5.0 + * readline-ext 0.1.5 + * reline 0.3.2 + * resolv 0.2.2 + * resolv-replace 0.1.1 + * securerandom 0.2.2 + * set 1.0.3 + * stringio 3.0.4 + * strscan 3.0.5 + * syntax_suggest 1.0.2 + * syslog 0.1.1 + * tempfile 0.1.3 + * time 0.2.1 + * timeout 0.3.1 + * tmpdir 0.1.3 + * tsort 0.1.1 + * un 0.2.1 + * uri 0.12.0 + * weakref 0.1.2 + * win32ole 1.8.9 + * yaml 0.2.1 + * zlib 3.0.0 + +* 更新了以下的 bundled gem。 + + * minitest 5.16.3 + * power_assert 2.0.3 + * test-unit 3.5.7 + * net-ftp 0.2.0 + * net-imap 0.3.3 + * net-pop 0.1.2 + * net-smtp 0.3.3 + * rbs 2.8.2 + * typeprof 0.21.3 + * debug 1.7.1 + +請參閱 GitHub 發布如 [GitHub Releases of Logger](https://github.com/ruby/logger/releases) 和變更紀錄來了解更多關於預設 gems 與 bundled gems 的資訊。 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}) 來了解更多。 + +自 Ruby 3.1.0 以來,計 [{{ release.stats.files_changed }} 檔案變更, {{ release.stats.insertions }} 行新增 (+), {{ release.stats.deletions }} 行刪減 (-)](https://github.com/ruby/ruby/compare/v3_1_0...{{ release.tag }}#file_bucket)! + +聖誕快樂、佳節愉快,享受用 Ruby 3.2 寫程式的時光。 + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 + +[Feature #12005]: https://bugs.ruby-lang.org/issues/12005 +[Feature #12084]: https://bugs.ruby-lang.org/issues/12084 +[Feature #12655]: https://bugs.ruby-lang.org/issues/12655 +[Feature #12737]: https://bugs.ruby-lang.org/issues/12737 +[Feature #13110]: https://bugs.ruby-lang.org/issues/13110 +[Feature #14332]: https://bugs.ruby-lang.org/issues/14332 +[Feature #15231]: https://bugs.ruby-lang.org/issues/15231 +[Feature #15357]: https://bugs.ruby-lang.org/issues/15357 +[Bug #15928]: https://bugs.ruby-lang.org/issues/15928 +[Feature #16122]: https://bugs.ruby-lang.org/issues/16122 +[Feature #16131]: https://bugs.ruby-lang.org/issues/16131 +[Bug #16466]: https://bugs.ruby-lang.org/issues/16466 +[Feature #16663]: https://bugs.ruby-lang.org/issues/16663 +[Feature #16806]: https://bugs.ruby-lang.org/issues/16806 +[Bug #16889]: https://bugs.ruby-lang.org/issues/16889 +[Bug #16908]: https://bugs.ruby-lang.org/issues/16908 +[Feature #16989]: https://bugs.ruby-lang.org/issues/16989 +[Feature #17351]: https://bugs.ruby-lang.org/issues/17351 +[Feature #17391]: https://bugs.ruby-lang.org/issues/17391 +[Bug #17545]: https://bugs.ruby-lang.org/issues/17545 +[Bug #17767]: https://bugs.ruby-lang.org/issues/17767 +[Feature #17837]: https://bugs.ruby-lang.org/issues/17837 +[Feature #17881]: https://bugs.ruby-lang.org/issues/17881 +[Feature #18033]: https://bugs.ruby-lang.org/issues/18033 +[Feature #18159]: https://bugs.ruby-lang.org/issues/18159 +[Feature #18239]: https://bugs.ruby-lang.org/issues/18239#note-17 +[Feature #18351]: https://bugs.ruby-lang.org/issues/18351 +[Feature #18367]: https://bugs.ruby-lang.org/issues/18367 +[Bug #18435]: https://bugs.ruby-lang.org/issues/18435 +[Feature #18462]: https://bugs.ruby-lang.org/issues/18462 +[Feature #18481]: https://bugs.ruby-lang.org/issues/18481 +[Bug #18487]: https://bugs.ruby-lang.org/issues/18487 +[Feature #18564]: https://bugs.ruby-lang.org/issues/18564 +[Feature #18571]: https://bugs.ruby-lang.org/issues/18571 +[Feature #18585]: https://bugs.ruby-lang.org/issues/18585 +[Feature #18589]: https://bugs.ruby-lang.org/issues/18589 +[Feature #18595]: https://bugs.ruby-lang.org/issues/18595 +[Feature #18598]: https://bugs.ruby-lang.org/issues/18598 +[Bug #18625]: https://bugs.ruby-lang.org/issues/18625 +[Feature #18630]: https://bugs.ruby-lang.org/issues/18630 +[Bug #18633]: https://bugs.ruby-lang.org/issues/18633 +[Feature #18639]: https://bugs.ruby-lang.org/issues/18639 +[Feature #18685]: https://bugs.ruby-lang.org/issues/18685 +[Bug #18729]: https://bugs.ruby-lang.org/issues/18729 +[Bug #18751]: https://bugs.ruby-lang.org/issues/18751 +[Feature #18774]: https://bugs.ruby-lang.org/issues/18774 +[Feature #18776]: https://bugs.ruby-lang.org/issues/18776 +[Bug #18782]: https://bugs.ruby-lang.org/issues/18782 +[Feature #18788]: https://bugs.ruby-lang.org/issues/18788 +[Feature #18798]: https://bugs.ruby-lang.org/issues/18798 +[Feature #18809]: https://bugs.ruby-lang.org/issues/18809 +[Feature #18821]: https://bugs.ruby-lang.org/issues/18821 +[Feature #18822]: https://bugs.ruby-lang.org/issues/18822 +[Feature #18824]: https://bugs.ruby-lang.org/issues/18824 +[Feature #18832]: https://bugs.ruby-lang.org/issues/18832 +[Feature #18875]: https://bugs.ruby-lang.org/issues/18875 +[Feature #18925]: https://bugs.ruby-lang.org/issues/18925 +[Feature #18944]: https://bugs.ruby-lang.org/issues/18944 +[Feature #18949]: https://bugs.ruby-lang.org/issues/18949 +[Feature #18968]: https://bugs.ruby-lang.org/issues/18968 +[Feature #19008]: https://bugs.ruby-lang.org/issues/19008 +[Feature #19013]: https://bugs.ruby-lang.org/issues/19013 +[Feature #19026]: https://bugs.ruby-lang.org/issues/19026 +[Feature #19036]: https://bugs.ruby-lang.org/issues/19036 +[Feature #19060]: https://bugs.ruby-lang.org/issues/19060 +[Feature #19070]: https://bugs.ruby-lang.org/issues/19070 +[Feature #19071]: https://bugs.ruby-lang.org/issues/19071 +[Feature #19078]: https://bugs.ruby-lang.org/issues/19078 +[Bug #19087]: https://bugs.ruby-lang.org/issues/19087 +[Bug #19100]: https://bugs.ruby-lang.org/issues/19100 +[Feature #19104]: https://bugs.ruby-lang.org/issues/19104 +[Feature #19135]: https://bugs.ruby-lang.org/issues/19135 +[Feature #19138]: https://bugs.ruby-lang.org/issues/19138 +[Feature #19194]: https://bugs.ruby-lang.org/issues/19194 +[Molinillo]: https://github.com/CocoaPods/Molinillo +[PubGrub]: https://github.com/jhawthorn/pub_grub +[GH-net-protocol-14]: https://github.com/ruby/net-protocol/pull/14 +[GH-pathname-20]: https://github.com/ruby/pathname/pull/20 +[GH-6791]: https://github.com/ruby/ruby/pull/6791 +[GH-6868]: https://github.com/ruby/ruby/pull/6868 +[GH-rubygems-4475]: https://github.com/rubygems/rubygems/pull/4475 +[GH-rubygems-6149]: https://github.com/rubygems/rubygems/pull/6149 +[GH-rubygems-6167]: https://github.com/rubygems/rubygems/pull/6167 +[sec-156615]: https://hackerone.com/reports/156615 +[CVE-2021-33621]: https://www.ruby-lang.org/en/news/2022/11/22/http-response-splitting-in-cgi-cve-2021-33621/ +[wasm/README.md]: https://github.com/ruby/ruby/blob/master/wasm/README.md +[ruby.wasm]: https://github.com/ruby/ruby.wasm From 7b77521ff0d5f034f9b8bec9bd81c047628aedfd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 15:50:34 +0000 Subject: [PATCH 089/607] Bump actions/checkout from 4.1.0 to 4.1.1 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.0 to 4.1.1. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/8ade135a41bc03ea155e62e844d188df1ea18608...b4ffde65f46336ab88eb53be808477a3936bae11) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5c2888e6ea..b35ea25e53 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 4ed1903330..71c47ea24d 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby uses: ruby/setup-ruby@5cfe23c062c0aac352e765b1b7cc12ea5255ccc4 # v1.156.0 with: From 29c99a9f8f201de0ceb68e0b0c721be15c12f963 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 15:50:31 +0000 Subject: [PATCH 090/607] Bump ruby/setup-ruby from 1.156.0 to 1.157.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.156.0 to 1.157.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/5cfe23c062c0aac352e765b1b7cc12ea5255ccc4...a05e47355e80e57b9a67566a813648fa67d92011) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b35ea25e53..535ab2f6b8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@5cfe23c062c0aac352e765b1b7cc12ea5255ccc4 # v1.156.0 + uses: ruby/setup-ruby@a05e47355e80e57b9a67566a813648fa67d92011 # v1.157.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 71c47ea24d..206d136fbe 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby - uses: ruby/setup-ruby@5cfe23c062c0aac352e765b1b7cc12ea5255ccc4 # v1.156.0 + uses: ruby/setup-ruby@a05e47355e80e57b9a67566a813648fa67d92011 # v1.157.0 with: ruby-version: '3.2' bundler-cache: true From 4fd552145bd3ef938f0e4a7340f875763d94e3a9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Oct 2023 16:01:43 +0000 Subject: [PATCH 091/607] Bump ruby/setup-ruby from 1.157.0 to 1.159.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.157.0 to 1.159.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/a05e47355e80e57b9a67566a813648fa67d92011...54a18e26dbbb1eabc604f317ade9a5788dddef81) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 535ab2f6b8..805d8fda27 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@a05e47355e80e57b9a67566a813648fa67d92011 # v1.157.0 + uses: ruby/setup-ruby@54a18e26dbbb1eabc604f317ade9a5788dddef81 # v1.159.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 206d136fbe..34c1315c9a 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby - uses: ruby/setup-ruby@a05e47355e80e57b9a67566a813648fa67d92011 # v1.157.0 + uses: ruby/setup-ruby@54a18e26dbbb1eabc604f317ade9a5788dddef81 # v1.159.0 with: ruby-version: '3.2' bundler-cache: true From 339a90eae2bc991ce68d973a0885cabe6fe07364 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Tue, 10 Oct 2023 19:52:49 +0700 Subject: [PATCH 092/607] Fix translation of security page (id) --- id/security/index.md | 77 +++++++++++++++++++++++--------------------- 1 file changed, 41 insertions(+), 36 deletions(-) diff --git a/id/security/index.md b/id/security/index.md index c4915166a6..8305bd13ff 100644 --- a/id/security/index.md +++ b/id/security/index.md @@ -12,64 +12,69 @@ Di sini Anda akan menemukan informasi terkait isu-isu keamanan dari Ruby. Kerentanan keamanan pada bahasa pemrograman Ruby harus dilaporkan melalui [halaman bounty program di HackerOne](https://hackerone.com/ruby). -Mohon pastikan Anda membaca detail khusus seputar ruang lingkup dari -program kami sebelum melaporkan sebuah isu. Masalah sah yang dilaporkan -akan dipublikasikan setelah perbaikan. +Mohon pastikan Anda membaca detail seputar ruang lingkup dari +program ini sebelum melaporkan sebuah isu. Laporan yang valid +akan dipublikasikan setelah perbaikan dilakukan. -Jika Anda menemukan sebuah isu yang memengaruhi salah satu laman kami, mohon -laporkan [melalui GitHub](https://github.com/ruby/www.ruby-lang.org/issues/new). +Jika Anda menemukan sebuah isu yang berdampak pada salah satu laman kami, mohon +laporkan [melalui GitHub](https://github.com/ruby/www.ruby-lang.org/issues/new) +atau Anda dapat mengecek [Google Groups](https://groups.google.com/g/ruby-security-ann) +untuk pemberitahuan. -Jika Anda menemukan sebuah isu mengenai Ruby gem tertentu, ikuti +Jika Anda menemukan sebuah isu pada Ruby *gem* tertentu, ikuti [instruksi pada RubyGems.org](http://guides.rubygems.org/security/#reporting-security-vulnerabilities). -Jika Anda perlu terhubung dengan tim keamanan secara langsung di luar +Agar terhubung dengan tim keamanan secara langsung di luar HackerOne, Anda dapat mengirim surel ke security@ruby-lang.org -([PGP public key](/security.asc)), yang merupakan *mailing list* pribadi. +([PGP public key](/security.asc)), yang merupakan sebuah *mailing list* pribadi. -Anggota dari *mailing list* adalah orang-orang yang merawat Ruby -(Ruby *committers* dan *author* dari implementasi Ruby lainnya, +Anggota dari *mailing list* tersebut adalah orang-orang yang merawat Ruby +(Ruby *committer* dan *author* dari implementasi Ruby lainnya, distributor, dan PaaS *platformer*). +Anggota harus seorang individu, *mailing list* tidak diizinkan. ## Isu-isu yang diketahui -_See the [English page](/en/security/) for a complete and up-to-date -list of security vulnerabilities. -The following list only includes the as yet translated -security announcements, it might be incomplete or outdated._ +_Lihat [halaman bahasa Inggris](/en/security/) untuk daftar +kerentanan keamanan yang lengkap dan terbaru. +Daftar berikut hanya berisi pemberitahuan yang telah diterjemahkan, +mungkin tidak lengkap atau usang._ Berikut adalah isu-isu terkini: {% include security_posts.html %} -* [Kerentanan DoS Ekspansi Entity pada REXML (Bom XML, CVE-2013-1821)][3] - dipublikasikan pada 22 Feb, 2013. +dan isu lainnya: + +* [Kerentanan DoS Ekspansi Entity pada REXML (Bom XML, CVE-2013-1821)][1] + dipublikasikan pada 22 Februari 2013. * [Denial of Service dan Kerentanan Penciptaan Unsafe Object pada JSON - (CVE-2013-0269)][4] dipublikasikan pada 22 Feb, 2013. + (CVE-2013-0269)][2] dipublikasikan pada 22 Februari 2013. * [XSS exploit of RDoc documentation generated by rdoc - (CVE-2013-0256)][5] dipublikasikan pada 6 Feb, 2013. -* [Kerentanan DoS Hash-flooding untuk Ruby 1.9 (CVE-2012-5371)][6] - dipublikasikan pada 10 Nov, 2012. + (CVE-2013-0256)][3] dipublikasikan pada 6 Februari 2013. +* [Kerentanan DoS Hash-flooding untuk Ruby 1.9 (CVE-2012-5371)][4] + dipublikasikan pada 10 November 2012. * [Pembuatan File Tak Sengaja yang Disebabkan Memasukkan Karakter NUL Ilegal - (CVE-2012-4522)][7] dipublikasikan pada 12 Oct, 2012. + (CVE-2012-4522)][5] dipublikasikan pada 12 Oktober 2012. * [$SAFE escaping vulnerability about Exception#to\_s / NameError#to\_s - (CVE-2012-4464, CVE-2012-4466)][8] dipublikasikan pada 12 Oct, 2012. + (CVE-2012-4464, CVE-2012-4466)][6] dipublikasikan pada 12 Oktober 2012. * [Security Fix for RubyGems: SSL server verification failure for remote - repository][9] dipublikasikan pada 20 Apr, 2012. + repository][7] dipublikasikan pada 20 April 2012. * [Security Fix for Ruby OpenSSL module: Allow 0/n splitting as a - prevention for the TLS BEAST attack][10] dipublikasikan pada 16 Feb, 2012. + prevention for the TLS BEAST attack][8] dipublikasikan pada 16 Februari 2012. * [Serangan Denial of Service Ditemukan pada Algoritma Hash Ruby - (CVE-2011-4815)][11] dipublikasikan pada 28 Dec, 2011. + (CVE-2011-4815)][9] dipublikasikan pada 28 Desember 2011. -Untuk isu-isu sebelumnya lihat [halaman bahasa Inggris][12]. +Untuk isu-isu sebelumnya lihat [halaman bahasa Inggris][10]. -[3]: /id/news/2013/02/22/rexml-dos-2013-02-22/ -[4]: /id/news/2013/02/22/json-dos-cve-2013-0269/ -[5]: /id/news/2013/02/06/rdoc-xss-cve-2013-0256/ -[6]: /id/news/2012/11/09/ruby19-hashdos-cve-2012-5371/ -[7]: /id/news/2012/10/12/poisoned-NUL-byte-vulnerability/ -[8]: /id/news/2012/10/12/cve-2012-4464-cve-2012-4466/ -[9]: /id/news/2012/04/20/ruby-1-9-3-p194-is-released/ -[10]: /id/news/2012/02/16/security-fix-for-ruby-openssl-module/ -[11]: /id/news/2011/12/28/denial-of-service-attack-was-found-for-rubys-hash-algorithm-cve-2011-4815/ -[12]: /en/security/ +[1]: /id/news/2013/02/22/rexml-dos-2013-02-22/ +[2]: /id/news/2013/02/22/json-dos-cve-2013-0269/ +[3]: /id/news/2013/02/06/rdoc-xss-cve-2013-0256/ +[4]: /id/news/2012/11/09/ruby19-hashdos-cve-2012-5371/ +[5]: /id/news/2012/10/12/poisoned-NUL-byte-vulnerability/ +[6]: /id/news/2012/10/12/cve-2012-4464-cve-2012-4466/ +[7]: /id/news/2012/04/20/ruby-1-9-3-p194-is-released/ +[8]: /id/news/2012/02/16/security-fix-for-ruby-openssl-module/ +[9]: /id/news/2011/12/28/denial-of-service-attack-was-found-for-rubys-hash-algorithm-cve-2011-4815/ +[10]: /en/security/ From 1fa2dfe43325591ca44841de4387fc8da2456180 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Wed, 13 Sep 2023 20:14:10 +0700 Subject: [PATCH 093/607] Add Remote Ruby and Rooftop Ruby to the list of podcasts (id) --- id/community/podcasts/index.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/id/community/podcasts/index.md b/id/community/podcasts/index.md index e93ed3d6ef..1fab7ea77a 100644 --- a/id/community/podcasts/index.md +++ b/id/community/podcasts/index.md @@ -14,6 +14,14 @@ Dengarkan berita, wawancara, dan diskusi terkait Ruby dan komunitasnya. : Ruby on Rails Podcast, sebuah pembicaraan mingguan terkait Ruby on Rails, perangkat lunak *open source*, dan profesi pemrograman. +[Remote Ruby][remote_ruby] +: Pertemuan virtual berubah menjadi podcast, Remote Ruby menyelenggarakan dan + menyoroti komunitas Ruby secara informal. + +[Rooftop Ruby][rooftop_ruby] +: Collin and Joel mendiskusikan Ruby, pengembangan perangkat lunak, + *open source*, karier, dan masih banyak lagi bersama dengan tamu. + ### Ikut Berkontribusi *Podcast host* selalu mencari tamu. Jika Anda memiliki beberapa pengetahuan @@ -22,5 +30,7 @@ Ruby untuk dibagi, hubungi pembuat *podcast* tersebut. Anda juga dapat memulai *podcast* Ruby sendiri and menambahkan pada daftar berikut! +[rooftop_ruby]: https://www.rooftopruby.com +[remote_ruby]: https://remoteruby.transistor.fm/ [rorpodcast]: https://www.therubyonrailspodcast.com [rogues]: https://rubyrogues.com From 3a5646d3f687b1c71353a313e4dd7cb9c8496dea Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Sun, 12 Nov 2023 19:40:59 +0900 Subject: [PATCH 094/607] Ruby 3.3.0-preview3 Released (#3136) --- _data/downloads.yml | 2 +- _data/releases.yml | 29 ++ ...2023-11-12-ruby-3-3-0-preview3-released.md | 294 ++++++++++++++++++ ...2023-11-12-ruby-3-3-0-preview3-released.md | 283 +++++++++++++++++ 4 files changed, 607 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md create mode 100644 ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index d293a5b2f5..7f8885f6cb 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,7 +4,7 @@ # optional preview: - - 3.3.0-preview2 + - 3.3.0-preview3 stable: diff --git a/_data/releases.yml b/_data/releases.yml index eff98f0329..7333cd8e25 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,35 @@ # 3.3 series +- version: 3.3.0-preview3 + date: 2023-11-12 + post: /en/news/2023/11/12/ruby-3-3-0-preview3-released/ + tag: v3_3_0_preview3 + stats: + files_changed: 5207 + insertions: 284820 + deletions: 174773 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-preview3.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-preview3.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-preview3.tar.xz + size: + gz: 21550473 + zip: 26618303 + xz: 15970144 + sha1: + gz: 2811f191d66dffee0206771873bd990857ae4ed6 + zip: 6a13e08c7e484d42037c1e2c87c5d0e220f893a0 + xz: 496600612605f8ebeb955255e98bac73a4cbc045 + sha256: + gz: 0969141be92e67e0edb84a8fb354acc98f01bd78e602a23a0f136045c82f4809 + zip: c35bf637a647c2f60148368ffb374db5c258570911794f46b6dfdb98ebfe95d9 + xz: f79afcf122dc7d04fe26cfa4436b9c488b21766fc54b0d2dfb2ba41cd0cdd355 + sha512: + gz: 94db07a6958c09809b2e5b597fa55a121074e8bacb3bf588c83cf0d35b07a8b070172035a49d1abf0d8ee364a9ace824f34e677f7327ffe1acdbab0938ac49c4 + zip: c4ef2cdcdadeb85ad1d42aedc97f9f3d609b3b01eea2319451cf92c81bd31ae8129b7c91fc68571469dd888c01ea0f48f73234b965db17f6a87404ca382f7794 + xz: d7ab0d703e7884efd31045933409cd68fac1d9941963537ccc8e309ca7c8bee8500a68182135acba22cbdbf4a8ae99f39bf7f0925273eb4fbc3728c0c1ba0c19 + - version: 3.3.0-preview2 date: 2023-09-14 post: /en/news/2023/09/14/ruby-3-3-0-preview2-released/ diff --git a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md new file mode 100644 index 0000000000..7a4c2d2a37 --- /dev/null +++ b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -0,0 +1,294 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview3 Released" +author: "naruse" +translator: +date: 2023-11-12 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview3" | first %} + +We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 adds a new parser named Prism, uses Lrama as a parser generator, adds a new pure-Ruby JIT compiler named RJIT, and many performance improvements especially YJIT. + +## Prism + +* Introduced [the Prism parser](https://github.com/ruby/prism) as a default gem + * Prism is a portable, error tolerant, and maintainable recursive descent parser for the Ruby language +* Prism is production ready and actively maintained, you can use it in place of Ripper + * There is [extensive documentation](https://ruby.github.io/prism/) on how to use Prism + * Prism is both a C library that will be used internally by CRuby and a Ruby gem that can be used by any tooling which needs to parse Ruby code + * Notable methods in the Prism API are: + * `Prism.parse(source)` which returns the AST as part of a ParseResult + * `Prism.dump(source, filepath)` which returns the serialized AST as a String + * `Prism.parse_comments(source)` which returns the comments +* You can make pull requests or issues directly on [the Prism repository](https://github.com/ruby/prism) if you are interested in contributing + +## Use Lrama instead of Bison + +* Replace Bison with [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * Lrama internal parser is replaced with LR parser generated by Racc for maintainability + * Parameterizing Rules `(?, *, +)` are supported, it will be used in Ruby parse.y + +## RJIT + +* Introduced a pure-Ruby JIT compiler RJIT and replaced MJIT. + * RJIT supports only x86-64 architecture on Unix platforms. + * Unlike MJIT, it doesn't require a C compiler at runtime. +* RJIT exists only for experimental purposes. + * You should keep using YJIT in production. +* If you are interested in developing JIT for Ruby, please check out [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## YJIT + +* Major performance improvements over 3.2 + * Support for splat and rest arguments has been improved. + * Registers are allocated for stack operations of the virtual machine. + * More calls with optional arguments are compiled. + * Exception handlers are also compiled. + * Instance variables no longer exit to the interpreter + with megamorphic object shapes. + * Unsupported call types no longer exit to the interpreter. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` are specially optimized. + * Now more than 3x faster than the interpreter on optcarrot! +* Significantly improved memory usage over 3.2 + * Metadata for compiled code uses a lot less memory. + * Generate more compact code on ARM64 +* Compilation speed is now slightly faster than 3.2. +* Add `RubyVM::YJIT.enable` that can enable YJIT at run-time + * You can start YJIT without modifying command-line arguments or environment variables. + * This can also be used to enable YJIT only once your application is + done booting. `--yjit-disable` can be used if you want to use other + YJIT options while disabling YJIT at boot. +* Option to disable code GC and treat `--yjit-exec-mem-size` as a hard limit + * Can produce better copy-on-write behavior on servers using unicorn and forking +* `ratio_in_yjit` stat produced by `--yjit-stats` is now avaiable in release builds, + a special stats or dev build is no longer required to access most stats. +* Exit tracing option now supports sampling + * `--trace-exits-sample-rate=N` +* `--yjit-perf` is added to facilitate profiling with Linux perf. +* More thorough testing and multiple bug fixes + +### M:N thread scheduler + +* M:N thread scheduler was introduced. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M Ruby threads are managed by N native threads (OS threads) so the thread creation and management cost are reduced. + * It can break C-extension compatibility so that M:N thread scheduler is disabled on the main Ractor by default. + * `RUBY_MN_THREADS=1` environment variable enables M:N threads on the main Ractor. + * M:N threads are enabled on non-main Ractors. + * `RUBY_MAX_CPU=n` environment variable sets maximum number of `N` (maximum number of native threads). The default value is 8. + * Since only one Ruby thread per Ractor can run at the same time, the number of native threads will be used, which is the smaller of the number specified in `RUBY_MAX_CPU` and the number of running Ractors. So that single Ractor applications (most of applications) will use 1 native thread. + * To support blocking operations, more than `N` native threads can be used. + +## Other Notable New Features + + + +### Language + + + +## Performance improvements + +* `defined?(@ivar)` is optimized with Object Shapes. +* Name resolution such as `Socket.getaddrinfo` can now be interrupted (in environments where pthreads are available). [Feature #19965](https://bugs.ruby-lang.org/issues/19965) + * For this purpose, a pthread is now created whenever calling getaddrinfo or getnameinfo. This incurs some overhead in name resolution (about 2.5x in our experiments). We do not expect the name resolution overhead to be a problem for most applications, but if you observe such, or if you see unexpected affects that you believe are due to this change, please report them. +* Environment variable `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` has been added. [Feature #19571](https://bugs.ruby-lang.org/issues/19571) +* Children of old objects are no longer immedately promoted to the old generation in the garbage collector. [Feature #19678](https://bugs.ruby-lang.org/issues/19678) +* Support for weak references has been added to the garbage collector. [Feature #19783](https://bugs.ruby-lang.org/issues/19783) + +## Other notable changes since 3.2 + +### IRB + +IRB has received several enhancements, including but not limited to: + +- Advanced `irb:rdbg` integration that provides an equivalent debugging experience to `pry-byebug` ([doc](https://github.com/ruby/irb#debugging-with-irb)). +- Pager support for `ls`, `show_source` and `show_cmds` commands. +- More accurate and helpful information provided by the `ls` and `show_source` commands. +- Experimental autocompletion using type analysis ([doc](https://github.com/ruby/irb#type-based-completion)). +- It is now possible to change the font color and font style in the completion dialog by a newly introduced class Reline::Face ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +In addition, IRB has also undergone extensive refactoring and received dozens of bug fixes to facilitate easier future enhancements. + +## Compatibility issues + +Note: Excluding feature bug fixes. + +### Removed constants + +The following deprecated constants are removed. + + + +### Removed methods + +The following deprecated methods are removed. + +### Removed environment variables + +The following deprecated methods are removed. + +* Environment variable `RUBY_GC_HEAP_INIT_SLOTS` has been deprecated and is a no-op. Please use environment variables `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` instead. [Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib compatibility issues + +### `ext/readline` is retired + +* We have `reline` that is pure Ruby implementation compatible with `ext/readline` API. We rely on `reline` in the future. If you need to use `ext/readline`, you can install `ext/readline` via rubygems.org with `gem install readline-ext`. +* We no longer need to install libraries like `libreadline` or `libedit`. + +## C API updates + +### Updated C APIs + +The following APIs are updated. + + + +### Removed C APIs + +The following deprecated APIs are removed. + + + +## Standard library updates + +RubyGems and Bundler warn if users require gem that is scheduled to become the bundled gems in the future version of Ruby. + +Targeted libraries are: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +The following default gem is added. + +* prism 0.15.1 + +The following default gems are updated. + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +The following bundled gem is promoted from default gems. + +* racc 1.7.3 + +The following bundled gems are updated. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +See GitHub releases like [Logger](https://github.com/ruby/logger/releases) or +changelog for details of the default gems or bundled gems. + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +since Ruby 3.2.0! + + +## Download + +* <{{ 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 + +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/2023-11-12-ruby-3-3-0-preview3-released.md b/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md new file mode 100644 index 0000000000..b47b945c68 --- /dev/null +++ b/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -0,0 +1,283 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview3 リリース" +author: "naruse" +translator: +date: 2023-11-12 00:00:00 +0000 +lang: ja +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview3" | first %} + +Ruby {{ release.version }} が公開されました。Ruby 3.3ではPrismという新しいパーサーの追加、新しいパーサージェネレーターであるLramaによるBisonの置き換え、RJITという新たなJITの仕組みを追加、YJITの高速化など様々な改善が行われています。 + +## Prism + +* Introduced [the Prism parser](https://github.com/ruby/prism) as a default gem + * Prism is a portable, error tolerant, and maintainable recursive descent parser for the Ruby language +* Prism is production ready and actively maintained, you can use it in place of Ripper + * There is [extensive documentation](https://ruby.github.io/prism/) on how to use Prism + * Prism is both a C library that will be used internally by CRuby and a Ruby gem that can be used by any tooling which needs to parse Ruby code + * Notable methods in the Prism API are: + * `Prism.parse(source)` which returns the AST as part of a ParseResult + * `Prism.dump(source, filepath)` which returns the serialized AST as a String + * `Prism.parse_comments(source)` which returns the comments +* You can make pull requests or issues directly on [the Prism repository](https://github.com/ruby/prism) if you are interested in contributing + +## Use Lrama instead of Bison + +* Replace Bison with [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637] + * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * See also: [Ruby Parser開発日誌 (5) - Lrama LALR (1) parser generatorを実装した](https://yui-knk.hatenablog.com/entry/2023/03/13/101951) + * Lrama internal parser is replaced with LR parser generated by Racc for maintainability + * Parameterizing Rules `(?, *, +)` are supported, it will be used in Ruby parse.y + +## RJIT + +* Introduced a pure-Ruby JIT compiler RJIT and replaced MJIT. + * RJIT supports only x86\_64 architecture on Unix platforms. + * Unlike MJIT, it doesn't require a C compiler at runtime. +* RJIT exists only for experimental purposes. + * You should keep using YJIT in production. +* If you are interested in developing JIT for Ruby, please check out [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## YJIT + +* Major performance improvements over 3.2 + * Support for splat and rest arguments has been improved. + * Registers are allocated for stack operations of the virtual machine. + * More calls with optional arguments are compiled. + * Exception handlers are also compiled. + * Instance variables no longer exit to the interpreter + with megamorphic object shapes. + * Unsupported call types no longer exit to the interpreter. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` are specially optimized. + * Now more than 3x faster than the interpreter on optcarrot! +* Significantly improved memory usage over 3.2 + * Metadata for compiled code uses a lot less memory. + * Generate more compact code on ARM64 +* Compilation speed is now slightly faster than 3.2. +* Add `RubyVM::YJIT.enable` that can enable YJIT later + * You can start YJIT without modifying command-line arguments or environment variables. + * This can also be used to enable YJIT only once your application is + done booting. `--yjit-disable` can be used if you want to use other + YJIT options while disabling YJIT at boot. +* Option to disable code GC and treat `--yjit-exec-mem-size` as a hard limit + * Can produce better copy-on-write behavior on servers using unicorn and forking +* `ratio_in_yjit` stat produced by `--yjit-stats` is now avaiable in release builds, + a special stats or dev build is no longer required to access most stats. +* Exit tracing option now supports sampling + * `--trace-exits-sample-rate=N` +* `--yjit-perf` is added to facilitate profiling with Linux perf. +* More thorough testing and multiple bug fixes + +### M:N スレッドスケジューラ + +* M:N スレッドスケジューラが導入されました。[[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M個のRuby スレッドを、N個のネイティブスレッド(OSスレッド)で管理するので、生成管理のコストを抑えることができるようになりました。 + * C拡張ライブラリの互換性に問題が生じる可能性があるため、メインRactorでのM:Nスレッドスケジューラはデフォルトでは無効にされています。 + * `RUBY_MN_THREADS=1` と環境変数を設定することで、メインRactorでM:Nスレッドスケジューラを有効にします。 + * メインRactor以外ではM:Nスレッドスケジューラが有効です。 + * `RUBY_MAX_CPU=n` と環境変数を設定することで、Nの最大数(利用するネイティブスレッドの最大数)を設定できます。デフォルトは8です。 + * 一つの Ractor ではたかだか1つのスレッドしか同時に実行されないので、実際に利用するネイティブスレッド数は、`RUBY_MAX_CPU`で指定した数か実行中のRactorの数の少ないほうになります。つまり、Ractorの数が1つのアプリケーション(多くのアプリケーション)では1つのネイティブスレッドだけ利用されます。 + * ブロックする処理をサポートするため、N個以上のネイティブスレッドが利用されることがあります。 + +## その他の主要な新機能 + +### 言語機能 + + +## パフォーマンスの改善 + +* `Socket.getaddrinfo` などの名前解決を中断できるようになりました (pthread が利用できる環境で)。[Feature 19965](https://bugs.ruby-lang.org/issues/19965) + * このために、getaddrinfo や getnameinfo を呼び出すたびに pthread が生成されるようになりました。名前解決に若干のオーバーヘッドが発生します(実験では約2.5倍)。ほとんどのアプリケーションで名前解決のオーバーヘッドが問題になるとは考えていませんが、もしそのような現象が見られたり、この変更が原因と思われる予期せぬ影響が見られた場合は、ぜひ報告してください。 +* 環境変数 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` が追加されました。[Feature #19571](https://bugs.ruby-lang.org/issues/19571) +* GCで古いオブジェクトの子オブジェクトがすぐにプロモートされなくなりました。[Feature #19678](https://bugs.ruby-lang.org/issues/19678) +* GCに弱参照が追加されました。[Feature #19783](https://bugs.ruby-lang.org/issues/19783) + +## その他の注目すべき 3.2 からの変更点 + +### IRB + +IRBは様々な機能強化を行いました。主なものは以下の通りです。 + +* IRBとrdbgの連携 pry-byebugのような使い心地でデバッグできるようになりました。([使い方](https://github.com/ruby/irb#debugging-with-irb)) +* lsコマンドやshow_cmdsの出力がPagerで表示されるようになりました。 +* lsコマンドやshow_sourceコマンドがより便利で詳細な情報を出力するようになりました。 +* 型情報を使った補完が実験的に実装されました。([有効化するには](https://github.com/ruby/irb#type-based-completion)) +* Reline::Faceクラスの導入により、補完ダイアログの色や文字装飾を変更できるようになりました。([使い方](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +また、機能強化以外にも、数多くのバグ修正および将来的な機能拡張を見越した大規模なリファクタリングを行ないました。 + + +## 互換性に関する変更 + +### 定数の削除 + +以下の非推奨定数は削除されました + + +### メソッドの削除 + +以下の非推奨のメソッドは削除されました + +### 環境変数の削除 + +以下の非推奨の環境変数は削除されました + +* 環境変数 `RUBY_GC_HEAP_INIT_SLOTS` は非推奨になり、何もしなくなりました。環境変数 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` を使ってください。[Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## 標準添付ライブラリの互換性に関する変更 + +### `ext/readline` の削除 + +* 今後は Ruby で書かれた GNU Readline の互換ライブラリである `reline` をすべての環境で標準で利用し、`ext/readline` は削除されました。以前の `ext/readline` が必要なユーザーは `gem install readline-ext` でインストールすることができます。 +* この変更により、Ruby のインストール時に `libreadline` や `libedit` などのライブラリのインストールは不要となります。 + +## C API の変更 + +### C API の更新 + +以下の API が更新されました + +### C API の削除 + +以下の非推奨の API は削除されました + + +## 標準添付ライブラリのアップデート + +RubyGems と Bundler は将来リリースされる Ruby で bundled gems となる予定の gem が require された際に警告を行う機能が追加されました。 + +以下のライブラリが対象となります。 + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + + +以下の default gem が追加されました。 + +* prism 0.15.1 + +以下の default gems のバージョンがアップデートされました。 + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + + +新たに以下の gem が default gems から bundled gems に変更されました。 + +* racc 1.7.3 + +以下の bundled gems のバージョンがアップデートされました。 + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +default gems と bundled gems の詳細については [Logger の GitHub Releases](https://github.com/ruby/logger/releases) のような GitHub releases または changelog ファイルを参照してください。 + + +その他詳細については、[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) ファイルまたは[コミットログ](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})を参照してください。 + +なお、こうした変更により、Ruby 3.2.0 以降では [{{ release.stats.files_changed }} 個のファイルに変更が加えられ、{{ release.stats.insertions }} 行の追加と {{ release.stats.deletions }} 行の削除が行われました](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) ! + + +## ダウンロード + +* <{{ 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 とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 From 5d7783a457cfa2edf8a5c0c5c03e050555f59d6c Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Sun, 12 Nov 2023 19:53:58 +0900 Subject: [PATCH 095/607] Remove blankline to show summary of the article on top page --- en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 1 - ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 1 - 2 files changed, 2 deletions(-) diff --git a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index 7a4c2d2a37..e3c9b6a4a1 100644 --- a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -8,7 +8,6 @@ lang: en --- {% assign release = site.data.releases | where: "version", "3.3.0-preview3" | first %} - We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 adds a new parser named Prism, uses Lrama as a parser generator, adds a new pure-Ruby JIT compiler named RJIT, and many performance improvements especially YJIT. ## Prism diff --git a/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index b47b945c68..4a8b7d5bbb 100644 --- a/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -8,7 +8,6 @@ lang: ja --- {% assign release = site.data.releases | where: "version", "3.3.0-preview3" | first %} - Ruby {{ release.version }} が公開されました。Ruby 3.3ではPrismという新しいパーサーの追加、新しいパーサージェネレーターであるLramaによるBisonの置き換え、RJITという新たなJITの仕組みを追加、YJITの高速化など様々な改善が行われています。 ## Prism From b6bb22f9ad6bc011b6b77cbcc6455125ce873964 Mon Sep 17 00:00:00 2001 From: gaojun Date: Mon, 13 Nov 2023 22:59:04 +0800 Subject: [PATCH 096/607] Translate Ruby 3.3.0-preview3 Released (zh_cn) --- ...2023-11-12-ruby-3-3-0-preview3-released.md | 283 ++++++++++++++++++ 1 file changed, 283 insertions(+) create mode 100644 zh_cn/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md diff --git a/zh_cn/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/zh_cn/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md new file mode 100644 index 0000000000..2513b1fca0 --- /dev/null +++ b/zh_cn/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -0,0 +1,283 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview3 已发布" +author: "naruse" +translator: +date: 2023-11-12 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview3" | first %} +我们很高兴地宣布 Ruby {{ release.version }} 发布。 +Ruby 3.3 新增了 Prism 解析器,使用 Lrama 作为解析生成器,新增了纯 Ruby 实现的 JIT 编译器 RJIT,另有许多性能改进,尤其是 YJIT。 + +## Prism + +* 引入 [Prism 解析器](https://github.com/ruby/prism) 为默认 gem + * Prism 是一个可移植、容错且可维护的 Ruby 语言递归下降解析器 +* Prism 已可用于生产环境,并得到了积极维护,您可以使用它来代替 Ripper + * 有关于如何使用 Prism 的 [详细文档](https://ruby.github.io/prism/) + * Prism 既是 CRuby 内部使用的 C 库,也是任何需要解析 Ruby 代码的工具可以使用的 Ruby gem + * Prism API 中值得注意的方法有: + * `Prism.parse(source)` 返回 AST 作为 ParseResult 的一部分 + * `Prism.dump(source, filepath)` 将序列化的 AST 以字符串形式返回 + * `Prism.parse_comments(source)` 返回注释 +* 如果您有兴趣贡献,可以直接在 [Prism 代码库](https://github.com/ruby/prism) 上提出拉取请求或报告问题 + +## 使用 Lrama 替代 Bison + +* 使用 [Lrama LALR 解析生成器](https://github.com/yui-knk/lrama) 替换 Bison [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * 如果您有兴趣,请参阅 [Ruby 解析器的未来愿景](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * Lrama 内部解析器被 Racc 生成的 LR 解析器替换,以便于维护 + * 已支持参数化规则 `(?, *, +)` ,将被用于 Ruby parse.y 中 + +## RJIT + +* 引入了纯 Ruby 的 JIT 编译器 RJIT 并替代 MJIT。 + * RJIT 仅支持 x86\_64 架构上的 Unix 平台。 + * 不同于 MJIT,RJIT在运行时不需要 C 编译器。 +* RJIT 目前仅用于实验目的。 + * 您在生产环境中应当继续使用 YJIT。 +* 如果您有兴趣为 Ruby 开发 JIT,请查看 [k0kubun 在 RubyKaigi 第 3 天 中的演讲](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)。 + +## YJIT + +* 相对于 3.2 的主要性能提升 + * 改进了 splat 和 rest 参数支持。 + * 虚拟机的栈操作分配了寄存器。 + * 更多带有可选参数的调用被编译。 + * 错误处理也被编译。 + * 拥有复杂对象形状的实例变量不再退出到解释器执行。 + * 不支持的调用类型不再退出到解释器执行。 + * 特别优化了 `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===`。 + * 目前比 optcarrot 的解释器快 3 倍以上! +* 内存利用率相交 3.2 有显著提升 + * 编译代码使用的元数据使用更少的内存。 + * 在 ARM64 中的生成更紧凑的代码。 +* 编译速度现在略快于 3.2。 +* 新增 `RubyVM::YJIT.enable` 可以在运行时启用 YJIT + * 您可以在不修改命令行参数或环境变量的情况下启用 YJIT。 + * 这也可以用于在应用程序启动完成后,仅启用 YJIT 一次。当您在启动程序时禁用了 YJIT ,您可以通过 `--yjit-disable` 来使用其他 YJIT 选项。 +* 提供了禁用代码 GC 的选项,并视 `--yjit-exec-mem-size` 为硬限制。 + * 可以在使用 unicorn 和进程 forking 的服务器上产生更好的写时复制行为。 +* 发布版本中,现在可以用到通过 `--yjit-stats` 产生的 `ratio_in_yjit` 统计信息,不再需要特殊的统计信息或开发版本。 +* 退出跟踪选项现在支持采样 + * `--trace-exits-sample-rate=N` +* 新增 `--yjit-perf` 以便于利用 Linux perf 进行性能分析。 +* 更彻底的测试及多个错误修复 + +### M:N 线程调度器 + +* 引入了 M:N 线程调度器。[[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M 个 Ruby 线程由 N 个原生线程(OS 线程)管理,从而降低线程创建和管理成本。 + * 由于可能会破坏 C 扩展的兼容性,因此在默认情况下,主 Ractor 上禁用 M:N 线程调度器。 + * 可通过环境变量 `RUBY_MN_THREADS=1` 在主 Ractor 上启用 M:N 线程。 + * 非主 Ractor 上启用 M:N 线程。 + * 可通过环境变量 `RUBY_MAX_CPU=n` 设置 `N` 的最大值(原生线程的最大数量)。默认值为 8。 + * 由于每个 Ractor 中只能同时运行一个 Ruby 线程,因此将使用原生线程的数量,即 `RUBY_MAX_CPU` 和运行中的 Ractor 数量中较小的值。因此单 Ractor 应用程序(大多数应用程序)将使用 1 个原生线程。 + * 为了支持阻塞操作,可以使用多于 `N` 个原生线程。 + +## 其他值得关注的新功能 + + + +### 语言 + + + +## 性能提升 + +* 根据对象形状,优化 `defined?(@ivar)`。 +* 诸如 `Socket.getaddrinfo` 的域名解析现在可以被中断(在 pthreads 可用的环境中)。[Feature #19965](https://bugs.ruby-lang.org/issues/19965) + * 为此,现在每当调用 getaddrinfo 或 getnameinfo 时都会创建一个 pthread。 这会在域名解析中产生一些开销(在我们的实验中约为 2.5 倍)。 我们预计域名解析开销不会成为大多数应用程序的问题,但如果您观察到这种情况,或者您认为此更改造成了意外的影响,请向我们报告。 +* 新增环境变量 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` 。 [Feature #19571](https://bugs.ruby-lang.org/issues/19571) +* 旧对象的子对象不再立即提升到垃圾收集器中的老一代。 [功能 #19678](https://bugs.ruby-lang.org/issues/19678) +* 垃圾收集器中添加了对弱引用的支持。 [功能 #19783](https://bugs.ruby-lang.org/issues/19783) + +## 自 3.2 以来,其他值得注意的变化 + +### IRB + +IRB 进行了多项增强功能,包括但不限于: + +- 高级 `irb:rdbg` 集成,提供了类似 `pry-byebug` 的调试体验([文档](https://github.com/ruby/irb#debugging-with-irb))。 +- 为 `ls` 和 `show_cmds` 这样的方法提供分页支持。 +- 为 `ls` 和 `show_source` 方法提供更准确更有用的信息。 +- 实验性的基于类型分析的自动补全功能([文档](https://github.com/ruby/irb#type-based-completion))。 +- 现在可以通过新引入的类 Reline::Face 来更改自动补全对话框中的字体颜色和字体样式([文档](https://github.com/ruby/ruby/blob/master/doc/reline/face.md))。 + +另外,IRB 还进行了广泛的重构,修复了数十个错误,以便未来的增强。 + +## 兼容性问题 + +注意:不包括 bug 修复。 + +### 移除的常量 + +移除了以下已废弃的常量。 + +### 移除的方法 + +移除了以下已废除的方法。 + +### 移除的环境变量 + +下列废弃方法被移除 + +* 环境变量 `RUBY_GC_HEAP_INIT_SLOTS` 被废弃,并不再产生实际作用。请使用环境变量 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` 进行替代。 [Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib 兼容性问题 + +### `ext/readline` 已退役 + +* 我们有了纯 Ruby 实现的 `reline`,兼容 `ext/readline` API。未来我们将依赖 `reline`。如果您需要使用 `ext/readline`,可以通过 rubygems.org 进行安装 `gem install readline-ext`。 +* 我们不再需要安装类似 `libreadline` 或 `libedit` 这样的库了。 + +## C API 更新 + +### 更新的 C API + +更新了以下 API。 + + + +### 已移除的 C API + +移除了以下废弃的 API。 + + + +## 标准库更新 + +当用户 require 在将来 Ruby 版本中成为绑定 gem 的库时,RubyGems 和 Bundler 会发出警告。 + +这些库包括: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +新增以下默认 gem。 + +* prism 0.15.1 + +更新了以下默认 gems。 + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +以下默认 gem 成为绑定 gem + +* racc 1.7.3 + +更新了以下绑定 gems。 + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +有关默认 gems 和 绑定 gems 的细节,可以参考 GitHub 上的发布,例如 [logger gem](https://github.com/ruby/logger/releases) 或相应的变更日志。 + +更多详情,可参见 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +或 [提交日志](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})。 + +自 Ruby 3.2.0 以来,[{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+), 删除 {{ release.stats.deletions }} 行(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)! + + +## 下载 + +* <{{ 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 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发,现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是Web开发领域。 From 01cec18ad0c4da975c6ce8a3076d549ae966a7f4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Nov 2023 15:50:01 +0000 Subject: [PATCH 097/607] Bump ruby/setup-ruby from 1.159.0 to 1.161.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.159.0 to 1.161.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/54a18e26dbbb1eabc604f317ade9a5788dddef81...8575951200e472d5f2d95c625da0c7bec8217c42) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 805d8fda27..a678cb132a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@54a18e26dbbb1eabc604f317ade9a5788dddef81 # v1.159.0 + uses: ruby/setup-ruby@8575951200e472d5f2d95c625da0c7bec8217c42 # v1.161.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 34c1315c9a..e903d81c62 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby - uses: ruby/setup-ruby@54a18e26dbbb1eabc604f317ade9a5788dddef81 # v1.159.0 + uses: ruby/setup-ruby@8575951200e472d5f2d95c625da0c7bec8217c42 # v1.161.0 with: ruby-version: '3.2' bundler-cache: true From 7b46194fd68e88f014ef4d6792ad80698b908628 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 14 Nov 2023 23:12:43 +0900 Subject: [PATCH 098/607] Fix typo on Ruby 3.3.0-preview3 Released --- en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index e3c9b6a4a1..9a61525deb 100644 --- a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -128,7 +128,7 @@ The following deprecated methods are removed. ### Removed environment variables -The following deprecated methods are removed. +The following deprecated environment variables are removed. * Environment variable `RUBY_GC_HEAP_INIT_SLOTS` has been deprecated and is a no-op. Please use environment variables `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` instead. [Feature #19785](https://bugs.ruby-lang.org/issues/19785) From c7b11f65da144f7614af5159d71e8aa9d123b7af Mon Sep 17 00:00:00 2001 From: gaojun Date: Wed, 15 Nov 2023 12:18:39 +0800 Subject: [PATCH 099/607] Translate downloads/{branches,releases}/index.md (zh_cn) --- zh_cn/downloads/branches/index.md | 35 +++++++++++++++++++++++++++++++ zh_cn/downloads/index.md | 4 ++-- zh_cn/downloads/releases/index.md | 33 +++++++++++++++++++++++++++++ 3 files changed, 70 insertions(+), 2 deletions(-) create mode 100644 zh_cn/downloads/branches/index.md create mode 100644 zh_cn/downloads/releases/index.md diff --git a/zh_cn/downloads/branches/index.md b/zh_cn/downloads/branches/index.md new file mode 100644 index 0000000000..001b103aa9 --- /dev/null +++ b/zh_cn/downloads/branches/index.md @@ -0,0 +1,35 @@ +--- +layout: page +title: "Ruby 维护分支" +lang: zh_cn +--- + +本页面列出了当前各个 Ruby 分支的维护情况。 +{: .summary} + +对于特定版本的详细信息,可以参考 +[版本页面](../releases/). + +这是 Ruby 分支及其维护状态的初步列表。 +显示的日期基于 版本发布 或 EOL声明 新闻的发布时间。 + +Ruby 分支或版本 分为以下集中状态: + +* **正常维护** (错误修复): + 能得到一般错误修复和安全修复。 +* **安全维护** (security fix): + 只有安全修复会向后移植。 +* **eol** (生命周期终止): + Ruby 核心团队不再进行支持,不会得到任何修复。也不会发布新的补丁版本。 + +{% include branches-timeline.html %} + +{% for branch in site.data.branches %} +### Ruby {{ branch.name }} + +状态: {{ branch.status }}
+发布日期: {{ branch.date }}
+正常维护期至: {% if branch.security_maintenance_date %}{{ branch.security_maintenance_date }}{% else %}未定{% endif %}
+生命周期终止: {% if branch.eol_date %}{{ branch.eol_date }}{% else %}{% if branch.expected_eol_date %}{{ branch.expected_eol_date }} (预计){% else %}未定{% endif %}{% endif %} + +{% endfor %} diff --git a/zh_cn/downloads/index.md b/zh_cn/downloads/index.md index 2b3d99ff58..7a9d17412c 100644 --- a/zh_cn/downloads/index.md +++ b/zh_cn/downloads/index.md @@ -63,8 +63,8 @@ Ruby 源代码可从世界各地的[镜像站][mirrors]获得。请尝试离您 [license]: {{ site.license.url }} [installation]: /zh_cn/documentation/installation/ -[releases]: /en/downloads/releases/ -[branches]: /en/downloads/branches/ +[releases]: /zh_cn/downloads/releases/ +[branches]: /zh_cn/downloads/branches/ [mirrors]: /en/downloads/mirrors/ [rvm]: http://rvm.io/ [rbenv]: https://github.com/rbenv/rbenv diff --git a/zh_cn/downloads/releases/index.md b/zh_cn/downloads/releases/index.md new file mode 100644 index 0000000000..7cfc5e2fa9 --- /dev/null +++ b/zh_cn/downloads/releases/index.md @@ -0,0 +1,33 @@ +--- +layout: page +title: "Ruby 版本" +lang: zh_cn +--- + +本页面列出了各个 Ruby 发布版本。 +{: .summary} + +如需了解 Ruby 各版本的当前维护状态,可以参见 +[分支页面](../branches/). + +### Ruby 版本列表 + +下表列出了各 Ruby 发布版本。 +其中显示的日期基于对应新闻的发布日期,可能与源代码包的实际创建时间有所差别。 + + + + + + + + +{% assign releases = site.data.releases | reverse | sort: "date" | reverse %} +{% for release in releases %} + + + + + +{% endfor %} +
发布版本发布日期下载地址发布文档
Ruby {{ release.version }}{{ release.date }}下载查看…
From ceb21fe265d44858ae020b276e945f34696c1544 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Wed, 15 Nov 2023 10:32:40 +0800 Subject: [PATCH 100/607] Translate Ruby 3.3.0 preview3 released news post (zh_tw) Closes #3142 --- ...2023-11-12-ruby-3-3-0-preview3-released.md | 284 ++++++++++++++++++ 1 file changed, 284 insertions(+) create mode 100644 zh_tw/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md diff --git a/zh_tw/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/zh_tw/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md new file mode 100644 index 0000000000..f9d6e0c6d4 --- /dev/null +++ b/zh_tw/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -0,0 +1,284 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview3 發布" +author: "naruse" +translator: "Bear Su" +date: 2023-11-12 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview3" | first %} +我們很高興宣布 Ruby {{ release.version }} 發佈了。 Ruby 3.3 新增了名為 Prism 的 Parser,使用了 Lrama 做為 Parser 產生器,新增了名為 RJIT,純 Ruby 開發的 JIT 編譯器,以及更多效能提升,尤其是 YJIT。 + +## Prism + +* 導入 [the Prism parser](https://github.com/ruby/prism) 為預設 gem。 + * Prism 是可移植、可容錯、且可維護的 Ruby 語言遞迴下降解析器。 +* Prism 已可用於生產環境,並積極維護,您可以用來替代 Ripper。 + * 有關如何使用 Prism 的 [詳細文件](https://ruby.github.io/prism/)。 + * Prism 是 CRuby 內部使用的 C 函式庫,同時也是任何需要解析 Ruby 程式碼的工具鏈可以使用的 Ruby gem。 + * Prism API 中值得注意的方法為: + * `Prism.parse(source)` 回傳 AST 作為 ParseResult 的一部分。 + * `Prism.dump(source, filepath)` 回傳字串型別的序列化的 AST。 + * `Prism.parse_comments(source)` 回傳註解。 +* 如果您有興趣貢獻,您可以直接在 [the Prism repository](https://github.com/ruby/prism) 上建立 pull requests 或 issues。 + +## 使用 Lrama 取代 Bison + +* 使用 [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) 取代 Bison。 + * 如果您感興趣,請參閱 [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html)。 + * 為了維護性,Lrama internal parser 改用 Racc 產生的 LR parser。 + * 支援 Parameterizing Rules `(?, *, +)`,能夠在 Ruby parse.y 中被使用。 + +## RJIT + +* 導入純 Ruby 開發的 JIT 編譯器 RJIT 並取代 MJIT。 + * RJIT 僅支援 x86\_64 架構的 Unix 平台。 + * 不同於 MJIT,RJIT 在執行時不需要 C 編譯器。 +* RJIT 目前還在實驗階段。 + * 您在生產環境應繼續使用 YJIT。 +* 如果您有興趣為 Ruby 開發 JIT,請參閱 [k0kubun's 在 RubyKaigi 第 3 天的演講](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)。 + +## YJIT + +* 自 3.2 主要效能提升 + * 改善 splat 和 rest arguments 的支援。 + * 虛擬機器分配了暫存器,用於堆疊操作。 + * 更多帶有可選參數的呼叫會被編譯。 + * 錯誤處理也會被編譯。 + * Megamorphic Object Shapes 的實體變數不再返回給直譯器。 + * 不支援的呼叫類型不再返回給直譯器。 + * 特別改善了 `Integer#!=`、`String#!=`、`Kernel#block_given?`、`Kernel#is_a?`、 + `Kernel#instance_of?`、`Module#===`。 + * 目前比 optcarrot 的直譯器快上 3 倍! +* 自 3.2 以來顯著提高了記憶體使用率 + * 已編譯的程式碼的 Metadata 使用更少的記憶體。 + * 在 ARM64 產生更緊湊的程式碼。 +* 編譯速度比 3.2 稍快一些。 +* 新增 `RubyVM::YJIT.enable`,可以在 run-time 中啟用 YJIT。 + * 您可以在不修改指令列參數或環境變數的情況下啟動 YJIT。 + * 可用於僅在您的應用程式完成啟動後啟用 YJIT。 如果您在啟動程式時停用了 YJIT,可以使用 `--yjit-disable` 來使用其他 YJIT 選項。 +* 提供了停用程式碼 GC 的選項,並使用 `--yjit-exec-mem-size` 設定硬限制。 + * 可以在使用 unicorn 和 forking 的伺服器上產生更好的 copy-on-write 行為。 +* 發布版本現在提供透過 `--yjit-stats` 產生的 `ratio_in_yjit` 統計資訊,不再需要特殊的統計資訊或是開發版本。 +* Exit tracing 選項現在支援抽樣 + * `--trace-exits-sample-rate=N` +* 新增 `--yjit-perf` 以便於使用 Linux perf 進行性能分析。 +* 更多測試與錯誤修復 + +### M:N thread scheduler + +* 導入 M:N thread scheduler。 [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M 個 Ruby 執行緒由 N 個原生執行緒(OS 執行緒)管理,所以能減少執行緒建立與管理的成本。 + * 由於會破壞 C-extension 的相容性,所以預設在主 Ractor 上停用 M:N thread scheduler。 + * 透過 `RUBY_MN_THREADS=1` 環境變數在主 Ractor 啟用 M:N threads。 + * 在非主 Ractors 上啟用 M:N threads。 + * 可使用 `RUBY_MAX_CPU=n` 環境變數設定 `N` 的最大值 (原生執行緒的最大數量)。預設值為 8。 + * 由於每一個 Ractor 同時只能執行一個 Ruby 執行緒,所以將使用原生執行緒的數量,即 `RUBY_MAX_CPU` 和執行 Ractor 數量中較小的值,因此單一 Ractor 應用程式 (大多數應用程式) 會使用一個原生執行緒。 + * 為支援阻塞操作,可以使用多餘 `N` 個原生執行緒。 + +## 其他值得注意的新功能 + + + +### 語言功能 + + + +## 效能提升 + +* `defined?(@ivar)` 透過 Object Shapes 提升效能。 +* 像是 `Socket.getaddrinfo` 的域名解析現在可以被中斷 (在可用 pthreads 的環境下)。 [Feature #19965](https://bugs.ruby-lang.org/issues/19965) + * 為此,現在每當呼叫 getaddrinfo 或 getnameinfo 時都會建立一個 pthread。這會在域名解析中產生一些開銷 (在我們的實驗中約 2.5 倍)。我們預期域名解析的開銷不會對大多數應用程式造成問題,如果您相信您因為此變更收到非預期的影響,請向我們回報。 +* 新增環境變數 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO`。 [Feature #19571](https://bugs.ruby-lang.org/issues/19571) +* 舊物件的子物件不再立即提升為垃圾收集器中的舊世代。 [Feature #19678](https://bugs.ruby-lang.org/issues/19678) +* 垃圾收集器加入弱參考的支援。 [Feature #19783](https://bugs.ruby-lang.org/issues/19783) + +## 自 3.2 以來其他值得注意的變更 + +### IRB + +IRB 進行了數項改善,包括但不限於: + +- 加強 `irb:rdbg` 整合以提供與 `pry-byebug` 相同的除錯體驗 ([文件](https://github.com/ruby/irb#debugging-with-irb))。 +- Pager 支援指令,例如 `ls` 和 `show_cmds`。 +- `ls` 和 `show_source` 指令提供了更準確和有幫助的資訊。 +- 使用 type 分析的實驗係自動補齊 ([doc](https://github.com/ruby/irb#type-based-completion))。 +- 透過新導入的類別 Reline::Face,可以更改補齊視窗中的字體顏色與字體樣式 ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md))。 + +此外,IRB 還進行了大量重構和修復了許多錯誤,以方便未來強化功能。 + +## 相容性問題 + +注意:不包含功能問題的修正。 + +### 被移除的常數 + +下列廢棄的常數已被移除。 + + + +### 被移除的方法 + +下列廢棄的方法已被移除。 + +### 被移除的環境變數 + +下列廢棄的環境變數已被移除。 + +* 環境變數 `RUBY_GC_HEAP_INIT_SLOTS` 已經被廢棄且無法使用。請使用環境變數 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` 作為替代。 [Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib 相容性問題 + +### `ext/readline` 已被淘汰 + +* 我們使用純 Ruby 實作並相容於 `ext/readline` API 的 `reline`。未來我們將依賴 `reline`。如果您需要使用 `ext/readline`,您可以使用 `gem install readline-ext` 透過 rubygems.org 安裝 `ext/readline`。 +* 我們將不再需要安裝函式庫例如 `libreadline` 或 `libedit`。 + +## C API updates + +### 更新的 C APIs + +下列的 APIs 已被更新。 + + + +### 被移除的 C APIs + +下列廢棄的 APIs 已被移除。 + + + +## 標準函式庫更新 + +如果使用者 require 的 gem 已排定在未來 Ruby 版本中變更為 bundled gems,RubyGems 和 Bundler 將會顯示警告。 + +這些函式庫包括: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +加入了以下的預設 gem。 + +* prism 0.15.1 + +更新了以下的 bundled gem。 + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +下列的預設 gem 現在是 bundled gems。 + +* racc 1.7.3 + +更新了以下的 bundled gem。 + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +請參閱 GitHub 發布如 [Logger](https://github.com/ruby/logger/releases) 和變更紀錄來了解更多關於預設 gems 與 bundled gems 的資訊。 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) 來了解更多。 + +自 Ruby 3.2.0 以來,計[{{ release.stats.files_changed }} 檔案變更,{{ release.stats.insertions }} 行新增(+),{{ release.stats.deletions }} 行刪減(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)。 + + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 From 53939d2da0e7143dff18465a70a963970d120b71 Mon Sep 17 00:00:00 2001 From: Juanito Fatas Date: Fri, 17 Nov 2023 15:47:26 +0900 Subject: [PATCH 101/607] Fix titles from 3.2.0 posts (zh_tw) --- zh_tw/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md | 2 +- zh_tw/news/_posts/2022-12-25-ruby-3-2-0-released.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/zh_tw/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md b/zh_tw/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md index a491c13251..96f8e0fc19 100644 --- a/zh_tw/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md +++ b/zh_tw/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.2.0 RC 1 Released" +title: "Ruby 3.2.0 RC 1 發布" author: "naruse" translator: "Bear Su" date: 2022-12-06 00:00:00 +0000 diff --git a/zh_tw/news/_posts/2022-12-25-ruby-3-2-0-released.md b/zh_tw/news/_posts/2022-12-25-ruby-3-2-0-released.md index 2688ca2db6..364199ee48 100644 --- a/zh_tw/news/_posts/2022-12-25-ruby-3-2-0-released.md +++ b/zh_tw/news/_posts/2022-12-25-ruby-3-2-0-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.2.0 Released" +title: "Ruby 3.2.0 發布" author: "naruse" translator: "Bear Su" date: 2022-12-25 00:00:00 +0000 From faa0248768c9ed447dd1d4c380120739bbea22cf Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 18 Nov 2023 08:08:40 +0900 Subject: [PATCH 102/607] Translate "Ruby 3.3.0-preview3 Released" (ko) (#3139) * Copy {en,ko}/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md * Translate Ruby 3.3.0-preview3 (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ...2023-11-12-ruby-3-3-0-preview3-released.md | 293 ++++++++++++++++++ 1 file changed, 293 insertions(+) create mode 100644 ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md diff --git a/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md new file mode 100644 index 0000000000..3a9204dce9 --- /dev/null +++ b/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -0,0 +1,293 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview3 릴리스" +author: "naruse" +translator: "shia" +date: 2023-11-12 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview3" | first %} +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.3은 Prism이라고 명명된 새 파서를 추가하고, 파서 생성기로 Lrama를 사용하며, RJIT으로 명명된 새로운 순수 Ruby JIT 컴파일러를 추가하고, 특히 YJIT에서 많은 성능 향상이 있습니다. + +## Prism + +* [Prism 파서](https://github.com/ruby/prism)를 기본 gem에 추가했습니다. + * Prism은 Ruby 언어를 위한 이식 가능하고, 에러 내성이 있으며 유지 보수 가능한 재귀 하향 파서입니다. +* Prism은 프로덕션 환경에서 사용할 준비가 되어있으며 활발하게 유지보수되고 있으므로 Ripper 대신 이용할 수 있습니다. + * Prism 사용 방법에 대한 [광범위한 문서](https://ruby.github.io/prism/)가 있습니다. + * Prism은 CRuby에서 내부적으로 사용하는 C 라이브러리이자 Ruby 코드를 구문 분석해야 하는 모든 도구에서 사용할 수 있는 Ruby gem입니다. + * Prism API에서 주목할 만한 메서드는 다음과 같습니다. + * `Prism.parse(source)`는 ParseResult의 일부로 AST를 반환합니다. + * `Prism.dump(source, filepath)`는 문자열로 직렬화된 AST를 반환합니다. + * `Prism.parse_comments(source)`는 주석을 반환합니다. +* 기여에 관심이 있다면 [Prism 저장소](https://github.com/ruby/prism)에서 직접 풀 리퀘스트나 이슈를 만들 수 있습니다. + +## Bison을 Lrama로 대체 + +* Bison 대신 [Lrama LALR 파서 생성기](https://github.com/yui-knk/lrama)를 사용하도록 변경했습니다. [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * 관심이 있다면 [Ruby 파서의 미래 비전](https://rubykaigi.org/2023/presentations/spikeolaf.html)을 참고하세요. + * 유지보수성을 위해 Lrama 내부 구문 분석기가 Racc에서 생성한 LR 구문 분석기로 대체되었습니다. + * 매개변수화 규칙 `(?, *, +)`를 지원하며, Ruby의 parse.y에서 사용될 예정입니다. + +## RJIT + +* 순수 Ruby JIT 컴파일러 RJIT을 도입하고 MJIT을 대체했습니다. + * RJIT은 Unix 플랫폼에서 x86-64 아키텍처만 지원합니다. + * MJIT과 달리 런타임에 C 컴파일러가 필요하지 않습니다. +* RJIT은 실험 목적으로 존재합니다. + * 프로덕션 환경에서는 YJIT을 계속 사용해야 합니다. +* Ruby용 JIT 개발에 관심이 있다면 [RubyKaigi 2023 3일차에 있었던 k0kubun의 발표](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)를 확인하세요. + +## YJIT + +* 3.2 버전 대비 주요 성능 개선 사항 + * 스플랫과 나머지 인자 지원이 개선되었습니다. + * 가상 머신의 스택 연산을 위해 레지스터가 할당됩니다. + * 선택적 인수가 포함된 더 많은 호출이 컴파일됩니다. + * 예외 처리기도 컴파일됩니다. + * 클래스의 인스턴스 변수가 가지는 객체 형상의 조합이 매우 복잡한 경우에도 + 컴파일되기 전의 바이트 코드로 전환되지 않습니다. + * 지원되지 않는 호출 타입은 이제 컴파일되기 전의 바이트 코드로 전환되지 않습니다. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===`은 특별히 최적화되었습니다. + * 이제 optcarrot에서 인터프리터보다 3배 이상 빠릅니다! +* 3.2보다 메모리 사용량이 크게 개선되었습니다. + * 컴파일된 코드의 메타데이터가 훨씬 적은 메모리를 사용합니다. + * ARM64에서 더 작은 코드를 생성합니다. +* 3.2보다 컴파일 속도가 약간 개선되었습니다. +* 실행 시간에 YJIT을 활성화할 수 있는 `RubyVM::YJIT.enable`이 추가됩니다. + * 실행 명령의 인수나 환경 변수의 변경없이 YJIT을 실행할 수 있습니다. + * 애플리케이션 부팅이 완료된 후에 YJIT를 활성화하는 데에도 사용할 수 있습니다. + 부팅 시 YJIT를 비활성화한 상태에서 다른 YJIT 옵션을 사용하려는 경우 `--yjit-disable`을 사용할 수 있습니다. +* 코드 GC를 비활성화하고 `--yjit-exec-mem-size`를 엄격한 제한으로 설정하는 옵션이 추가됩니다. + * unicorn과 포크를 사용하는 서버에서 더 나은 쓰기시 복사 동작을 생성할 수 있습니다. +* `--yjit-stats`로부터 생성된 `ratio_in_yjit` 통계는 릴리스 빌드에서도 이용 가능하며, + 대부분의 통계에 접근하는 데 특수한 통계나 개발 빌드는 더 이상 필요하지 않습니다. +* 종료 추적 옵션이 이제 샘플링을 지원합니다. + * `--trace-exits-sample-rate=N` +* Linux perf로 프로파일링을 용이하게 할 수 있도록 `--yjit-perf`가 추가됩니다. +* 보다 철저한 테스트와 여러 버그 수정 + +### M:N 스레드 스케쥴러 + +* M:N 스레드 스케쥴러가 추가됩니다. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M개의 Ruby 스레드를 N개의 네이티브 스레드(OS 스레드)로 관리하므로 스레드의 생성, 관리 비용이 절감됩니다. + * C 확장 호환성에 문제가 발생할 가능성이 있으므로, 주 Ractor에서의 기본 설정은 비활성입니다. + * `RUBY_MN_THREADS=1` 환경 변수를 사용해 주 Ractor에서 M:N 스레드를 활성화할 수 있습니다. + * M:N 스레드는 주 Ractor가 아닌 Ractor에서 활성화되어 있습니다. + * `RUBY_MAX_CPU=n` 환경 변수는 `N`(네이티브 스레드의 최대 개수)의 최댓값을 지정합니다. 기본값은 8입니다. + * 하나의 Ractor에서는 하나의 Ruby 스레드만 실행 가능하므로 실제로 사용되는 네이티브 스레드의 개수는 `RUBY_MAX_CPU`에서 지정한 숫자나 실행 중인 Ractor의 개수보다 작습니다. 그러므로 (대다수를 차지하는) 단일 Ractor 애플리케이션에서는 하나의 네이티브 스레드를 사용합니다. + * 블로킹 동작을 처리하기 위해, `N`개 이상의 네이티브 스레드가 사용될 수 있습니다. + +## 그 이외의 주목할 만한 새 기능 + + + +### 언어 + + + +## 성능 향상 + +* `defined?(@ivar)`가 객체 형상에 맞게 최적화됩니다. +* `Socket.getaddrinfo`와 같은 이름 해결을 (POSIX 스레드가 사용 가능한 환경에서) 중단할 수 있게 됩니다. [Feature #19965](https://bugs.ruby-lang.org/issues/19965) + * 이를 위해, getaddrinfo나 getnameinfo를 호출할 때마다 POSIX 스레드를 생성합니다. 이름 해결에 약간의 오버헤드가 발생합니다(실험에서는 약 2.5배). 대부분의 애플리케이션에서 이름 해결의 오버헤드가 문제가 될 것이라고는 생각하지 않습니다만, 만약 그러한 현상을 확인하거나, 이 변경으로 인한 의도치 않은 영향을 발견했다면 부디 알려주세요. +* 환경 변수 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO`가 추가됩니다. [Feature #19571](https://bugs.ruby-lang.org/issues/19571) +* 가비지 컬렉터에서 오래된 객체의 자식 객체가 즉시 오래된 객체로 마킹되지 않습니다. [Feature #19678](https://bugs.ruby-lang.org/issues/19678) +* 가비지 컬렉터에 약한 참조가 추가됩니다. [Feature #19783](https://bugs.ruby-lang.org/issues/19783) + +## 그 이외의 3.2 이후로 주목할 만한 변경 + +### IRB + +IRB에 여러 개선 사항이 추가됩니다. 다음과 같은 내용이 포함됩니다. + +- 고급 `irb:rdbg` 통합 기능은 `pry-byebug`와 동등한 디버깅 경험을 제공합니다. ([문서](https://github.com/ruby/irb#debugging-with-irb)). +- `ls`와 `show_source`, `show_cmds`와 같은 명령어에서 페이징을 지원합니다. +- `ls`, `show_source` 명령에서 더 정확하고 유용한 정보를 제공합니다. +- 타입 분석을 사용하는 실험적인 자동 완성 기능을 제공합니다. ([문서](https://github.com/ruby/irb#type-based-completion)). +- Reline::Face 클래스의 도입으로 자동완성 다이얼로그의 글씨 색과 스타일이 변경 가능합니다. ([문서](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +또한, IRB는 광범위한 리팩토링을 거쳤으며, 향후 개선이 용이하도록 많은 버그 수정이 이루어졌습니다. + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + +### Removed constants + +폐기 예정이었던 상수가 삭제됩니다. + + + +### 삭제된 메서드 + +폐기 예정이었던 메서드가 삭제됩니다. + +### 삭제된 환경 변수 + +폐기 예정이었던 환경 변수가 삭제됩니다. + +* 환경 변수 `RUBY_GC_HEAP_INIT_SLOTS`는 폐기 예정이었으며 아무 효과도 없습니다. 대신 환경 변수 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS`를 사용해주세요. [Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib 호환성 문제 + +### `ext/readline` 폐기 + +* 우리는 `ext/readline` API와 호환되는 순수 Ruby 구현인 `reline`을 가지고 있습니다. 앞으로는 `reline`에 의존할 것입니다. `ext/readline`을 사용해야 하는 경우, `gem install readline-ext`를 사용하여 rubygems.org를 통해 `ext/readline`을 설치할 수 있습니다. +* 이제 더 이상 `libreadline` 또는 `libedit`과 같은 라이브러리를 설치할 필요가 없습니다. + +## C API 변경 + +### 갱신된 C API + +다음 API가 갱신됩니다. + + + +### 삭제된 C API + +다음 폐기 예정인 API가 삭제됩니다. + + + +## 표준 라이브러리 갱신 + +사용자가 미래의 Ruby 버전에서 내장될 예정의 gem을 직접 불러올 때 RubyGems와 Bundler가 경고 문구를 출력합니다. + +다음 라이브러리가 대상입니다. + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +다음 기본 gem이 추가되었습니다. + +* prism 0.15.1 + +다음 기본 gem이 갱신되었습니다. + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +다음 기본 gem이 내장됩니다. + +* racc 1.7.3 + +다음 내장 gem이 갱신됩니다. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +기본 gem 또는 내장 gem에 대한 자세한 내용은 [Logger](https://github.com/ruby/logger/releases)와 같은 +GitHub 릴리스 또는 변경 로그에서 확인하세요. + +더 자세한 내용은 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.2.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + + + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. From b0a0a2ff0c7b83f00873c3a4732a43bd0fd5c0a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Sun, 19 Nov 2023 05:48:29 -0500 Subject: [PATCH 103/607] Translate Ruby 3.3.0 preview3 released news post (es) (#3141) --- ...2023-11-12-ruby-3-3-0-preview3-released.md | 354 ++++++++++++++++++ 1 file changed, 354 insertions(+) create mode 100644 es/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md diff --git a/es/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/es/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md new file mode 100644 index 0000000000..174809724a --- /dev/null +++ b/es/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -0,0 +1,354 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.0-preview3" +author: "naruse" +translator: vtamara +date: 2023-11-12 00:00:00 +0000 +lang: es +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview3" | first %} + +Nos complace anunciar la publicación de Ruby {{ release.version }}. Ruby 3.3 +añade un nuevo analizador sintáctico llamado Prism, usa Lrama como +generador de analizadores, añade un nuevo compilador JIT en puro Ruby +llamado RJIT, e incluye muchas mejoras de desempeño especialmente de YJIT. + +## Prism + +* Se introduce [el analizador sintáctico Prism](https://github.com/ruby/prism) + como gema predeterminada. + * Prism es un analizador recursivo-descendente para el lenguaje Ruby + portable, tolerante a errores y mantenible +* Prism está listo para operar en producción es mantenido activamente + y puede emplearlo en lugar de Ripper + * Hay [amplia documentación](https://ruby.github.io/prism/) sobre como + usar Prism + * Prism es tanto una librería en C que es usada internamente por CRuby + como una gema que puede ser usada por cualquier herramienta que + necesite analizar código Ruby. + * Unos métodos notables de la API de Prism son: + * `Prism.parse(fuente)` que retorna el árbol de sintaxis + abstracta (AST) como parte de un ParseResult + * `Prism.dump(fuente, ruta)` que retorna el AST serializado como una + cadena + * `Prism.parse_comments(fuente)` que retorna los comentarios +* Puede hacer solicitudes de cambio o crear incidentes directamente en el + [repositorio de Prism](https://github.com/ruby/prism) si desea + contribuir. + +## Uso de Lrama en lugar de Bison + +* Se remplazó Bison por [el generador de analizadores LALR Lrama](https://github.com/yui-knk/lrama) + [Característica #19637](https://bugs.ruby-lang.org/issues/19637) + * Si tiene interés, por favor vea + [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * El analizadores interno de Lrama se ha remplazado con un + analizador LR generado por Racc para hacerlo más mantenible. + * Se soportan reglas de parametrización `(?, *, +)`, que serán + usadas en la fuente parse.y de Ruby. + +## RJIT + +* Se introdujo RJIT un compilador JIT en puro Ruby que remplaza a MJIT. + * RJIT soporta sólo la arquitectura x86-64 en plataformas Unix. + * A diferencia de MJIT, no require de un compilador C en tiempo de ejecución. +* RJIT existe sólo con propósitos experimentales. + * Debería seguir usando YJIT en producción. +* Si le interesa desarrollar un compilador JIT para Ruby, por favor + revise la [presentación de k0kubun en el día 3 de RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## YJIT + +* Mejoras mayores en desempeño respecto a 3.2 + * Mejorado el soporte para argumentos splat y para el resto de argumentos. + * Los registros se localizan para operaciones en pila de la máquina virtual. + * Se compilan más llamados con argumentos opcionales. + * Los manejadores de excepciones también se compilan. + * Las variables de instancia ya no salen al interprete con Formas de Objetos + mega-mórficas. + * Se optimizaron de manera especial `Integer#!=`, `String#!=`, + `Kernel#block_given?`, `Kernel#is_a?`, `Kernel#instance_of?` y + `Module#===`. + * Ahora es 3 veces más rápido que el interprete normal con optcarrot! +* Mejora significativa en el uso de memoria respecto a 3.2 + * Los meta-datos para el código compilado usan mucha menos memoria. + * Generación de código más compacto en ARM64 +* La velocidad de compilación es ahora un poco más rápida que en 3.2. +* Añade `RubyVM::YJIT.enable` que puede habilitar YJIT en tiempo de ejecución + * Puede iniciar YJIT sin modificar argumentos en la línea de ordenes + o variables de ambiente. + * Esto también puede usarse para habilitar YJIT sólo después de que la + aplicación haya completado el arranque. `--yjit-disable` puede usarse + si quiere usar otras opciones YJIT mientras deshabilita YJIT durante + el arranque. +* Opción para deshabilitar el recolectar de basura codíficado y tratar + `--yjit-exec-mem-size` como un límite duro. + * Puede producir un mejor comportamiento de copiar-al-escribir en + servidores que usen unicorn y bifurcación de procesos (forking) +* La estadística `ratio_in_yjit` producida por `--yjit-stats` ahora está + disponible en compilaciones publicadas, ya no se requiere una + estadística especial o una compilación de desarrollo para acceder + a la mayoría de estadísticas. +* La opción para salir del modo con trazas ahora soporta muestreo + * `--trace-exits-sample-rate=N` +* Se añade `--yjit-perf` para facilitar hacer medición de desempeño + usando la herramienta perf de Linux +* Pruebas más extensas y correcciones a múltiples fallas + + +### Planificador de hilos M:N + +* Se introdujo un planificador de hilos M:N. [[Característica #19842]](https://bugs.ruby-lang.org/issues/19842) + * M hilos de Ruby son manejados por N hilos nativos (hilos del + sistema operativo) reduciendo así el costo de creación y + administración. + * Como puede romper la compatibilidad con extensiones en C, el + planificador de hilos M:N está deshabilitado de manera predeterminada + en el Ractor principal. + * La variable de ambiente `RUBY_MN_THREADS=1` habilita los hilos + M:N en el Ractor principal. + * Los hilos M:N se habilitan en Ractos que no son el principal. + * La variable de ambiente `RUBY_MAX_CPU=n` establece el máximo número + de `N` (número máximo de hilos nativos). El valor predeterminado es 8. + * Como sólo un hilo de Ruby por Ractor puede correr al mismo tiempo, + el número de hilos nativos se usará, sera el menor entre + el especificado en `RUBY_MAX_CPU` y el número de Ractors + que estén corriendo. Así que las aplicaciones con un sólo Ractor + (la mayoría de aplicaciones) usarán un solo hilo. + * Para soportar operaciones de bloqueo, pueden usarse más de + `N` hilos nativos. + + +## Otros Características Nuevas Notables + +### Lenguaje + +## Mejoras en desempeño + +* `defined?(@ivar)` se optimiza con Formas de Objetos. +* La resolución de nombres como con `Socket.getaddrinfo` ahora puede + interrumpirse (en ambientes donde estén disponibles pthreads). + [Característica #19965](https://bugs.ruby-lang.org/issues/19965) + * Con este propósito, se crea un pthread por cada llamada a + getaddrinfo o getnameinfo. Esto incurre en algo de gasto en la + resolución de nombres (alrededor de 2.5x en nuestros experimentos). + No esperamos que el gasto adicional en la resolución de nombres + sea un problema para la mayoría de aplicaciones, pero si lo nota, + o si ve efectos inesperados que crea que pueden deberse a este + cambio, por favor reportelos. +* Se ha añadido la variable de ambiente `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO`. + [Característica #19571](https://bugs.ruby-lang.org/issues/19571) +* Los hijos de objetos antiguos ya no son promovidos de inmediato a la + antigua generación en el recolector de basura. + [Característica #19678](https://bugs.ruby-lang.org/issues/19678) +* Se ha agregado soporte para referencias débiles al recolector de basura. + [Característica #19783](https://bugs.ruby-lang.org/issues/19783) + + +## Otros cambios notables desde 3.2 + +### IRB + +IRB ha recibido diversas mejoras, incluyendo --no limitadas a estas: + +- Integración avanzada `irb:rdbg` que provee una experiencia + de depuración equivalente a la de `pry-byebug` + ([doc](https://github.com/ruby/irb#debugging-with-irb)). +- Soporte de paginador para las ordenes `ls`, `show_source` y `show_cmds`. +- Las ordenes `ls` y `show_cmds` dan información más precisa y útil. +- Autocompletación experimental usando análisis de tipos + ([doc](https://github.com/ruby/irb#type-based-completion)). +- Ahora es posible cambiar el color del tipo de letra así como su estilo + en el diálogo de completación gracias a la recien introducida + clase Reline::Face ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +Además, IRB ha experimentado una re-factorización extensa y ha recibido +docenas de correcciones a fallas que facilitan ampliaciones futuras. + + +## Incidentes de compatibilidad + +Nota: Correciones a falla que excluía características. + +### Constantes elminadas + +Las siguientes constantes que eran despreciadas han sido eliminadas. + + +### Métodos eliminados + +Los siguientes métodos que eran despreciados han sido eliminados. + + +### Variables de ambientes eliminadas + +* La variable de ambiente `RUBY_GC_HEAP_INIT_SLOTS` es despreciada + y es operación de no hacer nada. En su remplazo por favor use las + variables de ambiente `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS`. + [Característica #19785](https://bugs.ruby-lang.org/issues/19785) + +## Problemas de compatibilidad con Stdlib + +### Eliminación de `ext/readline` + +* Tenemos `reline` que es una implementación en Ruby puro compatible con + el API de `ext/readline`. Dependeremos de `reline` a futuro. Si + necesita usar `ext/readline`, puede instalar `ext/readline` vía rubygems.org + con `gem install readline-ext`. +* Ya no necesitamos instalar librerías como `libreadline` o `libedit`. + +## Actualizaciones al API en C + +### APIs en C actualizados + +Los siguientes APIs han sido actualizados. + + + +### APIs en C eliminados + +Los siguientes APIs despreciados han sido eliminados. + +## Actualizaciones a la librería estándar + +RubyGems y Bundler avisan cuando el usuario requiere gemas que están +programadas para convertirse en gemas incluidas en versiones futuras +de Ruby. + +Librerías que son objetivo: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +Se ha añadido la siguiente gema. + +* prism 0.15.1 + +Las siguientes gemas predeterminadas se han actualizado. + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + + +La siguiente gema incluida ha sido promovida a gema predeterminada. + +* racc 1.7.3 + +Las siguientes gemas incluidas han sido actualizadas. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +Ver la publicación en GitHub como +[Logger](https://github.com/ruby/logger/releases) o +bien la bitácora de cambios con detalles de las gemas predeterminadas +y las gemas incluidas. + +Ver más detalles en el archivo +[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +o en [la bitácora de cambios](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}). + +¡Con estos cambios, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +desde Ruby 3.2.0! + +## Descargas + +* <{{ 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 }} + +## Qué es Ruby + +Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, +y ahora es desarrollado como Código Abieto. Corre en múltiples +plataformas y es usado en todo el mundo especialmente para desarrollo web. From 65c693d092a261fec13b795d89cbd7478689f052 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 22 Nov 2023 14:29:03 +0900 Subject: [PATCH 104/607] draft --- en/privacy/index.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 en/privacy/index.md diff --git a/en/privacy/index.md b/en/privacy/index.md new file mode 100644 index 0000000000..73d98f40a3 --- /dev/null +++ b/en/privacy/index.md @@ -0,0 +1,23 @@ +--- +layout: page +title: "Privacy Policy for ruby-lang.org" +lang: en +--- + +This privacy policy covers ruby-lang.org. + +## Email + +We will not give away your email address to anyone, who is not related to the operations of ruby-lang.org. We will also never ask you to send us any of your passwords via email. + +## Logfiles + +ruby-lang.org record access logs of the requests that reach the web servers, but we use those files for issue investigation and statistical purposes. + +## Cookies + +ruby-lang.org uses cookies to keep track of user preferences. Unless you login on the site, the cookies will not be used to store personal information and we do not give away the information from the cookies. + +## Ascknowledgements + +This privacy policy is based on the [php.net privacy policy](https://www.php.net/privacy.php). From bd946f38dd87935b9c0c37faeb2379a21afac68c Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 30 Nov 2023 13:15:44 +0900 Subject: [PATCH 105/607] Update en/privacy/index.md Co-authored-by: Sorah Fukumori --- en/privacy/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/privacy/index.md b/en/privacy/index.md index 73d98f40a3..dca1464863 100644 --- a/en/privacy/index.md +++ b/en/privacy/index.md @@ -12,7 +12,7 @@ We will not give away your email address to anyone, who is not related to the op ## Logfiles -ruby-lang.org record access logs of the requests that reach the web servers, but we use those files for issue investigation and statistical purposes. +ruby-lang.org records access logs of the requests that reach the web servers, but we use those files for debugging and statistical purposes. ## Cookies From 7de2e6a996fa71deafe69eb42f2ad2098e276479 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 30 Nov 2023 13:16:02 +0900 Subject: [PATCH 106/607] Update en/privacy/index.md Co-authored-by: Sorah Fukumori --- en/privacy/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/privacy/index.md b/en/privacy/index.md index dca1464863..e0f784dfe2 100644 --- a/en/privacy/index.md +++ b/en/privacy/index.md @@ -16,7 +16,7 @@ ruby-lang.org records access logs of the requests that reach the web servers, bu ## Cookies -ruby-lang.org uses cookies to keep track of user preferences. Unless you login on the site, the cookies will not be used to store personal information and we do not give away the information from the cookies. +Some sites under ruby-lang.org (e.g. bugs.ruby-lang.org) uses cookies to keep track of user preferences. Unless you login on the site, the cookies will not be used to store personal information and we do not give away the information from the cookies. ## Ascknowledgements From 9038c7c965b85e940b440a709eb15db2db289874 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 30 Nov 2023 14:04:46 +0900 Subject: [PATCH 107/607] Mention about GitHub Pages --- en/privacy/index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/en/privacy/index.md b/en/privacy/index.md index e0f784dfe2..7e5e02e26d 100644 --- a/en/privacy/index.md +++ b/en/privacy/index.md @@ -14,6 +14,8 @@ We will not give away your email address to anyone, who is not related to the op ruby-lang.org records access logs of the requests that reach the web servers, but we use those files for debugging and statistical purposes. +We use GitHub Pages for www.ruby-lang.org. Please refer [Usage limits of GitHub Pages](https://docs.github.com/en/pages/getting-started-with-github-pages/about-github-pages#data-collection). + ## Cookies Some sites under ruby-lang.org (e.g. bugs.ruby-lang.org) uses cookies to keep track of user preferences. Unless you login on the site, the cookies will not be used to store personal information and we do not give away the information from the cookies. From 28cd555eaf5f4ce7631ed03faaae4660e451bcb5 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 30 Nov 2023 15:07:15 +0900 Subject: [PATCH 108/607] fixup initial policy --- en/privacy/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/privacy/index.md b/en/privacy/index.md index 7e5e02e26d..f855225170 100644 --- a/en/privacy/index.md +++ b/en/privacy/index.md @@ -12,7 +12,7 @@ We will not give away your email address to anyone, who is not related to the op ## Logfiles -ruby-lang.org records access logs of the requests that reach the web servers, but we use those files for debugging and statistical purposes. +ruby-lang.org records access logs of the requests that reach the web servers, but we use those files only for debugging and statistical purposes. We use GitHub Pages for www.ruby-lang.org. Please refer [Usage limits of GitHub Pages](https://docs.github.com/en/pages/getting-started-with-github-pages/about-github-pages#data-collection). From 5cd7633aabd575eae437bd3d772196f198dc881e Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 30 Nov 2023 15:46:35 +0900 Subject: [PATCH 109/607] typofix --- en/privacy/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/privacy/index.md b/en/privacy/index.md index f855225170..52bdf65e37 100644 --- a/en/privacy/index.md +++ b/en/privacy/index.md @@ -20,6 +20,6 @@ We use GitHub Pages for www.ruby-lang.org. Please refer [Usage limits of GitHub Some sites under ruby-lang.org (e.g. bugs.ruby-lang.org) uses cookies to keep track of user preferences. Unless you login on the site, the cookies will not be used to store personal information and we do not give away the information from the cookies. -## Ascknowledgements +## Acknowledgements This privacy policy is based on the [php.net privacy policy](https://www.php.net/privacy.php). From 9fb5cdc5420d9e33c5a18c4a4a8468447c550202 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Sat, 30 Sep 2023 16:53:51 +0700 Subject: [PATCH 110/607] Translate Ruby 3.3.0-preview2 released news post (id) --- ...2023-09-14-ruby-3-3-0-preview2-released.md | 200 ++++++++++++++++++ 1 file changed, 200 insertions(+) create mode 100644 id/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md diff --git a/id/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md b/id/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md new file mode 100644 index 0000000000..11f4e93a68 --- /dev/null +++ b/id/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -0,0 +1,200 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview2 Dirilis" +author: "naruse" +translator: "meisyal" +date: 2023-09-14 00:00:00 +0000 +lang: id +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview2" | first %} + +Kami dengan senang hati mengumumkan rilis dari Ruby {{ release.version }}. +Ruby 3.3 menambahkan sebuah *pure-Ruby* JIT *compiler* baru yang bernama RJIT, +menggunakan Lrama sebagai *parser generator*, dan memperbaiki performa khususnya +YJIT. + +## RJIT + +* Memperkenalkan sebuah *pure-Ruby* JIT *compiler* dan menggantikan MJIT. + * RJIT hanya mendukung arsitektur x86\_64 pada *platform Unix*. + * Berbeda dengan MJIT, RJIT tidak membutuhkan sebuah C *compiler* saat *runtime*. +* RJIT ada untuk tujuan eksperimen. + * Anda harus tetap menggunakan YJIT pada *production*. +* Jika Anda tertarik untuk mengembangkan JIT pada Ruby, mohon cek + [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## Menggunakan Lrama ketimbang Bison + +* Mengganti Bison dengan [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * Jika Anda tertarik, silakan lihat [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + +## YJIT + +* Peningkatan performa yang signifikan dibanding Ruby 3.2 + * Dukungan *splat* dan *rest argument* telah ditingkatkan. + * *Register* dialokasikan untuk operasi *stack* dari *virtual machine*. + * Pemanggilan dengan *optional argument* dikompilasi. + * *Exception handler* juga dikompilasi. + * *Instant variable* tidak lagi keluar ke *intepreter* dengan *Object Shapes* + yang sangat besar. + * *Call type* yang tidak didukung tidak lagi keluar ke *interpreter*. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` dioptimisasi. + * Sekarang 3x lebih cepat dibanding *interpreter* pada optcarrot! +* *Metadata* dari kode yang dikompilasi menggunakan *memory* lebih sedikit. +* Peningkatan *code generation* pada ARM64 +* Opsi untuk menjalankan YJIT pada *paused mode* dan mengaktifkan kembali secara manual + * `--yjit-pause` dan `RubyVM::YJIT.resume` + * Ini dapat digunakan untuk mengaktifkan YJIT ketika aplikasi Anda selesai *booting* +* `ratio_in_yjit` yang dihasilkan oleh `--yjit-stats` sekarang tersedia pada + rilis *build*, data khusus atau dev *build* tidak lagi diperlukan. +* Opsi *exit tracing* sekarang mendukung *sampling* + * `--trace-exits-sample-rate=N` +* Pengujian lebih saksama dan perbaikan beberapa *bug* + + + +## Fitur Penting Lainnya + +### Bahasa + + + +## Perbaikan performa + +* `defined?(@ivar)` dioptimisasi dengan *Object Shapes*. + +## Perubahan penting lainnya sejak 3.2 + +### IRB + +IRB mendapatkan beberapa peningkatan berikut, namun tidak terbatas pada: + +- Integrasi `irb:rdbg` yang menyediakan pengalaman *deugging* setara dengan `pry-byebug` ([doc](https://github.com/ruby/irb#debugging-with-irb)). +- Dukungan *pager* untuk perintah, seperti `ls` dan `show_cmds`. +- Menyediakan informasi yang lebih akurat dan membantu dengan perintah `ls` dan `show_source`. + +Sebagai tambahan, IRB telah menjalani *refactoring* yang ekstensif dan menerima +perbaikan *bug* untuk memfasilitasi peningkatan ke depan dengan lebih mudah. + +## Isu kompatibilitas + +Catatan: Tidak termasuk perbaikan *bug* dari fitur. + +### Constant terhapus + +Berikut ini adalah *constant* yang telah dihapus. + + + +### Method terhapus + +Berikut ini adalah *method* yang telah dihapus. + + + +## Isu kompatibilitas Stdlib + +### `ext/readline` dipensiunkan + +* Kami memiliki `reline` yang merupakan implementasi Ruby murni dan kompatibel + dengan `ext/readline` API. Kami bergantung pada `reline` di masa depan. Jika + Anda perlu untuk menggunakan `ext/readline`, Anda dapat memasang `ext/readline` + melalui rubygems.org dengan `gem install readline-ext`. +* Kami tidak lagi memasang pustaka, seperti `libreadline` atau `libedit`. + +## Pembaruan C API + +### C API diperbarui + +Berikut adalah API yang telah diperbarui. + + + +### C API terhapus + +Berikut adalah API yang telah dihapus. + + + +## Pembaruan pustaka standar + +RubyGems dan Bundler memperingatkan jika pengguna membutuhkan *gem* yang dijadwalkan +akan menjadi *bundled gem* pada Ruby versi berikutnya. + +Berikut adalah *default gem* yang telah diperbarui. + +* RubyGems 3.5.0.dev +* bigdecimal 3.1.4 +* bundler 2.5.0.dev +* csv 3.2.8 +* erb 4.0.3 +* fiddle 1.1.2 +* fileutils 1.7.1 +* irb 1.7.4 +* nkf 0.1.3 +* optparse 0.4.0.pre.1 +* psych 5.1.0 +* reline 0.3.8 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* time 0.2.2 +* timeout 0.4.0 +* uri 0.12.2 +* yarp 0.9.0 + +Berikut adalah *bundled gem* yang telah diperbarui. + +* minitest 5.19.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.3.7 +* rbs 3.2.1 +* typeprof 0.21.8 +* debug 1.8.0 + +Berikut adalah *default gem* yang sekarang menjadi *bundled gem*. + +* racc 1.7.1 + +Lihat rilis GitHub, seperti [Logger](https://github.com/ruby/logger/releases) +atau *changelog* untuk detail dari *default gem* atau *bundled gem*. + +Lihat [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +atau [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) +untuk lebih detail. + +Dengan perubahan tersebut, [{{ release.stats.files_changed }} berkas berubah, {{ release.stats.insertions }} sisipan(+), {{ release.stats.deletions }} terhapus(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +sejak Ruby 3.2.0! + +## Unduh + +* <{{ 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 }} + +## Apa itu Ruby + +Ruby pertama kali dikembangkan oleh Matz (Yukihiro Matsumoto) pada 1993 +dan sekarang dikembangkan sebagai *Open Source*. Ruby berjalan pada berbagai +*platform* dan digunakan di seluruh dunia, khususnya pengembangan *web*. From be4842b8642b56ed3cf8a43164aae2d95b72c11b Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 29 Aug 2023 15:26:13 +0800 Subject: [PATCH 111/607] Fix links in installation (ja) --- ja/documentation/installation/index.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/ja/documentation/installation/index.md b/ja/documentation/installation/index.md index 020f4df7db..d11169fcfc 100644 --- a/ja/documentation/installation/index.md +++ b/ja/documentation/installation/index.md @@ -74,12 +74,12 @@ Ruby コミュニティの中の一部のメンバーは Ruby をインストー * [Gentoo](#portage) * [Arch Linux](#pacman) * [macOS](#homebrew) - * [FreeBSD](#pkg) - * [OpenBSD](#doas) + * [FreeBSD](#freebsd) + * [OpenBSD](#openbsd) * [OpenIndiana](#openindiana) * [Windows Package manager](#winget) - * [Chocolatey package manager for Windows](#choco) - * [Other Distribution](#other) + * [Chocolatey package manager for Windows](#chocolatey) + * [Other Distribution](#other-systems) ### apt (Debian or Ubuntu) @@ -161,7 +161,7 @@ $ brew install ruby こちらはRubyの最新の安定版をインストールすることを推奨します。 ### FreeBSD -{: #pkg} +{: #freebsd} FreeBSDでは、Rubyをインストールする方法として、パッケージ化されたものとソースベースのものの両方が用意されています。プリビルドパッケージはpkgツールでインストールできます。 {% highlight sh %} @@ -173,7 +173,7 @@ ports を利用してソースコードからインストールする場合、[P FreeBSDにおけるRubyとそのエコシステムの詳しい情報は [FreeBSD Ruby Projects website](https://wiki.freebsd.org/Ruby) で確認できます。 ### OpenBSD -{: #doas} +{: #openbsd} OpenBSDやそのディストリビューションであるadJには、Rubyの3つの主要なバージョンに対応したパッケージが用意されています。以下のコマンドで、利用可能なバージョンを確認し、インストールすることができます。 {% highlight sh %} @@ -203,7 +203,7 @@ WindowsでRubyをインストールするには[Windows Package Manager CLI](htt {% endhighlight %} ### Chocolatey package manager for Windows -{: #choco} +{: #chocolatey} 同じくWindowsでは[Chocolatey Package Manager](https://chocolatey.org/install) を利用してRubyのインストールが可能です。 {% highlight sh %} @@ -213,7 +213,7 @@ WindowsでRubyをインストールするには[Windows Package Manager CLI](htt 既存のmsys2を再利用するか、独自のものをインストールして完全なRuby開発環境を構築します。 ### その他のディストリビューション -{: #other} +{: #other-systems} その他のシステムでは,お使いのLinuxディストリビューションのマネージャのパッケージリポジトリを検索して,Rubyを探すことができます。 もしくはサードパーティのインストーラを使うこともできます。 From d95dc2c12aab4b22dd337200c7dbd1f83abd90c8 Mon Sep 17 00:00:00 2001 From: eduardoksa Date: Wed, 11 Oct 2023 14:28:42 -0300 Subject: [PATCH 112/607] Traslate Home to portuguese (pt) --- _data/locales/pt.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/locales/pt.yml b/_data/locales/pt.yml index 804cc75a4b..48def56dea 100644 --- a/_data/locales/pt.yml +++ b/_data/locales/pt.yml @@ -3,7 +3,7 @@ ruby: Ruby slogan: O melhor amigo do programador sitelinks: -- text: Home +- text: Início url: /pt home: true - text: Downloads From 8791ebe9e6b7d36004eabc77b05da4f874a54e6e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Dec 2023 15:33:51 +0000 Subject: [PATCH 113/607] Bump actions/deploy-pages from 2.0.4 to 2.0.5 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 2.0.4 to 2.0.5. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/9dbe3824824f8a1377b8e298bafde1a50ede43e5...de14547edc9944350dc0481aa5b7afb08e75f254) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index e903d81c62..a42738cda0 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@9dbe3824824f8a1377b8e298bafde1a50ede43e5 # v2.0.4 + uses: actions/deploy-pages@de14547edc9944350dc0481aa5b7afb08e75f254 # v2.0.5 From bbfd96bdf8f9ad0e9f99c992e51e6afc64bc6409 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Mon, 11 Dec 2023 17:10:26 +0900 Subject: [PATCH 114/607] Ruby 3.3.0-rc1 Released (#3149) --- _data/downloads.yml | 2 +- _data/releases.yml | 29 ++ .../2023-12-11-ruby-3-3-0-rc1-released.md | 317 ++++++++++++++++++ .../2023-12-11-ruby-3-3-0-rc1-released.md | 288 ++++++++++++++++ release.patch | 41 +++ 5 files changed, 676 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md create mode 100644 ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md create mode 100644 release.patch diff --git a/_data/downloads.yml b/_data/downloads.yml index 7f8885f6cb..39c843acd5 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,7 +4,7 @@ # optional preview: - - 3.3.0-preview3 + - 3.3.0-rc1 stable: diff --git a/_data/releases.yml b/_data/releases.yml index 7333cd8e25..3b8a987f13 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,35 @@ # 3.3 series +- version: 3.3.0-rc1 + date: 2023-12-11 + post: /en/news/2023/12/11/ruby-3-3-0-rc1-released/ + tag: v3_3_0_rc1 + stats: + files_changed: 5414 + insertions: 306141 + deletions: 183575 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-rc1.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-rc1.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-rc1.tar.xz + size: + gz: 21783575 + zip: 26735443 + xz: 16163884 + sha1: + gz: c75a860e06f27b7f69b874757417277c21d1d3f4 + zip: 35583453a7734216b08829ef0ec9ea1bc0d4ae7f + xz: 26503f9bdc7d0a05aaa9836f54d3aa9e74a9ead9 + sha256: + gz: c4ff82395a90ef76c7f906b7687026e0ab96b094dcf3a532d9ab97784a073222 + zip: 56dd82e1dd714f2889ca975ae7befbe005675de08839c2cc4a484de2ae65201c + xz: 051815637f1fa75a1edf2c54b66d5d5b69563daad777da8dc39543b7754b5290 + sha512: + gz: 265fb2ffe55af47d8349edffcebe749cc170291227cef55529fe4e67363e4e84b88daa34ffb5364a99c8a0e32110266a34c9a11d62f3bd6f6d47fa76eca641f4 + zip: 7fbe414c230aedc9f364512bcbc213038f8f6e4268929a559d2527e2f3e32a140b394e37098ab7e59161236eca8b89cc9e52d73a3be8d7bd44faa91681483f5d + xz: 82f4acfaad1dc47db27ee3eb952481a95b3474a98059e9e9f5ceb035b690d1faabe99f2ec52371c4089ed1615eb10c395f029088418fec4d26399b65b4f259b9 + - version: 3.3.0-preview3 date: 2023-11-12 post: /en/news/2023/11/12/ruby-3-3-0-preview3-released/ diff --git a/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md new file mode 100644 index 0000000000..73d5ed01f0 --- /dev/null +++ b/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -0,0 +1,317 @@ +--- +layout: news_post +title: "Ruby 3.3.0-rc1 Released" +author: "naruse" +translator: +date: 2023-12-11 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-rc1" | first %} +We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 adds a new parser named Prism, uses Lrama as a parser generator, adds a new pure-Ruby JIT compiler named RJIT, and many performance improvements especially YJIT. + +After the release of RC1, we will avoid introducing ABI incompatibilities wherever possible. If we need to do, we'll announce it in the release note. + +## Prism + +* Introduced [the Prism parser](https://github.com/ruby/prism) as a default gem + * Prism is a portable, error tolerant, and maintainable recursive descent parser for the Ruby language +* Prism is production ready and actively maintained, you can use it in place of Ripper + * There is [extensive documentation](https://ruby.github.io/prism/) on how to use Prism + * Prism is both a C library that will be used internally by CRuby and a Ruby gem that can be used by any tooling which needs to parse Ruby code + * Notable methods in the Prism API are: + * `Prism.parse(source)` which returns the AST as part of a ParseResult + * `Prism.dump(source, filepath)` which returns the serialized AST as a String + * `Prism.parse_comments(source)` which returns the comments +* You can make pull requests or issues directly on [the Prism repository](https://github.com/ruby/prism) if you are interested in contributing + +## Use Lrama instead of Bison + +* Replace Bison with [Lrama LALR parser generator](https://github.com/ruby/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * Lrama internal parser is replaced with LR parser generated by Racc for maintainability + * Parameterizing Rules `(?, *, +)` are supported, it will be used in Ruby parse.y + +## RJIT + +* Introduced a pure-Ruby JIT compiler RJIT and replaced MJIT. + * RJIT supports only x86-64 architecture on Unix platforms. + * Unlike MJIT, it doesn't require a C compiler at runtime. +* RJIT exists only for experimental purposes. + * You should keep using YJIT in production. +* If you are interested in developing JIT for Ruby, please check out [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## YJIT + +* Major performance improvements over 3.2 + * Support for splat and rest arguments has been improved. + * Registers are allocated for stack operations of the virtual machine. + * More calls with optional arguments are compiled. + * Exception handlers are also compiled. + * Instance variables no longer exit to the interpreter + with megamorphic object shapes. + * Unsupported call types no longer exit to the interpreter. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` are specially optimized. + * Now more than 3x faster than the interpreter on optcarrot! +* Significantly improved memory usage over 3.2 + * Metadata for compiled code uses a lot less memory. + * Generate more compact code on ARM64 +* Compilation speed is now slightly faster than 3.2. +* Add `RubyVM::YJIT.enable` that can enable YJIT at run-time + * You can start YJIT without modifying command-line arguments or environment variables. + * This can also be used to enable YJIT only once your application is + done booting. `--yjit-disable` can be used if you want to use other + YJIT options while disabling YJIT at boot. +* Code GC is now disabled by default, and `--yjit-exec-mem-size` is treated + as a hard limit where copilation of new code stops. + * Better copy-on-write behavior on servers using unicorn and forking + * No sudden drops in performance due to code GC. + * You can still enable code GC if desired with `--yjit-code-gc` +* `ratio_in_yjit` stat produced by `--yjit-stats` is now available in release builds, + a special stats or dev build is no longer required to access most stats. +* Exit tracing option now supports sampling + * `--trace-exits-sample-rate=N` +* `--yjit-perf` is added to facilitate profiling with Linux perf. +* More thorough testing and multiple bug fixes + + +### M:N thread scheduler + +* M:N thread scheduler was introduced. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M Ruby threads are managed by N native threads (OS threads) so the thread creation and management cost are reduced. + * It can break C-extension compatibility so that M:N thread scheduler is disabled on the main Ractor by default. + * `RUBY_MN_THREADS=1` environment variable enables M:N threads on the main Ractor. + * M:N threads are enabled on non-main Ractors. + * `RUBY_MAX_CPU=n` environment variable sets maximum number of `N` (maximum number of native threads). The default value is 8. + * Since only one Ruby thread per Ractor can run at the same time, the number of native threads will be used, which is the smaller of the number specified in `RUBY_MAX_CPU` and the number of running Ractors. So that single Ractor applications (most of applications) will use 1 native thread. + * To support blocking operations, more than `N` native threads can be used. + +## Other Notable New Features + + + +### Language + + +## Performance improvements + +* `defined?(@ivar)` is optimized with Object Shapes. +* Name resolution such as `Socket.getaddrinfo` can now be interrupted (in environments where pthreads are available). [Feature #19965](https://bugs.ruby-lang.org/issues/19965) + * For this purpose, a pthread is now created whenever calling getaddrinfo or getnameinfo. This incurs some overhead in name resolution (about 2.5x in our experiments). We do not expect the name resolution overhead to be a problem for most applications, but if you observe such, or if you see unexpected affects that you believe are due to this change, please report them. +* Several performance improvements to the Garbage Collector + * Young objects referenced by old objects are no longer immediately + promoted to the old generation. This significantly reduces the frequency of + major GC collections. [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) + * A new `REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` tuning variable was + introduced to control the number of unprotected objects cause a major GC + collection to trigger. The default is set to `0.01` (1%). This significantly + reduces the frequency of major GC collection. [[Feature #19571]](https://bugs.ruby-lang.org/issues/19571) + * Write Barriers were implemented for many core types that were missing them, + notably `Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal` + and several others. This significantly reduces minor GC collection time and major + GC collection frequency. + * Most core classes are now using Variable Width Allocation, notably `Hash`, `Time`, + `Thread::Backtrace`, `Thread::Backtrace::Location`, `File::Stat`, `Method`. + This makes these classes faster to allocate and free, use less memory and reduce + heap fragmentation. + * Support for weak references has been added to the garbage collector. [[Feature #19783]](https://bugs.ruby-lang.org/issues/19783) + + +## Other notable changes since 3.2 + +### IRB + +IRB has received several enhancements, including but not limited to: + +- Advanced `irb:rdbg` integration that provides an equivalent debugging experience to `pry-byebug` ([doc](https://github.com/ruby/irb#debugging-with-irb)). +- Pager support for `ls`, `show_source` and `show_cmds` commands. +- More accurate and helpful information provided by the `ls` and `show_source` commands. +- Experimental autocompletion using type analysis ([doc](https://github.com/ruby/irb#type-based-completion)). +- It is now possible to change the font color and font style in the completion dialog by a newly introduced class Reline::Face ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +In addition, IRB has also undergone extensive refactoring and received dozens of bug fixes to facilitate easier future enhancements. + +## Compatibility issues + +Note: Excluding feature bug fixes. + +* `it` calls without arguments in a block with no ordinary parameters are + deprecated. `it` will be a reference to the first block parameter in Ruby 3.4. + [Feature #18980](https://bugs.ruby-lang.org/issues/18980) + +### Removed constants + +The following deprecated constants are removed. + + + +### Removed methods + +The following deprecated methods are removed. + +### Removed environment variables + +The following deprecated methods are removed. + +* Environment variable `RUBY_GC_HEAP_INIT_SLOTS` has been deprecated and is a no-op. Please use environment variables `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` instead. [Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib compatibility issues + +### `ext/readline` is retired + +* We have `reline` that is pure Ruby implementation compatible with `ext/readline` API. We rely on `reline` in the future. If you need to use `ext/readline`, you can install `ext/readline` via rubygems.org with `gem install readline-ext`. +* We no longer need to install libraries like `libreadline` or `libedit`. + +## C API updates + +### Updated C APIs + +The following APIs are updated. + + + +### Removed C APIs + +The following deprecated APIs are removed. + + + +## Standard library updates + +RubyGems and Bundler warn if users require gem that is scheduled to become the bundled gems in the future version of Ruby. + +Targeted libraries are: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +The following default gem is added. + +* prism 0.15.1 + +The following default gems are updated. + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +The following bundled gem is promoted from default gems. + +* racc 1.7.3 + +The following bundled gems are updated. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +See GitHub releases like [Logger](https://github.com/ruby/logger/releases) or +changelog for details of the default gems or bundled gems. + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +since Ruby 3.2.0! + + +## Download + +* <{{ 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 + +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/2023-12-11-ruby-3-3-0-rc1-released.md b/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md new file mode 100644 index 0000000000..55bf91d8c3 --- /dev/null +++ b/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -0,0 +1,288 @@ +--- +layout: news_post +title: "Ruby 3.3.0-rc1 リリース" +author: "naruse" +translator: +date: 2023-12-11 00:00:00 +0000 +lang: ja +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-rc1" | first %} +Ruby {{ release.version }} が公開されました。Ruby 3.3ではPrismという新しいパーサーの追加、新しいパーサージェネレーターであるLramaによるBisonの置き換え、RJITという新たなJITの仕組みを追加、YJITの高速化など様々な改善が行われています。 + +このRC1リリース以降はABIの変更を極力行いません。何らかの理由でABIを変更した場合はリリース時にお知らせします。 + +## Prism + +* Introduced [the Prism parser](https://github.com/ruby/prism) as a default gem + * Prism is a portable, error tolerant, and maintainable recursive descent parser for the Ruby language +* Prism is production ready and actively maintained, you can use it in place of Ripper + * There is [extensive documentation](https://ruby.github.io/prism/) on how to use Prism + * Prism is both a C library that will be used internally by CRuby and a Ruby gem that can be used by any tooling which needs to parse Ruby code + * Notable methods in the Prism API are: + * `Prism.parse(source)` which returns the AST as part of a ParseResult + * `Prism.dump(source, filepath)` which returns the serialized AST as a String + * `Prism.parse_comments(source)` which returns the comments +* You can make pull requests or issues directly on [the Prism repository](https://github.com/ruby/prism) if you are interested in contributing + +## Use Lrama instead of Bison + +* Replace Bison with [Lrama LALR parser generator](https://github.com/ruby/lrama) [Feature #19637] + * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * See also: [Ruby Parser開発日誌 (5) - Lrama LALR (1) parser generatorを実装した](https://yui-knk.hatenablog.com/entry/2023/03/13/101951) + * Lrama internal parser is replaced with LR parser generated by Racc for maintainability + * Parameterizing Rules `(?, *, +)` are supported, it will be used in Ruby parse.y + +## RJIT + +* Introduced a pure-Ruby JIT compiler RJIT and replaced MJIT. + * RJIT supports only x86\_64 architecture on Unix platforms. + * Unlike MJIT, it doesn't require a C compiler at runtime. +* RJIT exists only for experimental purposes. + * You should keep using YJIT in production. +* If you are interested in developing JIT for Ruby, please check out [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## YJIT + +* Major performance improvements over 3.2 + * Support for splat and rest arguments has been improved. + * Registers are allocated for stack operations of the virtual machine. + * More calls with optional arguments are compiled. + * Exception handlers are also compiled. + * Instance variables no longer exit to the interpreter + with megamorphic object shapes. + * Unsupported call types no longer exit to the interpreter. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` are specially optimized. + * Now more than 3x faster than the interpreter on optcarrot! +* Significantly improved memory usage over 3.2 + * Metadata for compiled code uses a lot less memory. + * Generate more compact code on ARM64 +* Compilation speed is now slightly faster than 3.2. +* Add `RubyVM::YJIT.enable` that can enable YJIT later + * You can start YJIT without modifying command-line arguments or environment variables. + * This can also be used to enable YJIT only once your application is + done booting. `--yjit-disable` can be used if you want to use other + YJIT options while disabling YJIT at boot. +* Option to disable code GC and treat `--yjit-exec-mem-size` as a hard limit + * Can produce better copy-on-write behavior on servers using unicorn and forking +* `ratio_in_yjit` stat produced by `--yjit-stats` is now avaiable in release builds, + a special stats or dev build is no longer required to access most stats. +* Exit tracing option now supports sampling + * `--trace-exits-sample-rate=N` +* `--yjit-perf` is added to facilitate profiling with Linux perf. +* More thorough testing and multiple bug fixes + +### M:N スレッドスケジューラ + +* M:N スレッドスケジューラが導入されました。[[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M個のRuby スレッドを、N個のネイティブスレッド(OSスレッド)で管理するので、生成管理のコストを抑えることができるようになりました。 + * C拡張ライブラリの互換性に問題が生じる可能性があるため、メインRactorでのM:Nスレッドスケジューラはデフォルトでは無効にされています。 + * `RUBY_MN_THREADS=1` と環境変数を設定することで、メインRactorでM:Nスレッドスケジューラを有効にします。 + * メインRactor以外ではM:Nスレッドスケジューラが有効です。 + * `RUBY_MAX_CPU=n` と環境変数を設定することで、Nの最大数(利用するネイティブスレッドの最大数)を設定できます。デフォルトは8です。 + * 一つの Ractor ではたかだか1つのスレッドしか同時に実行されないので、実際に利用するネイティブスレッド数は、`RUBY_MAX_CPU`で指定した数か実行中のRactorの数の少ないほうになります。つまり、Ractorの数が1つのアプリケーション(多くのアプリケーション)では1つのネイティブスレッドだけ利用されます。 + * ブロックする処理をサポートするため、N個以上のネイティブスレッドが利用されることがあります。 + +## その他の主要な新機能 + +### 言語機能 + + +## パフォーマンスの改善 + +* `Socket.getaddrinfo` などの名前解決を中断できるようになりました (pthread が利用できる環境で)。[Feature 19965](https://bugs.ruby-lang.org/issues/19965) + * このために、getaddrinfo や getnameinfo を呼び出すたびに pthread が生成されるようになりました。名前解決に若干のオーバーヘッドが発生します(実験では約2.5倍)。ほとんどのアプリケーションで名前解決のオーバーヘッドが問題になるとは考えていませんが、もしそのような現象が見られたり、この変更が原因と思われる予期せぬ影響が見られた場合は、ぜひ報告してください。 +* 環境変数 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` が追加されました。[Feature #19571](https://bugs.ruby-lang.org/issues/19571) +* GCで古いオブジェクトの子オブジェクトがすぐにプロモートされなくなりました。[Feature #19678](https://bugs.ruby-lang.org/issues/19678) +* GCに弱参照が追加されました。[Feature #19783](https://bugs.ruby-lang.org/issues/19783) + +## その他の注目すべき 3.2 からの変更点 + +### IRB + +IRBは様々な機能強化を行いました。主なものは以下の通りです。 + +* IRBとrdbgの連携 pry-byebugのような使い心地でデバッグできるようになりました。([使い方](https://github.com/ruby/irb#debugging-with-irb)) +* lsコマンドやshow_cmdsの出力がPagerで表示されるようになりました。 +* lsコマンドやshow_sourceコマンドがより便利で詳細な情報を出力するようになりました。 +* 型情報を使った補完が実験的に実装されました。([有効化するには](https://github.com/ruby/irb#type-based-completion)) +* Reline::Faceクラスの導入により、補完ダイアログの色や文字装飾を変更できるようになりました。([使い方](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +また、機能強化以外にも、数多くのバグ修正および将来的な機能拡張を見越した大規模なリファクタリングを行ないました。 + + +## 互換性に関する変更 + +* ブロック内での引数なし `it` の呼び出しは非推奨になりました。 + Ruby 3.4から最初のブロック引数を参照するようになります。 + [Feature #18980](https://bugs.ruby-lang.org/issues/18980) + +### 定数の削除 + +以下の非推奨定数は削除されました + + +### メソッドの削除 + +以下の非推奨のメソッドは削除されました + +### 環境変数の削除 + +以下の非推奨の環境変数は削除されました + +* 環境変数 `RUBY_GC_HEAP_INIT_SLOTS` は非推奨になり、何もしなくなりました。環境変数 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` を使ってください。[Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## 標準添付ライブラリの互換性に関する変更 + +### `ext/readline` の削除 + +* 今後は Ruby で書かれた GNU Readline の互換ライブラリである `reline` をすべての環境で標準で利用し、`ext/readline` は削除されました。以前の `ext/readline` が必要なユーザーは `gem install readline-ext` でインストールすることができます。 +* この変更により、Ruby のインストール時に `libreadline` や `libedit` などのライブラリのインストールは不要となります。 + +## C API の変更 + +### C API の更新 + +以下の API が更新されました + +### C API の削除 + +以下の非推奨の API は削除されました + + +## 標準添付ライブラリのアップデート + +RubyGems と Bundler は将来リリースされる Ruby で bundled gems となる予定の gem が require された際に警告を行う機能が追加されました。 + +以下のライブラリが対象となります。 + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + + +以下の default gem が追加されました。 + +* prism 0.15.1 + +以下の default gems のバージョンがアップデートされました。 + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + + +新たに以下の gem が default gems から bundled gems に変更されました。 + +* racc 1.7.3 + +以下の bundled gems のバージョンがアップデートされました。 + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +default gems と bundled gems の詳細については [Logger の GitHub Releases](https://github.com/ruby/logger/releases) のような GitHub releases または changelog ファイルを参照してください。 + + +その他詳細については、[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) ファイルまたは[コミットログ](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})を参照してください。 + +なお、こうした変更により、Ruby 3.2.0 以降では [{{ release.stats.files_changed }} 個のファイルに変更が加えられ、{{ release.stats.insertions }} 行の追加と {{ release.stats.deletions }} 行の削除が行われました](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) ! + + +## ダウンロード + +* <{{ 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 とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 diff --git a/release.patch b/release.patch new file mode 100644 index 0000000000..903bc2c6c7 --- /dev/null +++ b/release.patch @@ -0,0 +1,41 @@ +--- a/_data/downloads.yml 2023-12-11 17:02:14 ++++ b/_data/downloads.yml 2023-12-11 17:02:14 +@@ -6,3 +6,3 @@ + +- - 3.3.0-preview3 ++ - 3.3.0-rc1 + +--- a/_data/releases.yml 2023-12-11 17:02:14 ++++ b/_data/releases.yml 2023-12-11 17:02:14 +@@ -23,2 +23,31 @@ + ++- version: 3.3.0-rc1 ++ date: 2023-12-11 ++ post: /en/news/2023/12/11/ruby-3-3-0-rc1-released/ ++ tag: v3_3_0_rc1 ++ stats: ++ files_changed: 5414 ++ insertions: 306141 ++ deletions: 183575 ++ url: ++ gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-rc1.tar.gz ++ zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-rc1.zip ++ xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-rc1.tar.xz ++ size: ++ gz: 21783575 ++ zip: 26735443 ++ xz: 16163884 ++ sha1: ++ gz: c75a860e06f27b7f69b874757417277c21d1d3f4 ++ zip: 35583453a7734216b08829ef0ec9ea1bc0d4ae7f ++ xz: 26503f9bdc7d0a05aaa9836f54d3aa9e74a9ead9 ++ sha256: ++ gz: c4ff82395a90ef76c7f906b7687026e0ab96b094dcf3a532d9ab97784a073222 ++ zip: 56dd82e1dd714f2889ca975ae7befbe005675de08839c2cc4a484de2ae65201c ++ xz: 051815637f1fa75a1edf2c54b66d5d5b69563daad777da8dc39543b7754b5290 ++ sha512: ++ gz: 265fb2ffe55af47d8349edffcebe749cc170291227cef55529fe4e67363e4e84b88daa34ffb5364a99c8a0e32110266a34c9a11d62f3bd6f6d47fa76eca641f4 ++ zip: 7fbe414c230aedc9f364512bcbc213038f8f6e4268929a559d2527e2f3e32a140b394e37098ab7e59161236eca8b89cc9e52d73a3be8d7bd44faa91681483f5d ++ xz: 82f4acfaad1dc47db27ee3eb952481a95b3474a98059e9e9f5ceb035b690d1faabe99f2ec52371c4089ed1615eb10c395f029088418fec4d26399b65b4f259b9 ++ + - version: 3.3.0-preview3 From 781fa570992c0eec6fab99728c34938534d76267 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 15:08:10 +0000 Subject: [PATCH 115/607] Bump actions/configure-pages from 3.0.6 to 4.0.0 Bumps [actions/configure-pages](https://github.com/actions/configure-pages) from 3.0.6 to 4.0.0. - [Release notes](https://github.com/actions/configure-pages/releases) - [Commits](https://github.com/actions/configure-pages/compare/f156874f8191504dae5b037505266ed5dda6c382...1f0c5cde4bc74cd7e1254d0cb4de8d49e9068c7d) --- updated-dependencies: - dependency-name: actions/configure-pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index a42738cda0..c39c7492ef 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -28,7 +28,7 @@ jobs: bundler-cache: true - name: Setup Pages id: pages - uses: actions/configure-pages@f156874f8191504dae5b037505266ed5dda6c382 # v3.0.6 + uses: actions/configure-pages@1f0c5cde4bc74cd7e1254d0cb4de8d49e9068c7d # v4.0.0 - name: Build with Jekyll run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" env: From 8dba0bcff9ef6786d82f47dd1771e12de8942879 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 15:08:07 +0000 Subject: [PATCH 116/607] Bump actions/deploy-pages from 2.0.5 to 3.0.1 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 2.0.5 to 3.0.1. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/de14547edc9944350dc0481aa5b7afb08e75f254...13b55b33dd8996121833dbc1db458c793a334630) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index c39c7492ef..63ac135287 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@de14547edc9944350dc0481aa5b7afb08e75f254 # v2.0.5 + uses: actions/deploy-pages@13b55b33dd8996121833dbc1db458c793a334630 # v3.0.1 From 5425fb7b4c20eb297ff62b6a11f888d9608bf0c0 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 12 Dec 2023 18:27:30 +0800 Subject: [PATCH 117/607] Translate Ruby 3.3.0 rc1 released news post (zh_tw) --- .../2023-12-11-ruby-3-3-0-rc1-released.md | 297 ++++++++++++++++++ 1 file changed, 297 insertions(+) create mode 100644 zh_tw/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md diff --git a/zh_tw/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/zh_tw/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md new file mode 100644 index 0000000000..82d7304331 --- /dev/null +++ b/zh_tw/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -0,0 +1,297 @@ +--- +layout: news_post +title: "Ruby 3.3.0-rc1 發布" +author: "naruse" +translator: "Bear Su" +date: 2023-12-11 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-rc1" | first %} +我們很高興宣布 Ruby {{ release.version }} 發佈了。 Ruby 3.3 新增了名為 Prism 的 Parser,使用了 Lrama 做為 Parser 產生器,新增了名為 RJIT,純 Ruby 開發的 JIT 編譯器,以及更多效能提升,尤其是 YJIT。 + +RC1 版本發布後,我們會盡可能避免加入 ABI 不相容的功能。如果有必要,我們將會在發佈紀錄中宣布。 + +## Prism + +* 導入 [the Prism parser](https://github.com/ruby/prism) 為預設 gem。 + * Prism 是可移植、可容錯、且可維護的 Ruby 語言遞迴下降解析器。 +* Prism 已可用於生產環境,並積極維護,您可以用來替代 Ripper。 + * 有關如何使用 Prism 的 [詳細文件](https://ruby.github.io/prism/)。 + * Prism 是 CRuby 內部使用的 C 函式庫,同時也是任何需要解析 Ruby 程式碼的工具鏈可以使用的 Ruby gem。 + * Prism API 中值得注意的方法為: + * `Prism.parse(source)` 回傳 AST 作為 ParseResult 的一部分。 + * `Prism.dump(source, filepath)` 回傳字串型別的序列化的 AST。 + * `Prism.parse_comments(source)` 回傳註解。 +* 如果您有興趣貢獻,您可以直接在 [the Prism repository](https://github.com/ruby/prism) 上建立 pull requests 或 issues。 + +## 使用 Lrama 取代 Bison + +* 使用 [Lrama LALR parser generator](https://github.com/ruby/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) 取代 Bison。 + * 如果您感興趣,請參閱 [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html)。 + * 為了維護性,Lrama internal parser 改用 Racc 產生的 LR parser。 + * 支援 Parameterizing Rules `(?, *, +)`,能夠在 Ruby parse.y 中被使用。 + +## RJIT + +* 導入純 Ruby 開發的 JIT 編譯器 RJIT 並取代 MJIT。 + * RJIT 僅支援 x86\_64 架構的 Unix 平台。 + * 不同於 MJIT,RJIT 在執行時不需要 C 編譯器。 +* RJIT 目前還在實驗階段。 + * 您在生產環境應繼續使用 YJIT。 +* 如果您有興趣為 Ruby 開發 JIT,請參閱 [k0kubun's 在 RubyKaigi 第 3 天的演講](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)。 + +## YJIT + +* 自 3.2 主要效能提升 + * 改善 splat 和 rest arguments 的支援。 + * 虛擬機器分配了暫存器,用於堆疊操作。 + * 更多帶有可選參數的呼叫會被編譯。 + * 錯誤處理也會被編譯。 + * Megamorphic Object Shapes 的實體變數不再返回給直譯器。 + * 不支援的呼叫類型不再返回給直譯器。 + * 特別改善了 `Integer#!=`、`String#!=`、`Kernel#block_given?`、`Kernel#is_a?`、 + `Kernel#instance_of?`、`Module#===`。 + * 目前比 optcarrot 的直譯器快上 3 倍! +* 自 3.2 以來顯著提高了記憶體使用率 + * 已編譯的程式碼的 Metadata 使用更少的記憶體。 + * 在 ARM64 產生更緊湊的程式碼。 +* 編譯速度比 3.2 稍快一些。 +* 新增 `RubyVM::YJIT.enable`,可以在 run-time 中啟用 YJIT。 + * 您可以在不修改指令列參數或環境變數的情況下啟動 YJIT。 + * 可用於僅在您的應用程式完成啟動後啟用 YJIT。 如果您在啟動程式時停用了 YJIT,可以使用 `--yjit-disable` 來使用其他 YJIT 選項。 +* 預設停用程式碼 GC,並可使用 `--yjit-exec-mem-size` 作為新程式碼編譯停止的硬限制。 + * 可以在使用 unicorn 和 forking 的伺服器上產生更好的 copy-on-write 行為。 + * 不會因為程式碼 GC 導致效能突然下降。 + * 如果需要,您仍然可以使用 `--yjit-code-gc` 啟用程式碼 GC。 +* 發布版本現在提供透過 `--yjit-stats` 產生的 `ratio_in_yjit` 統計資訊,不再需要特殊的統計資訊或是開發版本。 +* Exit tracing 選項現在支援抽樣 + * `--trace-exits-sample-rate=N` +* 新增 `--yjit-perf` 以便於使用 Linux perf 進行性能分析。 +* 更多測試與錯誤修復 + + +### M:N thread scheduler + +* 導入 M:N thread scheduler。 [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M 個 Ruby 執行緒由 N 個原生執行緒(OS 執行緒)管理,所以能減少執行緒建立與管理的成本。 + * 由於會破壞 C-extension 的相容性,所以預設在主 Ractor 上停用 M:N thread scheduler。 + * 透過 `RUBY_MN_THREADS=1` 環境變數在主 Ractor 啟用 M:N threads。 + * 在非主 Ractors 上啟用 M:N threads。 + * 可使用 `RUBY_MAX_CPU=n` 環境變數設定 `N` 的最大值 (原生執行緒的最大數量)。預設值為 8。 + * 由於每一個 Ractor 同時只能執行一個 Ruby 執行緒,所以將使用原生執行緒的數量,即 `RUBY_MAX_CPU` 和執行 Ractor 數量中較小的值,因此單一 Ractor 應用程式 (大多數應用程式) 會使用一個原生執行緒。 + * 為支援阻塞操作,可以使用多餘 `N` 個原生執行緒。 + +## 其他值得注意的新功能 + + + +### 語言功能 + + + +## 效能提升 + +* `defined?(@ivar)` 透過 Object Shapes 提升效能。 +* 像是 `Socket.getaddrinfo` 的域名解析現在可以被中斷 (在可用 pthreads 的環境下)。 [Feature #19965](https://bugs.ruby-lang.org/issues/19965) + * 為此,現在每當呼叫 getaddrinfo 或 getnameinfo 時都會建立一個 pthread。這會在域名解析中產生一些開銷 (在我們的實驗中約 2.5 倍)。我們預期域名解析的開銷不會對大多數應用程式造成問題,如果您相信您因為此變更收到非預期的影響,請向我們回報。 +* 垃圾收集器的一些效能提升 + * 被舊物件參考的年輕物件不再立即提升為舊世代。這顯著降低了 major GC 收集的頻率。 [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) + * 新增調整變數 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` 用來控制導致觸發 major GC 收集的未受保護物件的數量。預設為 `0.01` (1%)。這顯著降低了 major GC 收集的頻率。 [Feature #19571](https://bugs.ruby-lang.org/issues/19571) + * 為幾個缺少寫入屏障(Write Barriers)的核心類型進行實作,特別是 `Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal` 等。這顯著地減少 minor GC 收集時間與 major GC 收集頻率。 + * 大部分核心類別現在使用可變寬度分配,特別是 `Hash`, `Time`, `Thread::Backtrace`, `Thread::Backtrace::Location`, `File::Stat`, `Method`。 + 這使得這些類別更快被分配與釋放,使用更少的記憶體與減少堆疊碎片。 + * 垃圾收集器加入弱參考的支援。 [Feature #19783](https://bugs.ruby-lang.org/issues/19783) + + +## 自 3.2 以來其他值得注意的變更 + +### IRB + +IRB 進行了數項改善,包括但不限於: + +- 加強 `irb:rdbg` 整合以提供與 `pry-byebug` 相同的除錯體驗 ([文件](https://github.com/ruby/irb#debugging-with-irb))。 +- Pager 支援指令,例如 `ls` 和 `show_cmds`。 +- `ls` 和 `show_source` 指令提供了更準確和有幫助的資訊。 +- 使用 type 分析的實驗係自動補齊 ([doc](https://github.com/ruby/irb#type-based-completion))。 +- 透過新導入的類別 Reline::Face,可以更改補齊視窗中的字體顏色與字體樣式 ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md))。 + +此外,IRB 還進行了大量重構和修復了許多錯誤,以方便未來強化功能。 + +## 相容性問題 + +注意:不包含功能問題的修正。 + +* 棄用在沒有普通參數的區塊中不帶參數呼叫 `it`。 在 Ruby 3.4 中 `it` 將會參考 block 的第一個參數。 + [Feature #18980](https://bugs.ruby-lang.org/issues/18980) + +### 被移除的常數 + +下列廢棄的常數已被移除。 + + + +### 被移除的方法 + +下列廢棄的方法已被移除。 + +### 被移除的環境變數 + +下列廢棄的環境變數已被移除。 + +* 環境變數 `RUBY_GC_HEAP_INIT_SLOTS` 已經被廢棄且無法使用。請使用環境變數 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` 作為替代。 [Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib 相容性問題 + +### `ext/readline` 已被淘汰 + +* 我們使用純 Ruby 實作並相容於 `ext/readline` API 的 `reline`。未來我們將依賴 `reline`。如果您需要使用 `ext/readline`,您可以使用 `gem install readline-ext` 透過 rubygems.org 安裝 `ext/readline`。 +* 我們將不再需要安裝函式庫例如 `libreadline` 或 `libedit`。 + +## C API updates + +### 更新的 C APIs + +下列的 APIs 已被更新。 + + + +### 被移除的 C APIs + +下列廢棄的 APIs 已被移除。 + + + +## 標準函式庫更新 + +如果使用者 require 的 gem 已排定在未來 Ruby 版本中變更為 bundled gems,RubyGems 和 Bundler 將會顯示警告。 + +這些函式庫包括: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +加入了以下的預設 gem。 + +* prism 0.15.1 + +更新了以下的 bundled gem。 + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +下列的預設 gem 現在是 bundled gems。 + +* racc 1.7.3 + +更新了以下的 bundled gem。 + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +請參閱 GitHub 發布如 [Logger](https://github.com/ruby/logger/releases) 和變更紀錄來了解更多關於預設 gems 與 bundled gems 的資訊。 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) 來了解更多。 + +自 Ruby 3.2.0 以來,計[{{ release.stats.files_changed }} 檔案變更,{{ release.stats.insertions }} 行新增(+),{{ release.stats.deletions }} 行刪減(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)。 + + +## Download + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 From 26d5d4ed1a4eb1d138869d8d50dfb8d293bfcde3 Mon Sep 17 00:00:00 2001 From: gaojun Date: Thu, 14 Dec 2023 09:55:14 +0800 Subject: [PATCH 118/607] Translate Ruby 3.3.0-rc1 Released (zh_cn) --- .../2023-12-11-ruby-3-3-0-rc1-released.md | 296 ++++++++++++++++++ 1 file changed, 296 insertions(+) create mode 100644 zh_cn/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md diff --git a/zh_cn/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/zh_cn/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md new file mode 100644 index 0000000000..142492d656 --- /dev/null +++ b/zh_cn/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -0,0 +1,296 @@ +--- +layout: news_post +title: "Ruby 3.3.0-rc1 已发布" +author: "naruse" +translator: GAO Jun +date: 2023-12-11 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-rc1" | first %} +我们很高兴地宣布 Ruby {{ release.version }} 发布。 +Ruby 3.3 新增了 Prism 解析器,使用 Lrama 作为解析生成器,新增了纯 Ruby 实现的 JIT 编译器 RJIT,另有许多性能改进,尤其是 YJIT。 + +在 RC1 发布后,我们将尽可能避免引入 ABI 不兼容性,如果我们需要这么做,会在后续的发布说明里宣布。 + +## Prism + +* 引入 [Prism 解析器](https://github.com/ruby/prism) 为默认 gem + * Prism 是一个可移植、容错且可维护的 Ruby 语言递归下降解析器 +* Prism 已可用于生产环境,并得到了积极维护,您可以使用它来代替 Ripper + * 有关于如何使用 Prism 的 [详细文档](https://ruby.github.io/prism/) + * Prism 既是 CRuby 内部使用的 C 库,也是任何需要解析 Ruby 代码的工具可以使用的 Ruby gem + * Prism API 中值得注意的方法有: + * `Prism.parse(source)` 返回 AST 作为 ParseResult 的一部分 + * `Prism.dump(source, filepath)` 将序列化的 AST 以字符串形式返回 + * `Prism.parse_comments(source)` 返回注释 +* 如果您有兴趣贡献,可以直接在 [Prism 代码库](https://github.com/ruby/prism) 上提出拉取请求或报告问题 + +## 使用 Lrama 替代 Bison + +* 使用 [Lrama LALR 解析生成器](https://github.com/ruby/lrama) 替换 Bison [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * 如果您有兴趣,请参阅 [Ruby 解析器的未来愿景](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * Lrama 内部解析器被 Racc 生成的 LR 解析器替换,以便于维护 + * 已支持参数化规则 `(?, *, +)` ,将被用于 Ruby parse.y 中 + +## RJIT + +* 引入了纯 Ruby 的 JIT 编译器 RJIT 并替代 MJIT。 + * RJIT 仅支持 x86\_64 架构上的 Unix 平台。 + * 不同于 MJIT,RJIT在运行时不需要 C 编译器。 +* RJIT 目前仅用于实验目的。 + * 您在生产环境中应当继续使用 YJIT。 +* 如果您有兴趣为 Ruby 开发 JIT,请查看 [k0kubun 在 RubyKaigi 第 3 天 中的演讲](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)。 + +## YJIT + +* 相对于 3.2 的主要性能提升 + * 改进了 splat 和 rest 参数支持。 + * 虚拟机的栈操作分配了寄存器。 + * 更多带有可选参数的调用被编译。 + * 错误处理也被编译。 + * 拥有复杂对象形状的实例变量不再退出到解释器执行。 + * 不支持的调用类型不再退出到解释器执行。 + * 特别优化了 `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===`。 + * 目前比 optcarrot 的解释器快 3 倍以上! +* 内存利用率相交 3.2 有显著提升 + * 编译代码使用的元数据使用更少的内存。 + * 在 ARM64 中的生成更紧凑的代码。 +* 编译速度现在略快于 3.2。 +* 新增 `RubyVM::YJIT.enable` 可以在运行时启用 YJIT + * 您可以在不修改命令行参数或环境变量的情况下启用 YJIT。 + * 这也可以用于在应用程序启动完成后,仅启用 YJIT 一次。当您在启动程序时禁用了 YJIT ,您可以通过 `--yjit-disable` 来使用其他 YJIT 选项。 +* 代码垃圾收集现在默认禁用,并视 `--yjit-exec-mem-size` 为新代码编译停止的硬限制。 + * 在使用 unicorn 和 forking 的服务器上提供更好的写时复制行为 + * 代码垃圾收集不会导致性能突然大幅降低 + * 您依旧可以通过 `--yjit-code-gc` 启用代码垃圾收集 +* 发布版本中,现在可以用到通过 `--yjit-stats` 产生的 `ratio_in_yjit` 统计信息,不再需要特殊的统计信息或开发版本。 +* 退出跟踪选项现在支持采样 + * `--trace-exits-sample-rate=N` +* 新增 `--yjit-perf` 以便于利用 Linux perf 进行性能分析。 +* 更彻底的测试及多个错误修复 + +### M:N 线程调度器 + +* 引入了 M:N 线程调度器。[[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M 个 Ruby 线程由 N 个原生线程(OS 线程)管理,从而降低线程创建和管理成本。 + * 由于可能会破坏 C 扩展的兼容性,因此在默认情况下,主 Ractor 上禁用 M:N 线程调度器。 + * 可通过环境变量 `RUBY_MN_THREADS=1` 在主 Ractor 上启用 M:N 线程。 + * 非主 Ractor 上启用 M:N 线程。 + * 可通过环境变量 `RUBY_MAX_CPU=n` 设置 `N` 的最大值(原生线程的最大数量)。默认值为 8。 + * 由于每个 Ractor 中只能同时运行一个 Ruby 线程,因此将使用原生线程的数量,即 `RUBY_MAX_CPU` 和运行中的 Ractor 数量中较小的值。因此单 Ractor 应用程序(大多数应用程序)将使用 1 个原生线程。 + * 为了支持阻塞操作,可以使用多于 `N` 个原生线程。 + +## 其他值得关注的新功能 + + + +### 语言 + + + +## 性能提升 + +* 根据对象形状,优化 `defined?(@ivar)`。 +* 诸如 `Socket.getaddrinfo` 的域名解析现在可以被中断(在 pthreads 可用的环境中)。[Feature #19965](https://bugs.ruby-lang.org/issues/19965) + * 为此,现在每当调用 getaddrinfo 或 getnameinfo 时都会创建一个 pthread。 这会在域名解析中产生一些开销(在我们的实验中约为 2.5 倍)。 我们预计域名解析开销不会成为大多数应用程序的问题,但如果您观察到这种情况,或者您认为此更改造成了意外的影响,请向我们报告。 +* 垃圾收集器的一些性能改进 + * 老对象引用的年轻对象不再立即提升到老一代。这显着降低了主要垃圾收集的频率。 [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) + * 新增调节变量 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` 来控制导致触发主要垃圾收集的未保护对象的数量。 + 默认设置为 `0.01` (1%)。这显著降低了主要垃圾收集的频率。 [[Feature #19571]](https://bugs.ruby-lang.org/issues/19571) + * 为许多缺少写入屏障的核心类型实现了写入屏障,特别是`Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal`等。 + 这显着减少了次要垃圾收集时间和主要垃圾收集的频率。 + * 大多数核心类现在都使用可变宽度分配,特别是`Hash`, `Time`, `Thread::Backtrace`, `Thread::Backtrace::Location`, `File::Stat`, `Method`。 + 这使得这些类的分配和释放速度更快,使用更少的内存并减少堆碎片。 + * 垃圾收集器中添加了对弱引用的支持。 [功能 #19783](https://bugs.ruby-lang.org/issues/19783) + + +## 自 3.2 以来,其他值得注意的变化 + +### IRB + +IRB 进行了多项增强功能,包括但不限于: + +- 高级 `irb:rdbg` 集成,提供了类似 `pry-byebug` 的调试体验([文档](https://github.com/ruby/irb#debugging-with-irb))。 +- 为 `ls` 和 `show_cmds` 这样的方法提供分页支持。 +- 为 `ls` 和 `show_source` 方法提供更准确更有用的信息。 +- 实验性的基于类型分析的自动补全功能([文档](https://github.com/ruby/irb#type-based-completion))。 +- 现在可以通过新引入的类 Reline::Face 来更改自动补全对话框中的字体颜色和字体样式([文档](https://github.com/ruby/ruby/blob/master/doc/reline/face.md))。 + +另外,IRB 还进行了广泛的重构,修复了数十个错误,以便未来的增强。 + +## 兼容性问题 + +注意:不包括 bug 修复。 + +* 在没有普通参数的 block 中对于没有参数的 `it` 调用被废弃。`it` 将在 Ruby 3.4 中作为第一个 block 参数的引用。[Feature #18980](https://bugs.ruby-lang.org/issues/18980) + +### 移除的常量 + +移除了以下已废弃的常量。 + +### 移除的方法 + +移除了以下已废除的方法。 + +### 移除的环境变量 + +移除了以下已废除的环境变量 + +* 环境变量 `RUBY_GC_HEAP_INIT_SLOTS` 被废弃,并不再产生实际作用。请使用环境变量 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` 进行替代。 [Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib 兼容性问题 + +### `ext/readline` 已退役 + +* 我们有了纯 Ruby 实现的 `reline`,兼容 `ext/readline` API。未来我们将依赖 `reline`。如果您需要使用 `ext/readline`,可以通过 rubygems.org 进行安装 `gem install readline-ext`。 +* 我们不再需要安装类似 `libreadline` 或 `libedit` 这样的库了。 + +## C API 更新 + +### 更新的 C API + +更新了以下 API。 + + + +### 已移除的 C API + +移除了以下废弃的 API。 + + + +## 标准库更新 + +当用户 require 在将来 Ruby 版本中成为绑定 gem 的库时,RubyGems 和 Bundler 会发出警告。 + +这些库包括: +* abbrev +* base64 +* bigdecimal +* csv +* drb +* getoptlong +* mutex_m +* nkf +* observer +* racc +* resolv-replace +* rinda +* syslog + +新增以下默认 gem。 + +* prism 0.15.1 + +更新了以下默认 gems。 + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +以下默认 gem 成为绑定 gem + +* racc 1.7.3 + +更新了以下绑定 gems。 + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +有关默认 gems 和 绑定 gems 的细节,可以参考 GitHub 上的发布,例如 [logger gem](https://github.com/ruby/logger/releases) 或相应的变更日志。 + +更多详情,可参见 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +或 [提交日志](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})。 + +自 Ruby 3.2.0 以来,[{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+), 删除 {{ release.stats.deletions }} 行(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)! + + +## 下载 + +* <{{ 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 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发,现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是Web开发领域。 From 480a39e6152d797494ef8153b01478322c6c8f32 Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 14 Dec 2023 11:45:18 +0900 Subject: [PATCH 119/607] Translate "Ruby 3.3.0-rc1 Released" (ko) (#3153) * cp {en,ko}/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md * Translate Ruby 3.3.0-rc1 released to ko * Apply suggestions from code review Co-authored-by: marocchino --------- Co-authored-by: marocchino --- .../2023-12-11-ruby-3-3-0-rc1-released.md | 315 ++++++++++++++++++ 1 file changed, 315 insertions(+) create mode 100644 ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md diff --git a/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md new file mode 100644 index 0000000000..9bb87ee469 --- /dev/null +++ b/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -0,0 +1,315 @@ +--- +layout: news_post +title: "Ruby 3.3.0-rc1 릴리스" +author: "naruse" +translator: "shia" +date: 2023-12-11 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-rc1" | first %} +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.3은 Prism이라는 이름의 새 파서를 추가하고, 파서 생성기로 Lrama를 사용하며, RJIT으로 명명된 새로운 순수 Ruby JIT 컴파일러를 추가하고, 특히 YJIT에서 많은 성능 향상이 있습니다. + +RC1 릴리스 이후로 ABI의 하위호환성을 깨트리는 변경은 가급적 피할 것입니다. 그래야 한다면, 릴리스 노트에서 해당 내용을 발표할 예정입니다. + +## Prism + +* [Prism 파서](https://github.com/ruby/prism)를 기본 gem에 추가했습니다. + * Prism은 Ruby 언어를 위한 이식 가능하고, 에러 내성이 있으며 유지 보수 가능한 재귀 하향 파서입니다. +* Prism은 프로덕션 환경에서 사용할 준비가 되어있으며 활발하게 유지보수되고 있으므로 Ripper 대신 이용할 수 있습니다. + * Prism 사용 방법에 대한 [광범위한 문서](https://ruby.github.io/prism/)가 있습니다. + * Prism은 CRuby에서 내부적으로 사용하는 C 라이브러리이자 Ruby 코드를 구문 분석해야 하는 모든 도구에서 사용할 수 있는 Ruby gem입니다. + * Prism API에서 주목할 만한 메서드는 다음과 같습니다. + * `Prism.parse(source)`는 ParseResult의 일부로 AST를 반환합니다. + * `Prism.dump(source, filepath)`는 문자열로 직렬화된 AST를 반환합니다. + * `Prism.parse_comments(source)`는 주석을 반환합니다. +* 기여에 관심이 있다면 [Prism 저장소](https://github.com/ruby/prism)에서 직접 풀 리퀘스트나 이슈를 만들 수 있습니다. + +## Bison을 Lrama로 대체 + +* Bison 대신 [Lrama LALR 파서 생성기](https://github.com/yui-knk/lrama)를 사용하도록 변경했습니다. [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * 관심이 있다면 [Ruby 파서의 미래 비전](https://rubykaigi.org/2023/presentations/spikeolaf.html)을 참고하세요. + * 유지보수성을 위해 Lrama 내부 구문 분석기가 Racc에서 생성한 LR 구문 분석기로 대체되었습니다. + * 매개변수화 규칙 `(?, *, +)`를 지원하며, Ruby의 parse.y에서 사용될 예정입니다. + +## RJIT + +* 순수 Ruby JIT 컴파일러 RJIT을 도입하고 MJIT을 대체했습니다. + * RJIT은 Unix 플랫폼에서 x86-64 아키텍처만 지원합니다. + * MJIT과 달리 런타임에 C 컴파일러가 필요하지 않습니다. +* RJIT은 실험 목적으로 존재합니다. + * 프로덕션 환경에서는 YJIT을 계속 사용해야 합니다. +* Ruby용 JIT 개발에 관심이 있다면 [RubyKaigi 2023 3일 차에 있었던 k0kubun의 발표](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)를 확인하세요. + +## YJIT + +* 3.2 버전 대비 주요 성능 개선 사항 + * 스플랫과 나머지 인자 지원이 개선되었습니다. + * 가상 머신의 스택 연산을 위해 레지스터가 할당됩니다. + * 선택적 인수가 포함된 더 많은 호출이 컴파일됩니다. + * 예외 처리기도 컴파일됩니다. + * 클래스의 인스턴스 변수가 가지는 객체 형상의 조합이 매우 복잡한 경우에도 + 컴파일되기 전의 바이트 코드로 전환되지 않습니다. + * 지원되지 않는 호출 타입은 이제 컴파일되기 전의 바이트 코드로 전환되지 않습니다. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===`은 특별히 최적화되었습니다. + * 이제 optcarrot에서 인터프리터보다 3배 이상 빠릅니다! +* 3.2보다 메모리 사용량이 크게 개선되었습니다. + * 컴파일된 코드의 메타데이터가 훨씬 적은 메모리를 사용합니다. + * ARM64에서 더 작은 코드를 생성합니다. +* 3.2보다 컴파일 속도가 약간 개선되었습니다. +* 실행 시간에 YJIT을 활성화할 수 있는 `RubyVM::YJIT.enable`이 추가됩니다. + * 실행 명령의 인수나 환경 변수의 변경 없이 YJIT을 실행할 수 있습니다. + * 애플리케이션 부팅이 완료된 후에 YJIT를 활성화하는 데에도 사용할 수 있습니다. + 부팅 시 YJIT를 비활성화한 상태에서 다른 YJIT 옵션을 사용하려는 경우 `--yjit-disable`을 사용할 수 있습니다. +* 코드 GC는 이제 비활성화된 상태로 시작하며, `--yjit-exec-mem-size`를 새 코드 컴파일을 멈추는 + 최대 상한으로 취급합니다. + * unicorn과 포크를 사용하는 서버에서 더 나은 쓰기 시 복사 동작을 생성할 수 있습니다. + * 코드 GC로 인한 급격한 성능 하락이 사라집니다. + * 필요하다면 `--yjit-code-gc`로 코드 GC를 활성화할 수 있습니다. +* `--yjit-stats`로부터 생성된 `ratio_in_yjit` 통계는 릴리스 빌드에서도 이용 가능하며, + 대부분의 통계에 접근하는 데 특수한 통계나 개발 빌드는 더 이상 필요하지 않습니다. +* 종료 추적 옵션이 이제 샘플링을 지원합니다. + * `--trace-exits-sample-rate=N` +* Linux perf로 프로파일링을 용이하게 할 수 있도록 `--yjit-perf`가 추가됩니다. +* 보다 철저한 테스트와 여러 버그 수정 + + +### M:N 스레드 스케쥴러 + +* M:N 스레드 스케쥴러가 추가됩니다. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M개의 Ruby 스레드를 N개의 네이티브 스레드(OS 스레드)로 관리하므로 스레드의 생성, 관리 비용이 절감됩니다. + * C 확장 호환성에 문제가 발생할 가능성이 있으므로, 주 Ractor에서의 기본 설정은 비활성입니다. + * `RUBY_MN_THREADS=1` 환경 변수를 사용해 주 Ractor에서 M:N 스레드를 활성화할 수 있습니다. + * M:N 스레드는 주 Ractor가 아닌 Ractor에서 활성화되어 있습니다. + * `RUBY_MAX_CPU=n` 환경 변수는 `N`(네이티브 스레드의 최대 개수)의 최댓값을 지정합니다. 기본값은 8입니다. + * 하나의 Ractor에서는 하나의 Ruby 스레드만 실행 가능하므로 실제로 사용되는 네이티브 스레드의 개수는 `RUBY_MAX_CPU`에서 지정한 숫자나 실행 중인 Ractor의 개수보다 작습니다. 그러므로 (대다수를 차지하는) 단일 Ractor 애플리케이션에서는 하나의 네이티브 스레드를 사용합니다. + * 블로킹 동작을 처리하기 위해, `N`개 이상의 네이티브 스레드가 사용될 수 있습니다. + +## 그 이외의 주목할 만한 새 기능 + + + +### 언어 + + +## 성능 향상 + +* `defined?(@ivar)`가 객체 형상에 맞게 최적화됩니다. +* `Socket.getaddrinfo`와 같은 이름 해결을 (POSIX 스레드가 사용 가능한 환경에서) 중단할 수 있게 됩니다. [Feature #19965](https://bugs.ruby-lang.org/issues/19965) + * 이를 위해, getaddrinfo나 getnameinfo를 호출할 때마다 POSIX 스레드를 생성합니다. 이 영향으로 이름 해결에 약간의 오버헤드가 발생합니다(실험에서는 약 2.5배). 대부분의 애플리케이션에서 이름 해결의 오버헤드가 문제가 될 것이라고는 생각하지 않습니다만, 만약 그러한 현상을 확인하거나, 이 변경으로 인한 의도치 않은 영향을 발견했다면 부디 알려주세요. +* 가비지 컬렉터의 몇몇 성능 향상 + * 오래된 객체가 참조하는 어린 객체는 이제 즉시 오래된 객체로 마킹되지 않습니다. + 이 동작은 메이저 GC의 빈도를 상당히 낮춰줍니다. + [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) + * 메이져 GC를 야기하는 보호받지 않은 객체의 숫자를 제어하는 + 새로운 변수 `REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO`가 추가되었습니다. + 기본값은 `0.01` (1%)입니다. 이는 메이저 GC의 빈도를 상당히 낮춰줍니다. + [[Feature #19571]](https://bugs.ruby-lang.org/issues/19571) + * `Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal` 등의 + 주요 타입에 부족했던 쓰기 보호가 구현되었습니다. + 이는 마이너 GC에 걸리는 시간과 메이저 GC 빈도를 상당히 줄여줍니다. + * `Hash`, `Time`, `Thread::Backtrace`, `Thread::Backtrace::Location`, + `File::Stat`, `Method` 등의 대부분의 주요 클래스는 이제 가변 폭 할당을 사용합니다. + 이는 해당 클래스의 할당 및 할당 해제 속도를 빠르게 만들며, 메모리 사용량과 + 힙 파편화를 줄여줍니다. + * 가비지 컬렉터에 약한 참조가 추가됩니다. [Feature #19783](https://bugs.ruby-lang.org/issues/19783) + + +## 그 이외의 3.2 이후로 주목할 만한 변경 + +### IRB + +IRB에 여러 개선 사항이 추가됩니다. 다음과 같은 내용이 포함됩니다. + +- 고급 `irb:rdbg` 통합 기능은 `pry-byebug`와 동등한 디버깅 경험을 제공합니다. ([문서](https://github.com/ruby/irb#debugging-with-irb)). +- `ls`와 `show_source`, `show_cmds`와 같은 명령어에서 페이징을 지원합니다. +- `ls`, `show_source` 명령에서 더 정확하고 유용한 정보를 제공합니다. +- 타입 분석을 사용하는 실험적인 자동 완성 기능을 제공합니다. ([문서](https://github.com/ruby/irb#type-based-completion)). +- Reline::Face 클래스의 도입으로 자동완성 다이얼로그의 글씨 색과 스타일이 변경 가능합니다. ([문서](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +또한, IRB는 광범위한 리팩토링을 거쳤으며, 향후 개선이 용이하도록 많은 버그 수정이 이루어졌습니다. + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + +* 블록에서 매개변수 없이 `it`을 호출하는 기능은 삭제 예정입니다. + Ruby 3.4부터 `it`은 첫 번째 블록 인수를 가리킵니다. + [Feature #18980](https://bugs.ruby-lang.org/issues/18980) + +### 삭제된 상수 + +폐기 예정이었던 상수가 삭제됩니다. + + + +### 삭제된 메서드 + +폐기 예정이었던 메서드가 삭제됩니다. + +### 삭제된 환경 변수 + +폐기 예정이었던 환경 변수가 삭제됩니다. + +* 환경 변수 `RUBY_GC_HEAP_INIT_SLOTS`는 폐기 예정이었으며 아무 효과도 없습니다. 대신 환경 변수 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS`를 사용해 주세요. [Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib 호환성 문제 + +### `ext/readline` 폐기 + +* 우리는 `ext/readline` API와 호환되는 순수 Ruby 구현인 `reline`을 가지고 있습니다. 앞으로는 `reline`에 의존할 것입니다. `ext/readline`을 사용해야 하는 경우, `gem install readline-ext`를 사용하여 rubygems.org를 통해 `ext/readline`을 설치할 수 있습니다. +* 이제 더 이상 `libreadline` 또는 `libedit`과 같은 라이브러리를 설치할 필요가 없습니다. + +## C API 변경 + +### 갱신된 C API + +다음 API가 갱신됩니다. + + + +### 삭제된 C API + +다음 폐기 예정인 API가 삭제됩니다. + + + +## 표준 라이브러리 갱신 + +사용자가 미래의 Ruby 버전에서 내장될 예정의 gem을 직접 불러올 때 RubyGems와 Bundler가 경고 문구를 출력합니다. + +다음 라이브러리가 대상입니다. + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +다음 기본 gem이 추가되었습니다. + +* prism 0.15.1 + +다음 기본 gem이 갱신되었습니다. + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +다음 기본 gem이 내장됩니다. + +* racc 1.7.3 + +다음 내장 gem이 갱신됩니다. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +기본 gem 또는 내장 gem에 대한 자세한 내용은 [Logger](https://github.com/ruby/logger/releases)와 같은 +GitHub 릴리스 또는 변경 로그에서 확인하세요. + +더 자세한 내용은 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.2.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. From b2c3b31bfc90c4427188a2559863766c879499d1 Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 14 Dec 2023 21:22:28 +0900 Subject: [PATCH 120/607] Fix typo --- en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index 73d5ed01f0..a8f5d4e3f4 100644 --- a/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -64,7 +64,7 @@ After the release of RC1, we will avoid introducing ABI incompatibilities wherev done booting. `--yjit-disable` can be used if you want to use other YJIT options while disabling YJIT at boot. * Code GC is now disabled by default, and `--yjit-exec-mem-size` is treated - as a hard limit where copilation of new code stops. + as a hard limit where compilation of new code stops. * Better copy-on-write behavior on servers using unicorn and forking * No sudden drops in performance due to code GC. * You can still enable code GC if desired with `--yjit-code-gc` From c9c9e4fd2a0cc72b198b324adb26086c4ecc2615 Mon Sep 17 00:00:00 2001 From: Kevin Newton Date: Thu, 14 Dec 2023 15:28:38 -0500 Subject: [PATCH 121/607] There was an extra parameter in the Prism API in the release notes. --- en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 2 +- ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 2 +- ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 2 +- zh_cn/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- zh_cn/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 2 +- zh_tw/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- zh_tw/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index 9a61525deb..e153be77a4 100644 --- a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -19,7 +19,7 @@ We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 a * Prism is both a C library that will be used internally by CRuby and a Ruby gem that can be used by any tooling which needs to parse Ruby code * Notable methods in the Prism API are: * `Prism.parse(source)` which returns the AST as part of a ParseResult - * `Prism.dump(source, filepath)` which returns the serialized AST as a String + * `Prism.dump(source)` which returns the serialized AST as a String * `Prism.parse_comments(source)` which returns the comments * You can make pull requests or issues directly on [the Prism repository](https://github.com/ruby/prism) if you are interested in contributing diff --git a/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index 73d5ed01f0..14accc9914 100644 --- a/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -21,7 +21,7 @@ After the release of RC1, we will avoid introducing ABI incompatibilities wherev * Prism is both a C library that will be used internally by CRuby and a Ruby gem that can be used by any tooling which needs to parse Ruby code * Notable methods in the Prism API are: * `Prism.parse(source)` which returns the AST as part of a ParseResult - * `Prism.dump(source, filepath)` which returns the serialized AST as a String + * `Prism.dump(source)` which returns the serialized AST as a String * `Prism.parse_comments(source)` which returns the comments * You can make pull requests or issues directly on [the Prism repository](https://github.com/ruby/prism) if you are interested in contributing diff --git a/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index 4a8b7d5bbb..8b9dadf07e 100644 --- a/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -19,7 +19,7 @@ Ruby {{ release.version }} が公開されました。Ruby 3.3ではPrismとい * Prism is both a C library that will be used internally by CRuby and a Ruby gem that can be used by any tooling which needs to parse Ruby code * Notable methods in the Prism API are: * `Prism.parse(source)` which returns the AST as part of a ParseResult - * `Prism.dump(source, filepath)` which returns the serialized AST as a String + * `Prism.dump(source)` which returns the serialized AST as a String * `Prism.parse_comments(source)` which returns the comments * You can make pull requests or issues directly on [the Prism repository](https://github.com/ruby/prism) if you are interested in contributing diff --git a/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index 55bf91d8c3..ed405ac8f0 100644 --- a/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -21,7 +21,7 @@ Ruby {{ release.version }} が公開されました。Ruby 3.3ではPrismとい * Prism is both a C library that will be used internally by CRuby and a Ruby gem that can be used by any tooling which needs to parse Ruby code * Notable methods in the Prism API are: * `Prism.parse(source)` which returns the AST as part of a ParseResult - * `Prism.dump(source, filepath)` which returns the serialized AST as a String + * `Prism.dump(source)` which returns the serialized AST as a String * `Prism.parse_comments(source)` which returns the comments * You can make pull requests or issues directly on [the Prism repository](https://github.com/ruby/prism) if you are interested in contributing diff --git a/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index 3a9204dce9..2decb5186a 100644 --- a/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -19,7 +19,7 @@ Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.3 * Prism은 CRuby에서 내부적으로 사용하는 C 라이브러리이자 Ruby 코드를 구문 분석해야 하는 모든 도구에서 사용할 수 있는 Ruby gem입니다. * Prism API에서 주목할 만한 메서드는 다음과 같습니다. * `Prism.parse(source)`는 ParseResult의 일부로 AST를 반환합니다. - * `Prism.dump(source, filepath)`는 문자열로 직렬화된 AST를 반환합니다. + * `Prism.dump(source)`는 문자열로 직렬화된 AST를 반환합니다. * `Prism.parse_comments(source)`는 주석을 반환합니다. * 기여에 관심이 있다면 [Prism 저장소](https://github.com/ruby/prism)에서 직접 풀 리퀘스트나 이슈를 만들 수 있습니다. diff --git a/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index 9bb87ee469..0d95d3867a 100644 --- a/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -21,7 +21,7 @@ RC1 릴리스 이후로 ABI의 하위호환성을 깨트리는 변경은 가급 * Prism은 CRuby에서 내부적으로 사용하는 C 라이브러리이자 Ruby 코드를 구문 분석해야 하는 모든 도구에서 사용할 수 있는 Ruby gem입니다. * Prism API에서 주목할 만한 메서드는 다음과 같습니다. * `Prism.parse(source)`는 ParseResult의 일부로 AST를 반환합니다. - * `Prism.dump(source, filepath)`는 문자열로 직렬화된 AST를 반환합니다. + * `Prism.dump(source)`는 문자열로 직렬화된 AST를 반환합니다. * `Prism.parse_comments(source)`는 주석을 반환합니다. * 기여에 관심이 있다면 [Prism 저장소](https://github.com/ruby/prism)에서 직접 풀 리퀘스트나 이슈를 만들 수 있습니다. diff --git a/zh_cn/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/zh_cn/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index 2513b1fca0..75e3eb44af 100644 --- a/zh_cn/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/zh_cn/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -20,7 +20,7 @@ Ruby 3.3 新增了 Prism 解析器,使用 Lrama 作为解析生成器,新增 * Prism 既是 CRuby 内部使用的 C 库,也是任何需要解析 Ruby 代码的工具可以使用的 Ruby gem * Prism API 中值得注意的方法有: * `Prism.parse(source)` 返回 AST 作为 ParseResult 的一部分 - * `Prism.dump(source, filepath)` 将序列化的 AST 以字符串形式返回 + * `Prism.dump(source)` 将序列化的 AST 以字符串形式返回 * `Prism.parse_comments(source)` 返回注释 * 如果您有兴趣贡献,可以直接在 [Prism 代码库](https://github.com/ruby/prism) 上提出拉取请求或报告问题 diff --git a/zh_cn/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/zh_cn/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index 142492d656..811d772dc8 100644 --- a/zh_cn/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/zh_cn/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -22,7 +22,7 @@ Ruby 3.3 新增了 Prism 解析器,使用 Lrama 作为解析生成器,新增 * Prism 既是 CRuby 内部使用的 C 库,也是任何需要解析 Ruby 代码的工具可以使用的 Ruby gem * Prism API 中值得注意的方法有: * `Prism.parse(source)` 返回 AST 作为 ParseResult 的一部分 - * `Prism.dump(source, filepath)` 将序列化的 AST 以字符串形式返回 + * `Prism.dump(source)` 将序列化的 AST 以字符串形式返回 * `Prism.parse_comments(source)` 返回注释 * 如果您有兴趣贡献,可以直接在 [Prism 代码库](https://github.com/ruby/prism) 上提出拉取请求或报告问题 diff --git a/zh_tw/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/zh_tw/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index f9d6e0c6d4..e0f80a5ac8 100644 --- a/zh_tw/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/zh_tw/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -19,7 +19,7 @@ lang: zh_tw * Prism 是 CRuby 內部使用的 C 函式庫,同時也是任何需要解析 Ruby 程式碼的工具鏈可以使用的 Ruby gem。 * Prism API 中值得注意的方法為: * `Prism.parse(source)` 回傳 AST 作為 ParseResult 的一部分。 - * `Prism.dump(source, filepath)` 回傳字串型別的序列化的 AST。 + * `Prism.dump(source)` 回傳字串型別的序列化的 AST。 * `Prism.parse_comments(source)` 回傳註解。 * 如果您有興趣貢獻,您可以直接在 [the Prism repository](https://github.com/ruby/prism) 上建立 pull requests 或 issues。 diff --git a/zh_tw/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/zh_tw/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index 82d7304331..71987abe53 100644 --- a/zh_tw/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/zh_tw/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -21,7 +21,7 @@ RC1 版本發布後,我們會盡可能避免加入 ABI 不相容的功能。 * Prism 是 CRuby 內部使用的 C 函式庫,同時也是任何需要解析 Ruby 程式碼的工具鏈可以使用的 Ruby gem。 * Prism API 中值得注意的方法為: * `Prism.parse(source)` 回傳 AST 作為 ParseResult 的一部分。 - * `Prism.dump(source, filepath)` 回傳字串型別的序列化的 AST。 + * `Prism.dump(source)` 回傳字串型別的序列化的 AST。 * `Prism.parse_comments(source)` 回傳註解。 * 如果您有興趣貢獻,您可以直接在 [the Prism repository](https://github.com/ruby/prism) 上建立 pull requests 或 issues。 From ce6efe0ffa33843a3f37180511796e90c4da512a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 15:25:24 +0000 Subject: [PATCH 122/607] Bump ruby/setup-ruby from 1.161.0 to 1.162.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.161.0 to 1.162.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/8575951200e472d5f2d95c625da0c7bec8217c42...af848b40be8bb463a751551a1180d74782ba8a72) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a678cb132a..be65b9757d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@8575951200e472d5f2d95c625da0c7bec8217c42 # v1.161.0 + uses: ruby/setup-ruby@af848b40be8bb463a751551a1180d74782ba8a72 # v1.162.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 63ac135287..42bf61961d 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby - uses: ruby/setup-ruby@8575951200e472d5f2d95c625da0c7bec8217c42 # v1.161.0 + uses: ruby/setup-ruby@af848b40be8bb463a751551a1180d74782ba8a72 # v1.162.0 with: ruby-version: '3.2' bundler-cache: true From f668985bdbe0b7b4f1afda34b57b3c9e23e1f082 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Mon, 25 Dec 2023 15:52:00 +0900 Subject: [PATCH 123/607] Ruby 3.3.0 Released (#3159) --- _data/branches.yml | 4 +- _data/downloads.yml | 2 +- _data/releases.yml | 29 ++ .../_posts/2023-12-25-ruby-3-3-0-released.md | 305 ++++++++++++++++++ .../_posts/2023-12-25-ruby-3-3-0-released.md | 275 ++++++++++++++++ 5 files changed, 612 insertions(+), 3 deletions(-) create mode 100644 en/news/_posts/2023-12-25-ruby-3-3-0-released.md create mode 100644 ja/news/_posts/2023-12-25-ruby-3-3-0-released.md diff --git a/_data/branches.yml b/_data/branches.yml index 54cfc1f133..6925a4f8c8 100644 --- a/_data/branches.yml +++ b/_data/branches.yml @@ -9,8 +9,8 @@ # eol_date: date of EOL (YYYY-MM-DD) - name: 3.3 - status: preview - date: + status: normal maintenance + date: 2023-12-25 eol_date: - name: 3.2 diff --git a/_data/downloads.yml b/_data/downloads.yml index 39c843acd5..f12cf5c53a 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,10 +4,10 @@ # optional preview: - - 3.3.0-rc1 stable: + - 3.3.0 - 3.2.2 - 3.1.4 diff --git a/_data/releases.yml b/_data/releases.yml index 3b8a987f13..2a838b0b6b 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,35 @@ # 3.3 series +- version: 3.3.0 + date: 2023-12-25 + post: /en/news/2023/12/25/ruby-3-3-0-released/ + tag: v3_3_0 + stats: + files_changed: 5532 + insertions: 326851 + deletions: 185793 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0.tar.xz + size: + gz: 22065999 + zip: 26935108 + xz: 16345456 + sha1: + gz: 1a7e56851bf29bda1183aca99b3b323c58e0187b + zip: a433eef1d7f96daeaf3b4cb842d0ed2dd82e7dc1 + xz: c8f68e1b0a114b90460a0b44165a3b2f540fa5b6 + sha256: + gz: 96518814d9832bece92a85415a819d4893b307db5921ae1f0f751a9a89a56b7d + zip: 0e6563f679dd3694732eb3addf9de681c67b584602ac574376b60e7a509d2cd8 + xz: 676b65a36e637e90f982b57b059189b3276b9045034dcd186a7e9078847b975b + sha512: + gz: 26074009b501fc793d71a74e419f34a6033c9353433919ca74ba2d24a3de432dbb11fd92c2bc285f0e4d951a6d6c74bf5b69a2ab36200c8c26e871746d6e0fc6 + zip: a94a85937a14b217c1f4b90d24185289ed4aee79239c4f3eecf8034d3fd34e65ee8d66869473857ed153067188adc9b70c0471e4ebe842c9f98ef60c34090450 + xz: 7959c5753bfa0bfc4d6d74060869aabbe9815c1c97930659da11b917ee0803ddbbd80e869e00c48b8694b4ba48709c3b6493fd045568e36e902616c35ababf01 + - version: 3.3.0-rc1 date: 2023-12-11 post: /en/news/2023/12/11/ruby-3-3-0-rc1-released/ diff --git a/en/news/_posts/2023-12-25-ruby-3-3-0-released.md b/en/news/_posts/2023-12-25-ruby-3-3-0-released.md new file mode 100644 index 0000000000..1443d140e4 --- /dev/null +++ b/en/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -0,0 +1,305 @@ +--- +layout: news_post +title: "Ruby 3.3.0 Released" +author: "naruse" +translator: +date: 2023-12-25 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.3.0" | first %} +We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 adds a new parser named Prism, uses Lrama as a parser generator, adds a new pure-Ruby JIT compiler named RJIT, and many performance improvements especially YJIT. + +## Prism + +* Introduced [the Prism parser](https://github.com/ruby/prism) as a default gem + * Prism is a portable, error tolerant, and maintainable recursive descent parser for the Ruby language +* Prism is production ready and actively maintained, you can use it in place of Ripper + * There is [extensive documentation](https://ruby.github.io/prism/) on how to use Prism + * Prism is both a C library that will be used internally by CRuby and a Ruby gem that can be used by any tooling which needs to parse Ruby code + * Notable methods in the Prism API are: + * `Prism.parse(source)` which returns the AST as part of a parse result object + * `Prism.parse_comments(source)` which returns the comments + * `Prism.parse_success?(source)` which returns true if there are no errors +* You can make pull requests or issues directly on [the Prism repository](https://github.com/ruby/prism) if you are interested in contributing +* You can now use `ruby --parser=prism` or `RUBYOPT="--parser=prism"` to experiment with the Prism compiler. Please note that this flag is for debugging only. + +## Use Lrama instead of Bison + +* Replace Bison with [Lrama LALR parser generator](https://github.com/ruby/lrama) [[Feature #19637]](https://bugs.ruby-lang.org/issues/19637) + * If you have interest, please see [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * Lrama internal parser is replaced with LR parser generated by Racc for maintainability + * Parameterizing Rules `(?, *, +)` are supported, it will be used in Ruby parse.y + +## YJIT + +* Major performance improvements over Ruby 3.2 + * Support for splat and rest arguments has been improved. + * Registers are allocated for stack operations of the virtual machine. + * More calls with optional arguments are compiled. Exception handlers are also compiled. + * Unsupported call types and megamorphic call sites no longer exit to the interpreter. + * Basic methods like Rails `#blank?` and + [specialized `#present?`](https://github.com/rails/rails/pull/49909) are inlined. + * `Integer#*`, `Integer#!=`, `String#!=`, `String#getbyte`, + `Kernel#block_given?`, `Kernel#is_a?`, `Kernel#instance_of?`, and `Module#===` + are specially optimized. + * Compilation speed is now slightly faster than Ruby 3.2. + * Now more than 3x faster than the interpreter on Optcarrot! +* Significantly improved memory usage over Ruby 3.2 + * Metadata for compiled code uses a lot less memory. + * `--yjit-call-threshold` is automatically raised from 30 to 120 + when the application has more than 40,000 ISEQs. + * `--yjit-cold-threshold` is added to skip compiling cold ISEQs. + * More compact code is generated on Arm64. +* Code GC is now disabled by default + * `--yjit-exec-mem-size` is treated as a hard limit where compilation of new code stops. + * No sudden drops in performance due to code GC. + Better copy-on-write behavior on servers reforking with + [Pitchfork](https://github.com/shopify/pitchfork). + * You can still enable code GC if desired with `--yjit-code-gc` +* Add `RubyVM::YJIT.enable` that can enable YJIT at run-time + * You can start YJIT without modifying command-line arguments or environment variables. + Rails 7.2 will [enable YJIT by default](https://github.com/rails/rails/pull/49947) + using this method. + * This can also be used to enable YJIT only once your application is + done booting. `--yjit-disable` can be used if you want to use other + YJIT options while disabling YJIT at boot. +* More YJIT stats are available by default + * `yjit_alloc_size` and several more metadata-related stats are now available by default. + * `ratio_in_yjit` stat produced by `--yjit-stats` is now available in release builds, + a special stats or dev build is no longer required to access most stats. +* Add more profiling capabilities + * `--yjit-perf` is added to facilitate profiling with Linux perf. + * `--yjit-trace-exits` now supports sampling with `--yjit-trace-exits-sample-rate=N` +* More thorough testing and multiple bug fixes + +## RJIT + +* Introduced a pure-Ruby JIT compiler RJIT and replaced MJIT. + * RJIT supports only x86-64 architecture on Unix platforms. + * Unlike MJIT, it doesn't require a C compiler at runtime. +* RJIT exists only for experimental purposes. + * You should keep using YJIT in production. +* If you are interested in developing JIT for Ruby, please check out [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## M:N thread scheduler + +* M:N thread scheduler was introduced. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M Ruby threads are managed by N native threads (OS threads) so the thread creation and management cost are reduced. + * It can break C-extension compatibility so that M:N thread scheduler is disabled on the main Ractor by default. + * `RUBY_MN_THREADS=1` environment variable enables M:N threads on the main Ractor. + * M:N threads are always enabled on non-main Ractors. + * `RUBY_MAX_CPU=n` environment variable sets maximum number of `N` (maximum number of native threads). The default value is 8. + * Since only one Ruby thread per Ractor can run at the same time, the number of native threads will be used, which is the smaller of the number specified in `RUBY_MAX_CPU` and the number of running Ractors. So that single Ractor applications (most of applications) will only use 1 native thread. + * To support blocking operations, more than `N` native threads can be used. + +## Performance improvements + +* `defined?(@ivar)` is optimized with Object Shapes. +* Name resolution such as `Socket.getaddrinfo` can now be interrupted (in environments where pthreads are available). [[Feature #19965]](https://bugs.ruby-lang.org/issues/19965) +* Several performance improvements to the Garbage Collector + * Young objects referenced by old objects are no longer immediately + promoted to the old generation. This significantly reduces the frequency of + major GC collections. [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) + * A new `REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` tuning variable was + introduced to control the number of unprotected objects cause a major GC + collection to trigger. The default is set to `0.01` (1%). This significantly + reduces the frequency of major GC collection. [[Feature #19571]](https://bugs.ruby-lang.org/issues/19571) + * Write Barriers were implemented for many core types that were missing them, + notably `Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal` + and several others. This significantly reduces minor GC collection time and major + GC collection frequency. + * Most core classes are now using Variable Width Allocation, notably `Hash`, `Time`, + `Thread::Backtrace`, `Thread::Backtrace::Location`, `File::Stat`, `Method`. + This makes these classes faster to allocate and free, use less memory and reduce + heap fragmentation. + * Support for weak references has been added to the garbage collector. [[Feature #19783]](https://bugs.ruby-lang.org/issues/19783) + + +## Other notable changes since 3.2 + +### IRB + +IRB has received several enhancements, including but not limited to: + +- Advanced `irb:rdbg` integration that provides an equivalent debugging experience to `pry-byebug` ([doc](https://github.com/ruby/irb#debugging-with-irb)). +- Pager support for `ls`, `show_source` and `show_cmds` commands. +- More accurate and helpful information provided by the `ls` and `show_source` commands. +- Experimental autocompletion using type analysis ([doc](https://github.com/ruby/irb#type-based-completion)). +- It is now possible to change the font color and font style in the completion dialog by a newly introduced class Reline::Face ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +In addition, IRB has also undergone extensive refactoring and received dozens of bug fixes to facilitate easier future enhancements. + +## Compatibility issues + +Note: Excluding feature bug fixes. + +* `it` calls without arguments in a block with no ordinary parameters are + deprecated. `it` will be a reference to the first block parameter in Ruby 3.4. + [[Feature #18980]](https://bugs.ruby-lang.org/issues/18980) + +### Removed environment variables + +The following deprecated methods are removed. + +* Environment variable `RUBY_GC_HEAP_INIT_SLOTS` has been deprecated and is a no-op. Please use environment variables `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` instead. [[Feature #19785]](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib compatibility issues + +### `ext/readline` is retired + +* We have `reline` that is pure Ruby implementation compatible with `ext/readline` API. We rely on `reline` in the future. If you need to use `ext/readline`, you can install `ext/readline` via rubygems.org with `gem install readline-ext`. +* We no longer need to install libraries like `libreadline` or `libedit`. + +## Standard library updates + +RubyGems and Bundler warn if users do `require` the following gems without adding them to Gemfile or gemspec. This is because they will become the bundled gems in the future version of Ruby. + +This warning is suppressed if you use bootsnap gem. We recoomend to run your application with `DISABLE_BOOTSNAP=1` environmental variable at least once. This is limitation of this version. + +Targeted libraries are: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +The following default gem is added. + +* prism 0.19.0 + +The following default gems are updated. + +* RubyGems 3.5.3 +* abbrev 0.1.2 +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.3 +* cgi 0.4.1 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* error_highlight 0.6.0 +* etc 1.4.3 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.7.1 +* io-nonblock 0.3.0 +* io-wait 0.3.1 +* ipaddr 1.2.6 +* irb 1.11.0 +* json 2.7.1 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.1 +* open3 0.2.1 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.2 +* rdoc 6.6.2 +* readline 0.0.4 +* reline 0.4.1 +* resolv 0.3.0 +* rinda 0.2.0 +* securerandom 0.3.1 +* set 1.1.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.1.0 +* strscan 3.0.7 +* syntax_suggest 2.0.0 +* syslog 0.1.2 +* tempfile 0.2.1 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +The following bundled gem is promoted from default gems. + +* racc 1.7.3 + +The following bundled gems are updated. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-ftp 0.3.3 +* net-imap 0.4.9 +* net-smtp 0.4.0 +* rbs 3.4.0 +* typeprof 0.21.9 +* debug 1.9.1 + +See GitHub releases like [Logger](https://github.com/ruby/logger/releases) or +changelog for details of the default gems or bundled gems. + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +since Ruby 3.2.0! + +Merry Christmas, Happy Holidays, and enjoy programming with Ruby 3.3! + +## Download + +* <{{ 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 + +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/2023-12-25-ruby-3-3-0-released.md b/ja/news/_posts/2023-12-25-ruby-3-3-0-released.md new file mode 100644 index 0000000000..d43acf45c1 --- /dev/null +++ b/ja/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -0,0 +1,275 @@ +--- +layout: news_post +title: "Ruby 3.3.0 リリース" +author: "naruse" +translator: +date: 2023-12-25 00:00:00 +0000 +lang: ja +--- + +{% assign release = site.data.releases | where: "version", "3.3.0" | first %} +Ruby {{ release.version }} が公開されました。Ruby 3.3ではPrismという新しいパーサーの追加、新しいパーサージェネレーターであるLramaによるBisonの置き換え、RJITという新たなJITの仕組みを追加、YJITの高速化など様々な改善が行われています。 + +## Prism + +* default gemとして[Prismパーサ](https://github.com/ruby/prism)を導入しました。 + * Prismは、Ruby言語のためのポータブルで、エラートレラントで、保守可能な再帰下降パーサです。 +* Prismは本番環境で使用する準備が整っており、積極的にメンテナンスされています。Ripperの代わりに使用することができます。 + * Prismの使用方法については、[詳細なドキュメンテーション](https://ruby.github.io/prism/)があります。 + * Prismは、CRubyに内部的に使用されるCライブラリと、Rubyコードを解析する必要がある任意のツールに使用できるRuby gemの2つのコンポーネントを持っています。 + * Prism APIの注目すべきメソッドには以下のものがあります。 + * `Prism.parse(source)` は、パース結果オブジェクトの一部としてASTを返します。 + * `Prism.parse_comments(source)` はコメントを返します。 + * `Prism.parse_success?(source)` はエラーがない場合にtrueを返します。 +* Prism開発への貢献に興味がある場合は、[Prismリポジトリ](https://github.com/ruby/prism)に直接Pull RequestやIssueを作成することができます。 +* 今後は `ruby --parser=prism` または `RUBYOPT="--parser=prism"` を使用してPrismコンパイラを試すことができます。ただし、このフラグはデバッグ用であることに注意してください。 + +## Bisonの代わりにLramaを使用 + +* Bisonを[Lrama LALRパーサジェネレータ](https://github.com/ruby/lrama)に置き換えました。 [[Feature #19637]](https://bugs.ruby-lang.org/issues/19637) + * 興味がある方は、[The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html)という発表をご覧ください。 + * 参考:[Ruby Parser開発日誌 (5) - Lrama LALR (1) parser generatorを実装した](https://yui-knk.hatenablog.com/entry/2023/03/13/101951) + * Lramaの内部パーサは、保守性のためにRaccによって生成されたLRパーサに置き換えられました。 +* パラメータ化ルール `(?, *, +)` がサポートされ、CRubyのparse.yで使用されます。 + +## YJIT + +* 大幅なパフォーマンスの改善 + * `*` を使った引数のサポートが改善されました。 + * 仮想マシンのスタック操作のためにレジスタが使われるようになりました。 + * オプション引数を持つ呼び出しで全ての組合せがコンパイルされます。例外ハンドラもコンパイルされます。 + * サポートされていない呼び出し方や分岐の数の多い呼出しでのインタプリタへのフォールバックが行なわれなくなりました。 + * Railsの `#blank?` や [特別化された `#present?`](https://github.com/rails/rails/pull/49909) などの単純なメソッドがインライン化されます。 + * `Integer#*`、`Integer#!=`、`String#!=`、`String#getbyte`、`Kernel#block_given?`、`Kernel#is_a?`、`Kernel#instance_of?`、および `Module#===` が特別に最適化されます。 + * コンパイル速度はRuby 3.2よりわずかに速くなりました。 + * Optcarrotでは、インタプリタよりも3倍以上速くなりました! +* メモリ使用量の大幅な改善 + * コンパイルされたコードのメタデータは、はるかに少ないメモリを使用します。 + * アプリケーションが4万個以上のISEQを持つ場合、`--yjit-call-threshold` は自動的に30から120に上げられます。 + * 呼出しの少ないISEQのコンパイルをスキップするために `--yjit-cold-threshold` が追加されました。 + * Arm64ではよりコンパクトなコードが生成されます。 +* コードGCはデフォルトで無効になりました + * `--yjit-exec-mem-size` は新しいコードのコンパイルが停止するハードリミットとして扱われます。 + * これにより、デフォルトではコードGC実行によるパフォーマンスの急激な低下がなくなりました。[Pitchfork](https://github.com/shopify/pitchfork) を使って定期的にforkするサーバーでのコピーオンライトの挙動が改善されました。 + * 必要に応じて `--yjit-code-gc` でコードGCを有効にすることもできます。 +* `RubyVM::YJIT.enable` を追加し、実行時にYJITを有効にできるようにしました + * コマンドライン引数や環境変数を変更せずにYJITを開始できます。Rails 7.2はこの方法を使用して [デフォルトでYJITを有効にします](https://github.com/rails/rails/pull/49947)。 + * これはまた、アプリケーションの起動が完了した後にのみYJITを有効にするために使用できます。YJITの他のオプションを使用しながら起動時にYJITを無効にしたい場合は、`--yjit-disable` を使用できます。 +* デフォルトで利用可能なYJITの統計が増えました + * `yjit_alloc_size` およびその他いくつかのメタデータ関連の統計がデフォルトで利用可能になりました。 + * `--yjit-stats` によって生成される `ratio_in_yjit` 統計は、リリースビルドで利用可能になりました。特別な統計や開発ビルドは、ほとんどの統計にアクセスするためにはもはや必要ありません。 +* プロファイリング機能を追加 + * Linux perfでのプロファイリングを容易にするために `--yjit-perf` が追加されました。 + * `--yjit-trace-exits` は、`--yjit-trace-exits-sample-rate=N` を使用したサンプリングをサポートします。 +* より網羅的なテストと複数のバグ修正 + +## RJIT + +* Rubyで書かれたJITコンパイラであるRJITを導入し、MJITを置き換えました。 + * RJITはUnixプラットフォーム上のx86\_64アーキテクチャのみをサポートします。 + * MJITとは異なり、実行時にCコンパイラを必要としません。 +* RJITは実験的な目的のためだけに存在します。 + * 本番環境ではYJITを引き続き使用してください。 +* RubyのJITの開発に興味がある場合は、[RubyKaigiの3日目のk0kubunの発表](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)をご覧ください。 + +## M:N スレッドスケジューラ + +* M:N スレッドスケジューラが導入されました。[[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M個のRuby スレッドを、N個のネイティブスレッド(OSスレッド)で管理するので、生成管理のコストを抑えることができるようになりました。 + * C拡張ライブラリの互換性に問題が生じる可能性があるため、メインRactorでのM:Nスレッドスケジューラはデフォルトでは無効にされています。 + * `RUBY_MN_THREADS=1` と環境変数を設定することで、メインRactorでM:Nスレッドスケジューラを有効にします。 + * メインRactor以外ではM:Nスレッドスケジューラが常に有効です。 + * `RUBY_MAX_CPU=n` と環境変数を設定することで、Nの最大数(利用するネイティブスレッドの最大数)を設定できます。デフォルトは8です。 + * 一つの Ractor ではたかだか1つのスレッドしか同時に実行されないので、実際に利用するネイティブスレッド数は、`RUBY_MAX_CPU`で指定した数か実行中のRactorの数の少ないほうになります。つまり、Ractorの数が1つのアプリケーション(多くのアプリケーション)では1つのネイティブスレッドだけ利用されます。 + * ブロックする処理をサポートするため、N個以上のネイティブスレッドが利用されることがあります。 + +## パフォーマンスの改善 + +* `defined?(@ivar)` is optimized with Object Shapes. +* `Socket.getaddrinfo` などの名前解決を中断できるようになりました (pthread が利用できる環境のみ)。[[Feature 19965]](https://bugs.ruby-lang.org/issues/19965) +* 環境変数 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` が追加されました。[[Feature #19571]](https://bugs.ruby-lang.org/issues/19571) +* GCで古いオブジェクトの子オブジェクトがすぐにプロモートされなくなりました。[[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) +* GCに弱参照が追加されました。[[Feature #19783]](https://bugs.ruby-lang.org/issues/19783) + +## その他の注目すべき 3.2 からの変更点 + +### IRB + +IRBは様々な機能強化を行いました。主なものは以下の通りです。 + +* IRBとrdbgの連携 pry-byebugのような使い心地でデバッグできるようになりました。([使い方](https://github.com/ruby/irb#debugging-with-irb)) +* lsコマンドやshow_cmdsの出力がPagerで表示されるようになりました。 +* lsコマンドやshow_sourceコマンドがより便利で詳細な情報を出力するようになりました。 +* 型情報を使った補完が実験的に実装されました。([有効化するには](https://github.com/ruby/irb#type-based-completion)) +* Reline::Faceクラスの導入により、補完ダイアログの色や文字装飾を変更できるようになりました。([使い方](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +また、機能強化以外にも、数多くのバグ修正および将来的な機能拡張を見越した大規模なリファクタリングを行ないました。 + + +## 互換性に関する変更 + +* ブロック内での引数なし `it` の呼び出しは非推奨になりました。 + Ruby 3.4から最初のブロック引数を参照するようになります。 + [[Feature #18980]](https://bugs.ruby-lang.org/issues/18980) + +### 環境変数の削除 + +以下の非推奨の環境変数は削除されました + +* 環境変数 `RUBY_GC_HEAP_INIT_SLOTS` は非推奨になり、何もしなくなりました。環境変数 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` を使ってください。[[Feature #19785]](https://bugs.ruby-lang.org/issues/19785) + +## 標準添付ライブラリの互換性に関する変更 + +### `ext/readline` の削除 + +* 今後は Ruby で書かれた GNU Readline の互換ライブラリである `reline` をすべての環境で標準で利用し、`ext/readline` は削除されました。以前の `ext/readline` が必要なユーザーは `gem install readline-ext` でインストールすることができます。 +* この変更により、Ruby のインストール時に `libreadline` や `libedit` などのライブラリのインストールは不要となります。 + +## 標準添付ライブラリのアップデート + +RubyGems と Bundler は将来リリースされる Ruby で bundled gems となる予定の gem が Gemfile または gemspec に存在しない状態で require された際に警告を行う機能が追加されました。 + +この警告は bootsnap gem を使っている場合には 3.3.0 の時点では機能上の制限により出力されません。そのため、環境変数として `DISABLE_BOOTSNAP=1` などを設定して、少なくとも1度はアプリケーションを実行することを推奨します。 + +以下のライブラリが警告の対象となります。 + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + + +以下の default gem が追加されました。 + +* prism 0.19.0 + +以下の default gems のバージョンがアップデートされました。 + +* RubyGems 3.5.3 +* abbrev 0.1.2 +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.3 +* cgi 0.4.1 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* error_highlight 0.6.0 +* etc 1.4.3 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.7.1 +* io-nonblock 0.3.0 +* io-wait 0.3.1 +* ipaddr 1.2.6 +* irb 1.11.0 +* json 2.7.1 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.1 +* open3 0.2.1 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.2 +* rdoc 6.6.2 +* readline 0.0.4 +* reline 0.4.1 +* resolv 0.3.0 +* rinda 0.2.0 +* securerandom 0.3.1 +* set 1.1.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.1.0 +* strscan 3.0.7 +* syntax_suggest 2.0.0 +* syslog 0.1.2 +* tempfile 0.2.1 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +新たに以下の gem が default gems から bundled gems に変更されました。 + +* racc 1.7.3 + +以下の bundled gems のバージョンがアップデートされました。 + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-ftp 0.3.3 +* net-imap 0.4.9 +* net-smtp 0.4.0 +* rbs 3.4.0 +* typeprof 0.21.9 +* debug 1.9.1 + +default gems と bundled gems の詳細については [Logger の GitHub Releases](https://github.com/ruby/logger/releases) のような GitHub releases または changelog ファイルを参照してください。 + + +その他詳細については、[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) ファイルまたは[コミットログ](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})を参照してください。 + +なお、こうした変更により、Ruby 3.2.0 以降では [{{ release.stats.files_changed }} 個のファイルに変更が加えられ、{{ release.stats.insertions }} 行の追加と {{ release.stats.deletions }} 行の削除が行われました](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) ! + +メリークリスマス、Ruby 3.3 とともによいお年をお迎えください! + +## ダウンロード + +* <{{ 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 とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 From ddd36b9d120bc03f352da5f90f7880c41dbefff3 Mon Sep 17 00:00:00 2001 From: Shia Date: Mon, 25 Dec 2023 19:03:43 +0900 Subject: [PATCH 124/607] Fix typo on 2023-12-25-ruby-3-3-0-released.md --- en/news/_posts/2023-12-25-ruby-3-3-0-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-12-25-ruby-3-3-0-released.md b/en/news/_posts/2023-12-25-ruby-3-3-0-released.md index 1443d140e4..090bf66e00 100644 --- a/en/news/_posts/2023-12-25-ruby-3-3-0-released.md +++ b/en/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -155,7 +155,7 @@ The following deprecated methods are removed. RubyGems and Bundler warn if users do `require` the following gems without adding them to Gemfile or gemspec. This is because they will become the bundled gems in the future version of Ruby. -This warning is suppressed if you use bootsnap gem. We recoomend to run your application with `DISABLE_BOOTSNAP=1` environmental variable at least once. This is limitation of this version. +This warning is suppressed if you use bootsnap gem. We recommend to run your application with `DISABLE_BOOTSNAP=1` environment variable at least once. This is limitation of this version. Targeted libraries are: * abbrev From 3ecc2a65fbc6443e62736d33ab9fc1623a2a74e2 Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Mon, 25 Dec 2023 21:33:45 +0900 Subject: [PATCH 125/607] Update translation of Ruby 3.3.0-rc1 (ko) (#3164) * Update translation of Ruby 3.3.0-rc1 (ko) * Fix typos --- .../2023-11-12-ruby-3-3-0-preview3-released.md | 4 ++-- .../_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index 2decb5186a..e05cc55a04 100644 --- a/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/ko/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -69,9 +69,9 @@ Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.3 * Linux perf로 프로파일링을 용이하게 할 수 있도록 `--yjit-perf`가 추가됩니다. * 보다 철저한 테스트와 여러 버그 수정 -### M:N 스레드 스케쥴러 +### M:N 스레드 스케줄러 -* M:N 스레드 스케쥴러가 추가됩니다. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) +* M:N 스레드 스케줄러가 추가됩니다. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) * M개의 Ruby 스레드를 N개의 네이티브 스레드(OS 스레드)로 관리하므로 스레드의 생성, 관리 비용이 절감됩니다. * C 확장 호환성에 문제가 발생할 가능성이 있으므로, 주 Ractor에서의 기본 설정은 비활성입니다. * `RUBY_MN_THREADS=1` 환경 변수를 사용해 주 Ractor에서 M:N 스레드를 활성화할 수 있습니다. diff --git a/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index 0d95d3867a..4b072284cb 100644 --- a/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/ko/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -27,7 +27,7 @@ RC1 릴리스 이후로 ABI의 하위호환성을 깨트리는 변경은 가급 ## Bison을 Lrama로 대체 -* Bison 대신 [Lrama LALR 파서 생성기](https://github.com/yui-knk/lrama)를 사용하도록 변경했습니다. [Feature #19637](https://bugs.ruby-lang.org/issues/19637) +* Bison 대신 [Lrama LALR 파서 생성기](https://github.com/ruby/lrama)를 사용하도록 변경했습니다. [Feature #19637](https://bugs.ruby-lang.org/issues/19637) * 관심이 있다면 [Ruby 파서의 미래 비전](https://rubykaigi.org/2023/presentations/spikeolaf.html)을 참고하세요. * 유지보수성을 위해 Lrama 내부 구문 분석기가 Racc에서 생성한 LR 구문 분석기로 대체되었습니다. * 매개변수화 규칙 `(?, *, +)`를 지원하며, Ruby의 parse.y에서 사용될 예정입니다. @@ -39,7 +39,7 @@ RC1 릴리스 이후로 ABI의 하위호환성을 깨트리는 변경은 가급 * MJIT과 달리 런타임에 C 컴파일러가 필요하지 않습니다. * RJIT은 실험 목적으로 존재합니다. * 프로덕션 환경에서는 YJIT을 계속 사용해야 합니다. -* Ruby용 JIT 개발에 관심이 있다면 [RubyKaigi 2023 3일 차에 있었던 k0kubun의 발표](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)를 확인하세요. +* Ruby용 JIT 개발에 관심이 있다면 [RubyKaigi 2023 3일차에 있었던 k0kubun의 발표](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)를 확인하세요. ## YJIT @@ -75,9 +75,9 @@ RC1 릴리스 이후로 ABI의 하위호환성을 깨트리는 변경은 가급 * 보다 철저한 테스트와 여러 버그 수정 -### M:N 스레드 스케쥴러 +### M:N 스레드 스케줄러 -* M:N 스레드 스케쥴러가 추가됩니다. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) +* M:N 스레드 스케줄러가 추가됩니다. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) * M개의 Ruby 스레드를 N개의 네이티브 스레드(OS 스레드)로 관리하므로 스레드의 생성, 관리 비용이 절감됩니다. * C 확장 호환성에 문제가 발생할 가능성이 있으므로, 주 Ractor에서의 기본 설정은 비활성입니다. * `RUBY_MN_THREADS=1` 환경 변수를 사용해 주 Ractor에서 M:N 스레드를 활성화할 수 있습니다. @@ -102,18 +102,18 @@ RC1 릴리스 이후로 ABI의 하위호환성을 깨트리는 변경은 가급 * 오래된 객체가 참조하는 어린 객체는 이제 즉시 오래된 객체로 마킹되지 않습니다. 이 동작은 메이저 GC의 빈도를 상당히 낮춰줍니다. [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) - * 메이져 GC를 야기하는 보호받지 않은 객체의 숫자를 제어하는 + * 메이저 GC를 야기하는 보호받지 않은 객체의 숫자를 제어하는 새로운 변수 `REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO`가 추가되었습니다. - 기본값은 `0.01` (1%)입니다. 이는 메이저 GC의 빈도를 상당히 낮춰줍니다. + 기본값은 `0.01`(1%)입니다. 이는 메이저 GC의 빈도를 상당히 낮춰줍니다. [[Feature #19571]](https://bugs.ruby-lang.org/issues/19571) * `Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal` 등의 - 주요 타입에 부족했던 쓰기 보호가 구현되었습니다. + 주요 타입에 부족했던 쓰기 배리어가 구현되었습니다. 이는 마이너 GC에 걸리는 시간과 메이저 GC 빈도를 상당히 줄여줍니다. * `Hash`, `Time`, `Thread::Backtrace`, `Thread::Backtrace::Location`, `File::Stat`, `Method` 등의 대부분의 주요 클래스는 이제 가변 폭 할당을 사용합니다. 이는 해당 클래스의 할당 및 할당 해제 속도를 빠르게 만들며, 메모리 사용량과 힙 파편화를 줄여줍니다. - * 가비지 컬렉터에 약한 참조가 추가됩니다. [Feature #19783](https://bugs.ruby-lang.org/issues/19783) + * 가비지 컬렉터에 약한 참조가 추가됩니다. [[Feature #19783]](https://bugs.ruby-lang.org/issues/19783) ## 그 이외의 3.2 이후로 주목할 만한 변경 From dfe9e79ee65df16f23becba964eefe65dc9c6c62 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 26 Dec 2023 04:20:12 +0900 Subject: [PATCH 126/607] Translate "Ruby 3.3.0 released" (ko) (#3162) * Copy {en/ko}/news/_posts/2023-12-25-ruby-3-3-0-released.md * Translate "3.3.0 released" * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../_posts/2023-12-25-ruby-3-3-0-released.md | 304 ++++++++++++++++++ 1 file changed, 304 insertions(+) create mode 100644 ko/news/_posts/2023-12-25-ruby-3-3-0-released.md diff --git a/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md b/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md new file mode 100644 index 0000000000..759f321fee --- /dev/null +++ b/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -0,0 +1,304 @@ +--- +layout: news_post +title: "Ruby 3.3.0 릴리스" +author: "naruse" +translator: "shia" +date: 2023-12-25 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.3.0" | first %} +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.3은 Prism이라는 이름의 새 파서를 추가하고, 파서 생성기로 Lrama를 사용하며, RJIT으로 명명된 새로운 순수 Ruby JIT 컴파일러를 추가하고, 특히 YJIT에서 많은 성능 향상이 있습니다. + +## Prism + +* [Prism 파서](https://github.com/ruby/prism)를 기본 gem에 추가했습니다. + * Prism은 Ruby 언어를 위한 이식 가능하고, 에러 내성이 있으며 유지 보수 가능한 재귀 하향 파서입니다. +* Prism은 프로덕션 환경에서 사용할 준비가 되어있으며 활발하게 유지보수되고 있으므로 Ripper 대신 이용할 수 있습니다. + * Prism 사용 방법에 대한 [광범위한 문서](https://ruby.github.io/prism/)가 있습니다. + * Prism은 CRuby에서 내부적으로 사용하는 C 라이브러리이자 Ruby 코드를 구문 분석해야 하는 모든 도구에서 사용할 수 있는 Ruby gem입니다. + * Prism API에서 주목할 만한 메서드는 다음과 같습니다. + * `Prism.parse(source)`는 구분 분석 결과 객체의 일부로 AST를 반환합니다. + * `Prism.parse_comments(source)`는 주석을 반환합니다. + * `Prism.parse_success?(source)`는 에러가 없다면 true를 반환합니다. +* 기여에 관심이 있다면 [Prism 저장소](https://github.com/ruby/prism)에서 직접 풀 리퀘스트나 이슈를 만들 수 있습니다. +* `ruby --parser=prism`이나 `RUBYOPT="--parser=prism"`을 사용하여 Prism 컴파일러를 실험해 볼 수 있습니다. 이 플래그는 디버깅 용도임을 잊지 마세요. + +## Bison을 Lrama로 대체 + +* Bison 대신 [Lrama LALR 파서 생성기](https://github.com/ruby/lrama)를 사용하도록 변경했습니다. [[Feature #19637]](https://bugs.ruby-lang.org/issues/19637) + * 관심이 있다면 [Ruby 파서의 미래 비전](https://rubykaigi.org/2023/presentations/spikeolaf.html)을 참고하세요. + * 유지보수성을 위해 Lrama 내부 구문 분석기가 Racc에서 생성한 LR 구문 분석기로 대체되었습니다. + * 매개변수화 규칙 `(?, *, +)`를 지원하며, Ruby의 parse.y에서 사용될 예정입니다. + +## YJIT + +* Ruby 3.2 버전 대비 주요 성능 개선 사항 + * 스플랫과 나머지 인자 지원이 개선되었습니다. + * 가상 머신의 스택 연산을 위해 레지스터가 할당됩니다. + * 선택적 인수가 포함된 더 많은 호출이 컴파일됩니다. 예외 처리기도 컴파일됩니다. + * 지원되지 않는 호출 타입인 경우, 클래스의 인스턴스 변수가 가지는 객체 형상의 조합이 매우 복잡한 경우에도 + 컴파일되기 전의 바이트 코드로 전환되지 않습니다. + * Rails의 `#blank?`와 [특수화한 `#present?`](https://github.com/rails/rails/pull/49909) 같은 단순한 메서드는 + 인라인으로 최적화됩니다. + * `Integer#*`, `Integer#!=`, `String#!=`, `String#getbyte`, + `Kernel#block_given?`, `Kernel#is_a?`, `Kernel#instance_of?`, `Module#===`은 특별히 최적화되었습니다. + * Ruby 3.2보다 컴파일 속도가 약간 개선되었습니다. + * 이제 optcarrot에서 인터프리터보다 3배 이상 빠릅니다! +* Ruby 3.2보다 메모리 사용량이 크게 개선되었습니다. + * 컴파일된 코드의 메타데이터가 훨씬 적은 메모리를 사용합니다. + * `--yjit-call-threshold`는 애플리케이션의 ISEQ이 40,000개 이상 존재하는 경우, + 자동으로 30에서 120으로 증가합니다. + * 적게 사용되는 ISEQ의 컴파일을 생략하는 `--yjit-cold-threshold`가 추가됩니다. + * ARM64에서 더 작은 코드를 생성합니다. +* 코드 GC는 이제 비활성화된 상태로 시작합니다. + * `--yjit-exec-mem-size`를 새 코드 컴파일을 멈추는 최대 상한으로 취급합니다. + * 코드 GC로 인한 급격한 성능 하락이 사라집니다. + [Pitchfork](https://github.com/shopify/pitchfork)로 리포크를 사용하는 서버에서 + 더 나은 쓰기 시 복사 동작을 생성할 수 있습니다. + * 필요하다면 `--yjit-code-gc`로 코드 GC를 활성화할 수 있습니다. +* 실행 시간에 YJIT을 활성화할 수 있는 `RubyVM::YJIT.enable`이 추가됩니다. + * 실행 명령의 인수나 환경 변수의 변경 없이 YJIT을 실행할 수 있습니다. + Rails 7.2는 이 메서드를 사용해 + [기본으로 YJIT을 활성화](https://github.com/rails/rails/pull/49947)할 예정입니다. + * 애플리케이션 부팅이 완료된 후에 YJIT를 활성화하는 데에도 사용할 수 있습니다. + 부팅 시 YJIT를 비활성화한 상태에서 다른 YJIT 옵션을 사용하려는 경우 + `--yjit-disable`을 사용할 수 있습니다. +* 기본으로 더 많은 YJIT 통계 정보를 제공합니다. + * `yjit_alloc_size`와 메타 정보에 관련된 몇몇 통계가 기본으로 이용 가능합니다. + * `--yjit-stats`로부터 생성된 `ratio_in_yjit` 통계는 릴리스 빌드에서도 이용 가능하며, + 대부분의 통계에 접근하는 데 특수한 통계나 개발 빌드는 더 이상 필요하지 않습니다. +* 프로파일링 기능 추가 + * Linux perf로 프로파일링을 용이하게 할 수 있도록 `--yjit-perf`가 추가됩니다. + * `--yjit-trace-exits`는 `--yjit-trace-exits-sample-rate=N`을 통한 샘플링을 지원합니다. +* 보다 철저한 테스트와 여러 버그 수정 + +## RJIT + +* 순수 Ruby JIT 컴파일러 RJIT을 도입하고 MJIT을 대체했습니다. + * RJIT은 Unix 플랫폼에서 x86-64 아키텍처만 지원합니다. + * MJIT과 달리 런타임에 C 컴파일러가 필요하지 않습니다. +* RJIT은 실험 목적으로 존재합니다. + * 프로덕션 환경에서는 YJIT을 계속 사용해야 합니다. +* Ruby용 JIT 개발에 관심이 있다면 [RubyKaigi 2023 3일차에 있었던 k0kubun의 발표](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)를 확인하세요. + +## M:N 스레드 스케줄러 + +* M:N 스레드 스케줄러가 추가됩니다. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M개의 Ruby 스레드를 N개의 네이티브 스레드(OS 스레드)로 관리하므로 스레드의 생성, 관리 비용이 절감됩니다. + * C 확장 호환성에 문제가 발생할 가능성이 있으므로, 주 Ractor에서의 기본 설정은 비활성입니다. + * `RUBY_MN_THREADS=1` 환경 변수를 사용해 주 Ractor에서 M:N 스레드를 활성화할 수 있습니다. + * M:N 스레드는 주 Ractor가 아닌 Ractor에서 항상 활성화되어 있습니다. + * `RUBY_MAX_CPU=n` 환경 변수는 `N`(네이티브 스레드의 최대 개수)의 최댓값을 지정합니다. 기본값은 8입니다. + * 하나의 Ractor에서는 하나의 Ruby 스레드만 실행 가능하므로 실제로 사용되는 네이티브 스레드의 개수는 `RUBY_MAX_CPU`에서 지정한 숫자나 실행 중인 Ractor의 개수보다 작습니다. 그러므로 (대다수를 차지하는) 단일 Ractor 애플리케이션에서는 단 하나의 네이티브 스레드를 사용합니다. + * 블로킹 동작을 처리하기 위해, `N`개 이상의 네이티브 스레드가 사용될 수 있습니다. + +## 성능 향상 + +* `defined?(@ivar)`가 객체 형상에 맞게 최적화됩니다. +* `Socket.getaddrinfo`와 같은 이름 해결을 (POSIX 스레드가 사용 가능한 환경에서) 중단할 수 있게 됩니다. [[Feature #19965]](https://bugs.ruby-lang.org/issues/19965) +* 가비지 컬렉터의 몇몇 성능 향상 + * 오래된 객체가 참조하는 어린 객체는 이제 즉시 오래된 객체로 마킹되지 않습니다. + 이 동작은 메이저 GC의 빈도를 상당히 낮춰줍니다. + [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) + * 메이저 GC를 야기하는 보호받지 않은 객체의 숫자를 제어하는 + 새로운 변수 `REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO`가 추가되었습니다. + 기본값은 `0.01`(1%)입니다. 이는 메이저 GC의 빈도를 상당히 낮춰줍니다. + [[Feature #19571]](https://bugs.ruby-lang.org/issues/19571) + * `Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal` 등의 + 주요 타입에 부족했던 쓰기 보호가 구현되었습니다. + 이는 마이너 GC에 걸리는 시간과 메이저 GC 빈도를 상당히 줄여줍니다. + * `Hash`, `Time`, `Thread::Backtrace`, `Thread::Backtrace::Location`, + `File::Stat`, `Method` 등의 대부분의 주요 클래스는 이제 가변 폭 할당을 사용합니다. + 이는 해당 클래스의 할당 및 할당 해제 속도를 빠르게 만들며, 메모리 사용량과 + 힙 파편화를 줄여줍니다. + * 가비지 컬렉터에 약한 참조가 추가됩니다. [[Feature #19783]](https://bugs.ruby-lang.org/issues/19783) + + +## 그 이외의 3.2 이후로 주목할 만한 변경 + +### IRB + +IRB에 여러 개선 사항이 추가됩니다. 다음과 같은 내용이 포함됩니다. + +- 고급 `irb:rdbg` 통합 기능은 `pry-byebug`와 동등한 디버깅 경험을 제공합니다. ([문서](https://github.com/ruby/irb#debugging-with-irb)). +- `ls`와 `show_source`, `show_cmds`와 같은 명령어에서 페이징을 지원합니다. +- `ls`, `show_source` 명령에서 더 정확하고 유용한 정보를 제공합니다. +- 타입 분석을 사용하는 실험적인 자동 완성 기능을 제공합니다. ([문서](https://github.com/ruby/irb#type-based-completion)). +- Reline::Face 클래스의 도입으로 자동완성 다이얼로그의 글씨 색과 스타일이 변경 가능합니다. ([문서](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +또한, IRB는 광범위한 리팩토링을 거쳤으며, 향후 개선이 용이하도록 많은 버그 수정이 이루어졌습니다. + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + +* 블록에서 매개변수 없이 `it`을 호출하는 기능은 삭제 예정입니다. + Ruby 3.4부터 `it`은 첫 번째 블록 인수를 가리킵니다. + [[Feature #18980]](https://bugs.ruby-lang.org/issues/18980) + +### 삭제된 환경 변수 + +폐기 예정이었던 환경 변수가 삭제됩니다. + +* 환경 변수 `RUBY_GC_HEAP_INIT_SLOTS`는 폐기 예정이었으며 아무 효과도 없습니다. 대신 환경 변수 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS`를 사용해 주세요. [[Feature #19785]](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib 호환성 문제 + +### `ext/readline` 폐기 + +* 우리는 `ext/readline` API와 호환되는 순수 Ruby 구현인 `reline`을 가지고 있습니다. 앞으로는 `reline`에 의존할 것입니다. `ext/readline`을 사용해야 하는 경우, `gem install readline-ext`를 사용하여 rubygems.org를 통해 `ext/readline`을 설치할 수 있습니다. +* 이제 더 이상 `libreadline` 또는 `libedit`과 같은 라이브러리를 설치할 필요가 없습니다. + +## 표준 라이브러리 갱신 + +사용자가 미래의 Ruby 버전에서 내장될 예정의 gem을 Gemfile이나 gemspec에 추가하지 않고 직접 `require` 할 때 RubyGems와 Bundler가 경고 문구를 출력합니다. + +bootsnap gem을 사용하고 있다면, 해당 경고를 생략합니다. 적어도 한 번은 `DISABLE_BOOTSNAP=1` 환경 변수와 함께 애플리케이션을 실행하길 권장합니다. 이는 이번 버전에만 해당되는 제약입니다. + +다음 라이브러리가 대상입니다. + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +다음 기본 gem이 추가되었습니다. + +* prism 0.19.0 + +다음 기본 gem이 갱신되었습니다. + +* RubyGems 3.5.3 +* abbrev 0.1.2 +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.3 +* cgi 0.4.1 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* error_highlight 0.6.0 +* etc 1.4.3 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.7.1 +* io-nonblock 0.3.0 +* io-wait 0.3.1 +* ipaddr 1.2.6 +* irb 1.11.0 +* json 2.7.1 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.1 +* open3 0.2.1 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.2 +* rdoc 6.6.2 +* readline 0.0.4 +* reline 0.4.1 +* resolv 0.3.0 +* rinda 0.2.0 +* securerandom 0.3.1 +* set 1.1.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.1.0 +* strscan 3.0.7 +* syntax_suggest 2.0.0 +* syslog 0.1.2 +* tempfile 0.2.1 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +다음 기본 gem이 내장됩니다. + +* racc 1.7.3 + +다음 내장 gem이 갱신됩니다. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-ftp 0.3.3 +* net-imap 0.4.9 +* net-smtp 0.4.0 +* rbs 3.4.0 +* typeprof 0.21.9 +* debug 1.9.1 + +기본 gem 또는 내장 gem에 대한 자세한 내용은 [Logger](https://github.com/ruby/logger/releases)와 같은 +GitHub 릴리스 또는 변경 로그에서 확인하세요. + +더 자세한 내용은 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.2.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + +메리 크리스마스, 해피 홀리데이, 그리고 Ruby 3.3과 함께 프로그래밍을 즐겨보세요! + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. From 6042a119f2d63a7f238fe0d3b61392a6638278aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Dec 2023 15:15:06 +0000 Subject: [PATCH 127/607] Bump actions/upload-pages-artifact from 2.0.0 to 3.0.0 Bumps [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) from 2.0.0 to 3.0.0. - [Release notes](https://github.com/actions/upload-pages-artifact/releases) - [Commits](https://github.com/actions/upload-pages-artifact/compare/a753861a5debcf57bf8b404356158c8e1e33150c...0252fc4ba7626f0298f0cf00902a25c6afc77fa8) --- updated-dependencies: - dependency-name: actions/upload-pages-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 42bf61961d..a8f572339f 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -34,7 +34,7 @@ jobs: env: JEKYLL_ENV: production - name: Upload artifact - uses: actions/upload-pages-artifact@a753861a5debcf57bf8b404356158c8e1e33150c # v2.0.0 + uses: actions/upload-pages-artifact@0252fc4ba7626f0298f0cf00902a25c6afc77fa8 # v3.0.0 deploy: environment: From 76c119be053b66f3d0b6c6ddd6ad9a732f6f4d88 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Dec 2023 15:15:03 +0000 Subject: [PATCH 128/607] Bump actions/deploy-pages from 3.0.1 to 4.0.2 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 3.0.1 to 4.0.2. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/13b55b33dd8996121833dbc1db458c793a334630...7a9bd943aa5e5175aeb8502edcc6c1c02d398e10) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index a8f572339f..b72495a349 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@13b55b33dd8996121833dbc1db458c793a334630 # v3.0.1 + uses: actions/deploy-pages@7a9bd943aa5e5175aeb8502edcc6c1c02d398e10 # v4.0.2 From e663616cccf83664c11111da65b168f259caf0ee Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Mon, 25 Dec 2023 20:43:16 +0900 Subject: [PATCH 129/607] Fix typo in Ruby 3.3.0-rc1 news --- en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index 1770353c9f..ccaf405b3c 100644 --- a/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/en/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -152,7 +152,7 @@ The following deprecated methods are removed. ### Removed environment variables -The following deprecated methods are removed. +The following deprecated environment variables are removed. * Environment variable `RUBY_GC_HEAP_INIT_SLOTS` has been deprecated and is a no-op. Please use environment variables `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` instead. [Feature #19785](https://bugs.ruby-lang.org/issues/19785) From 3fe3dfab2dc9b641392c10769574f05dd4309166 Mon Sep 17 00:00:00 2001 From: Stan Lo Date: Mon, 25 Dec 2023 12:01:20 +0000 Subject: [PATCH 130/607] Add a link to the IRB for Ruby 3.3 blog post --- en/news/_posts/2023-12-25-ruby-3-3-0-released.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/en/news/_posts/2023-12-25-ruby-3-3-0-released.md b/en/news/_posts/2023-12-25-ruby-3-3-0-released.md index 090bf66e00..30ae20b125 100644 --- a/en/news/_posts/2023-12-25-ruby-3-3-0-released.md +++ b/en/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -122,14 +122,16 @@ We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 a IRB has received several enhancements, including but not limited to: -- Advanced `irb:rdbg` integration that provides an equivalent debugging experience to `pry-byebug` ([doc](https://github.com/ruby/irb#debugging-with-irb)). -- Pager support for `ls`, `show_source` and `show_cmds` commands. -- More accurate and helpful information provided by the `ls` and `show_source` commands. -- Experimental autocompletion using type analysis ([doc](https://github.com/ruby/irb#type-based-completion)). -- It is now possible to change the font color and font style in the completion dialog by a newly introduced class Reline::Face ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) +* Advanced `irb:rdbg` integration that provides an equivalent debugging experience to `pry-byebug` ([doc](https://github.com/ruby/irb#debugging-with-irb)). +* Pager support for `ls`, `show_source` and `show_cmds` commands. +* More accurate and helpful information provided by the `ls` and `show_source` commands. +* Experimental autocompletion using type analysis ([doc](https://github.com/ruby/irb#type-based-completion)). +* It is now possible to change the font color and font style in the completion dialog by a newly introduced class Reline::Face ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) In addition, IRB has also undergone extensive refactoring and received dozens of bug fixes to facilitate easier future enhancements. +For more detailed updates, please refer to [Unveiling the big leap in Ruby 3.3's IRB](https://railsatscale.com/2023-12-19-irb-for-ruby-3-3/). + ## Compatibility issues Note: Excluding feature bug fixes. From 75873ec24fee03c3f81dc9b00a3d6acf07dcda78 Mon Sep 17 00:00:00 2001 From: Kazuhiro NISHIYAMA Date: Tue, 26 Dec 2023 10:31:39 +0900 Subject: [PATCH 131/607] Add snapshot-ruby_3_3 to downloads.yml Added since https://github.com/ruby/actions/commit/2dd9de5849dfbdfa6840652a830545a99c6ba9e4 --- _data/downloads.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/_data/downloads.yml b/_data/downloads.yml index f12cf5c53a..a0c0527617 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -23,6 +23,13 @@ eol: stable_snapshots: + - branch: ruby_3_3 + url: + gz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_3.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_3.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_3.zip + version: '3.3' + - branch: ruby_3_2 url: gz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_2.tar.gz From f3e82a0a57e8d0d45c1f35131cbf34999dcf8ce6 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 26 Dec 2023 16:55:37 +0900 Subject: [PATCH 132/607] Translate "Add a link to the IRB for Ruby 3.3 blog post" (ko) (#3169) * Translate "Add a link to the IRB for Ruby 3.3 blog post" (ko) * Update ko/news/_posts/2023-12-25-ruby-3-3-0-released.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ko/news/_posts/2023-12-25-ruby-3-3-0-released.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md b/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md index 759f321fee..6fa1d5deb6 100644 --- a/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md +++ b/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -121,14 +121,16 @@ Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.3 IRB에 여러 개선 사항이 추가됩니다. 다음과 같은 내용이 포함됩니다. -- 고급 `irb:rdbg` 통합 기능은 `pry-byebug`와 동등한 디버깅 경험을 제공합니다. ([문서](https://github.com/ruby/irb#debugging-with-irb)). -- `ls`와 `show_source`, `show_cmds`와 같은 명령어에서 페이징을 지원합니다. -- `ls`, `show_source` 명령에서 더 정확하고 유용한 정보를 제공합니다. -- 타입 분석을 사용하는 실험적인 자동 완성 기능을 제공합니다. ([문서](https://github.com/ruby/irb#type-based-completion)). -- Reline::Face 클래스의 도입으로 자동완성 다이얼로그의 글씨 색과 스타일이 변경 가능합니다. ([문서](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) +* 고급 `irb:rdbg` 통합 기능은 `pry-byebug`와 동등한 디버깅 경험을 제공합니다. ([문서](https://github.com/ruby/irb#debugging-with-irb)). +* `ls`와 `show_source`, `show_cmds`와 같은 명령어에서 페이징을 지원합니다. +* `ls`, `show_source` 명령에서 더 정확하고 유용한 정보를 제공합니다. +* 타입 분석을 사용하는 실험적인 자동 완성 기능을 제공합니다. ([문서](https://github.com/ruby/irb#type-based-completion)). +* Reline::Face 클래스의 도입으로 자동완성 다이얼로그의 글씨 색과 스타일이 변경 가능합니다. ([문서](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) 또한, IRB는 광범위한 리팩토링을 거쳤으며, 향후 개선이 용이하도록 많은 버그 수정이 이루어졌습니다. +더 자세한 변경은 [Ruby 3.3 IRB의 큰 도약을 공개합니다](https://railsatscale.com/2023-12-19-irb-for-ruby-3-3/)를 참조하세요. + ## 호환성 문제 주의: 기능 버그 수정은 포함되어 있지 않습니다. From f52b82ebfc9816bcbac8d6f3f25657f44fcd7a01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 26 Dec 2023 07:35:40 -0500 Subject: [PATCH 133/607] Translate Ruby 3.3.0 rc1 released news post (es) (#3158) --- .../2023-12-11-ruby-3-3-0-rc1-released.md | 384 ++++++++++++++++++ 1 file changed, 384 insertions(+) create mode 100644 es/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md diff --git a/es/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/es/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md new file mode 100644 index 0000000000..62ffd25323 --- /dev/null +++ b/es/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -0,0 +1,384 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.0-rc1" +author: "naruse" +translator: vtamara +date: 2023-12-11 00:00:00 +0000 +lang: es +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-rc1" | first %} + +Nos complace anunciar la publicación de Ruby {{ release.version }}. Ruby 3.3 +añade un nuevo analizador sintáctico llamado Prism, usa Lrama como +generador de analizadores, añade un nuevo compilador JIT en puro Ruby +llamado RJIT, e incluye muchas mejoras de desempeño especialmente de YJIT. + +Tras la publicación de RC1, evitaremos introducir incompatibilidades en la ABI +siempre que sea posible. Si requerimos hacerlo, lo anunciaremos en las +notas de publicación. + +## Prism + +* Se introduce [el analizador sintáctico Prism](https://github.com/ruby/prism) + como gema predeterminada. + * Prism es un analizador recursivo-descendente para el lenguaje Ruby + portable, tolerante a errores y mantenible +* Prism está listo para operar en producción es mantenido activamente + y puede emplearlo en lugar de Ripper + * Hay [amplia documentación](https://ruby.github.io/prism/) sobre como + usar Prism + * Prism es tanto una librería en C que es usada internamente por CRuby + como una gema que puede ser usada por cualquier herramienta que + necesite analizar código Ruby. + * Unos métodos notables de la API de Prism son: + * `Prism.parse(fuente)` que retorna el árbol de sintaxis + abstracta (AST) como parte de un ParseResult + * `Prism.dump(fuente, ruta)` que retorna el AST serializado como una + cadena + * `Prism.parse_comments(fuente)` que retorna los comentarios +* Puede hacer solicitudes de cambio o crear incidentes directamente en el + [repositorio de Prism](https://github.com/ruby/prism) si desea + contribuir. + +## Uso de Lrama en lugar de Bison + +* Se remplazó Bison por [el generador de analizadores LALR Lrama](https://github.com/ruby/lrama) + [Característica #19637](https://bugs.ruby-lang.org/issues/19637) + * Si tiene interés, por favor vea + [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * El analizadores interno de Lrama se ha remplazado con un + analizador LR generado por Racc para hacerlo más mantenible. + * Se soportan reglas de parametrización `(?, *, +)`, que serán + usadas en la fuente parse.y de Ruby. + +## RJIT + +* Se introdujo RJIT un compilador JIT en puro Ruby que remplaza a MJIT. + * RJIT soporta sólo la arquitectura x86-64 en plataformas Unix. + * A diferencia de MJIT, no require de un compilador C en tiempo de ejecución. +* RJIT existe sólo con propósitos experimentales. + * Debería seguir usando YJIT en producción. +* Si le interesa desarrollar un compilador JIT para Ruby, por favor + revise la [presentación de k0kubun en el día 3 de RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## YJIT + +* Mejoras mayores en desempeño respecto a 3.2 + * Mejorado el soporte para argumentos splat y para el resto de argumentos. + * Los registros se localizan para operaciones en pila de la máquina virtual. + * Se compilan más llamados con argumentos opcionales. + * Los manejadores de excepciones también se compilan. + * Las variables de instancia ya no salen al interprete con Formas de Objetos + mega-mórficas. + * Se optimizaron de manera especial `Integer#!=`, `String#!=`, + `Kernel#block_given?`, `Kernel#is_a?`, `Kernel#instance_of?` y + `Module#===`. + * Ahora es 3 veces más rápido que el interprete normal con optcarrot! +* Mejora significativa en el uso de memoria respecto a 3.2 + * Los meta-datos para el código compilado usan mucha menos memoria. + * Generación de código más compacto en ARM64 +* La velocidad de compilación es ahora un poco más rápida que en 3.2. +* Añade `RubyVM::YJIT.enable` que puede habilitar YJIT en tiempo de ejecución + * Puede iniciar YJIT sin modificar argumentos en la línea de ordenes + o variables de ambiente. + * Esto también puede usarse para habilitar YJIT sólo después de que la + aplicación haya completado el arranque. `--yjit-disable` puede usarse + si quiere usar otras opciones YJIT mientras deshabilita YJIT durante + el arranque. +* El recolector de basura en el código ahora está deshabilitado de manera + predeterminada, y `--yjit-exec-mem-size` se trata como un límite fuerte + en el que se detendrá la compilación de nuevo código. + * Esto produce un mejor comportamiento de copiar-al-escribir en + servidores que usen unicorn y bifurcación de procesos (forking) + * No hay disminuciones inesperadas en el desempeño debidas al + recolector de código basura. + * Aún puede habilitar el recolector de basura en el código si lo + desea con `--yjit-code-gc` +* La estadística `ratio_in_yjit` producida por `--yjit-stats` ahora está + disponible en compilaciones publicadas, ya no se requiere una + estadística especial o una compilación de desarrollo para acceder + a la mayoría de estadísticas. +* La opción para salir del modo con trazas ahora soporta muestreo + * `--trace-exits-sample-rate=N` +* Se añade `--yjit-perf` para facilitar hacer medición de desempeño + usando la herramienta perf de Linux +* Pruebas más extensas y correcciones a múltiples fallas + + +### Planificador de hilos M:N + +* Se introdujo un planificador de hilos M:N. [[Característica #19842]](https://bugs.ruby-lang.org/issues/19842) + * M hilos de Ruby son manejados por N hilos nativos (hilos del + sistema operativo) reduciendo así el costo de creación y + administración. + * Como puede romper la compatibilidad con extensiones en C, el + planificador de hilos M:N está deshabilitado de manera predeterminada + en el Ractor principal. + * La variable de ambiente `RUBY_MN_THREADS=1` habilita los hilos + M:N en el Ractor principal. + * Los hilos M:N se habilitan en Ractos que no son el principal. + * La variable de ambiente `RUBY_MAX_CPU=n` establece el máximo número + de `N` (número máximo de hilos nativos). El valor predeterminado es 8. + * Como sólo un hilo de Ruby por Ractor puede correr al mismo tiempo, + el número de hilos nativos se usará, sera el menor entre + el especificado en `RUBY_MAX_CPU` y el número de Ractors + que estén corriendo. Así que las aplicaciones con un sólo Ractor + (la mayoría de aplicaciones) usarán un solo hilo. + * Para soportar operaciones de bloqueo, pueden usarse más de + `N` hilos nativos. + + +## Otros Características Nuevas Notables + +### Lenguaje + +## Mejoras en desempeño + +* `defined?(@ivar)` se optimiza con Formas de Objetos. +* La resolución de nombres como con `Socket.getaddrinfo` ahora puede + interrumpirse (en ambientes donde estén disponibles pthreads). + [Característica #19965](https://bugs.ruby-lang.org/issues/19965) + * Con este propósito, se crea un pthread por cada llamada a + getaddrinfo o getnameinfo. Esto incurre en algo de gasto en la + resolución de nombres (alrededor de 2.5x en nuestros experimentos). + No esperamos que el gasto adicional en la resolución de nombres + sea un problema para la mayoría de aplicaciones, pero si lo nota, + o si ve efectos inesperados que crea que pueden deberse a este + cambio, por favor reportelos. +* Diversas mejoras de desempeño al Recolector de Basura + * Los objetos jóvenes referenciados por objetos viejos ya no se promueve + de inmediato a la generación vieja. Esto reduce significativamente la + frecuencia de recolección del Recolector de Basura (GC). + [[Característica #19678]](https://bugs.ruby-lang.org/issues/19678) + * Se introdujo la nueva variable de ajuste + `REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` + para controlar el número de objetos no protegidos que activan una + recolección del. De manera predeterminada se establece en `0.01` (1%). + Esto reduce significativamente la frecuencia de las recolecciones + mayores del GC. [[Característica #19571]](https://bugs.ruby-lang.org/issues/19571) + * Se implementaron Barreras de Escritura para muchos tipos básicos a los que + les hacia falta, son notables `Time`, `Enumerator`, `MatchData`, + `Method`, `File::Stat`, `BigDecimal` y muchos otros. Esto reduce + significativamente el tiempo de las recolecciones menores del GC + y la frecuencia de las recolecciones mayores. + * La mayoría de clases ahora usan Localización de Ancho Variable, + son notables `Hash`, `Time`, `Thread::Backtrace`, + `Thread::Backtrace::Location`, `File::Stat`, `Method`. + Esto hace más veloces estas clases para reservar y liberar, que + usen menos memoria y reduce la fragmentación en el montón (*heap*). + * Se ha agregado soporte para referencias débiles en el recolector + de basura. [[Característica #19783]](https://bugs.ruby-lang.org/issues/19783) + + +## Otros cambios notables desde 3.2 + +### IRB + +IRB ha recibido diversas mejoras, incluyendo --no limitadas a estas: + +- Integración avanzada `irb:rdbg` que provee una experiencia + de depuración equivalente a la de `pry-byebug` + ([doc](https://github.com/ruby/irb#debugging-with-irb)). +- Soporte de paginador para las ordenes `ls`, `show_source` y `show_cmds`. +- Las ordenes `ls` y `show_cmds` dan información más precisa y útil. +- Autocompletación experimental usando análisis de tipos + ([doc](https://github.com/ruby/irb#type-based-completion)). +- Ahora es posible cambiar el color del tipo de letra así como su estilo + en el diálogo de completación gracias a la recien introducida + clase Reline::Face ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +Además, IRB ha experimentado una re-factorización extensa y ha recibido +docenas de correcciones a fallas que facilitan ampliaciones futuras. + + +## Incidentes de compatibilidad + +Nota: Excluyendo correcciones a errores en características + +* Se desprecian llamadas a `it` sin argumentos en bloques sin parámetros + ordinarios. `it` será una referencia al primer parámetro de bloque en + Ruby 3.4. + [Característica #18980](https://bugs.ruby-lang.org/issues/18980) + +### Constantes elminadas + +Las siguientes constantes que eran despreciadas han sido eliminadas. + + +### Métodos eliminados + +Los siguientes métodos que eran despreciados han sido eliminados. + + +### Variables de ambientes eliminadas + +* La variable de ambiente `RUBY_GC_HEAP_INIT_SLOTS` es despreciada + y representa la operación de no hacer nada. En su remplazo por favor use las + variables de ambiente `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS`. + [Característica #19785](https://bugs.ruby-lang.org/issues/19785) + +## Problemas de compatibilidad con Stdlib + +### Eliminación de `ext/readline` + +* Tenemos `reline` que es una implementación en Ruby puro compatible con + el API de `ext/readline`. Dependeremos de `reline` a futuro. Si + necesita usar `ext/readline`, puede instalar `ext/readline` vía rubygems.org + con `gem install readline-ext`. +* Ya no necesitamos instalar librerías como `libreadline` o `libedit`. + +## Actualizaciones al API en C + +### APIs en C actualizados + +Los siguientes APIs han sido actualizados. + + + +### APIs en C eliminados + +Los siguientes APIs despreciados han sido eliminados. + +## Actualizaciones a la librería estándar + +RubyGems y Bundler avisan cuando el usuario requiere gemas que están +programadas para convertirse en gemas incluidas en versiones futuras +de Ruby. + +Librerías que son objetivo: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +Se ha añadido la siguiente gema. + +* prism 0.15.1 + +Las siguientes gemas predeterminadas se han actualizado. + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + + +La siguiente gema incluida ha sido promovida a gema predeterminada. + +* racc 1.7.3 + +Las siguientes gemas incluidas han sido actualizadas. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +Ver la publicación en GitHub como +[Logger](https://github.com/ruby/logger/releases) o +bien la bitácora de cambios con detalles de las gemas predeterminadas +y las gemas incluidas. + +Ver más detalles en el archivo +[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +o en [la bitácora de cambios](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}). + +¡Con estos cambios, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +desde Ruby 3.2.0! + +## Descargas + +* <{{ 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 }} + +## Qué es Ruby + +Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, +y ahora es desarrollado como Código Abieto. Corre en múltiples +plataformas y es usado en todo el mundo especialmente para desarrollo web. From d4ce923d6e20f1979311b919eec1179921cf853f Mon Sep 17 00:00:00 2001 From: Tommaso Barbato Date: Tue, 26 Dec 2023 17:01:51 +0100 Subject: [PATCH 134/607] Delete accidentally committed release.patch (#3171) --- release.patch | 41 ----------------------------------------- 1 file changed, 41 deletions(-) delete mode 100644 release.patch diff --git a/release.patch b/release.patch deleted file mode 100644 index 903bc2c6c7..0000000000 --- a/release.patch +++ /dev/null @@ -1,41 +0,0 @@ ---- a/_data/downloads.yml 2023-12-11 17:02:14 -+++ b/_data/downloads.yml 2023-12-11 17:02:14 -@@ -6,3 +6,3 @@ - -- - 3.3.0-preview3 -+ - 3.3.0-rc1 - ---- a/_data/releases.yml 2023-12-11 17:02:14 -+++ b/_data/releases.yml 2023-12-11 17:02:14 -@@ -23,2 +23,31 @@ - -+- version: 3.3.0-rc1 -+ date: 2023-12-11 -+ post: /en/news/2023/12/11/ruby-3-3-0-rc1-released/ -+ tag: v3_3_0_rc1 -+ stats: -+ files_changed: 5414 -+ insertions: 306141 -+ deletions: 183575 -+ url: -+ gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-rc1.tar.gz -+ zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-rc1.zip -+ xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.0-rc1.tar.xz -+ size: -+ gz: 21783575 -+ zip: 26735443 -+ xz: 16163884 -+ sha1: -+ gz: c75a860e06f27b7f69b874757417277c21d1d3f4 -+ zip: 35583453a7734216b08829ef0ec9ea1bc0d4ae7f -+ xz: 26503f9bdc7d0a05aaa9836f54d3aa9e74a9ead9 -+ sha256: -+ gz: c4ff82395a90ef76c7f906b7687026e0ab96b094dcf3a532d9ab97784a073222 -+ zip: 56dd82e1dd714f2889ca975ae7befbe005675de08839c2cc4a484de2ae65201c -+ xz: 051815637f1fa75a1edf2c54b66d5d5b69563daad777da8dc39543b7754b5290 -+ sha512: -+ gz: 265fb2ffe55af47d8349edffcebe749cc170291227cef55529fe4e67363e4e84b88daa34ffb5364a99c8a0e32110266a34c9a11d62f3bd6f6d47fa76eca641f4 -+ zip: 7fbe414c230aedc9f364512bcbc213038f8f6e4268929a559d2527e2f3e32a140b394e37098ab7e59161236eca8b89cc9e52d73a3be8d7bd44faa91681483f5d -+ xz: 82f4acfaad1dc47db27ee3eb952481a95b3474a98059e9e9f5ceb035b690d1faabe99f2ec52371c4089ed1615eb10c395f029088418fec4d26399b65b4f259b9 -+ - - version: 3.3.0-preview3 From ed8cd9d0c3ba2b23e111d2d8d20e3045c4bcb68d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 26 Dec 2023 13:52:13 -0500 Subject: [PATCH 135/607] Translate Ruby 3.3.0 released news post (es) (#3170) --- .../_posts/2023-12-25-ruby-3-3-0-released.md | 398 ++++++++++++++++++ 1 file changed, 398 insertions(+) create mode 100644 es/news/_posts/2023-12-25-ruby-3-3-0-released.md diff --git a/es/news/_posts/2023-12-25-ruby-3-3-0-released.md b/es/news/_posts/2023-12-25-ruby-3-3-0-released.md new file mode 100644 index 0000000000..a80848aab9 --- /dev/null +++ b/es/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -0,0 +1,398 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.0" +author: "naruse" +translator: vtamara +date: 2023-12-25 00:00:00 +0000 +lang: es +--- + +{% assign release = site.data.releases | where: "version", "3.3.0" | first %} + +Nos complace anunciar la publicación de Ruby {{ release.version }}. Ruby 3.3 +añade un nuevo analizador sintáctico llamado Prism, usa Lrama como +generador de analizadores, añade un nuevo compilador JIT en puro Ruby +llamado RJIT, e incluye muchas mejoras de desempeño especialmente de YJIT. + +## Prism + +* Se introduce [el analizador sintáctico Prism](https://github.com/ruby/prism) + como gema predeterminada. + * Prism es un analizador recursivo-descendente para el lenguaje Ruby + portable, tolerante a errores y mantenible +* Prism está listo para operar en producción es mantenido activamente + y puede emplearlo en lugar de Ripper + * Hay [amplia documentación](https://ruby.github.io/prism/) sobre como + usar Prism + * Prism es tanto una librería en C que es usada internamente por CRuby + como una gema que puede ser usada por cualquier herramienta que + necesite analizar código Ruby. + * Unos métodos notables de la API de Prism son: + * `Prism.parse(fuente)` que retorna el árbol de sintaxis + abstracta (AST) como parte de un objeto con el resultado del + reconocimiento + * `Prism.parse_success?(fuente)` que retorna verdadeor si no + hay errores + * `Prism.parse_comments(fuente)` que retorna los comentarios +* Puede hacer solicitudes de cambio o crear incidentes directamente en el + [repositorio de Prism](https://github.com/ruby/prism) si desea + contribuir. +* Ahora puede usar `ruby --parser=prism` o `RUBYOPT="--parser=prism"` + para experimentar con el compilador Prism. Por favor note que + esta opción es sólo para depurar. + +## Uso de Lrama en lugar de Bison + +* Se remplazó Bison por [el generador de analizadores LALR Lrama](https://github.com/ruby/lrama) + [[Característica #19637]](https://bugs.ruby-lang.org/issues/19637) + * Si tiene interés, por favor vea + [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * El analizadores interno de Lrama se ha remplazado con un + analizador LR generado por Racc para hacerlo más mantenible. + * Se soportan reglas de parametrización `(?, *, +)`, que serán + usadas en la fuente parse.y de Ruby. + +## YJIT + +* Mejoras mayores en desempeño respecto a Ruby 3.2 + * Mejorado el soporte para argumentos splat y para el resto de argumentos. + * Los registros se localizan para operaciones en la pila de la máquina + virtual. + * Se compilan más llamadas con argumentos opcionales. Los manejadores de + excepciones también se compilan. + * Las llamadas a tipos y los sitios de llamadas mega-mórficas ya no + salen al interprete. + * Métodos básicos como Rails `#blank?` y + [`#present?` especializado](https://github.com/rails/rails/pull/49909) + se manejan inline. + * `Integer#!=`, `String#!=`, + `Kernel#block_given?`, `Kernel#is_a?`, `Kernel#instance_of?` y + `Module#===` fueron optimizados de manera especial. + * La velocidad de compilación es un poco superior a la de Ruby 3.2. + * ¡Ahora es 3 veces más rápido que el interprete normal con Optcarrot! +* Mejora significativa en el uso de memoria respecto a 3.2 + * Los meta-datos para el código compilado usan mucha menos memoria. + * `--yjit-call-threshold` se eleva automáticamente de 30 a 120 + cuando la aplicación tiene más de 40,000 ISEQs. + * `--yjit-cold-threshold` se agrega para saltarse la compilación + de ISEQs en frio. + * Generación de código más compacto en ARM64 +* La velocidad de compilación es ahora un poco más rápida que en 3.2. +* El recolector de basura en el código (code GC) ahora está deshabilitado + de manera predeterminada + * `--yjit-exec-mem-size` es tratado como un límite fuerte + en el que se detendrá la compilación de nuevo código. + * No hay disminuciones inesperadas en el desempeño debidas al + recolector de código basura. + * Aún puede habilitar el recolector de basura en el código si lo + desea con `--yjit-code-gc` +* Añade `RubyVM::YJIT.enable` que puede habilitar YJIT en tiempo de ejecución + * Puede iniciar YJIT sin modificar argumentos en la línea de ordenes + o variables de ambiente. + Rails 7.2 [habilitará YJIT de manera predeterminada](https://github.com/rails/rails/pull/49947) + * Esto también puede usarse para habilitar YJIT sólo después de que la + aplicación haya completado el arranque. `--yjit-disable` puede usarse + si quiere usar otras opciones YJIT mientras deshabilita YJIT durante + el arranque. +* Hay más estadísticas de YJIT disponibles de manera predeterminada + * `yjit_alloc_size` y muchas más estadísticas relacionadas con + metadatos ahora están disponibles de manera predeterminada. + * La estadística `ratio_in_yjit` producida por `--yjit-stats` ahora está + disponible en las compilaciones publicadas, ya no se requiere una + estadística especial o una compilación de desarrollo para acceder + a la mayoría de estadísticas. +* Se agregan más posibilidades para analizar rendimiento + * Se añade `--yjit-perf` para facilitar el análisis de rendimiento + con la herramienta perf de Linux + * `--yjit-trace-exits` ahora soporta muestreo con + `--yjit-trace-exits-sample-rate=N` +* Pruebas más extensas y correcciones a múltiples fallas + +## RJIT + +* Se introdujo RJIT un compilador JIT en puro Ruby que remplaza a MJIT. + * RJIT soporta sólo la arquitectura x86-64 en plataformas Unix. + * A diferencia de MJIT, no require de un compilador C en tiempo de ejecución. +* RJIT existe sólo con propósitos experimentales. + * Debería seguir usando YJIT en producción. +* Si le interesa desarrollar un compilador JIT para Ruby, por favor + revise la [presentación de k0kubun en el día 3 de RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + + +### Planificador de hilos M:N + +* Se introdujo un planificador de hilos M:N. [[Característica #19842]](https://bugs.ruby-lang.org/issues/19842) + * M hilos de Ruby son manejados por N hilos nativos (hilos del + sistema operativo) reduciendo así el costo de creación y + administración. + * Como puede romper la compatibilidad con extensiones en C, el + planificador de hilos M:N está deshabilitado de manera predeterminada + en el Ractor principal. + * La variable de ambiente `RUBY_MN_THREADS=1` habilita los hilos + M:N en el Ractor principal. + * Los hilos M:N se habilitan siempre en Ractors que no son el principal. + * La variable de ambiente `RUBY_MAX_CPU=n` establece el máximo número + de `N` (número máximo de hilos nativos). El valor predeterminado es 8. + * Como sólo un hilo de Ruby por Ractor puede correr al mismo tiempo, + el número de hilos nativos se usará, sera el menor entre + el especificado en `RUBY_MAX_CPU` y el número de Ractors + que estén corriendo. Así que las aplicaciones con un sólo Ractor + (la mayoría de aplicaciones) sólo usarán un hilo nativo. + * Para soportar operaciones de bloqueo, pueden usarse más de + `N` hilos nativos. + + +## Mejoras en desempeño + +* `defined?(@ivar)` se optimiza con Formas de Objetos. +* La resolución de nombres como con `Socket.getaddrinfo` ahora puede + interrumpirse (en ambientes donde estén disponibles pthreads). + [[Característica #19965]](https://bugs.ruby-lang.org/issues/19965) + * Con este propósito, se crea un pthread por cada llamada a + getaddrinfo o getnameinfo. Esto incurre en algo de gasto en la + resolución de nombres (alrededor de 2.5x en nuestros experimentos). + No esperamos que el gasto adicional en la resolución de nombres + sea un problema para la mayoría de aplicaciones, pero si lo nota, + o si ve efectos inesperados que crea que pueden deberse a este + cambio, por favor reportelos. +* Diversas mejoras de desempeño al Recolector de Basura + * Los objetos jóvenes referenciados por objetos viejos ya no se promueve + de inmediato a la generación vieja. Esto reduce significativamente la + frecuencia de recolección del Recolector de Basura (GC). + [[Característica #19678]](https://bugs.ruby-lang.org/issues/19678) + * Se introdujo la nueva variable de ajuste + `REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` + para controlar el número de objetos no protegidos que activan una + recolección del. De manera predeterminada se establece en `0.01` (1%). + Esto reduce significativamente la frecuencia de las recolecciones + mayores del GC. [[Característica #19571]](https://bugs.ruby-lang.org/issues/19571) + * Se implementaron Barreras de Escritura para muchos tipos básicos a los que + les hacia falta, son notables `Time`, `Enumerator`, `MatchData`, + `Method`, `File::Stat`, `BigDecimal` y muchos otros. Esto reduce + significativamente el tiempo de las recolecciones menores del GC + y la frecuencia de las recolecciones mayores. + * La mayoría de clases ahora usan Localización de Ancho Variable, + son notables `Hash`, `Time`, `Thread::Backtrace`, + `Thread::Backtrace::Location`, `File::Stat`, `Method`. + Esto hace más veloces estas clases para reservar y liberar, que + usen menos memoria y reduce la fragmentación en el montón (*heap*). + * Se ha agregado soporte para referencias débiles en el recolector + de basura. [[Característica #19783]](https://bugs.ruby-lang.org/issues/19783) + + +## Otros cambios notables desde 3.2 + +### IRB + +IRB ha recibido diversas mejoras, incluyendo --no limitadas a estas: + +* Integración avanzada `irb:rdbg` que provee una experiencia + de depuración equivalente a la de `pry-byebug` + ([doc](https://github.com/ruby/irb#debugging-with-irb)). +* Soporte de paginador para las ordenes `ls`, `show_source` y `show_cmds`. +* Las ordenes `ls` y `show_cmds` dan información más precisa y útil. +* Autocompletación experimental usando análisis de tipos + ([doc](https://github.com/ruby/irb#type-based-completion)). +* Ahora es posible cambiar el color del tipo de letra así como su estilo + en el diálogo de completación gracias a la recien introducida + clase Reline::Face ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +Además, IRB ha experimentado una re-factorización extensa y ha recibido +docenas de correcciones a fallas que facilitan ampliaciones futuras. + +Para actualizaciones más detalladas, por favor vea +[Unveiling the big leap in Ruby 3.3's IRB](https://railsatscale.com/2023-12-19-irb-for-ruby-3-3/). + +## Incidentes de compatibilidad + +Nota: Excluyendo correcciones a errores en características + +* Se desprecian llamadas a `it` sin argumentos en bloques sin parámetros + ordinarios. `it` será una referencia al primer parámetro de bloque en + Ruby 3.4. + [[Característica #18980]](https://bugs.ruby-lang.org/issues/18980) + +### Variables de ambientes eliminadas + +* La variable de ambiente `RUBY_GC_HEAP_INIT_SLOTS` es despreciada + y representa la operación de no hacer nada. En su remplazo por favor use las + variables de ambiente `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS`. + [[Característica #19785]](https://bugs.ruby-lang.org/issues/19785) + +## Problemas de compatibilidad con Stdlib + +### Eliminación de `ext/readline` + +* Tenemos `reline` que es una implementación en Ruby puro compatible con + el API de `ext/readline`. Dependeremos de `reline` a futuro. Si + necesita usar `ext/readline`, puede instalar `ext/readline` vía rubygems.org + con `gem install readline-ext`. +* Ya no necesitamos instalar librerías como `libreadline` o `libedit`. + +## Actualizaciones al API en C + +### APIs en C actualizados + +Los siguientes APIs han sido actualizados. + + + +### APIs en C eliminados + +Los siguientes APIs despreciados han sido eliminados. + +## Actualizaciones a la librería estándar + +RubyGems y Bundler avisan cuando el usuario hace `require` de las +gemas siguientes sin añadirlas al Gemfile o al gemspec. +Esto porque se convertirán en gemas incluidas en versiones futuras +de Ruby. + +Librerías que son objetivo: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +Se ha añadido la siguiente gema. + +* prism 0.19.0 + +Las siguientes gemas predeterminadas se han actualizado. + +* RubyGems 3.5.3 +* abbrev 0.1.2 +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.3 +* cgi 0.4.1 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* error_highlight 0.6.0 +* etc 1.4.3 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.7.1 +* io-nonblock 0.3.0 +* io-wait 0.3.1 +* ipaddr 1.2.6 +* irb 1.11.0 +* json 2.7.1 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.1 +* open3 0.2.1 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.2 +* rdoc 6.6.2 +* readline 0.0.4 +* reline 0.4.1 +* resolv 0.3.0 +* rinda 0.2.0 +* securerandom 0.3.1 +* set 1.1.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.1.0 +* strscan 3.0.7 +* syntax_suggest 2.0.0 +* syslog 0.1.2 +* tempfile 0.2.1 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +La siguiente gema incluida ha sido promovida a gema predeterminada. + +* racc 1.7.3 + +Las siguientes gemas incluidas han sido actualizadas. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-ftp 0.3.3 +* net-imap 0.4.9 +* net-smtp 0.4.0 +* rbs 3.4.0 +* typeprof 0.21.9 +* debug 1.9.1 + +Ver la publicación en GitHub como +[Logger](https://github.com/ruby/logger/releases) o +bien la bitácora de cambios con detalles de las gemas predeterminadas +y las gemas incluidas. + +Ver más detalles en el archivo +[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +o en [la bitácora de cambios](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}). + +¡Con estos cambios, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +desde Ruby 3.2.0! + +¡Feliz Navidad, Felices Fiestas, y disfrute programando con Ruby 3.3! + +## Descargas + +* <{{ 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 }} + +## Qué es Ruby + +Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, +y ahora es desarrollado como Código Abieto. Corre en múltiples +plataformas y es usado en todo el mundo especialmente para desarrollo web. From 66d07609bb9f7633a44e48500c1bd871c6812659 Mon Sep 17 00:00:00 2001 From: Fernando Briano Date: Thu, 28 Dec 2023 15:02:29 +0000 Subject: [PATCH 136/607] Fixes typo in Spanish translation --- es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md | 2 +- es/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md | 2 +- es/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- es/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 2 +- es/news/_posts/2023-12-25-ruby-3-3-0-released.md | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md b/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md index 3885be5a52..58d4ca19c6 100644 --- a/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md +++ b/es/news/_posts/2023-05-12-ruby-3-3-0-preview1-released.md @@ -166,5 +166,5 @@ desde Ruby 3.2.0! ## Qué es Ruby Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, -y ahora es desarrollado como Código Abieto. Corre en múltiples +y ahora es desarrollado como Código Abierto. Corre en múltiples plataformas y es usado en todo el mundo especialmente para desarrollo web. diff --git a/es/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md b/es/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md index 95bd6b2405..95fb92bc5b 100644 --- a/es/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md +++ b/es/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -199,5 +199,5 @@ desde Ruby 3.2.0! ## Qué es Ruby Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, -y ahora es desarrollado como Código Abieto. Corre en múltiples +y ahora es desarrollado como Código Abierto. Corre en múltiples plataformas y es usado en todo el mundo especialmente para desarrollo web. diff --git a/es/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/es/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index 174809724a..ce25b7f128 100644 --- a/es/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/es/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -350,5 +350,5 @@ desde Ruby 3.2.0! ## Qué es Ruby Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, -y ahora es desarrollado como Código Abieto. Corre en múltiples +y ahora es desarrollado como Código Abierto. Corre en múltiples plataformas y es usado en todo el mundo especialmente para desarrollo web. diff --git a/es/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/es/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index 62ffd25323..d8b9474689 100644 --- a/es/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/es/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -380,5 +380,5 @@ desde Ruby 3.2.0! ## Qué es Ruby Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, -y ahora es desarrollado como Código Abieto. Corre en múltiples +y ahora es desarrollado como Código Abierto. Corre en múltiples plataformas y es usado en todo el mundo especialmente para desarrollo web. diff --git a/es/news/_posts/2023-12-25-ruby-3-3-0-released.md b/es/news/_posts/2023-12-25-ruby-3-3-0-released.md index a80848aab9..99a9a8ec6e 100644 --- a/es/news/_posts/2023-12-25-ruby-3-3-0-released.md +++ b/es/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -394,5 +394,5 @@ desde Ruby 3.2.0! ## Qué es Ruby Ruby primero fue desarrollado por Matz (Yukihiro Matsumoto) en 1993, -y ahora es desarrollado como Código Abieto. Corre en múltiples +y ahora es desarrollado como Código Abierto. Corre en múltiples plataformas y es usado en todo el mundo especialmente para desarrollo web. From e180c80bce5f80c3da265b05a5480ce19744049d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jan 2024 00:33:49 +0900 Subject: [PATCH 137/607] Bump ruby/setup-ruby from 1.162.0 to 1.165.1 (#3174) Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.162.0 to 1.165.1. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/af848b40be8bb463a751551a1180d74782ba8a72...360dc864d5da99d54fcb8e9148c14a84b90d3e88) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index be65b9757d..dd177299b7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@af848b40be8bb463a751551a1180d74782ba8a72 # v1.162.0 + uses: ruby/setup-ruby@360dc864d5da99d54fcb8e9148c14a84b90d3e88 # v1.165.1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index b72495a349..323c2c518b 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby - uses: ruby/setup-ruby@af848b40be8bb463a751551a1180d74782ba8a72 # v1.162.0 + uses: ruby/setup-ruby@360dc864d5da99d54fcb8e9148c14a84b90d3e88 # v1.165.1 with: ruby-version: '3.2' bundler-cache: true From d9c7147ec3ba91ffcf5a85077879b1d2ed261ab4 Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Mon, 8 Jan 2024 10:46:37 +0800 Subject: [PATCH 138/607] Translate Ruby 3.3.0 Released (zh_cn) (#3172) Co-authored-by: Alex Shi --- .../_posts/2023-12-25-ruby-3-3-0-released.md | 286 ++++++++++++++++++ 1 file changed, 286 insertions(+) create mode 100644 zh_cn/news/_posts/2023-12-25-ruby-3-3-0-released.md diff --git a/zh_cn/news/_posts/2023-12-25-ruby-3-3-0-released.md b/zh_cn/news/_posts/2023-12-25-ruby-3-3-0-released.md new file mode 100644 index 0000000000..6e93ea1409 --- /dev/null +++ b/zh_cn/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -0,0 +1,286 @@ +--- +layout: news_post +title: "Ruby 3.3.0 已发布" +author: "naruse" +translator: GAO Jun +date: 2023-12-25 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.3.0" | first %} +我们很高兴地宣布 Ruby {{ release.version }} 发布。 +Ruby 3.3 新增了 Prism 解析器,使用 Lrama 作为解析生成器,新增了纯 Ruby 实现的 JIT 编译器 RJIT,另有许多性能改进,尤其是 YJIT。 + +## Prism + +* 引入 [Prism 解析器](https://github.com/ruby/prism) 为默认 gem + * Prism 是一个可移植、容错且可维护的 Ruby 语言递归下降解析器 +* Prism 已可用于生产环境,并得到了积极维护,您可以使用它来代替 Ripper + * 有关于如何使用 Prism 的 [详细文档](https://ruby.github.io/prism/) + * Prism 既是 CRuby 内部使用的 C 库,也是任何需要解析 Ruby 代码的工具可以使用的 Ruby gem + * Prism API 中值得注意的方法有: + * `Prism.parse(source)` 返回 AST 作为解析结果对象的一部分 + * `Prism.parse_comments(source)` 返回注释 + * `Prism.parse_success?(source)` 返回解析是否成功(没有错误) +* 如果您有兴趣贡献,可以直接在 [Prism 代码库](https://github.com/ruby/prism) 上提出拉取请求或报告问题 +* 您现在可以通过 `ruby --parser=prism` 或 `RUBYOPT="--parser=prism"` 来试用 Prism 编译器。 请注意,此选项仅用于调试。 + +## 使用 Lrama 替代 Bison + +* 使用 [Lrama LALR 解析生成器](https://github.com/ruby/lrama) 替换 Bison [[Feature #19637]](https://bugs.ruby-lang.org/issues/19637) + * 如果您有兴趣,请参阅 [Ruby 解析器的未来愿景](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * Lrama 内部解析器被 Racc 生成的 LR 解析器替换,以便于维护 + * 已支持参数化规则 `(?, *, +)` ,将被用于 Ruby parse.y 中 + +## YJIT + +* 相对于 Ruby 3.2 的主要性能提升 + * 改进了 splat 和 rest 参数支持。 + * 虚拟机的栈操作分配了寄存器。 + * 更多带有可选参数的调用被编译。错误处理也被编译。 + * 不支持的调用类型和多态调用不再推出到解释器执行。 + * 诸如 Rails 的 `#blank?` 和 [特定的 `#present?`](https://github.com/rails/rails/pull/49909) 现在被内联。 + * 特别优化了 `Integer#*`, `Integer#!=`, `String#!=`, `String#getbyte`, + `Kernel#block_given?`, `Kernel#is_a?`, `Kernel#instance_of?`, `Module#===`。 + * 编译速度比 Ruby 3.2 略快。 + * 比 Optcarrot 的解释器快 3 倍以上! +* 内存利用率相较 Ruby 3.2 有显著提升 + * 编译代码所用的元数据使用更少的内存。 + * 当应用程序超过 40000 ISEQ 时,`--yjit-call-threshold` 自动从 30 提升到 120。 + * 增加 `--yjit-cold-threshold` 来跳过编译冷 ISEQ。 + * 在 ARM64 中的生成更多紧凑代码。 +* 代码垃圾收集现在默认禁用 + * 将 `--yjit-exec-mem-size` 作为新代码编译停止的硬限制。 + * 代码垃圾收集不会导致性能突然大幅降低 + 基于 [Pitchfork](https://github.com/shopify/pitchfork) 为服务器上的重新分叉提供更好的写时复制行为。 + * 您依旧可以通过 `--yjit-code-gc` 启用代码垃圾收集 +* 新增 `RubyVM::YJIT.enable` 可以在运行时启用 YJIT + * 您可以在不修改命令行参数或环境变量的情况下启用 YJIT。 + Rails 7.2 将通过此方法 [默认启用 YJIT](https://github.com/rails/rails/pull/49947)。 + * 这也可以用于在应用程序启动完成后,仅启用 YJIT 一次。当您在启动程序时禁用了 YJIT ,您可以通过 `--yjit-disable` 来使用其他 YJIT 选项。 +* 默认可以获取更多的 YJIT 状态 + * `yjit_alloc_size` 和一些更多的元数据相关状态现在默认可用。 + * 发布版本中,现在可以用到通过 `--yjit-stats` 产生的 `ratio_in_yjit` 统计信息,不再需要特殊的统计信息或开发版本。 +* 新增更多性能分析能力 + * 新增 `--yjit-perf` 以便于利用 Linux perf 进行性能分析。 + * `--yjit-trace-exits` 现在支持通过 `--yjit-trace-exits-sample-rate=N` 进行取样 +* 更彻底的测试及多个错误修复 + +## RJIT + +* 引入了纯 Ruby 的 JIT 编译器 RJIT 并替代 MJIT。 + * RJIT 仅支持 x86\_64 架构上的 Unix 平台。 + * 不同于 MJIT,RJIT在运行时不需要 C 编译器。 +* RJIT 目前仅用于实验目的。 + * 您在生产环境中应当继续使用 YJIT。 +* 如果您有兴趣为 Ruby 开发 JIT,请查看 [k0kubun 在 RubyKaigi 第 3 天 中的演讲](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)。 + +## M:N 线程调度器 + +* 引入了 M:N 线程调度器。[[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M 个 Ruby 线程由 N 个原生线程(OS 线程)管理,从而降低线程创建和管理成本。 + * 由于可能会破坏 C 扩展的兼容性,因此在默认情况下,主 Ractor 上禁用 M:N 线程调度器。 + * 可通过环境变量 `RUBY_MN_THREADS=1` 在主 Ractor 上启用 M:N 线程。 + * 非主 Ractor 上总是启用 M:N 线程。 + * 可通过环境变量 `RUBY_MAX_CPU=n` 设置 `N` 的最大值(原生线程的最大数量)。默认值为 8。 + * 由于每个 Ractor 中只能同时运行一个 Ruby 线程,因此将使用原生线程的数量,即 `RUBY_MAX_CPU` 和运行中的 Ractor 数量中较小的值。因此单 Ractor 应用程序(大多数应用程序)将仅使用 1 个原生线程。 + * 为了支持阻塞操作,可以使用多于 `N` 个原生线程。 + +## 性能提升 + +* 根据对象形状,优化 `defined?(@ivar)`。 +* 诸如 `Socket.getaddrinfo` 的域名解析现在可以被中断(在 pthreads 可用的环境中)。[[Feature #19965]](https://bugs.ruby-lang.org/issues/19965) +* 垃圾收集器的一些性能改进 + * 老对象引用的年轻对象不再立即提升到老一代。这显着降低了主要垃圾收集的频率。 [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) + * 新增调节变量 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` 来控制导致触发主要垃圾收集的未保护对象的数量。 + 默认设置为 `0.01` (1%)。这显著降低了主要垃圾收集的频率。 [[Feature #19571]](https://bugs.ruby-lang.org/issues/19571) + * 为许多缺少写入屏障的核心类型实现了写入屏障,特别是`Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal`等。 + 这显着减少了次要垃圾收集时间和主要垃圾收集的频率。 + * 大多数核心类现在都使用可变宽度分配,特别是`Hash`, `Time`, `Thread::Backtrace`, `Thread::Backtrace::Location`, `File::Stat`, `Method`。 + 这使得这些类的分配和释放速度更快,使用更少的内存并减少堆碎片。 + * 垃圾收集器中添加了对弱引用的支持。 [功能 #19783](https://bugs.ruby-lang.org/issues/19783) + + +## 自 3.2 以来,其他值得注意的变化 + +### IRB + +IRB 进行了多项增强功能,包括但不限于: + +* 高级 `irb:rdbg` 集成,提供了类似 `pry-byebug` 的调试体验([文档](https://github.com/ruby/irb#debugging-with-irb))。 +* 为 `ls` 和 `show_cmds` 这样的方法提供分页支持。 +* 为 `ls` 和 `show_source` 方法提供更准确更有用的信息。 +* 实验性的基于类型分析的自动补全功能([文档](https://github.com/ruby/irb#type-based-completion))。 +* 现在可以通过新引入的类 Reline::Face 来更改自动补全对话框中的字体颜色和字体样式([文档](https://github.com/ruby/ruby/blob/master/doc/reline/face.md))。 + +另外,IRB 还进行了广泛的重构,修复了数十个错误,以便未来的增强。 + +如需了解更详细信息,请参考 [Unveiling the big leap in Ruby 3.3's IRB](https://railsatscale.com/2023-12-19-irb-for-ruby-3-3/)。 + +## 兼容性问题 + +注意:不包括 bug 修复。 + +* 在没有普通参数的 block 中对于没有参数的 `it` 调用被废弃。`it` 将在 Ruby 3.4 中作为第一个 block 参数的引用。[[Feature #18980]](https://bugs.ruby-lang.org/issues/18980) + +### 移除的环境变量 + +移除了以下已废除的环境变量 + +* 环境变量 `RUBY_GC_HEAP_INIT_SLOTS` 被废弃,并不再产生实际作用。请使用环境变量 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` 进行替代。 [[Feature #19785]](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib 兼容性问题 + +### `ext/readline` 已退役 + +* 我们有了纯 Ruby 实现的 `reline`,兼容 `ext/readline` API。未来我们将依赖 `reline`。如果您需要使用 `ext/readline`,可以通过 rubygems.org 进行安装 `gem install readline-ext`。 +* 我们不再需要安装类似 `libreadline` 或 `libedit` 这样的库了。 + +## 标准库更新 + +如果在 Gemfile 或 gemspec 中没有加入下列 gems,那么当用户 `require` 这些 gems时,RubyGems 和 Bundler 会发出警告。 +因为这些 gems 会在将来的 Ruby 版本中成为绑定的 gems 库。 + +当时用 bootsnap gem 时,将不显示此警告。我们建议使用 `DISABLE_BOOTSNAP=1` 环境变量运行您的应用程序至少一次。这是此版本的限制。 + +这些库包括: +* abbrev +* base64 +* bigdecimal +* csv +* drb +* getoptlong +* mutex_m +* nkf +* observer +* racc +* resolv-replace +* rinda +* syslog + +新增以下默认 gem。 + +* prism 0.19.0 + +更新了以下默认 gems。 + +* RubyGems 3.5.3 +* abbrev 0.1.2 +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.3 +* cgi 0.4.1 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* error_highlight 0.6.0 +* etc 1.4.3 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.7.1 +* io-nonblock 0.3.0 +* io-wait 0.3.1 +* ipaddr 1.2.6 +* irb 1.11.0 +* json 2.7.1 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.1 +* open3 0.2.1 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.2 +* rdoc 6.6.2 +* readline 0.0.4 +* reline 0.4.1 +* resolv 0.3.0 +* rinda 0.2.0 +* securerandom 0.3.1 +* set 1.1.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.1.0 +* strscan 3.0.7 +* syntax_suggest 2.0.0 +* syslog 0.1.2 +* tempfile 0.2.1 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +以下默认 gem 成为绑定 gem + +* racc 1.7.3 + +更新了以下绑定 gems。 + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-ftp 0.3.3 +* net-imap 0.4.9 +* net-smtp 0.4.0 +* rbs 3.4.0 +* typeprof 0.21.9 +* debug 1.9.1 + +有关默认 gems 和 绑定 gems 的细节,可以参考 GitHub 上的发布,例如 [logger gem](https://github.com/ruby/logger/releases) 或相应的变更日志。 + +更多详情,可参见 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +或 [提交日志](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }})。 + +自 Ruby 3.2.0 以来,[{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+), 删除 {{ release.stats.deletions }} 行(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)! + +圣诞快乐,节日快乐,享受 Ruby 3.3 的编程乐趣! + +## 下载 + +* <{{ 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 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发,现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是Web开发领域。 From b5a5265420092406265840cdf6bfd22f0d46926d Mon Sep 17 00:00:00 2001 From: Bear Su Date: Mon, 8 Jan 2024 10:53:01 +0800 Subject: [PATCH 139/607] Translate Ruby 3.3.0 released news post (zh_tw) (#3160) Co-authored-by: Alex Shi --- .../_posts/2023-12-25-ruby-3-3-0-released.md | 283 ++++++++++++++++++ 1 file changed, 283 insertions(+) create mode 100644 zh_tw/news/_posts/2023-12-25-ruby-3-3-0-released.md diff --git a/zh_tw/news/_posts/2023-12-25-ruby-3-3-0-released.md b/zh_tw/news/_posts/2023-12-25-ruby-3-3-0-released.md new file mode 100644 index 0000000000..8e037e0c4e --- /dev/null +++ b/zh_tw/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -0,0 +1,283 @@ +--- +layout: news_post +title: "Ruby 3.3.0 發布" +author: "naruse" +translator: "Bear Su" +date: 2023-12-25 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.3.0" | first %} +我們很高興宣布 Ruby {{ release.version }} 發佈了。 Ruby 3.3 新增了名為 Prism 的 Parser,使用了 Lrama 做為 Parser 產生器,新增了名為 RJIT,純 Ruby 開發的 JIT 編譯器,以及更多效能提升,尤其是 YJIT。 + +## Prism + +* 導入 [the Prism parser](https://github.com/ruby/prism) 為預設 gem。 + * Prism 是可移植、可容錯、且可維護的 Ruby 語言遞迴下降解析器。 +* Prism 已可用於生產環境,並積極維護,您可以用來替代 Ripper。 + * 有關如何使用 Prism 的 [詳細文件](https://ruby.github.io/prism/)。 + * Prism 是 CRuby 內部使用的 C 函式庫,同時也是任何需要解析 Ruby 程式碼的工具鏈可以使用的 Ruby gem。 + * Prism API 中值得注意的方法為: + * `Prism.parse(source)` 回傳 AST 作為解析結果的一部分。 + * `Prism.parse_comments(source)` 回傳註解。 + * `Prism.parse_success?(source)` 如果沒有發生錯誤回傳 true。 +* 如果您有興趣貢獻,您可以直接在 [the Prism repository](https://github.com/ruby/prism) 上建立 pull requests 或 issues。 +* 您現在可以使用 `ruby --parser=prism` 或 `RUBYOPT="--parser=prism"` 體驗 Prism 編譯器。請注意這個指令列參數只用來除錯。 + +## 使用 Lrama 取代 Bison + +* 使用 [Lrama LALR parser generator](https://github.com/ruby/lrama) [[Feature #19637]](https://bugs.ruby-lang.org/issues/19637) 取代 Bison。 + * 如果您感興趣,請參閱 [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html)。 + * 為了維護性,Lrama internal parser 改用 Racc 產生的 LR parser。 + * 支援 Parameterizing Rules `(?, *, +)`,能夠在 Ruby parse.y 中被使用。 + +## YJIT + +* 自 3.2 主要效能提升 + * 改善 splat 和 rest arguments 的支援。 + * 虛擬機器分配了暫存器,用於堆疊操作。 + * 更多帶有可選參數的呼叫會被編譯。 錯誤處理也會被編譯。 + * 不支援的呼叫類型不再返回給直譯器。 + * 基本方法如 Rails `#blank?` 與 [specialized `#present?`](https://github.com/rails/rails/pull/49909) 變為內聯(inlined)。 + * 特別改善了 `Integer#*`、`Integer#!=`、`String#!=`、`String#getbyte`、`Kernel#block_given?`、`Kernel#is_a?`、`Kernel#instance_of?`、`Module#===`。 + * 編譯速度比 3.2 稍快一些。 + * 目前比 optcarrot 的直譯器快上 3 倍! +* 自 3.2 以來顯著提高了記憶體使用率 + * 已編譯的程式碼的元資料使用更少的記憶體。 + * 當應用程式有超過 40,000 ISEQs 時,`--yjit-call-threshold` 會自動從 30 提高到 120。 + * 新增 `--yjit-cold-threshold` 以略過編譯 cold ISEQs。 + * 在 ARM64 產生更緊湊的程式碼。 +* 預設停用程式碼 GC + * `--yjit-exec-mem-size` 作為新程式碼編譯停止的硬限制。 + * 不會因為程式碼 GC 導致效能突然下降。 + 使用 [Pitchfork](https://github.com/shopify/pitchfork) 在伺服器 reforking 有更好的 copy-on-write 行為。 + * 如果需要,您仍然可以使用 `--yjit-code-gc` 啟用程式碼 GC。 +* 新增 `RubyVM::YJIT.enable`,可以在 run-time 中啟用 YJIT。 + * 您可以在不修改指令列參數或環境變數的情況下啟動 YJIT。 + Rails 7.2 將透過此方法 [預設啟用 YJIT](https://github.com/rails/rails/pull/49947)。 + * 可用於僅在您的應用程式完成啟動後啟用 YJIT。 如果您在啟動程式時停用了 YJIT,可以使用 `--yjit-disable` 來使用其他 YJIT 選項。 +* 預設提供更多 YJIT 統計數據 + * 現在預設提供 `yjit_alloc_size` 和幾個更多與元資料相關的統計。 + * 發布版本現在提供透過 `--yjit-stats` 產生的 `ratio_in_yjit` 統計資訊,不再需要特殊的統計資訊或是開 +* 新增更多性能分析功能 + * 新增 `--yjit-perf` 以便於使用 Linux perf 進行性能分析。 + * `--yjit-trace-exits` 現在支援透過 `--yjit-trace-exits-sample-rate=N` 抽樣。 +* 更多測試與錯誤修復 + +## RJIT + +* 導入純 Ruby 開發的 JIT 編譯器 RJIT 並取代 MJIT。 + * RJIT 僅支援 x86\_64 架構的 Unix 平台。 + * 不同於 MJIT,RJIT 在執行時不需要 C 編譯器。 +* RJIT 目前還在實驗階段。 + * 您在生產環境應繼續使用 YJIT。 +* 如果您有興趣為 Ruby 開發 JIT,請參閱 [k0kubun's 在 RubyKaigi 第 3 天的演講](https://rubykaigi.org/2023/presentations/k0kubun.html#day3)。 + +## M:N thread scheduler + +* 導入 M:N thread scheduler。 [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M 個 Ruby 執行緒由 N 個原生執行緒(OS 執行緒)管理,所以能減少執行緒建立與管理的成本。 + * 由於會破壞 C-extension 的相容性,所以預設在主 Ractor 上停用 M:N thread scheduler。 + * 透過 `RUBY_MN_THREADS=1` 環境變數在主 Ractor 啟用 M:N threads。 + * 在非主 Ractors 上總是啟用 M:N threads。 + * 可使用 `RUBY_MAX_CPU=n` 環境變數設定 `N` 的最大值 (原生執行緒的最大數量)。預設值為 8。 + * 由於每一個 Ractor 同時只能執行一個 Ruby 執行緒,所以將使用原生執行緒的數量,即 `RUBY_MAX_CPU` 和執行 Ractor 數量中較小的值,因此單一 Ractor 應用程式 (大多數應用程式) 只會使用一個原生執行緒。 + * 為支援阻塞操作,可以使用多餘 `N` 個原生執行緒。 + +## 效能提升 + +* `defined?(@ivar)` 透過 Object Shapes 提升效能。 +* 像是 `Socket.getaddrinfo` 的域名解析現在可以被中斷 (在可用 pthreads 的環境下)。 [[Feature #19965]](https://bugs.ruby-lang.org/issues/19965) +* 垃圾收集器的一些效能提升 + * 被舊物件參考的年輕物件不再立即提升為舊世代。這顯著降低了 major GC 收集的頻率。 [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) + * 新增調整變數 `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` 用來控制導致觸發 major GC 收集的未受保護物件的數量。預設為 `0.01` (1%)。這顯著降低了 major GC 收集的頻率。 [Feature #19571](https://bugs.ruby-lang.org/issues/19571) + * 為幾個缺少寫入屏障(Write Barriers)的核心類型進行實作,特別是 `Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal` 等。這顯著地減少 minor GC 收集時間與 major GC 收集頻率。 + * 大部分核心類別現在使用可變寬度分配,特別是 `Hash`, `Time`, `Thread::Backtrace`, `Thread::Backtrace::Location`, `File::Stat`, `Method`。 + 這使得這些類別更快被分配與釋放,使用更少的記憶體與減少堆疊碎片。 + * 垃圾收集器加入弱參考的支援。 [Feature #19783](https://bugs.ruby-lang.org/issues/19783) + + +## 自 3.2 以來其他值得注意的變更 + +### IRB + +IRB 進行了數項改善,包括但不限於: + +- 加強 `irb:rdbg` 整合以提供與 `pry-byebug` 相同的除錯體驗 ([文件](https://github.com/ruby/irb#debugging-with-irb))。 +- Pager 支援指令,例如 `ls` 和 `show_cmds`。 +- `ls` 和 `show_source` 指令提供了更準確和有幫助的資訊。 +- 使用 type 分析的實驗係自動補齊 ([doc](https://github.com/ruby/irb#type-based-completion))。 +- 透過新導入的類別 Reline::Face,可以更改補齊視窗中的字體顏色與字體樣式 ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md))。 + +此外,IRB 還進行了大量重構和修復了許多錯誤,以方便未來強化功能。 + +請參見 [Unveiling the big leap in Ruby 3.3's IRB](https://railsatscale.com/2023-12-19-irb-for-ruby-3-3/) 來了解更多。 + +## 相容性問題 + +注意:不包含功能問題的修正。 + +* 棄用在沒有普通參數的區塊中不帶參數呼叫 `it`。 在 Ruby 3.4 中 `it` 將會參考 block 的第一個參數。 + [[Feature #18980]](https://bugs.ruby-lang.org/issues/18980) + +### 被移除的環境變數 + +下列廢棄的環境變數已被移除。 + +* 環境變數 `RUBY_GC_HEAP_INIT_SLOTS` 已經被廢棄且無法使用。請使用環境變數 `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS` 作為替代。 [[Feature #19785]](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib 相容性問題 + +### `ext/readline` 已被淘汰 + +* 我們使用純 Ruby 實作並相容於 `ext/readline` API 的 `reline`。未來我們將依賴 `reline`。如果您需要使用 `ext/readline`,您可以使用 `gem install readline-ext` 透過 rubygems.org 安裝 `ext/readline`。 +* 我們將不再需要安裝函式庫例如 `libreadline` 或 `libedit`。 + +## 標準函式庫更新 + +如果使用者 `require` 以下 gems 卻沒有將其加入到 Gemfile 或 gemspec,RubyGems 和 Bundler 將會顯示警告。 +因為它們將在 Ruby 未來版本中變為 bundled gem。 + +如果您使用 bootsnap gem,這個警告將會被抑制。我們建議至少使用環境變數 `DISABLE_BOOTSNAP=1` 執行您的應用程式一次。這是目前版本的限制。 + +這些函式庫包括: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +加入了以下的預設 gem。 + +* prism 0.19.0 + +更新了以下的 bundled gem。 + +* RubyGems 3.5.3 +* abbrev 0.1.2 +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.3 +* cgi 0.4.1 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* error_highlight 0.6.0 +* etc 1.4.3 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.7.1 +* io-nonblock 0.3.0 +* io-wait 0.3.1 +* ipaddr 1.2.6 +* irb 1.11.0 +* json 2.7.1 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.1 +* open3 0.2.1 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.2 +* rdoc 6.6.2 +* readline 0.0.4 +* reline 0.4.1 +* resolv 0.3.0 +* rinda 0.2.0 +* securerandom 0.3.1 +* set 1.1.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.1.0 +* strscan 3.0.7 +* syntax_suggest 2.0.0 +* syslog 0.1.2 +* tempfile 0.2.1 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +下列的預設 gem 現在是 bundled gems。 + +* racc 1.7.3 + +更新了以下的 bundled gem。 + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-ftp 0.3.3 +* net-imap 0.4.9 +* net-smtp 0.4.0 +* rbs 3.4.0 +* typeprof 0.21.9 +* debug 1.9.1 + +請參閱 GitHub 發布如 [Logger](https://github.com/ruby/logger/releases) 和變更紀錄來了解更多關於預設 gems 與 bundled gems 的資訊。 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) 來了解更多。 + +自 Ruby 3.2.0 以來,計[{{ release.stats.files_changed }} 檔案變更,{{ release.stats.insertions }} 行新增(+),{{ release.stats.deletions }} 行刪減(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket)。 + +耶誕快樂、佳節愉快,享受與 Ruby 3.3 一起寫程式的時光! + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 From 1d89b9024352b25989f3ea7e13f3d2b64672029d Mon Sep 17 00:00:00 2001 From: BraisonCrece <104019638+BraisonCrece@users.noreply.github.com> Date: Tue, 9 Jan 2024 10:49:13 +0100 Subject: [PATCH 140/607] fix; Typo on ES index.md Fixing a minor typo in the Spanish version --- es/about/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/es/about/index.md b/es/about/index.md index cef7eea359..c3e52af870 100644 --- a/es/about/index.md +++ b/es/about/index.md @@ -191,7 +191,7 @@ encuentran las siguientes: Ruby, como lenguaje, tiene algunas implementaciones diferentes. Esta página ha estado discutiendo la implementación de referencia, en la comunidad a menudo referida como **MRI** ("Matz’s Ruby Interpreter") o **CRuby** (ya que está escrito en C), pero también hay otros. -Ellos on útiles en ciertas situaciones, proporcionan una integración adicional a otros lenguajes o entornos, o tienen características especiales que **MRI** no tiene. +Ellos son útiles en ciertas situaciones, proporcionan una integración adicional a otros lenguajes o entornos, o tienen características especiales que **MRI** no tiene. Aquí hay una lista: From 3b862a50a7dad7fec712379e49ac58130f8dedc2 Mon Sep 17 00:00:00 2001 From: ogawa <63557554+ogawa65a@users.noreply.github.com> Date: Wed, 10 Jan 2024 23:27:00 +0900 Subject: [PATCH 141/607] Fix typo in Japanese (#3179) --- ja/about/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ja/about/index.md b/ja/about/index.md index 0fa467f7b0..895367cb33 100644 --- a/ja/about/index.md +++ b/ja/about/index.md @@ -163,7 +163,7 @@ Rubyは次に示すような豊富な機能を持っています。 言語としてのRubyには、いくつか別の処理系が存在しています。 このページでは、**MRI** (Matz Ruby Interpreter)あるいは **CRuby** (Cで書かれていることに由来する)と呼ばれる -Rubyのリファンレス実装について記載していますが、別のRuby処理系も存在します。 +Rubyのリファレンス実装について記載していますが、別のRuby処理系も存在します。 他の言語や環境と統合したりMRIにはないような特別な機能を使いたい場合など、 ある特定の状況でそうしたRuby処理系は役に立ちます。 From 6b9116187aeb7de13687c30900b7d063e0c7c200 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 10 Jan 2024 18:17:12 +0900 Subject: [PATCH 142/607] Added datadog and our sponsor logo --- en/about/website/index.md | 29 +++++++++++++++++++++++------ images/sponsor/aws.png | Bin 0 -> 62740 bytes images/sponsor/dd.png | Bin 0 -> 76188 bytes images/sponsor/fastly.png | Bin 0 -> 3775 bytes images/sponsor/heroku.png | Bin 0 -> 7227 bytes images/sponsor/mackerel.png | Bin 0 -> 4610 bytes 6 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 images/sponsor/aws.png create mode 100644 images/sponsor/dd.png create mode 100644 images/sponsor/fastly.png create mode 100644 images/sponsor/heroku.png create mode 100644 images/sponsor/mackerel.png diff --git a/en/about/website/index.md b/en/about/website/index.md index c265f38184..1cdd6890c6 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -34,13 +34,29 @@ to this website. Also many thanks to the organizations that support us: - * [Ruby Association][rubyassociation] (hosting) - * [Ruby no Kai][rubynokai] (build server) - * [AWS][aws] (hosting) - * [Heroku][heroku] (hosting) - * [Fastly][fastly] (CDN) - * [Hatena][hatena] ([mackerel][mackerel], server monitoring) +[Ruby Association][rubyassociation] (hosting) +[Ruby no Kai][rubynokai] (build server) + +[AWS][aws] (hosting) + +AWS + +[Heroku][heroku] (hosting) + +Heroku + +[Fastly][fastly] (CDN) + +Fastly + +[Hatena][hatena] ([mackerel][mackerel], server monitoring) + +mackerel + +[DataDog][datadog] (server monitoring) + +Datadog [logo]: /en/about/logo/ [webmaster]: mailto:webmaster@ruby-lang.org @@ -56,3 +72,4 @@ Also many thanks to the organizations that support us: [mackerel]: https://mackerel.io/ [rubynokai]: http://ruby-no-kai.org/ [aws]: https://aws.amazon.com/ +[datadog]: https://www.datadoghq.com/ diff --git a/images/sponsor/aws.png b/images/sponsor/aws.png new file mode 100644 index 0000000000000000000000000000000000000000..facf721d0357dba6042ff9a967ef2dd1fe2f614a GIT binary patch literal 62740 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�So#q!-mmiZy36+i&$#A8H5? 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 Jd;|N)e*k`p`;Y(t literal 0 HcmV?d00001 diff --git a/images/sponsor/mackerel.png b/images/sponsor/mackerel.png new file mode 100644 index 0000000000000000000000000000000000000000..2d1b5ce12e61af0ba89ec19535b0fb3a2fe4a5f4 GIT binary patch literal 4610 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 Date: Wed, 10 Jan 2024 18:39:36 +0900 Subject: [PATCH 143/607] Update en/about/website/index.md Co-authored-by: Sorah Fukumori --- en/about/website/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/about/website/index.md b/en/about/website/index.md index 1cdd6890c6..a590353449 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -54,7 +54,7 @@ Also many thanks to the organizations that support us: mackerel -[DataDog][datadog] (server monitoring) +[Datadog][datadog] (server monitoring) Datadog From 43e96ad69fe2c5ea427245597c4fac43338a4b42 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 10 Jan 2024 18:39:40 +0900 Subject: [PATCH 144/607] Update en/about/website/index.md Co-authored-by: Sorah Fukumori --- en/about/website/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/about/website/index.md b/en/about/website/index.md index a590353449..9416ad1a61 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -50,7 +50,7 @@ Also many thanks to the organizations that support us: Fastly -[Hatena][hatena] ([mackerel][mackerel], server monitoring) +[Hatena][hatena] ([Mackerel][mackerel], server monitoring) mackerel From 6f2402b4d6a04cdd005bcc23c29c3b4c73e5a6a4 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 11 Jan 2024 16:38:51 +0900 Subject: [PATCH 145/607] Added RA and Ruby-no-Kai logo --- en/about/website/index.md | 4 ++++ images/sponsor/ra.png | Bin 0 -> 16715 bytes images/sponsor/ruby-no-kai.png | Bin 0 -> 6884 bytes 3 files changed, 4 insertions(+) create mode 100644 images/sponsor/ra.png create mode 100644 images/sponsor/ruby-no-kai.png diff --git a/en/about/website/index.md b/en/about/website/index.md index 9416ad1a61..ab5f4a5c3f 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -36,8 +36,12 @@ Also many thanks to the organizations that support us: [Ruby Association][rubyassociation] (hosting) +Ruby Association + [Ruby no Kai][rubynokai] (build server) +Ruby no Kai + [AWS][aws] (hosting) AWS diff --git a/images/sponsor/ra.png b/images/sponsor/ra.png new file mode 100644 index 0000000000000000000000000000000000000000..a6fc8df6bfba9f025aece79b11ea2420eff23441 GIT binary patch literal 16715 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 Date: Thu, 11 Jan 2024 17:11:39 +0900 Subject: [PATCH 146/607] update bundles --- Gemfile.lock | 62 ++++++++++++++++++++++++++-------------------------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index bfadc88918..7c604506ec 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,17 +2,17 @@ GEM remote: https://rubygems.org/ specs: Ascii85 (1.1.0) - addressable (2.8.4) + addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) afm (0.2.2) - async (2.6.2) + async (2.8.0) console (~> 1.10) fiber-annotation io-event (~> 1.1) timers (~> 4.1) colorator (1.1.0) concurrent-ruby (1.2.2) - console (1.17.2) + console (1.23.3) fiber-annotation fiber-local crass (1.0.6) @@ -22,15 +22,15 @@ GEM ethon (0.16.0) ffi (>= 1.15.0) eventmachine (1.2.7) - ffi (1.15.5) + ffi (1.16.3) fiber-annotation (0.2.0) fiber-local (1.0.0) forwardable-extended (2.6.0) - google-protobuf (3.23.3) - google-protobuf (3.23.3-arm64-darwin) - google-protobuf (3.23.3-x86_64-linux) + google-protobuf (3.25.2) + google-protobuf (3.25.2-arm64-darwin) + google-protobuf (3.25.2-x86_64-linux) hashery (2.1.2) - html-proofer (5.0.7) + html-proofer (5.0.8) addressable (~> 2.3) async (~> 2.1) nokogiri (~> 1.13) @@ -42,8 +42,8 @@ GEM http_parser.rb (0.8.0) i18n (1.14.1) concurrent-ruby (~> 1.0) - io-event (1.2.2) - jekyll (4.3.2) + io-event (1.4.1) + jekyll (4.3.3) addressable (~> 2.4) colorator (~> 1.0) em-websocket (~> 0.5) @@ -63,7 +63,7 @@ GEM sass-embedded (~> 1.54) jekyll-watch (2.2.1) listen (~> 3.0) - json (2.6.3) + json (2.7.1) kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) @@ -73,42 +73,42 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) - mini_portile2 (2.8.2) - minitest (5.18.1) - nokogiri (1.15.2) + mini_portile2 (2.8.5) + minitest (5.20.0) + nokogiri (1.16.0) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.15.2-arm64-darwin) + nokogiri (1.16.0-arm64-darwin) racc (~> 1.4) - nokogiri (1.15.2-x86_64-linux) + nokogiri (1.16.0-x86_64-linux) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) forwardable-extended (~> 2.6) - pdf-reader (2.11.0) + pdf-reader (2.12.0) Ascii85 (~> 1.0) afm (~> 0.2.1) hashery (~> 2.0) ruby-rc4 ttfunk - public_suffix (5.0.1) - racc (1.7.1) + public_suffix (5.0.4) + racc (1.7.3) rainbow (3.1.1) - rake (13.0.6) + rake (13.1.0) rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - rexml (3.2.5) - rouge (4.1.2) + rexml (3.2.6) + rouge (4.2.0) ruby-rc4 (0.1.5) safe_yaml (1.0.5) - sass-embedded (1.63.6) - google-protobuf (~> 3.23) + sass-embedded (1.69.7) + google-protobuf (~> 3.25) rake (>= 13.0.0) - sass-embedded (1.63.6-arm64-darwin) - google-protobuf (~> 3.23) - sass-embedded (1.63.6-x86_64-linux-gnu) - google-protobuf (~> 3.23) + sass-embedded (1.69.7-arm64-darwin) + google-protobuf (~> 3.25) + sass-embedded (1.69.7-x86_64-linux-gnu) + google-protobuf (~> 3.25) slop (4.10.1) spidr (0.7.0) nokogiri (~> 1.3) @@ -118,9 +118,9 @@ GEM ffi (~> 1.2) timers (4.3.5) ttfunk (1.7.0) - typhoeus (1.4.0) + typhoeus (1.4.1) ethon (>= 0.9.0) - unicode-display_width (2.4.2) + unicode-display_width (2.5.0) validate-website (1.12.0) crass (~> 1) nokogiri (~> 1.12) @@ -136,7 +136,7 @@ GEM rexml (~> 3.2) webrick (1.8.1) yell (2.2.2) - zeitwerk (2.6.8) + zeitwerk (2.6.12) PLATFORMS arm64-darwin-22 From efb21e31eca2171484d1f420f2e694e723dd3468 Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 12 Jan 2024 22:13:44 +0900 Subject: [PATCH 147/607] Add Datadog and more logos (ko) (#3181) * Add Datadog and more logos * Apply review Co-authored-by: marocchino --------- Co-authored-by: marocchino --- ko/about/website/index.md | 33 +++++++++++++++++++++++++++------ 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/ko/about/website/index.md b/ko/about/website/index.md index 3ac861d030..a0fc86cbde 100644 --- a/ko/about/website/index.md +++ b/ko/about/website/index.md @@ -36,13 +36,33 @@ lang: ko 지원해주신 단체들에게도 감사드립니다. - * [Ruby Association][rubyassociation] (호스트) - * [Ruby no Kai][rubynokai] (빌드 서버) - * [AWS][aws] (호스트) - * [Heroku][heroku] (호스트) - * [Fastly][fastly] (CDN) - * [Hatena][hatena] ([mackerel][mackerel], 서버 모니터링) +[Ruby Association][rubyassociation] (호스트) +Ruby Association + +[Ruby no Kai][rubynokai] (빌드 서버) + +Ruby no Kai + +[AWS][aws] (호스트) + +AWS + +[Heroku][heroku] (호스트) + +Heroku + +[Fastly][fastly] (CDN) + +Fastly + +[Hatena][hatena] ([mackerel][mackerel], 서버 모니터링) + +mackerel + +[Datadog][datadog] (서버 모니터링) + +Datadog [logo]: /ko/about/logo/ [webmaster]: mailto:webmaster@ruby-lang.org @@ -58,3 +78,4 @@ lang: ko [mackerel]: https://mackerel.io/ [rubynokai]: http://ruby-no-kai.org/ [aws]: https://aws.amazon.com/ +[datadog]: https://www.datadoghq.com/ From ec97e262503ed31eca38c7e2cf87410587f18c39 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Jan 2024 15:13:46 +0000 Subject: [PATCH 148/607] Bump actions/deploy-pages from 4.0.2 to 4.0.3 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 4.0.2 to 4.0.3. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/7a9bd943aa5e5175aeb8502edcc6c1c02d398e10...87c3283f01cd6fe19a0ab93a23b2f6fcba5a8e42) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 323c2c518b..04f3caab47 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@7a9bd943aa5e5175aeb8502edcc6c1c02d398e10 # v4.0.2 + uses: actions/deploy-pages@87c3283f01cd6fe19a0ab93a23b2f6fcba5a8e42 # v4.0.3 From ae9c2b0777b41cbe7345fe2ae61bd286da4f2ad7 Mon Sep 17 00:00:00 2001 From: nagachika Date: Thu, 18 Jan 2024 17:01:40 +0900 Subject: [PATCH 149/607] Release ruby 3.2.3 --- _data/downloads.yml | 2 +- _data/releases.yml | 24 +++++++++ .../2023-06-29-redos-in-uri-CVE-2023-36617.md | 4 +- .../_posts/2024-01-18-ruby-3-2-3-released.md | 48 ++++++++++++++++++ .../2023-06-29-redos-in-uri-CVE-2023-36617.md | 4 +- .../_posts/2024-01-18-ruby-3-2-3-released.md | 49 +++++++++++++++++++ 6 files changed, 128 insertions(+), 3 deletions(-) create mode 100644 en/news/_posts/2024-01-18-ruby-3-2-3-released.md create mode 100644 ja/news/_posts/2024-01-18-ruby-3-2-3-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index a0c0527617..9bb4c48899 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -8,7 +8,7 @@ preview: stable: - 3.3.0 - - 3.2.2 + - 3.2.3 - 3.1.4 # optional diff --git a/_data/releases.yml b/_data/releases.yml index 2a838b0b6b..38f38f3819 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -168,6 +168,30 @@ # 3.2 series +- version: 3.2.3 + date: '2024-01-18' + post: "/en/news/2024/01/18/ruby-3-2-3-released/" + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.3.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.3.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.3.zip + size: + gz: + xz: + zip: + sha1: + gz: + xz: + zip: + sha256: + gz: + xz: + zip: + sha512: + gz: + xz: + zip: + - version: 3.2.2 date: '2023-03-30' post: "/en/news/2023/03/30/ruby-3-2-2-released/" diff --git a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index 332794fdc9..8a6a4635e0 100644 --- a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -24,7 +24,8 @@ The `uri` gem version 0.12.1 and all versions prior 0.12.1 are vulnerable for th We recommend to update the `uri` gem to 0.12.2. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: * For Ruby 3.0: Update to `uri` 0.10.3 -* For Ruby 3.1 and 3.2: Update to `uri` 0.12.2 +* For Ruby 3.1: Update to `uri` 0.12.2 +* For Ruby 3.2: Update to `uri` 0.12.2, or update to ruby-3.2.3. You can use `gem update uri` to update it. If you are using bundler, please add `gem "uri", ">= 0.12.2"` (or other version mentioned above) to your `Gemfile`. @@ -40,4 +41,5 @@ Thanks to [nobu](https://github.com/nobu) for fixing this issue. ## History +* Append recommended action for Ruby 3.2 at 2024-01-18 12:00:00 (UTC) * Originally published at 2023-06-29 01:00:00 (UTC) diff --git a/en/news/_posts/2024-01-18-ruby-3-2-3-released.md b/en/news/_posts/2024-01-18-ruby-3-2-3-released.md new file mode 100644 index 0000000000..3921bcbbee --- /dev/null +++ b/en/news/_posts/2024-01-18-ruby-3-2-3-released.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "Ruby 3.2.3 Released" +author: "nagachika" +translator: +date: 2024-01-18 09:00:00 +0000 +lang: en +--- + +Ruby 3.2.3 has been released. + +This release includes many bug-fixes. +See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_3) for further details. + +This release also includes the update of uri.gem to 0.12.2 which contains the security fix. +Please check the topics below for details. + +* [CVE-2023-36617: ReDoS vulnerability in URI]({%link en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md %}) + +## Download + +{% assign release = site.data.releases | where: "version", "3.2.3" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. diff --git a/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index 26979dc2d1..575749f7ba 100644 --- a/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -24,7 +24,8 @@ ReDoS 脆弱性のセキュリティ修正を含む、uri gem 0.12.2、0.10.3 `uri` gem を 0.12.2 にアップデートすることを推奨します。古い系列の Ruby で同梱されているバージョンとの互換性を確保するためには、以下のようにアップデートできます: * Ruby 3.0: `uri` を 0.10.3 にアップデート -* Ruby 3.1 および 3.2: `uri` を 0.12.2 にアップデート +* Ruby 3.1: `uri` を 0.12.2 にアップデート +* Ruby 3.2: `uri` を 0.12.2 にアップデート、もしくは Ruby 3.2.3 以降にアップデート `gem update uri` でアップデートできます。もし bundler を使っている場合は、`Gemfile` に `gem "uri", ">= 0.12.2"` (または上記の他のバージョン)を追加してください。 @@ -40,4 +41,5 @@ ReDoS 脆弱性のセキュリティ修正を含む、uri gem 0.12.2、0.10.3 ## 更新履歴 +* 2024-01-18 19:00:00 (JST) ruby 3.2 での対応について追記 * 2023-06-29 10:00:00 (JST) 初版 diff --git a/ja/news/_posts/2024-01-18-ruby-3-2-3-released.md b/ja/news/_posts/2024-01-18-ruby-3-2-3-released.md new file mode 100644 index 0000000000..a652ba8c36 --- /dev/null +++ b/ja/news/_posts/2024-01-18-ruby-3-2-3-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.2.3 リリース" +author: "nagachika" +translator: +date: 2024-01-18 09:00:00 +0000 +lang: ja +--- + +Ruby 3.2.3 がリリースされました。 + +このリリースでは多くの不具合修正を行なっています。 +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_2) を参照してください。 + +このリリースでは default gem の uri.gem のバージョンを脆弱性修正を含む 0.12.2 に更新しています。 +詳しくは以下の記事を参照してください。 + +* [CVE-2023-36617: URI における ReDoS 脆弱性について]({%link ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md %}) + + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.2.3" | first %} + +* <{{ 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 c386a5a298f395645ba19a2d6850594976f2e8ff Mon Sep 17 00:00:00 2001 From: nagachika Date: Thu, 18 Jan 2024 17:26:01 +0900 Subject: [PATCH 150/607] update checksums --- _data/releases.yml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/_data/releases.yml b/_data/releases.yml index 38f38f3819..ba23f794e1 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -176,21 +176,21 @@ xz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.3.tar.xz zip: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.3.zip size: - gz: - xz: - zip: + gz: 20577155 + xz: 15163960 + zip: 24734275 sha1: - gz: - xz: - zip: + gz: 7f553e514cb42751a61c3a560a7e8d727c6931ca + xz: '08e0016c8b96103930aaa3b2323081d8f5756e25' + zip: e305dfe36229c5328d231ea0ac03ae5e05bfaca6 sha256: - gz: - xz: - zip: + gz: af7f1757d9ddb630345988139211f1fd570ff5ba830def1cc7c468ae9b65c9ba + xz: cfb231954b8c241043a538a4c682a1cca0b2016d835fee0b9e4a0be3ceba476b + zip: 42aa39f74e5be9e24e4db47e7bfb15dc7e095f7e2295859b355edccf6fab96a2 sha512: - gz: - xz: - zip: + gz: 75aecd9cf87f1fa66b24ecda8837a53162071b4f8801dcfd79119a24c6e81df3e3e2ba478e1cc48c60103dfaab12a00cfa2039a621f8651298eba8bd8d576360 + xz: d2a1897c2f4e801a28acb869322abfee76775115016252cecad90639485ed51deda1446cb16edb387f10a2e188602d646ef9b008b57f27bd745071277c535f3b + zip: fd89a0a833df4b5cb1734a7ffc86a8cf7cb3a8e25944331db674d3ad7732f615867e7e214e1fdd61e44e9c9c856b461b46219b340de7c87a758f28f3a99dd172 - version: 3.2.2 date: '2023-03-30' From 85d0c4500924fed6b6373c9925a9087fe0758e82 Mon Sep 17 00:00:00 2001 From: nagachika Date: Thu, 18 Jan 2024 17:27:28 +0900 Subject: [PATCH 151/607] Update ja/news/_posts/2024-01-18-ruby-3-2-3-released.md Co-authored-by: Sorah Fukumori --- ja/news/_posts/2024-01-18-ruby-3-2-3-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ja/news/_posts/2024-01-18-ruby-3-2-3-released.md b/ja/news/_posts/2024-01-18-ruby-3-2-3-released.md index a652ba8c36..6fe81850db 100644 --- a/ja/news/_posts/2024-01-18-ruby-3-2-3-released.md +++ b/ja/news/_posts/2024-01-18-ruby-3-2-3-released.md @@ -10,7 +10,7 @@ lang: ja Ruby 3.2.3 がリリースされました。 このリリースでは多くの不具合修正を行なっています。 -詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_2) を参照してください。 +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_3) を参照してください。 このリリースでは default gem の uri.gem のバージョンを脆弱性修正を含む 0.12.2 に更新しています。 詳しくは以下の記事を参照してください。 From f073b4ff8afe9102b09babe370e8436f5f250f8e Mon Sep 17 00:00:00 2001 From: nagachika Date: Thu, 18 Jan 2024 18:01:43 +0900 Subject: [PATCH 152/607] Update en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md Co-authored-by: Sorah Fukumori --- en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index 8a6a4635e0..bd0c251dca 100644 --- a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -25,7 +25,7 @@ We recommend to update the `uri` gem to 0.12.2. In order to ensure compatibility * For Ruby 3.0: Update to `uri` 0.10.3 * For Ruby 3.1: Update to `uri` 0.12.2 -* For Ruby 3.2: Update to `uri` 0.12.2, or update to ruby-3.2.3. +* For Ruby 3.2: Update to `uri` 0.12.2, or update to Ruby 3.2.3 You can use `gem update uri` to update it. If you are using bundler, please add `gem "uri", ">= 0.12.2"` (or other version mentioned above) to your `Gemfile`. From 87ba354fce87ac62d2a95f0429baa443b703d1cd Mon Sep 17 00:00:00 2001 From: nagachika Date: Thu, 18 Jan 2024 18:01:56 +0900 Subject: [PATCH 153/607] Update en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md Co-authored-by: Sorah Fukumori --- en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index bd0c251dca..fd68aa5252 100644 --- a/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/en/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -41,5 +41,5 @@ Thanks to [nobu](https://github.com/nobu) for fixing this issue. ## History -* Append recommended action for Ruby 3.2 at 2024-01-18 12:00:00 (UTC) +* Added a new recommended action for Ruby 3.2 at 2024-01-18 12:00:00 (UTC) * Originally published at 2023-06-29 01:00:00 (UTC) From c420868e3cba5fb56f37ce30f9c9a47331db743d Mon Sep 17 00:00:00 2001 From: nagachika Date: Thu, 18 Jan 2024 18:02:03 +0900 Subject: [PATCH 154/607] Update ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md Co-authored-by: Sorah Fukumori --- ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index 575749f7ba..57d3407ed4 100644 --- a/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/ja/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -41,5 +41,5 @@ ReDoS 脆弱性のセキュリティ修正を含む、uri gem 0.12.2、0.10.3 ## 更新履歴 -* 2024-01-18 19:00:00 (JST) ruby 3.2 での対応について追記 +* 2024-01-18 19:00:00 (JST) Ruby 3.2 での対応を追加 * 2023-06-29 10:00:00 (JST) 初版 From b20abac1413fe08bf88bc69116f466215e02faee Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 18 Jan 2024 22:11:25 +0900 Subject: [PATCH 155/607] Translate "Ruby 3.2.3 Released" (ko) (#3185) * Copy from en * Translate "Ruby 3.2.3 Released" to ko --- .../2023-06-29-redos-in-uri-CVE-2023-36617.md | 4 +- .../_posts/2024-01-18-ruby-3-2-3-released.md | 48 +++++++++++++++++++ 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 ko/news/_posts/2024-01-18-ruby-3-2-3-released.md diff --git a/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index b11eb1e597..2967eb048d 100644 --- a/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -24,7 +24,8 @@ NOTE: 이 문제는 [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/2 `uri` gem을 0.12.2로 업데이트하는 것이 좋습니다. 이전 Ruby 버전대에 포함된 버전과의 호환성을 보장하기 위해 다음과 같이 업데이트할 수 있습니다. * Ruby 3.0: `uri` 0.10.3으로 업데이트 -* Ruby 3.1과 3.2: `uri` 0.12.2로 업데이트 +* Ruby 3.1: `uri` 0.12.2로 업데이트 +* Ruby 3.2: `uri` 0.12.2로 업데이트하거나 Ruby를 3.2.3으로 업데이트 `gem update uri`를 사용하여 업데이트할 수 있습니다. bundler를 사용하는 경우 `gem "uri", ">= 0.12.2"`(또는 위에 언급된 다른 버전)을 `Gemfile`에 추가하세요. @@ -40,4 +41,5 @@ NOTE: 이 문제는 [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/2 ## 수정 이력 +* 2024-01-18 12:00:00 (UTC) Ruby 3.2에 새 권장 조치를 추가 * 2023-06-29 01:00:00 (UTC) 최초 공개 diff --git a/ko/news/_posts/2024-01-18-ruby-3-2-3-released.md b/ko/news/_posts/2024-01-18-ruby-3-2-3-released.md new file mode 100644 index 0000000000..1d4d558eb7 --- /dev/null +++ b/ko/news/_posts/2024-01-18-ruby-3-2-3-released.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "Ruby 3.2.3 릴리스" +author: "nagachika" +translator: "shia" +date: 2024-01-18 09:00:00 +0000 +lang: ko +--- + +Ruby 3.2.3이 릴리스되었습니다. + +이번 릴리스는 많은 버그 수정이 포함합니다. +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_2_3)를 참조하세요. + +이번 릴리스에는 보안 수정을 포함하는 uri.gem의 0.12.2 갱신도 포함되어 있습니다. +자세한 내용은 아래 항목을 참조하세요. + +* [CVE-2023-36617: URI의 ReDoS 취약점]({%link ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md %}) + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.2.3" | first %} + +* <{{ 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 d90bcfa868729d08735f7bcf18acab8968426db7 Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 18 Jan 2024 22:32:03 +0900 Subject: [PATCH 156/607] Improve 2023-06-29-redos-in-uri-CVE-2023-36617 text (#3186) Ref: https://github.com/ruby/www.ruby-lang.org/pull/3185 --- ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md b/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md index 2967eb048d..70194cc89a 100644 --- a/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md +++ b/ko/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md @@ -41,5 +41,5 @@ NOTE: 이 문제는 [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/2 ## 수정 이력 -* 2024-01-18 12:00:00 (UTC) Ruby 3.2에 새 권장 조치를 추가 +* 2024-01-18 12:00:00 (UTC) Ruby 3.2를 위한 새 권장 조치를 추가 * 2023-06-29 01:00:00 (UTC) 최초 공개 From 4b2c5de1003be0d2d9aa2c7cf47a9b58cd0ca3b7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Jan 2024 15:40:28 +0000 Subject: [PATCH 157/607] Bump ruby/setup-ruby from 1.165.1 to 1.169.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.165.1 to 1.169.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/360dc864d5da99d54fcb8e9148c14a84b90d3e88...5daca165445f0ae10478593083f72ca2625e241d) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dd177299b7..ef20b25d10 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@360dc864d5da99d54fcb8e9148c14a84b90d3e88 # v1.165.1 + uses: ruby/setup-ruby@5daca165445f0ae10478593083f72ca2625e241d # v1.169.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 04f3caab47..3c82bf0032 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby - uses: ruby/setup-ruby@360dc864d5da99d54fcb8e9148c14a84b90d3e88 # v1.165.1 + uses: ruby/setup-ruby@5daca165445f0ae10478593083f72ca2625e241d # v1.169.0 with: ruby-version: '3.2' bundler-cache: true From 2230bc0ed508c59f15dea5cfd5583cd6fa309e38 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jan 2024 15:46:43 +0000 Subject: [PATCH 158/607] Bump ruby/setup-ruby from 1.169.0 to 1.170.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.169.0 to 1.170.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/5daca165445f0ae10478593083f72ca2625e241d...bd03e04863f52d169e18a2b190e8fa6b84938215) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ef20b25d10..ab66b84f58 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@5daca165445f0ae10478593083f72ca2625e241d # v1.169.0 + uses: ruby/setup-ruby@bd03e04863f52d169e18a2b190e8fa6b84938215 # v1.170.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 3c82bf0032..1e9b79cf5c 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby - uses: ruby/setup-ruby@5daca165445f0ae10478593083f72ca2625e241d # v1.169.0 + uses: ruby/setup-ruby@bd03e04863f52d169e18a2b190e8fa6b84938215 # v1.170.0 with: ruby-version: '3.2' bundler-cache: true From 41f34c2d12f0d7be9c17ed8ef1a9abad44c45e70 Mon Sep 17 00:00:00 2001 From: Jun Aruga Date: Wed, 17 Jan 2024 18:07:55 +0100 Subject: [PATCH 159/607] Added Works on Arm logo. --- en/about/website/index.md | 5 +++++ images/sponsor/works-on-arm.png | Bin 0 -> 9527 bytes 2 files changed, 5 insertions(+) create mode 100644 images/sponsor/works-on-arm.png diff --git a/en/about/website/index.md b/en/about/website/index.md index ab5f4a5c3f..cea0c692dd 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -50,6 +50,10 @@ Also many thanks to the organizations that support us: Heroku +[Works on Arm][works-on-arm] (hosting) + +Works on Arm + [Fastly][fastly] (CDN) Fastly @@ -71,6 +75,7 @@ Also many thanks to the organizations that support us: [github-wiki]: https://github.com/ruby/www.ruby-lang.org/wiki [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ +[works-on-arm]: https://www.arm.com/markets/computing-infrastructure/works-on-arm [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ [mackerel]: https://mackerel.io/ diff --git a/images/sponsor/works-on-arm.png b/images/sponsor/works-on-arm.png new file mode 100644 index 0000000000000000000000000000000000000000..4657de902df85f25aec062a37cd9351427ca7ac7 GIT binary patch literal 9527 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 fjh~X Date: Sat, 3 Feb 2024 15:25:11 +0900 Subject: [PATCH 160/607] Adding Works on Arm logo(ko) (#3191) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Adding Works on Arm logo(ko) * Hosting to "호스팅" --- ko/about/website/index.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/ko/about/website/index.md b/ko/about/website/index.md index a0fc86cbde..609dd598ff 100644 --- a/ko/about/website/index.md +++ b/ko/about/website/index.md @@ -36,7 +36,7 @@ lang: ko 지원해주신 단체들에게도 감사드립니다. -[Ruby Association][rubyassociation] (호스트) +[Ruby Association][rubyassociation] (호스팅) Ruby Association @@ -44,14 +44,18 @@ lang: ko Ruby no Kai -[AWS][aws] (호스트) +[AWS][aws] (호스팅) AWS -[Heroku][heroku] (호스트) +[Heroku][heroku] (호스팅) Heroku +[Works on Arm][works-on-arm] (호스팅) + +Works on Arm + [Fastly][fastly] (CDN) Fastly @@ -73,6 +77,7 @@ lang: ko [github-wiki]: https://github.com/ruby/www.ruby-lang.org/wiki [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ +[works-on-arm]: https://www.arm.com/markets/computing-infrastructure/works-on-arm [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ [mackerel]: https://mackerel.io/ From 40a2b48ae2b3cf38afa4aa8de70b8b678c1d92bc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 5 Feb 2024 15:49:02 +0000 Subject: [PATCH 161/607] Bump ruby/setup-ruby from 1.170.0 to 1.171.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.170.0 to 1.171.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/bd03e04863f52d169e18a2b190e8fa6b84938215...22fdc77bf4148f810455b226c90fb81b5cbc00a7) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ab66b84f58..09853e02e0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@bd03e04863f52d169e18a2b190e8fa6b84938215 # v1.170.0 + uses: ruby/setup-ruby@22fdc77bf4148f810455b226c90fb81b5cbc00a7 # v1.171.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 1e9b79cf5c..1186ccd162 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby - uses: ruby/setup-ruby@bd03e04863f52d169e18a2b190e8fa6b84938215 # v1.170.0 + uses: ruby/setup-ruby@22fdc77bf4148f810455b226c90fb81b5cbc00a7 # v1.171.0 with: ruby-version: '3.2' bundler-cache: true From a88eb30a9278a7bf93be9085e99a41cdaa7a3b68 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Feb 2024 03:47:49 +0000 Subject: [PATCH 162/607] Bump nokogiri from 1.16.0 to 1.16.2 Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.16.0 to 1.16.2. - [Release notes](https://github.com/sparklemotion/nokogiri/releases) - [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md) - [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.16.0...v1.16.2) --- updated-dependencies: - dependency-name: nokogiri dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 7c604506ec..80ea67e7d7 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -75,12 +75,12 @@ GEM mercenary (0.4.0) mini_portile2 (2.8.5) minitest (5.20.0) - nokogiri (1.16.0) + nokogiri (1.16.2) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.16.0-arm64-darwin) + nokogiri (1.16.2-arm64-darwin) racc (~> 1.4) - nokogiri (1.16.0-x86_64-linux) + nokogiri (1.16.2-x86_64-linux) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) From 8597cce2b91541392e9069ba782f949d6017903b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 6 Feb 2024 06:40:05 -0500 Subject: [PATCH 163/607] Translate "Ruby 3.2.3" Released (es) (#3192) --- .../_posts/2024-01-18-ruby-3-2-3-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 es/news/_posts/2024-01-18-ruby-3-2-3-released.md diff --git a/es/news/_posts/2024-01-18-ruby-3-2-3-released.md b/es/news/_posts/2024-01-18-ruby-3-2-3-released.md new file mode 100644 index 0000000000..db09dcfd40 --- /dev/null +++ b/es/news/_posts/2024-01-18-ruby-3-2-3-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Publicado Ruby 3.2.3" +author: "nagachika" +translator: vtamara +date: 2024-01-18 09:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 3.2.3. + +Esta versión incluye diversas correcciones a fallas. +Ver detalles en las [publicaciones de GitHub](https://github.com/ruby/ruby/releases/tag/v3_2_3). + +Esta versión también incluye la actualización de uri.gem a 0.12.2 +que contiene una corrección de seguridad. +Por favor vea detalles en el siguiente tema. + +* [CVE-2023-36617: vulnerabilidad de ReDoS en URI]({%link es/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md %}) + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.2.3" | first %} + +* <{{ 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 }} + +## Notas de publicación + +Muchos contribuyentes, desarrolladores, y usuarios que proveyeron +reportes de fallas nos ayudaron a hacer esta versión. +Gracias por sus contribuciones. From 85a203007cff790204628594bcba5980cdaa1cc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 6 Feb 2024 06:48:58 -0500 Subject: [PATCH 164/607] Removes duplication of feature in spanish post of release of 3.3.0. Closes #3195 (#3196) --- es/news/_posts/2023-12-25-ruby-3-3-0-released.md | 1 - 1 file changed, 1 deletion(-) diff --git a/es/news/_posts/2023-12-25-ruby-3-3-0-released.md b/es/news/_posts/2023-12-25-ruby-3-3-0-released.md index 99a9a8ec6e..e338d9e62a 100644 --- a/es/news/_posts/2023-12-25-ruby-3-3-0-released.md +++ b/es/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -77,7 +77,6 @@ llamado RJIT, e incluye muchas mejoras de desempeño especialmente de YJIT. * `--yjit-cold-threshold` se agrega para saltarse la compilación de ISEQs en frio. * Generación de código más compacto en ARM64 -* La velocidad de compilación es ahora un poco más rápida que en 3.2. * El recolector de basura en el código (code GC) ahora está deshabilitado de manera predeterminada * `--yjit-exec-mem-size` es tratado como un límite fuerte From 2f9ee067123813e2bd6d404e22d2435e3333f1e6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Feb 2024 15:35:37 +0000 Subject: [PATCH 165/607] Bump actions/deploy-pages from 4.0.3 to 4.0.4 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 4.0.3 to 4.0.4. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/87c3283f01cd6fe19a0ab93a23b2f6fcba5a8e42...decdde0ac072f6dcbe43649d82d9c635fff5b4e4) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 1186ccd162..2076ec8822 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@87c3283f01cd6fe19a0ab93a23b2f6fcba5a8e42 # v4.0.3 + uses: actions/deploy-pages@decdde0ac072f6dcbe43649d82d9c635fff5b4e4 # v4.0.4 From 11b8114884d2873492dea4e95a81bb12d29474a4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Feb 2024 15:35:33 +0000 Subject: [PATCH 166/607] Bump actions/upload-pages-artifact from 3.0.0 to 3.0.1 Bumps [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) from 3.0.0 to 3.0.1. - [Release notes](https://github.com/actions/upload-pages-artifact/releases) - [Commits](https://github.com/actions/upload-pages-artifact/compare/0252fc4ba7626f0298f0cf00902a25c6afc77fa8...56afc609e74202658d3ffba0e8f6dda462b719fa) --- updated-dependencies: - dependency-name: actions/upload-pages-artifact dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 2076ec8822..3b6d16b7cd 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -34,7 +34,7 @@ jobs: env: JEKYLL_ENV: production - name: Upload artifact - uses: actions/upload-pages-artifact@0252fc4ba7626f0298f0cf00902a25c6afc77fa8 # v3.0.0 + uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa # v3.0.1 deploy: environment: From 400baef8797515d9f134875ca28987340e73688f Mon Sep 17 00:00:00 2001 From: Jun Aruga Date: Thu, 8 Feb 2024 10:47:40 +0100 Subject: [PATCH 167/607] Added IBM text and link as a sponsor. I don't think that we want to use IBM logo image for now. Because according to a discussion with IBM folks, if we use the IBM logo image on our website, a single individual in the Ruby project needs to sign IBM's trademark agreement basically to make sure that the logo guidelines are followed. The individual is either the trademark owner or the website owner. Considering the cost and merit for us, I don't think we want to sign the trademark agreement. --- en/about/website/index.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/en/about/website/index.md b/en/about/website/index.md index cea0c692dd..a510904806 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -54,6 +54,8 @@ Also many thanks to the organizations that support us: Works on Arm +[IBM][ibm] (hosting) + [Fastly][fastly] (CDN) Fastly @@ -76,6 +78,7 @@ Also many thanks to the organizations that support us: [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ [works-on-arm]: https://www.arm.com/markets/computing-infrastructure/works-on-arm +[ibm]: https://www.ibm.com [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ [mackerel]: https://mackerel.io/ From 226311532919a39dc8d59d78300dfa0e414f5bd9 Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 17 Feb 2024 18:24:11 +0900 Subject: [PATCH 168/607] Add IBM text and link as a sponsor (ko) (#3200) --- ko/about/website/index.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ko/about/website/index.md b/ko/about/website/index.md index 609dd598ff..7fef1a9446 100644 --- a/ko/about/website/index.md +++ b/ko/about/website/index.md @@ -56,6 +56,8 @@ lang: ko Works on Arm +[IBM][ibm] (호스팅) + [Fastly][fastly] (CDN) Fastly @@ -78,6 +80,7 @@ lang: ko [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ [works-on-arm]: https://www.arm.com/markets/computing-infrastructure/works-on-arm +[ibm]: https://www.ibm.com [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ [mackerel]: https://mackerel.io/ From 69f5ae37647baebd4c618231bddcdbaae6817fbc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Feb 2024 15:41:56 +0000 Subject: [PATCH 169/607] Bump ruby/setup-ruby from 1.171.0 to 1.172.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.171.0 to 1.172.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/22fdc77bf4148f810455b226c90fb81b5cbc00a7...d4526a55538b775af234ba4af27118ed6f8f6677) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 09853e02e0..08964842e9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@22fdc77bf4148f810455b226c90fb81b5cbc00a7 # v1.171.0 + uses: ruby/setup-ruby@d4526a55538b775af234ba4af27118ed6f8f6677 # v1.172.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 3b6d16b7cd..9df7071121 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ruby - uses: ruby/setup-ruby@22fdc77bf4148f810455b226c90fb81b5cbc00a7 # v1.171.0 + uses: ruby/setup-ruby@d4526a55538b775af234ba4af27118ed6f8f6677 # v1.172.0 with: ruby-version: '3.2' bundler-cache: true From d289f3dcfb3cd12de84369b21207773580dec1f7 Mon Sep 17 00:00:00 2001 From: gaojun Date: Mon, 29 Jan 2024 13:08:56 +0800 Subject: [PATCH 170/607] Translate Ruby 3.2.3 Released (zh_cn) --- .../_posts/2024-01-18-ruby-3-2-3-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 zh_cn/news/_posts/2024-01-18-ruby-3-2-3-released.md diff --git a/zh_cn/news/_posts/2024-01-18-ruby-3-2-3-released.md b/zh_cn/news/_posts/2024-01-18-ruby-3-2-3-released.md new file mode 100644 index 0000000000..a0a0f261b5 --- /dev/null +++ b/zh_cn/news/_posts/2024-01-18-ruby-3-2-3-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.2.3 已发布" +author: "nagachika" +translator: "GAO Jun" +date: 2024-01-18 09:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.2.3 已发布。 + +此版本修正了很多问题。 +您可以通过查看 [GitHub 发布页面](https://github.com/ruby/ruby/releases/tag/v3_2_3) 获取更多信息。 + +此版本还将 `uri` gem 更新到了 0.12.2,其中包含了安全修正。 +您可以查看下面的主题来获取详细信息。 + +* [CVE-2023-36617: URI 包中的 ReDoS 漏洞]({%link zh_cn/news/_posts/2023-06-29-redos-in-uri-CVE-2023-36617.md %}) + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.2.3" | first %} + +* <{{ 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 4f947a21fa8859d95cab4ed76f1c6f91245bc4b6 Mon Sep 17 00:00:00 2001 From: Thomas Ritter Date: Tue, 9 Jan 2024 22:56:00 +0100 Subject: [PATCH 171/607] Translate the Ruby 3.3 release announcement to German --- .../_posts/2023-12-25-ruby-3-3-0-released.md | 305 ++++++++++++++++++ 1 file changed, 305 insertions(+) create mode 100644 de/news/_posts/2023-12-25-ruby-3-3-0-released.md diff --git a/de/news/_posts/2023-12-25-ruby-3-3-0-released.md b/de/news/_posts/2023-12-25-ruby-3-3-0-released.md new file mode 100644 index 0000000000..9f1ca8e3e9 --- /dev/null +++ b/de/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -0,0 +1,305 @@ +--- +layout: news_post +title: "Ruby 3.3.0 veröffentlicht" +author: "naruse" +translator: Thomas Ritter +date: 2023-12-25 00:00:00 +0000 +lang: de +--- + +{% assign release = site.data.releases | where: "version", "3.3.0" | first %} +Wir freuen uns, die Veröffentlichung von Ruby {{ release.version }} anzukündigen. Ruby 3.3 fügt einen neuen Parser namens Prism hinzu, verwendet Lrama als Parser-Generator, fügt einen neuen reinen Ruby JIT-Compiler namens RJIT hinzu und viele Leistungsverbesserungen, insbesondere YJIT. + +## Prism + +- Einführung des [Prism-Parser](https://github.com/ruby/prism) als Standard-Gem + - Prism ist ein portabler, fehlertoleranter und wartbarer rekursiver Abstiegsparser für die Ruby-Sprache +- Prism ist produktionsreif und wird aktiv gepflegt, Sie können es anstelle von Ripper verwenden + - Es gibt [umfangreiche Dokumentation](https://ruby.github.io/prism/) zur Nutzung von Prism + - Prism ist sowohl eine C-Bibliothek, die intern von CRuby verwendet wird, als auch ein Ruby-Gem, das von jedem Werkzeug verwendet werden kann, das Ruby-Code parsen muss + - Nennenswerte Methoden in der Prism-API sind: + - `Prism.parse(source)`, das den AST als Teil eines Parseergebnisobjekts zurückgibt + - `Prism.parse_comments(source)`, das die Kommentare zurückgibt + - `Prism.parse_success?(source)`, das true zurückgibt, wenn keine Fehler vorliegen +- Sie können Pull-Requests oder Issues direkt im [Prism-Repository](https://github.com/ruby/prism) erstellen, wenn Sie an der Mitarbeit interessiert sind +- Sie können jetzt `ruby --parser=prism` oder `RUBYOPT="--parser=prism"` verwenden, um mit dem Prism-Compiler zu experimentieren. Bitte beachten Sie, dass dieser Flag nur für das Debugging gedacht ist. + +## Verwendung von Lrama anstelle von Bison + +- Ersetzen von Bison durch [Lrama LALR-Parsergenerator](https://github.com/ruby/lrama) [[Feature #19637]](https://bugs.ruby-lang.org/issues/19637) + - Wenn Sie interessiert sind, sehen Sie sich bitte [Die Zukunftsvision des Ruby-Parsers](https://rubykaigi.org/2023/presentations/spikeolaf.html) an + - Der interne Lrama-Parser wird durch einen LR-Parser von Racc ersetzt, um die Wartbarkeit sicherzustellen + - Parameterisierende Regeln `(?, *, +)` werden unterstützt, sie werden im Ruby parse.y verwendet + +## YJIT + +- Große Leistungsverbesserungen gegenüber Ruby 3.2 + - Die Unterstützung für Splat- und Rest-Argumente wurde verbessert. + - Register werden für Stack-Operationen der virtuellen Maschine zugewiesen. + - Mehr Aufrufe mit optionalen Argumenten werden kompiliert. Ausnahmebehandler werden ebenfalls kompiliert. + - Nicht unterstützte Aufruftypen und megamorphe Aufrufstellen werden nicht mehr an den Interpreter übergeben. + - Grundlegende Methoden wie Rails `#blank?` und + [spezialisiertes `#present?`](https://github.com/rails/rails/pull/49909) werden eingebettet (inlined). + - `Integer#*`, `Integer#!=`, `String#!=`, `String#getbyte`, + `Kernel#block_given?`, `Kernel#is_a?`, `Kernel#instance_of?` und `Module#===` + sind speziell optimiert. + - Die Kompilierungsgeschwindigkeit ist jetzt etwas schneller als bei Ruby 3.2. + - Jetzt mehr als 3x schneller als der Interpreter auf Optcarrot! +- Deutlich verbesserte Speichernutzung gegenüber Ruby 3.2 + - Metadaten für kompilierten Code verwenden viel weniger Speicher. + - `--yjit-call-threshold` wird automatisch von 30 auf 120 erhöht + wenn die Anwendung mehr als 40.000 ISEQs hat. + - `--yjit-cold-threshold` wird hinzugefügt, um das Kompilieren von kalten ISEQs zu überspringen. + - Kompakterer Code wird auf Arm64 generiert. +- Code GC ist jetzt standardmäßig deaktiviert + - `--yjit-exec-mem-size` wird als hartes Limit behandelt, bei der die Kompilierung neuer Codes stoppt. + - Keine plötzlichen Leistungseinbrüche aufgrund von Code GC. + Besseres Copy-on-Write-Verhalten auf Servern mit Reforking mit + [Pitchfork](https://github.com/shopify/pitchfork). + - Sie können Code GC weiterhin mit `--yjit-code-gc` aktivieren, falls gewünscht +- Hinzufügen von `RubyVM::YJIT.enable`, das YJIT zur Laufzeit aktivieren kann + - Sie können YJIT starten, ohne Kommandozeilenargumente oder Umgebungsvariablen zu ändern. + Rails 7.2 wird [YJIT standardmäßig aktivieren](https://github.com/rails/rails/pull/49947) + mit dieser Methode. + - Dies kann auch verwendet werden, um YJIT nur zu aktivieren, sobald Ihre Anwendung + hochgefahren ist. `--yjit-disable` kann verwendet werden, wenn Sie andere + YJIT-Optionen verwenden möchten, während YJIT beim Booten deaktiviert ist. +- Mehr YJIT-Statistiken sind standardmäßig verfügbar + - `yjit_alloc_size` und mehrere weitere metadatenbezogene Statistiken sind jetzt standardmäßig verfügbar. + - Die von `--yjit-stats` produzierte `ratio_in_yjit`-Statistik ist jetzt in Release-Builds verfügbar, + ein spezieller Statistik- oder Dev-Build ist nicht mehr erforderlich, um die meisten Statistiken abzurufen. +- Hinzufügen weiterer Profiling-Fähigkeiten + - `--yjit-perf` wird hinzugefügt, um das Profiling mit Linux perf zu erleichtern. + - `--yjit-trace-exits` unterstützt jetzt das Sampling mit `--yjit-trace-exits-sample-rate=N` +- Gründlicheres Testing und mehrere Bugfixes + +## RJIT + +- Einführung eines reinen Ruby JIT-Compilers RJIT und Ersatz von MJIT. + - RJIT unterstützt nur die x86-64-Architektur auf Unix-Plattformen. + - Im Gegensatz zu MJIT wird zur Laufzeit kein C-Compiler benötigt. +- RJIT existiert nur zu experimentellen Zwecken. + - Sie sollten in der Produktion weiterhin YJIT verwenden. +- Wenn Sie an der Entwicklung von JIT für Ruby interessiert sind, schauen Sie sich bitte [k0kubuns Präsentation am Tag 3 von RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3) an. + +## M:N-Thread-Scheduler + +- M:N-Thread-Scheduler wurde eingeführt. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + - M Ruby-Threads werden von N nativen Threads (OS-Threads) verwaltet, sodass die Thread-Erstellungs- und Verwaltungskosten reduziert werden. + - Es kann die Kompatibilität mit C-Erweiterungen brechen, sodass der M:N-Thread-Scheduler standardmäßig auf dem Haupt-Ractor deaktiviert ist. + - Die Umgebungsvariable `RUBY_MN_THREADS=1` aktiviert M:N-Threads auf dem Haupt-Ractor. + - M:N-Threads sind immer auf Nicht-Haupt-Ractors aktiviert. + - Die Umgebungsvariable `RUBY_MAX_CPU=n` legt die maximale Anzahl von `N` (maximale Anzahl nativer Threads) fest. Der Standardwert ist 8. + - Da nur ein Ruby-Thread pro Ractor gleichzeitig ausgeführt werden kann, wird die Anzahl der verwendeten nativen Threads verwendet, die kleiner ist als die in `RUBY_MAX_CPU` angegebene Anzahl und die Anzahl der laufenden Ractors. Einzelne Ractor-Anwendungen (die meisten Anwendungen) verwenden daher nur 1 nativen Thread. + - Zur Unterstützung von blockierenden Operationen können mehr als `N` native Threads verwendet werden. + +## Leistungsverbesserungen + +- `defined?(@ivar)` ist mit Object Shapes optimiert. +- Namensauflösungen wie `Socket.getaddrinfo` können jetzt unterbrochen werden (in Umgebungen, in denen pthreads verfügbar sind). [[Feature #19965]](https://bugs.ruby-lang.org/issues/19965) +- Mehrere Leistungsverbesserungen beim Garbage Collector + - Junge Objekte, die von alten Objekten referenziert werden, werden nicht mehr sofort + in die alte Generation befördert. Dies reduziert die Häufigkeit von + großen GC-Sammlungen erheblich. [[Feature #19678]](https://bugs.ruby-lang.org/issues/19678) + - Eine neue Tuning-Variable `REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` wurde + eingeführt, um die Anzahl der ungeschützten Objekte zu steuern, die eine große GC- + Sammlung auslösen. Der Standardwert ist auf `0.01` (1%) festgelegt. Dies reduziert die Häufigkeit von großen GC-Sammlungen erheblich. [[Feature #19571]](https://bugs.ruby-lang.org/issues/19571) + - Write Barriers wurden für viele Kerntypen implementiert, die sie bisher vermisst haben, + insbesondere `Time`, `Enumerator`, `MatchData`, `Method`, `File::Stat`, `BigDecimal` + und mehrere andere. Dies reduziert die Zeit für kleine GC-Sammlungen und die Häufigkeit großer GC-Sammlungen erheblich. + - Die meisten Kerntypen verwenden jetzt Variable Width Allocation, insbesondere `Hash`, `Time`, + `Thread::Backtrace`, `Thread::Backtrace::Location`, `File::Stat`, `Method`. + Dadurch sind diese Klassen schneller zugeteilt und freigegeben, verwenden weniger Speicher und reduzieren + die Heapfragmentierung. + - Unterstützung für schwache Referenzen wurde dem Garbage Collector hinzugefügt. [[Feature #19783]](https://bugs.ruby-lang.org/issues/19783) + +## Weitere bemerkenswerte Änderungen seit 3.2 + +### IRB + +IRB hat mehrere Verbesserungen erhalten, einschließlich, aber nicht beschränkt auf: + +- Fortgeschrittene `irb:rdbg`-Integration, die ein äquivalentes Debugging-Erlebnis zu `pry-byebug` bietet ([Dokumentation](https://github.com/ruby/irb#debugging-with-irb)). +- Pager-Unterstützung für die Befehle `ls`, `show_source` und `show_cmds`. +- Genauere und hilfreichere Informationen, die von den Befehlen `ls` und `show_source` bereitgestellt werden. +- Experimentelle Autovervollständigung mit Typenanalyse ([Dokumentation](https://github.com/ruby/irb#type-based-completion)). +- Es ist jetzt möglich, die Schriftfarbe und den Schriftstil im Vervollständigungsdialog durch eine neu eingeführte Klasse Reline::Face zu ändern ([Dokumentation](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +Zusätzlich dazu hat IRB umfangreiche Refactorings durchlaufen und Dutzende von Bugfixes erhalten, um zukünftige Verbesserungen zu erleichtern. + +Für detailliertere Updates lesen Sie bitte [Die große Weiterentwicklung von Ruby 3.3's IRB enthüllt](https://railsatscale.com/2023-12-19-irb-for-ruby-3-3/). + +## Kompatibilitätsprobleme + +Hinweis: Ausschließlich Bugfixes von Features. + +- `it`-Aufrufe ohne Argumente in einem Block ohne gewöhnliche Parameter sind + veraltet (deprecated). `it` wird in Ruby 3.4 eine Referenz auf den ersten Blockparameter sein. + [[Feature #18980]](https://bugs.ruby-lang.org/issues/18980) + +### Entfernte Umgebungsvariablen + +Die folgenden veralteten Methoden werden entfernt. + +- Umgebungsvariable `RUBY_GC_HEAP_INIT_SLOTS` wurde veraltet (deprecated) und ist eine No-Op. Bitte verwenden Sie stattdessen die Umgebungsvariablen `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS`. [[Feature #19785]](https://bugs.ruby-lang.org/issues/19785) + +## Stdlib-Kompatibilitätsprobleme + +### `ext/readline` wird eingestellt + +- Wir haben `reline`, das eine reine Ruby-Implementierung kompatibel mit der `ext/readline` API ist. In Zukunft setzen wir auf `reline`. Wenn Sie `ext/readline` verwenden müssen, können Sie `ext/readline` über rubygems.org mit `gem install readline-ext` installieren. +- Wir müssen keine Bibliotheken wie `libreadline` oder `libedit` mehr installieren. + +## Aktualisierungen der Standardbibliothek + +RubyGems und Bundler warnen, wenn Benutzer die folgenden Gems mit `require` laden ohne sie zum Gemfile oder gemspec hinzuzufügen. Dies liegt daran, dass sie in einer zukünftigen Version von Ruby zu mitinstallierten Gems werden. + +Diese Warnung wird unterdrückt, wenn Sie das Bootsnap-Gem verwenden. Wir empfehlen, Ihre Anwendung mindestens einmal mit der Umgebungsvariable `DISABLE_BOOTSNAP=1` auszuführen. Dies ist eine Einschränkung dieser Version. + +Zielbibliotheken sind: + +- abbrev +- base64 +- bigdecimal +- csv +- drb +- getoptlong +- mutex_m +- nkf +- observer +- racc +- resolv-replace +- rinda +- syslog + +Das folgende Standard-Gem wird hinzugefügt. + +- prism 0.19.0 + +Die folgenden Standard-Gems werden aktualisiert. + +- RubyGems 3.5.3 +- abbrev 0.1.2 +- base64 0.2.0 +- benchmark 0.3.0 +- bigdecimal 3.1.5 +- bundler 2.5.3 +- cgi 0.4.1 +- csv 3.2.8 +- date 3.3.4 +- delegate 0.3.1 +- drb 2.2.0 +- english 0.8.0 +- erb 4.0.3 +- error_highlight 0.6.0 +- etc 1.4.3 +- fcntl 1.1.0 +- fiddle 1.1.2 +- fileutils 1.7.2 +- find 0.2.0 +- getoptlong 0.2.1 +- io-console 0.7.1 +- io-nonblock 0.3.0 +- io-wait 0.3.1 +- ipaddr 1.2.6 +- irb 1.11.0 +- json 2.7.1 +- logger 1.6.0 +- mutex_m 0.2.0 +- net-http 0.4.0 +- net-protocol 0.2.2 +- nkf 0.1.3 +- observer 0.1.2 +- open-uri 0.4.1 +- open3 0.2.1 +- openssl 3.2.0 +- optparse 0.4.0 +- ostruct 0.6.0 +- pathname 0.3.0 +- pp 0.5.0 +- prettyprint 0.2.0 +- pstore 0.1.3 +- psych 5.1.2 +- rdoc 6.6.2 +- readline 0.0.4 +- reline 0.4.1 +- resolv 0.3.0 +- rinda 0.2.0 +- securerandom 0.3.1 +- set 1.1.0 +- shellwords 0.2.0 +- singleton 0.2.0 +- stringio 3.1.0 +- strscan 3.0.7 +- syntax_suggest 2.0.0 +- syslog 0.1.2 +- tempfile 0.2.1 +- time 0.3.0 +- timeout 0.4.1 +- tmpdir 0.2.0 +- tsort 0.2.0 +- un 0.3.0 +- uri 0.13.0 +- weakref 0.1.3 +- win32ole 1.8.10 +- yaml 0.3.0 +- zlib 3.1.0 + +Das folgende mitinstallierten Gem wird von Standard-Gems gefördert. + +- racc 1.7.3 + +Die folgenden mitinstallierten Gems werden aktualisiert. + +- minitest 5.20.0 +- rake 13.1.0 +- test-unit 3.6.1 +- rexml 3.2.6 +- rss 0.3.0 +- net-ftp 0.3.3 +- net-imap 0.4.9 +- net-smtp 0.4.0 +- rbs 3.4.0 +- typeprof 0.21.9 +- debug 1.9.1 + +Weitere Informationen finden Sie in den GitHub-Releases wie [Logger](https://github.com/ruby/logger/releases) oder +Änderungsprotokoll für Details zu den Standard-Gems oder mitinstallierten Gems. + +Siehe [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +oder [Commit-Protokolle](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) +für weitere Details. + +Mit diesen Änderungen haben sich [{{ release.stats.files_changed }} Dateien geändert, {{ release.stats.insertions }} Einfügungen(+), {{ release.stats.deletions }} Löschungen(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +seit Ruby 3.2.0! + +Frohe Weihnachten, schöne Feiertage und viel Spaß beim Programmieren mit Ruby 3.3! + +## Download + +- <{{ release.url.gz }}> + + GRÖSSE: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +- <{{ release.url.xz }}> + + GRÖSSE: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +- <{{ release.url.zip }}> + + GRÖSSE: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Was ist Ruby + +Ruby wurde erstmals 1993 von Matz (Yukihiro Matsumoto) entwickelt +und wird jetzt als Open Source entwickelt. Es läuft auf mehreren Plattformen +und wird weltweit vor allem für die Webentwicklung verwendet. From 05399ab178a6666e940d532676bc596c52dc32e8 Mon Sep 17 00:00:00 2001 From: thinca Date: Thu, 7 Mar 2024 12:23:39 +0900 Subject: [PATCH 172/607] Add link to reference manual 3.3 --- ja/documentation/index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ja/documentation/index.md b/ja/documentation/index.md index 787971dcbb..785f038ad4 100644 --- a/ja/documentation/index.md +++ b/ja/documentation/index.md @@ -15,6 +15,7 @@ Rubyでプログラミングする際に役立つドキュメントを紹介し また、現在有志の手により[リファレンスマニュアルの整備][rurema-wiki]が進行中です。 成果物を[<URL:https://docs.ruby-lang.org/ja/>][doc-r-l-o]から閲覧できます。 +* [Rubyリファレンスマニュアル Ruby 3.3版][man-33] * [Rubyリファレンスマニュアル Ruby 3.2版][man-32] * [Rubyリファレンスマニュアル Ruby 3.1版][man-31] * [Rubyリファレンスマニュアル Ruby 3.0版][man-30] @@ -123,6 +124,7 @@ Posted by Shugo Maeda on 26 May 2006 [man-30]: https://docs.ruby-lang.org/ja/3.0/doc/index.html [man-31]: https://docs.ruby-lang.org/ja/3.1/doc/index.html [man-32]: https://docs.ruby-lang.org/ja/3.2/doc/index.html +[man-33]: https://docs.ruby-lang.org/ja/3.3/doc/index.html [man-search]: https://docs.ruby-lang.org/ja/search/ [man-xz]: https://cache.ruby-lang.org/pub/ruby/doc/ruby-refm-1.9.3-dynamic-20120829.tar.xz [man-gz]: https://cache.ruby-lang.org/pub/ruby/doc/ruby-refm-1.9.3-dynamic-20120829.tar.gz From 7bc346b91231a737555dad1d7fac0e7bc8e20307 Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:49:59 +0900 Subject: [PATCH 173/607] avaliable ==> available --- en/documentation/installation/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/documentation/installation/index.md b/en/documentation/installation/index.md index 50fbf76273..f87cd3103b 100644 --- a/en/documentation/installation/index.md +++ b/en/documentation/installation/index.md @@ -229,7 +229,7 @@ to install Ruby: > winget install RubyInstallerTeam.Ruby.{MAJOR}.{MINOR} # Example > winget install RubyInstallerTeam.Ruby.3.2 -# To see all versions avaliable +# To see all versions available > winget search RubyInstallerTeam.Ruby # Note: if you are installing ruby for projects, you may want to install RubyWithDevKit > winget install RubyInstallerTeam.RubyWithDevKit.3.2 From 05ae51ca3e3810e95542a6dfc283f0e639495ddf Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:51:12 +0900 Subject: [PATCH 174/607] repositry ==> repository --- ...2007-03-01-cvs-services-will-be-permanently-unavailable.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2007-03-01-cvs-services-will-be-permanently-unavailable.md b/en/news/_posts/2007-03-01-cvs-services-will-be-permanently-unavailable.md index 58adf6046d..7bf261a8b0 100644 --- a/en/news/_posts/2007-03-01-cvs-services-will-be-permanently-unavailable.md +++ b/en/news/_posts/2007-03-01-cvs-services-will-be-permanently-unavailable.md @@ -6,7 +6,7 @@ lang: en --- CVS services (including CVSup and CVSweb) will be permanently -unavailable on Fri Mar 16 03:00 UTC 2007. The source code repositry has +unavailable on Fri Mar 16 03:00 UTC 2007. The source code repository has been [moved to SVN](/en/news/2006/12/22/cvs-repository-moved-to-svn/). -If you require the CVS repositry, please get it by CVSup till that day. +If you require the CVS repository, please get it by CVSup till that day. From 5a88e55bb4c150876a77e3bc6baa119d3b266f4b Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:51:44 +0900 Subject: [PATCH 175/607] platfrom ==> platform --- en/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md | 2 +- en/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md | 2 +- en/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/en/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md b/en/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md index a9fddadf7e..dd3b8828cd 100644 --- a/en/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md +++ b/en/news/_posts/2022-09-09-ruby-3-2-0-preview2-released.md @@ -77,7 +77,7 @@ The original proposal is https://bugs.ruby-lang.org/issues/17837 * We no longer bundle 3rd party sources like `libyaml`, `libffi`. - * libyaml source has been removed from psych. You may need to install `libyaml-dev` with Ubuntu/Debian platfrom. The package name is different each platforms. + * libyaml source has been removed from psych. You may need to install `libyaml-dev` with Ubuntu/Debian platform. The package name is different each platforms. * libffi will be removed from `fiddle` at preview2 diff --git a/en/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md b/en/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md index 6f6fdef049..87baf80621 100644 --- a/en/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md +++ b/en/news/_posts/2022-11-11-ruby-3-2-0-preview3-released.md @@ -94,7 +94,7 @@ The original proposal is * We no longer bundle 3rd party sources like `libyaml`, `libffi`. - * libyaml source has been removed from psych. You may need to install `libyaml-dev` with Ubuntu/Debian platfrom. The package name is different each platforms. + * libyaml source has been removed from psych. You may need to install `libyaml-dev` with Ubuntu/Debian platform. The package name is different each platforms. * bundled libffi source is also removed from `fiddle` diff --git a/en/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md b/en/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md index 2e8c7f38b4..ce1953cff8 100644 --- a/en/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md +++ b/en/news/_posts/2022-12-06-ruby-3-2-0-rc1-released.md @@ -318,7 +318,7 @@ The following deprecated methods are removed. * We no longer bundle 3rd party sources like `libyaml`, `libffi`. - * libyaml source has been removed from psych. You may need to install `libyaml-dev` with Ubuntu/Debian platfrom. The package name is different for each platform. + * libyaml source has been removed from psych. You may need to install `libyaml-dev` with Ubuntu/Debian platform. The package name is different for each platform. * Bundled libffi source is also removed from `fiddle` From 5c3c0090e6b6385fef9818e668a06e893a5dee72 Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:52:15 +0900 Subject: [PATCH 176/607] Vally ==> Valley --- .../2010-10-01-see-matz-in-san-francisco-or-silicon-valley.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2010-10-01-see-matz-in-san-francisco-or-silicon-valley.md b/en/news/_posts/2010-10-01-see-matz-in-san-francisco-or-silicon-valley.md index c0134cd244..e6fa6e518a 100644 --- a/en/news/_posts/2010-10-01-see-matz-in-san-francisco-or-silicon-valley.md +++ b/en/news/_posts/2010-10-01-see-matz-in-san-francisco-or-silicon-valley.md @@ -5,7 +5,7 @@ author: "James Edward Gray II" lang: en --- -Matz is visiting San Francisco and Silicon Vally on October 7th and +Matz is visiting San Francisco and Silicon Valley on October 7th and 11th. He will be talking about new opportunities for Ruby such as embedded applications, cloud computing, and super computing. Keynote Speech is “Ruby 2.0 What we want to accomplish in the near future.” Not From e289aa708506f3521df459bcfdaa671826d8e9d3 Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:52:52 +0900 Subject: [PATCH 177/607] inifinite ==> infinite --- en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md | 2 +- en/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md | 2 +- en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md | 2 +- en/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md | 2 +- id/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md | 2 +- id/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md | 2 +- id/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md | 2 +- id/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md | 2 +- id/news/_posts/2018-12-25-ruby-2-6-0-released.md | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md b/en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md index d729da25ee..05429bc713 100644 --- a/en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md +++ b/en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md @@ -55,7 +55,7 @@ This module has `parse` method which parses a given ruby code of string and retu An endless range, `(1..)`, is introduced. It works as it has no end. This shows typical use cases: ary[1..] # identical to ary[1..-1] without magical -1 - (1..).each {|index| ... } # inifinite loop from index 1 + (1..).each {|index| ... } # infinite loop from index 1 ary.zip(1..) {|elem, index| ... } # ary.each.with_index(1) { ... } * Add `Binding#source_location`. [[Feature #14230]](https://bugs.ruby-lang.org/issues/14230) diff --git a/en/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md b/en/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md index 9d73ec6459..dd69708fc7 100644 --- a/en/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md +++ b/en/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md @@ -50,7 +50,7 @@ This module has `parse` method which parses a given ruby code of string and retu An endless range, `(1..)`, is introduced. It works as it has no end. This shows typical use cases: ary[1..] # identical to ary[1..-1] without magical -1 - (1..).each {|index| ... } # inifinite loop from index 1 + (1..).each {|index| ... } # infinite loop from index 1 ary.zip(1..) {|elem, index| ... } # ary.each.with_index(1) { ... } * Add `Binding#source_location`. [[Feature #14230]](https://bugs.ruby-lang.org/issues/14230) diff --git a/en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md b/en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md index 3988fd9c48..7ec94532fe 100644 --- a/en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md +++ b/en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md @@ -50,7 +50,7 @@ This module has `parse` method which parses a given ruby code of string and retu An endless range, `(1..)`, is introduced. It works as it has no end. This shows typical use cases: ary[1..] # identical to ary[1..-1] without magical -1 - (1..).each {|index| ... } # inifinite loop from index 1 + (1..).each {|index| ... } # infinite loop from index 1 ary.zip(1..) {|elem, index| ... } # ary.each.with_index(1) { ... } * Add `Binding#source_location`. [[Feature #14230]](https://bugs.ruby-lang.org/issues/14230) diff --git a/en/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md b/en/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md index 3296c37791..448daf85bd 100644 --- a/en/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md +++ b/en/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md @@ -51,7 +51,7 @@ The `RubyVM::AbstractSyntaxTree::Node` class is also introduced. You can get loc An endless range, `(1..)`, is introduced. It works as if it has no end. This shows typical use cases: ary[1..] # identical to ary[1..-1] without magical -1 - (1..).each {|index| block } # inifinite loop from index 1 + (1..).each {|index| block } # infinite loop from index 1 ary.zip(1..) {|elem, index| block } # ary.each.with_index(1) { } * Add `Binding#source_location`. [[Feature #14230]](https://bugs.ruby-lang.org/issues/14230) diff --git a/id/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md b/id/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md index 1477d6390b..840505befa 100644 --- a/id/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md +++ b/id/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md @@ -75,7 +75,7 @@ Kesesuaian struktur dari AST *node* tidak dijamin. Sebuah endless range, `(1..)`, diperkenalkan. Ini berjalan tanpa ada akhirnya. Biasanya digunakan untuk kasus: ary[1..] # identik dengan ary[1..-1] tanpa magical -1 - (1..).each {|index| ... } # inifinite loop dari indeks 1 + (1..).each {|index| ... } # infinite loop dari indeks 1 ary.zip(1..) {|elem, index| ... } # ary.each.with_index(1) { ... } * Menambahkan `Binding#source_location`. [[Feature #14230]](https://bugs.ruby-lang.org/issues/14230) diff --git a/id/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md b/id/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md index 6975fe3bbf..a67e7899d4 100644 --- a/id/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md +++ b/id/news/_posts/2018-11-06-ruby-2-6-0-preview3-released.md @@ -68,7 +68,7 @@ Kesesuaian struktur dari AST *node* tidak dijamin. Sebuah endless range, `(1..)`, diperkenalkan. Ini berjalan tanpa ada akhirnya. Biasanya digunakan untuk kasus: ary[1..] # identik dengan ary[1..-1] tanpa magical -1 - (1..).each {|index| ... } # inifinite loop dari indeks 1 + (1..).each {|index| ... } # infinite loop dari indeks 1 ary.zip(1..) {|elem, index| ... } # ary.each.with_index(1) { ... } * Menambahkan `Binding#source_location`. [[Feature #14230]](https://bugs.ruby-lang.org/issues/14230) diff --git a/id/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md b/id/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md index d5bc935f88..6c38b25fde 100644 --- a/id/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md +++ b/id/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md @@ -68,7 +68,7 @@ eksperimental. Kesesuaian struktur dari AST *node* tidak dijamin. Sebuah endless range, `(1..)`, diperkenalkan. Ini berjalan tanpa ada akhirnya. Biasanya digunakan untuk kasus: ary[1..] # identik dengan ary[1..-1] tanpa magical -1 - (1..).each {|index| ... } # inifinite loop dari indeks 1 + (1..).each {|index| ... } # infinite loop dari indeks 1 ary.zip(1..) {|elem, index| ... } # ary.each.with_index(1) { ... } * Menambahkan `Binding#source_location`. [[Feature #14230]](https://bugs.ruby-lang.org/issues/14230) diff --git a/id/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md b/id/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md index 804238a15c..d2784f3207 100644 --- a/id/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md +++ b/id/news/_posts/2018-12-15-ruby-2-6-0-rc2-released.md @@ -69,7 +69,7 @@ eksperimental. Kesesuaian struktur dari AST *node* tidak dijamin. Sebuah endless range, `(1..)`, diperkenalkan. Ini berjalan tanpa ada akhirnya. Biasanya digunakan untuk kasus: ary[1..] # identik dengan ary[1..-1] tanpa magical -1 - (1..).each {|index| ... } # inifinite loop dari indeks 1 + (1..).each {|index| ... } # infinite loop dari indeks 1 ary.zip(1..) {|elem, index| ... } # ary.each.with_index(1) { ... } * Menambahkan `Binding#source_location`. [[Feature #14230]](https://bugs.ruby-lang.org/issues/14230) diff --git a/id/news/_posts/2018-12-25-ruby-2-6-0-released.md b/id/news/_posts/2018-12-25-ruby-2-6-0-released.md index 4b2b81bf97..ed8781ebf7 100644 --- a/id/news/_posts/2018-12-25-ruby-2-6-0-released.md +++ b/id/news/_posts/2018-12-25-ruby-2-6-0-released.md @@ -68,7 +68,7 @@ eksperimental. Sebuah endless range, `(1..)`, berjalan tanpa ada akhirnya. Biasanya digunakan untuk kasus: ary[1..] # identik dengan ary[1..-1] tanpa magical -1 - (1..).each {|index| ... } # inifinite loop dari indeks 1 + (1..).each {|index| ... } # infinite loop dari indeks 1 ary.zip(1..) {|elem, index| ... } # ary.each.with_index(1) { ... } * Menambahkan `Enumerable#chain` dan `Enumerator#+`. [[Feature #15144]](https://bugs.ruby-lang.org/issues/15144) From decc09d1aa944a94b82422894957d0329cc2b42d Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:53:56 +0900 Subject: [PATCH 178/607] Lightening ==> Lightning --- en/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md | 2 +- id/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md b/en/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md index 190b55d327..17458addfa 100644 --- a/en/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md +++ b/en/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md @@ -16,7 +16,7 @@ lang: en and [Ruddy Lee](https://ruddyblog.wordpress.com) are confirmed keynote speakers. [CFP is open](http://rubytaiwan.kktix.cc/events/rubyconftw2015-cfp) until July 20th (GMT +8) and -[Lightening talk CFP](http://rubytaiwan.kktix.cc/events/rubyconftw2015-ltcfp) +[Lightning talk CFP](http://rubytaiwan.kktix.cc/events/rubyconftw2015-ltcfp) is open until August 10th (GMT +8). If you want to give a talk, please submit your proposal. Any topics related to diff --git a/id/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md b/id/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md index 72e59b1001..13b7afa28a 100644 --- a/id/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md +++ b/id/news/_posts/2015-07-14-rubyconftw-2015-call-for-proposals.md @@ -16,7 +16,7 @@ September di Taipei, Taiwan, sebuah pulau tropis yang berlokasi di jantung Benua dan [Ruddy Lee](https://ruddyblog.wordpress.com) dikonfirmasi menjadi pembicara utama. [CFP is open](http://rubytaiwan.kktix.cc/events/rubyconftw2015-cfp) hingga 20 Juli (GMT +8) dan -[Lightening talk CFP](http://rubytaiwan.kktix.cc/events/rubyconftw2015-ltcfp) +[Lightning talk CFP](http://rubytaiwan.kktix.cc/events/rubyconftw2015-ltcfp) dibuka hingga 10 Agustus (GMT +8). Jika Anda ingin memberikan sebuah seminar, mohon ajukan proposal Anda. Semua topik yang berkaitan dengan From 1c1f3431c9acaeaed6230de47a6f16f797558a02 Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:54:20 +0900 Subject: [PATCH 179/607] Implementors ==> Implementers --- en/news/_posts/2006-10-26-rubyconf-2006-recap.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2006-10-26-rubyconf-2006-recap.md b/en/news/_posts/2006-10-26-rubyconf-2006-recap.md index add9c02f6e..2806c96750 100644 --- a/en/news/_posts/2006-10-26-rubyconf-2006-recap.md +++ b/en/news/_posts/2006-10-26-rubyconf-2006-recap.md @@ -16,7 +16,7 @@ If there was a theme to this year’s conference, I would have to say it’s Ruby implementations. Two presentations focused on alternate Ruby implementations and a third challenged us to get our planned m17n additions to Ruby just right. Apple dropped in to show their plans for -Ruby integration in Mac OS X and the first Ruby Implementors Summit was +Ruby integration in Mac OS X and the first Ruby Implementers Summit was held. Koichi brought us up to speed on YARV, which plans are currently underway to merge into the core at long last. As a teaser, he even showed it running Rails. From ca55ef8e0afb389883f18c1b69b9600f3a5edbe3 Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:54:55 +0900 Subject: [PATCH 180/607] avaiable ==> available --- en/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md | 2 +- en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/en/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md b/en/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md index 1f63bbba09..f8a9fb03c3 100644 --- a/en/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md +++ b/en/news/_posts/2023-09-14-ruby-3-3-0-preview2-released.md @@ -43,7 +43,7 @@ We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 a * Option to start YJIT in paused mode and then later enable it manually * `--yjit-pause` and `RubyVM::YJIT.resume` * This can be used to enable YJIT only once your application is done booting -* `ratio_in_yjit` stat produced by `--yjit-stats` is now avaiable in release builds, +* `ratio_in_yjit` stat produced by `--yjit-stats` is now available in release builds, a special stats or dev build is no longer required. * Exit tracing option now supports sampling * `--trace-exits-sample-rate=N` diff --git a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index e153be77a4..555491917d 100644 --- a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -63,7 +63,7 @@ We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 a YJIT options while disabling YJIT at boot. * Option to disable code GC and treat `--yjit-exec-mem-size` as a hard limit * Can produce better copy-on-write behavior on servers using unicorn and forking -* `ratio_in_yjit` stat produced by `--yjit-stats` is now avaiable in release builds, +* `ratio_in_yjit` stat produced by `--yjit-stats` is now available in release builds, a special stats or dev build is no longer required to access most stats. * Exit tracing option now supports sampling * `--trace-exits-sample-rate=N` diff --git a/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index 8b9dadf07e..508a3fe366 100644 --- a/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/ja/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -64,7 +64,7 @@ Ruby {{ release.version }} が公開されました。Ruby 3.3ではPrismとい YJIT options while disabling YJIT at boot. * Option to disable code GC and treat `--yjit-exec-mem-size` as a hard limit * Can produce better copy-on-write behavior on servers using unicorn and forking -* `ratio_in_yjit` stat produced by `--yjit-stats` is now avaiable in release builds, +* `ratio_in_yjit` stat produced by `--yjit-stats` is now available in release builds, a special stats or dev build is no longer required to access most stats. * Exit tracing option now supports sampling * `--trace-exits-sample-rate=N` diff --git a/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md b/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md index ed405ac8f0..406ce9bc99 100644 --- a/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md +++ b/ja/news/_posts/2023-12-11-ruby-3-3-0-rc1-released.md @@ -66,7 +66,7 @@ Ruby {{ release.version }} が公開されました。Ruby 3.3ではPrismとい YJIT options while disabling YJIT at boot. * Option to disable code GC and treat `--yjit-exec-mem-size` as a hard limit * Can produce better copy-on-write behavior on servers using unicorn and forking -* `ratio_in_yjit` stat produced by `--yjit-stats` is now avaiable in release builds, +* `ratio_in_yjit` stat produced by `--yjit-stats` is now available in release builds, a special stats or dev build is no longer required to access most stats. * Exit tracing option now supports sampling * `--trace-exits-sample-rate=N` From 0ee85a4b934afe6f4bb87a11dfc589a0b710c85a Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:56:08 +0900 Subject: [PATCH 181/607] immedately ==> immediately --- en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md index 555491917d..169be51863 100644 --- a/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md +++ b/en/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -95,7 +95,7 @@ We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.3 a * Name resolution such as `Socket.getaddrinfo` can now be interrupted (in environments where pthreads are available). [Feature #19965](https://bugs.ruby-lang.org/issues/19965) * For this purpose, a pthread is now created whenever calling getaddrinfo or getnameinfo. This incurs some overhead in name resolution (about 2.5x in our experiments). We do not expect the name resolution overhead to be a problem for most applications, but if you observe such, or if you see unexpected affects that you believe are due to this change, please report them. * Environment variable `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` has been added. [Feature #19571](https://bugs.ruby-lang.org/issues/19571) -* Children of old objects are no longer immedately promoted to the old generation in the garbage collector. [Feature #19678](https://bugs.ruby-lang.org/issues/19678) +* Children of old objects are no longer immediately promoted to the old generation in the garbage collector. [Feature #19678](https://bugs.ruby-lang.org/issues/19678) * Support for weak references has been added to the garbage collector. [Feature #19783](https://bugs.ruby-lang.org/issues/19783) ## Other notable changes since 3.2 From 54defafe177a96bc6aaad03cb238ba02f135af5e Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:56:13 +0900 Subject: [PATCH 182/607] Simplfied ==> Simplified --- .../_posts/2011-08-01-ruby-1-9-3-preview1-has-been-released.md | 2 +- pt/news/_posts/2011-08-02-lancado-o-ruby-1-9-3-preview1.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2011-08-01-ruby-1-9-3-preview1-has-been-released.md b/en/news/_posts/2011-08-01-ruby-1-9-3-preview1-has-been-released.md index 94b4768560..692d71741e 100644 --- a/en/news/_posts/2011-08-01-ruby-1-9-3-preview1-has-been-released.md +++ b/en/news/_posts/2011-08-01-ruby-1-9-3-preview1-has-been-released.md @@ -33,7 +33,7 @@ Ruby Inside has published [a review of this release][3]. ## Differences from previous version Previous Ruby versions was licensed under \"GPLv2\" and \"Ruby\" license -but \"2-clause BSDL\"(AKA Simplfied BSD License) and \"Ruby\" license +but \"2-clause BSDL\"(AKA Simplified BSD License) and \"Ruby\" license been replacement of them. ### Encoding diff --git a/pt/news/_posts/2011-08-02-lancado-o-ruby-1-9-3-preview1.md b/pt/news/_posts/2011-08-02-lancado-o-ruby-1-9-3-preview1.md index bf822c4f44..73a1366ba8 100644 --- a/pt/news/_posts/2011-08-02-lancado-o-ruby-1-9-3-preview1.md +++ b/pt/news/_posts/2011-08-02-lancado-o-ruby-1-9-3-preview1.md @@ -32,7 +32,7 @@ Ver [ChangeLogs][1] e [NEWS][2] para descrições. As versões anteriores do Ruby encontravam-se sob a licença \"GPLv2\" e \"Ruby\". No entanto, nesta versão foi substituida pela licença -\"2-clause BSDL\"(AKA Simplfied BSD License) e \"Ruby\". +\"2-clause BSDL\"(AKA Simplified BSD License) e \"Ruby\". ### Encoding From 9de07673348cdf464a8a44680885b9819986cc5e Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:56:39 +0900 Subject: [PATCH 183/607] planed ==> planned --- en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md b/en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md index 7ec94532fe..f332ca99dc 100644 --- a/en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md +++ b/en/news/_posts/2018-12-06-ruby-2-6-0-rc1-released.md @@ -93,7 +93,7 @@ This module has `parse` method which parses a given ruby code of string and retu * Passing `safe_level` to `ERB.new` is deprecated. `trim_mode` and `eoutvar` arguments are changed to keyword arguments. [[Feature #14256]](https://bugs.ruby-lang.org/issues/14256) -* Supported Unicode version is updated to 11. It is planed to update 12 and 12.1 in future TEENY releases of Ruby 2.6. +* Supported Unicode version is updated to 11. It is planned to update 12 and 12.1 in future TEENY releases of Ruby 2.6. * Merge RubyGems 3.0.0.beta3. `--ri` and `--rdoc` options was removed. Please use `--document` and `--no-document` options instead of them. From b11ba9d2ffaff3366193ef479c9385daaef4f293 Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:57:04 +0900 Subject: [PATCH 184/607] desided ==> decided --- de/news/_posts/2001-07-10-removed-language-comparison-page.md | 2 +- en/news/_posts/2001-07-10-removed-language-comparison-page.md | 2 +- ko/news/_posts/2001-07-10-removed-language-comparison-page.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/de/news/_posts/2001-07-10-removed-language-comparison-page.md b/de/news/_posts/2001-07-10-removed-language-comparison-page.md index 6597d1425c..dfdc627411 100644 --- a/de/news/_posts/2001-07-10-removed-language-comparison-page.md +++ b/de/news/_posts/2001-07-10-removed-language-comparison-page.md @@ -5,7 +5,7 @@ author: "NaHi" lang: de --- -Matz desided to remove the page. +Matz decided to remove the page. diff --git a/en/news/_posts/2001-07-10-removed-language-comparison-page.md b/en/news/_posts/2001-07-10-removed-language-comparison-page.md index c4b16d05a8..4af069b665 100644 --- a/en/news/_posts/2001-07-10-removed-language-comparison-page.md +++ b/en/news/_posts/2001-07-10-removed-language-comparison-page.md @@ -5,7 +5,7 @@ author: "NaHi" lang: en --- -Matz desided to remove the page. +Matz decided to remove the page. diff --git a/ko/news/_posts/2001-07-10-removed-language-comparison-page.md b/ko/news/_posts/2001-07-10-removed-language-comparison-page.md index 69a0af6520..911c7d4b90 100644 --- a/ko/news/_posts/2001-07-10-removed-language-comparison-page.md +++ b/ko/news/_posts/2001-07-10-removed-language-comparison-page.md @@ -5,7 +5,7 @@ author: "NaHi" lang: ko --- -Matz desided to remove the page. +Matz decided to remove the page. From 374133e8246ab61b1992a10f6622b5ab1ee26112 Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:58:11 +0900 Subject: [PATCH 185/607] annouces ==> announces --- en/news/_posts/2003-02-24-happy-birthday-ruby.md | 2 +- ko/news/_posts/2003-02-24-happy-birthday-ruby.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2003-02-24-happy-birthday-ruby.md b/en/news/_posts/2003-02-24-happy-birthday-ruby.md index fb87fab6d3..5c9093ea30 100644 --- a/en/news/_posts/2003-02-24-happy-birthday-ruby.md +++ b/en/news/_posts/2003-02-24-happy-birthday-ruby.md @@ -11,7 +11,7 @@ lang: en > Today, February 24, 2003, is Ruby’s 10th birthday. Happy Birthday, > Ruby! And congratz to Matz! -dblack also annouces the new non-profit organization [Ruby Central, +dblack also announces the new non-profit organization [Ruby Central, Inc][1] and RubyConf 2003!. See [\[ruby-talk:65632\]][2]. diff --git a/ko/news/_posts/2003-02-24-happy-birthday-ruby.md b/ko/news/_posts/2003-02-24-happy-birthday-ruby.md index d134adec62..f0bba365c9 100644 --- a/ko/news/_posts/2003-02-24-happy-birthday-ruby.md +++ b/ko/news/_posts/2003-02-24-happy-birthday-ruby.md @@ -11,7 +11,7 @@ lang: ko > Today, February 24, 2003, is Ruby’s 10th birthday. Happy Birthday, > Ruby! And congratz to Matz! -dblack also annouces the new non-profit organization [Ruby Central, +dblack also announces the new non-profit organization [Ruby Central, Inc][1] and RubyConf 2003!. See [\[ruby-talk:65632\]][2]. From 6d976f2919a0c8fa4af415294f82101e035337c3 Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:58:42 +0900 Subject: [PATCH 186/607] idenfitifer ==> identifier --- .../_posts/2020-09-29-http-request-smuggling-cve-2020-25613.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2020-09-29-http-request-smuggling-cve-2020-25613.md b/en/news/_posts/2020-09-29-http-request-smuggling-cve-2020-25613.md index 891f5e47ad..4223a8bda6 100644 --- a/en/news/_posts/2020-09-29-http-request-smuggling-cve-2020-25613.md +++ b/en/news/_posts/2020-09-29-http-request-smuggling-cve-2020-25613.md @@ -8,7 +8,7 @@ tags: security lang: en --- -A potential HTTP request smuggling vulnerability in WEBrick was reported. This vulnerability has been assigned the CVE idenfitifer [CVE-2020-25613](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25613). We strongly recommend upgrading the webrick gem. +A potential HTTP request smuggling vulnerability in WEBrick was reported. This vulnerability has been assigned the CVE identifier [CVE-2020-25613](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25613). We strongly recommend upgrading the webrick gem. ## Details From 20cfcd8c2abb260f9ed6e3feb257432fd4d0d020 Mon Sep 17 00:00:00 2001 From: ydah Date: Mon, 11 Mar 2024 22:59:14 +0900 Subject: [PATCH 187/607] dont' ==> don't --- en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md b/en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md index 05429bc713..eafdcf0a37 100644 --- a/en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md +++ b/en/news/_posts/2018-05-31-ruby-2-6-0-preview2-released.md @@ -66,7 +66,7 @@ This module has `parse` method which parses a given ruby code of string and retu ## Performance improvements -* Speedup `Proc#call` because we dont' need to care about `$SAFE` any more. +* Speedup `Proc#call` because we don't need to care about `$SAFE` any more. [[Feature #14318]](https://bugs.ruby-lang.org/issues/14318) With `lc_fizzbuzz` benchmark which uses `Proc#call` so many times we can measure From cff8934e295e318be21855c4b6ae9751a2bb3288 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 19 Mar 2024 21:37:52 +0900 Subject: [PATCH 188/607] Draft for CVE-2024-27280 --- ...24-03-21-buffer-overread-cve-2024-27280.md | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md diff --git a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md new file mode 100644 index 0000000000..395ab5ecf0 --- /dev/null +++ b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -0,0 +1,44 @@ +--- +layout: news_post +title: "CVE-2024-27280: Buffer overread vulnerability in StringIO" +author: "hsbt" +translator: +date: 2023-03-21 11:00:00 +0000 +tags: security +lang: en +--- + +We have released the stringio gem version 3.0.1.1 and 3.0.1.2 that have a security fix for a buffer overread vulnerability. +This vulnerability has been assigned the CVE identifier [CVE-2024-27280](https://www.cve.org/CVERecord?id=CVE-2024-27280). + +## Details + +An issue was discovered in StringIO 3.0.1, as distributed in Ruby 3.0.x through 3.0.6 and 3.1.x through 3.1.4. + +The ungetbyte and ungetc methods on a StringIO can read past the end of a string, and a subsequent call to StringIO.gets may return the memory value. + +This vulnerability is not affected by Ruby 3.2.x and later. + +## Recommended action + +We recommend to update the stringio gem to version 3.0.1.2 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: + +* For Ruby 3.0 users: Update to `stringio` 3.0.1.1 + +StringIO-3.0.1.2 contained bugfix for [[Bug #19389]][https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2]. This fix has been backported to Ruby 3.1.4. But we didn't change stringio version from 3.0.1. Therefore, we released 3.0.1.2 to include the vulnerability fix. + +You can use `gem update stringio` to update it. If you are using bundler, please add `gem "stringio", ">= 3.0.1.2"` to your `Gemfile`. + +## Affected versions + +* Ruby 3.0.6 or lower +* Ruby 3.1.4 or lower +* StringIO gem 3.0.1 or lower + +## Credits + +Thanks to [david_h1](https://hackerone.com/david_h1?type=user) for discovering this issue. + +## History + +* Originally published at 2024-03-21 11:00:00 (UTC) From 001759576b32803dd53eff866bce8d2b2b3eb09a Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 19 Mar 2024 20:41:51 +0900 Subject: [PATCH 189/607] Draft for CVE-2024-27281 --- .../2024-03-21-rce-rdoc-cve-2024-27281.md | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md diff --git a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md new file mode 100644 index 0000000000..9536564f18 --- /dev/null +++ b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -0,0 +1,46 @@ +--- +layout: news_post +title: "CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc" +author: "hsbt" +translator: +date: 2023-03-21 11:00:00 +0000 +tags: security +lang: en +--- + +We have released the rdoc gem version 6.3.4, 6.4.1, 6.5.1 and 6.6.3 that have a security fix for a RCE vulnerability. +This vulnerability has been assigned the CVE identifier [CVE-2024-27281](https://www.cve.org/CVERecord?id=CVE-2024-27281). + +## Details + +An issue was discovered in RDoc 6.3.3 through 6.6.2, as distributed in Ruby 3.x through 3.3.0. + +When parsing `.rdoc_options` (used for configuration in RDoc) as a YAML file, object injection and resultant remote code execution are possible because there are no restrictions on the classes that can be restored. + +When loading the documentation cache, object injection and resultant remote code execution are also possible if there were a crafted cache. + +## Recommended action + +We recommend to update the rdoc gem to version 6.6.3 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: + +* For Ruby 3.0 users: Update to `rdoc` 6.3.4 +* For Ruby 3.1 users: Update to `time` 6.4.1 +* For Ruby 3.2 users: Update to `time` 6.5.1 + +You can use `gem update rdoc` to update it. If you are using bundler, please add `gem "rdoc", ">= 6.6.3"` to your `Gemfile`. + +## Affected versions + +* Ruby 3.0.6 or lower +* Ruby 3.1.4 or lower +* Ruby 3.2.3 or lower +* Ruby 3.3.0 +* RDoc gem 6.3.3 or lower, 6.4.0 through 6.6.2 without the patch versions (6.3.4, 6.4.1, 6.5.1, 6.6.3) + +## Credits + +Thanks to [ooooooo_q](https://hackerone.com/ooooooo_q?type=user) for discovering this issue. + +## History + +* Originally published at 2024-03-31 11:00:00 (UTC) From 9e940c611dbdb04c30ec4de9de37ab8933490e5a Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 21 Mar 2024 12:22:43 +0900 Subject: [PATCH 190/607] Revised --- .../2024-03-21-buffer-overread-cve-2024-27280.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md index 395ab5ecf0..3fc4a24e16 100644 --- a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md +++ b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -8,24 +8,25 @@ tags: security lang: en --- -We have released the stringio gem version 3.0.1.1 and 3.0.1.2 that have a security fix for a buffer overread vulnerability. +We have released the StringIO gem version 3.0.1.1 and 3.0.1.2 that have a security fix for a buffer overread vulnerability. This vulnerability has been assigned the CVE identifier [CVE-2024-27280](https://www.cve.org/CVERecord?id=CVE-2024-27280). ## Details An issue was discovered in StringIO 3.0.1, as distributed in Ruby 3.0.x through 3.0.6 and 3.1.x through 3.1.4. -The ungetbyte and ungetc methods on a StringIO can read past the end of a string, and a subsequent call to StringIO.gets may return the memory value. +The `ungetbyte` and `ungetc` methods on a StringIO can read past the end of a string, and a subsequent call to `StringIO.gets` may return the memory value. -This vulnerability is not affected by Ruby 3.2.x and later. +This vulnerability is not affected StringIO 3.0.3 and later, and Ruby 3.2.x and later. ## Recommended action -We recommend to update the stringio gem to version 3.0.1.2 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: +We recommend to update the StringIO gem to version 3.0.3 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: * For Ruby 3.0 users: Update to `stringio` 3.0.1.1 +* For Ruby 3.1 users: Update to `stringio` 3.0.1.2 -StringIO-3.0.1.2 contained bugfix for [[Bug #19389]][https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2]. This fix has been backported to Ruby 3.1.4. But we didn't change stringio version from 3.0.1. Therefore, we released 3.0.1.2 to include the vulnerability fix. +StringIO 3.0.1.2 contained bugfix for [[Bug #19389]][https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2]. This fix has been backported to Ruby 3.1.4. But we didn't change stringio version from 3.0.1. Therefore, we released 3.0.1.2 to include the vulnerability fix. You can use `gem update stringio` to update it. If you are using bundler, please add `gem "stringio", ">= 3.0.1.2"` to your `Gemfile`. @@ -33,7 +34,7 @@ You can use `gem update stringio` to update it. If you are using bundler, please * Ruby 3.0.6 or lower * Ruby 3.1.4 or lower -* StringIO gem 3.0.1 or lower +* StringIO gem 3.0.2 or lower ## Credits From a3e1185de9ad84629f0bbbd4d72280a819fbe2de Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 21 Mar 2024 12:30:36 +0900 Subject: [PATCH 191/607] Simplified --- en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md index 3fc4a24e16..b0c3c86dd0 100644 --- a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md +++ b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -26,7 +26,7 @@ We recommend to update the StringIO gem to version 3.0.3 or later. In order to e * For Ruby 3.0 users: Update to `stringio` 3.0.1.1 * For Ruby 3.1 users: Update to `stringio` 3.0.1.2 -StringIO 3.0.1.2 contained bugfix for [[Bug #19389]][https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2]. This fix has been backported to Ruby 3.1.4. But we didn't change stringio version from 3.0.1. Therefore, we released 3.0.1.2 to include the vulnerability fix. +Note: hat StringIO 3.0.1.2 contains not only the fix for this vulnerability but also a bugfix for [[Bug #19389]][https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2]. You can use `gem update stringio` to update it. If you are using bundler, please add `gem "stringio", ">= 3.0.1.2"` to your `Gemfile`. From 09738adeb7fdbb05cf676635eb7493f55104253a Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 21 Mar 2024 12:33:28 +0900 Subject: [PATCH 192/607] style --- en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md index 9536564f18..f2a73501ed 100644 --- a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md +++ b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -8,7 +8,7 @@ tags: security lang: en --- -We have released the rdoc gem version 6.3.4, 6.4.1, 6.5.1 and 6.6.3 that have a security fix for a RCE vulnerability. +We have released the RDoc gem version 6.3.4, 6.4.1, 6.5.1 and 6.6.3 that have a security fix for a RCE vulnerability. This vulnerability has been assigned the CVE identifier [CVE-2024-27281](https://www.cve.org/CVERecord?id=CVE-2024-27281). ## Details @@ -21,7 +21,7 @@ When loading the documentation cache, object injection and resultant remote code ## Recommended action -We recommend to update the rdoc gem to version 6.6.3 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: +We recommend to update the RDoc gem to version 6.6.3 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: * For Ruby 3.0 users: Update to `rdoc` 6.3.4 * For Ruby 3.1 users: Update to `time` 6.4.1 From 86e8734cd241cf51878537f866ae24afbaf9e270 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 21 Mar 2024 13:06:36 +0900 Subject: [PATCH 193/607] Fix incorrect date --- en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md | 2 +- en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md index b0c3c86dd0..76974e65cd 100644 --- a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md +++ b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -3,7 +3,7 @@ layout: news_post title: "CVE-2024-27280: Buffer overread vulnerability in StringIO" author: "hsbt" translator: -date: 2023-03-21 11:00:00 +0000 +date: 2024-03-21 11:00:00 +0000 tags: security lang: en --- diff --git a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md index f2a73501ed..0b35739f09 100644 --- a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md +++ b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -3,7 +3,7 @@ layout: news_post title: "CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc" author: "hsbt" translator: -date: 2023-03-21 11:00:00 +0000 +date: 2024-03-21 11:00:00 +0000 tags: security lang: en --- From c4484f810686603812d11c8a96312ef25984d101 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 21 Mar 2024 13:13:10 +0900 Subject: [PATCH 194/607] Use UTC --- en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md | 2 +- en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md index 76974e65cd..c79ca9646e 100644 --- a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md +++ b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -3,7 +3,7 @@ layout: news_post title: "CVE-2024-27280: Buffer overread vulnerability in StringIO" author: "hsbt" translator: -date: 2024-03-21 11:00:00 +0000 +date: 2024-03-21 4:00:00 +0000 tags: security lang: en --- diff --git a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md index 0b35739f09..6d8ef25d3c 100644 --- a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md +++ b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -3,7 +3,7 @@ layout: news_post title: "CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc" author: "hsbt" translator: -date: 2024-03-21 11:00:00 +0000 +date: 2024-03-21 4:00:00 +0000 tags: security lang: en --- From fac85f77a836dbb4c7caa597c3351c742a26ce3d Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 21 Mar 2024 13:36:46 +0900 Subject: [PATCH 195/607] Fix several sentence --- .../_posts/2024-03-21-buffer-overread-cve-2024-27280.md | 2 +- en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md index c79ca9646e..dacd1aa45b 100644 --- a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md +++ b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -42,4 +42,4 @@ Thanks to [david_h1](https://hackerone.com/david_h1?type=user) for discovering t ## History -* Originally published at 2024-03-21 11:00:00 (UTC) +* Originally published at 2024-03-21 4:00:00 (UTC) diff --git a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md index 6d8ef25d3c..4af55a3c1a 100644 --- a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md +++ b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -8,7 +8,7 @@ tags: security lang: en --- -We have released the RDoc gem version 6.3.4, 6.4.1, 6.5.1 and 6.6.3 that have a security fix for a RCE vulnerability. +We have released the RDoc gem version 6.3.4.1, 6.4.1.1, 6.5.1.1 and 6.6.3.1 that have a security fix for a RCE vulnerability. This vulnerability has been assigned the CVE identifier [CVE-2024-27281](https://www.cve.org/CVERecord?id=CVE-2024-27281). ## Details @@ -29,13 +29,15 @@ We recommend to update the RDoc gem to version 6.6.3 or later. In order to ensur You can use `gem update rdoc` to update it. If you are using bundler, please add `gem "rdoc", ">= 6.6.3"` to your `Gemfile`. +Note: 6.3.4, 6.4.1, 6.5.1 and 6.6.3 have a incorrect fix. We recommend to upgrade 6.3.4.1, 6.4.1.1, 6.5.1.1 and 6.6.3.1 instead of them. + ## Affected versions * Ruby 3.0.6 or lower * Ruby 3.1.4 or lower * Ruby 3.2.3 or lower * Ruby 3.3.0 -* RDoc gem 6.3.3 or lower, 6.4.0 through 6.6.2 without the patch versions (6.3.4, 6.4.1, 6.5.1, 6.6.3) +* RDoc gem 6.3.3 or lower, 6.4.0 through 6.6.2 without the patch versions (6.3.4, 6.4.1, 6.5.1) ## Credits @@ -43,4 +45,4 @@ Thanks to [ooooooo_q](https://hackerone.com/ooooooo_q?type=user) for discovering ## History -* Originally published at 2024-03-31 11:00:00 (UTC) +* Originally published at 2024-03-21 4:00:00 (UTC) From 2e4067c1e9cb57f1bc3735ab6efac6d780d7f729 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 21 Mar 2024 13:41:34 +0900 Subject: [PATCH 196/607] Fix recommended versions for rdoc --- en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md index 4af55a3c1a..1d2c8014ee 100644 --- a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md +++ b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -21,13 +21,13 @@ When loading the documentation cache, object injection and resultant remote code ## Recommended action -We recommend to update the RDoc gem to version 6.6.3 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: +We recommend to update the RDoc gem to version 6.6.3.1 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: -* For Ruby 3.0 users: Update to `rdoc` 6.3.4 -* For Ruby 3.1 users: Update to `time` 6.4.1 -* For Ruby 3.2 users: Update to `time` 6.5.1 +* For Ruby 3.0 users: Update to `rdoc` 6.3.4.1 +* For Ruby 3.1 users: Update to `time` 6.4.1.1 +* For Ruby 3.2 users: Update to `time` 6.5.1.1 -You can use `gem update rdoc` to update it. If you are using bundler, please add `gem "rdoc", ">= 6.6.3"` to your `Gemfile`. +You can use `gem update rdoc` to update it. If you are using bundler, please add `gem "rdoc", ">= 6.6.3.1"` to your `Gemfile`. Note: 6.3.4, 6.4.1, 6.5.1 and 6.6.3 have a incorrect fix. We recommend to upgrade 6.3.4.1, 6.4.1.1, 6.5.1.1 and 6.6.3.1 instead of them. From c9bd720c736753e2497ddc9c4e5728a82e1b4741 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 21 Mar 2024 13:59:14 +0900 Subject: [PATCH 197/607] Typo and style fix --- en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md index dacd1aa45b..0ffe5943c2 100644 --- a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md +++ b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -26,7 +26,7 @@ We recommend to update the StringIO gem to version 3.0.3 or later. In order to e * For Ruby 3.0 users: Update to `stringio` 3.0.1.1 * For Ruby 3.1 users: Update to `stringio` 3.0.1.2 -Note: hat StringIO 3.0.1.2 contains not only the fix for this vulnerability but also a bugfix for [[Bug #19389]][https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2]. +Note: that StringIO 3.0.1.2 contains not only the fix for this vulnerability but also a bugfix for [[Bug #19389]](https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2). You can use `gem update stringio` to update it. If you are using bundler, please add `gem "stringio", ">= 3.0.1.2"` to your `Gemfile`. From 2b6d0dd333604cfa9b82f287cae4161a4eab272a Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 21 Mar 2024 14:02:52 +0900 Subject: [PATCH 198/607] Fix incorrect gem name --- en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md index 1d2c8014ee..067f53c745 100644 --- a/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md +++ b/en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -24,8 +24,8 @@ When loading the documentation cache, object injection and resultant remote code We recommend to update the RDoc gem to version 6.6.3.1 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead: * For Ruby 3.0 users: Update to `rdoc` 6.3.4.1 -* For Ruby 3.1 users: Update to `time` 6.4.1.1 -* For Ruby 3.2 users: Update to `time` 6.5.1.1 +* For Ruby 3.1 users: Update to `rdoc` 6.4.1.1 +* For Ruby 3.2 users: Update to `rdoc` 6.5.1.1 You can use `gem update rdoc` to update it. If you are using bundler, please add `gem "rdoc", ">= 6.6.3.1"` to your `Gemfile`. From c3b18c3455b3102378a3d3ac4d841aa0c3c0dc27 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Mar 2024 15:20:55 +0000 Subject: [PATCH 199/607] Bump actions/checkout from 4.1.1 to 4.1.2 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.1 to 4.1.2. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/b4ffde65f46336ab88eb53be808477a3936bae11...9bb56186c3b09b4f86b1c65136769dd318469633) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 08964842e9..e3efc8afc8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 9df7071121..c66255f970 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2 - name: Setup Ruby uses: ruby/setup-ruby@d4526a55538b775af234ba4af27118ed6f8f6677 # v1.172.0 with: From 50dab8821403617f586d23e12bc76b622d6531ae Mon Sep 17 00:00:00 2001 From: gaojun Date: Sat, 23 Mar 2024 20:29:07 +0800 Subject: [PATCH 200/607] Jekyll's default service port is now 4000 instead of 9292 now --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f3596635db..c5ea65e6f1 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,7 @@ Then start a local web server with bundle exec rake serve ``` -Open [http://localhost:9292/](http://localhost:9292/) +Open [http://localhost:4000/](http://localhost:4000/) in your browser to access the preview. **Note:** The build of the site will take several minutes. From df6d4504341da9020137bbf76bcb797ed40f1aba Mon Sep 17 00:00:00 2001 From: Shia Date: Mon, 25 Mar 2024 19:41:25 +0900 Subject: [PATCH 201/607] Translate "CVE-2024-27280, CVE-2024-27281" (ko) (#3205) * cp {en,ko}/news/_posts/2024-03-21-{buffer-overread-cve-2024-27280,rce-rdoc-cve-2024-27281}.md * Translate cves * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ...24-03-21-buffer-overread-cve-2024-27280.md | 45 +++++++++++++++++ .../2024-03-21-rce-rdoc-cve-2024-27281.md | 48 +++++++++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md create mode 100644 ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md diff --git a/ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md new file mode 100644 index 0000000000..b136d36786 --- /dev/null +++ b/ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -0,0 +1,45 @@ +--- +layout: news_post +title: "CVE-2024-27280: StringIO에서 버퍼 초과 읽기 취약점" +author: "hsbt" +translator: "shia" +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: ko +--- + +버퍼 초과 읽기 취약점에 대한 보안 수정이 포함된 StringIO gem 버전 3.0.1.1과 3.0.1.2를 릴리스했습니다. +이 취약점에는 CVE 식별자 [CVE-2024-27280](https://www.cve.org/CVERecord?id=CVE-2024-27280)이 할당되었습니다. + +## 세부 내용 + +Ruby 3.0.x부터 3.0.6까지, 3.1.x부터 3.1.4까지 함께 배포된 StringIO 3.0.1에서 문제가 발견되었습니다. + +StringIO의 `ungetbyte`와 `ungetc` 메서드는 문자열의 끝을 넘어서도 읽을 수 있으며, 이어서 호출되는 `StringIO.gets`는 메모리의 값을 반환할 수 있습니다. + +이 취약점은 StringIO 3.0.3과 그 이후, Ruby 3.2.x와 그 이후 버전에는 영향이 없습니다. + +## 권장 조치 + +StringIO gem을 3.0.3이나 그 이상으로 업데이트하는 것이 좋습니다. 이전 Ruby 버전대에 포함된 버전과의 호환성을 보장하기 위해 다음과 같이 업데이트할 수 있습니다. + +* Ruby 3.0 사용자: `stringio` 3.0.1.1로 업데이트 +* Ruby 3.1 사용자: `stringio` 3.0.1.2로 업데이트 + +주의: StringIO 3.0.1.2는 이 취약점뿐만 아니라 [[Bug #19389]](https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2)의 버그 수정도 포함하고 있습니다. + +`gem update stringio`를 사용하여 업데이트할 수 있습니다. bundler를 사용하는 경우 `gem "stringio", ">= 3.0.1.2"`를 `Gemfile`에 추가하세요. + +## 해당 버전 + +* Ruby 3.0.6과 그 이하 +* Ruby 3.1.4와 그 이하 +* StringIO gem 3.0.2와 그 이하 + +## 도움을 준 사람 + +이 문제를 발견해 준 [david_h1](https://hackerone.com/david_h1?type=user)에게 감사를 표합니다. + +## 수정 이력 + +* 2024-03-21 04:00:00 (UTC) 최초 공개 diff --git a/ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md new file mode 100644 index 0000000000..b5a42dbfd6 --- /dev/null +++ b/ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "CVE-2024-27281: RDoc에서 .rdoc_options 사용 시의 RCE 취약점" +author: "hsbt" +translator: "shia" +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: ko +--- + +RCE 취약점에 대한 보안 수정이 포함된 RDoc gem 버전 6.3.4.1, 6.4.1.1, 6.5.1.1과 6.6.3.1을 릴리스했습니다. +이 취약점에는 CVE 식별자 [CVE-2024-27281](https://www.cve.org/CVERecord?id=CVE-2024-27281)이 할당되었습니다. + +## 세부 내용 + +Ruby 3.x부터 3.3.0까지 함께 배포된 RDoc 6.3.3부터 6.6.2까지 문제가 발견되었습니다. + +(RDoc 설정에 사용되는) `.rdoc_options`를 YAML 파일로 파싱할 때, 복원할 수 있는 클래스에 대한 제한이 없기 때문에, 객체 주입 및 그로 인한 원격 코드 실행이 가능합니다. + +문서 캐시를 읽어올 때도 조작된 캐시가 있을 경우, 객체 주입 및 그로 인한 원격 코드 실행이 가능합니다. + +## 권장 조치 + +RDoc gem을 6.6.3.1이나 그 이상으로 업데이트하는 것이 좋습니다. 이전 Ruby 버전대에 포함된 버전과의 호환성을 보장하기 위해 다음과 같이 업데이트할 수 있습니다. + +* Ruby 3.0 사용자: `rdoc` 6.3.4.1로 업데이트 +* Ruby 3.1 사용자: `rdoc` 6.4.1.1로 업데이트 +* Ruby 3.2 사용자: `rdoc` 6.5.1.1로 업데이트 + +`gem update rdoc`를 사용하여 업데이트할 수 있습니다. bundler를 사용하는 경우 `gem "rdoc", ">= 6.6.3.1"`을 `Gemfile`에 추가하세요. + +주의: 6.3.4, 6.4.1, 6.5.1, 6.6.3은 부정확한 수정을 포함하고 있습니다. 이 대신 6.3.4.1, 6.4.1.1, 6.5.1.1, 6.6.3.1로 업데이트하세요. + +## 해당 버전 + +* Ruby 3.0.6과 그 이하 +* Ruby 3.1.4와 그 이하 +* Ruby 3.2.3과 그 이하 +* Ruby 3.3.0 +* RDoc gem 6.3.3과 그 이하, 수정된 버전(6.3.4, 6.4.1, 6.5.1)을 제외한 6.4.0부터 6.6.2까지 + +## 도움을 준 사람 + +이 문제를 발견해 준 [ooooooo_q](https://hackerone.com/ooooooo_q?type=user)에게 감사를 표합니다. + +## 수정 이력 + +* 2024-03-21 04:00:00 (UTC) 최초 공개 From 4f9655df6cb108742a6e91a58c74a42518bf6588 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Mar 2024 15:48:55 +0000 Subject: [PATCH 202/607] Bump ruby/setup-ruby from 1.172.0 to 1.173.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.172.0 to 1.173.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/d4526a55538b775af234ba4af27118ed6f8f6677...5f19ec79cedfadb78ab837f95b87734d0003c899) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e3efc8afc8..bdfde04563 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@d4526a55538b775af234ba4af27118ed6f8f6677 # v1.172.0 + uses: ruby/setup-ruby@5f19ec79cedfadb78ab837f95b87734d0003c899 # v1.173.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index c66255f970..feb70dfd30 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2 - name: Setup Ruby - uses: ruby/setup-ruby@d4526a55538b775af234ba4af27118ed6f8f6677 # v1.172.0 + uses: ruby/setup-ruby@5f19ec79cedfadb78ab837f95b87734d0003c899 # v1.173.0 with: ruby-version: '3.2' bundler-cache: true From e78c4deb31a39f93fb4dbe70fb9e3f7fa99163d6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Mar 2024 15:48:49 +0000 Subject: [PATCH 203/607] Bump actions/deploy-pages from 4.0.4 to 4.0.5 Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 4.0.4 to 4.0.5. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/decdde0ac072f6dcbe43649d82d9c635fff5b4e4...d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index feb70dfd30..6a64046ca5 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -45,4 +45,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@decdde0ac072f6dcbe43649d82d9c635fff5b4e4 # v4.0.4 + uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5 From fcf0d50a07404fcc0a54ac27f7cf1fac3923e656 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Apr 2024 15:03:44 +0000 Subject: [PATCH 204/607] Bump actions/configure-pages from 4.0.0 to 5.0.0 Bumps [actions/configure-pages](https://github.com/actions/configure-pages) from 4.0.0 to 5.0.0. - [Release notes](https://github.com/actions/configure-pages/releases) - [Commits](https://github.com/actions/configure-pages/compare/1f0c5cde4bc74cd7e1254d0cb4de8d49e9068c7d...983d7736d9b0ae728b81ab479565c72886d7745b) --- updated-dependencies: - dependency-name: actions/configure-pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/jekyll.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 6a64046ca5..5497e408af 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -28,7 +28,7 @@ jobs: bundler-cache: true - name: Setup Pages id: pages - uses: actions/configure-pages@1f0c5cde4bc74cd7e1254d0cb4de8d49e9068c7d # v4.0.0 + uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0 - name: Build with Jekyll run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" env: From 789c441bcf8fd297daed33e62bff771f41eebca8 Mon Sep 17 00:00:00 2001 From: gaojun Date: Sat, 23 Mar 2024 20:15:59 +0800 Subject: [PATCH 205/607] Translate CVE-2024-27280, CVE-2024-27281 (zh_cn) --- ...24-03-21-buffer-overread-cve-2024-27280.md | 45 +++++++++++++++++ .../2024-03-21-rce-rdoc-cve-2024-27281.md | 48 +++++++++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 zh_cn/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md create mode 100644 zh_cn/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md diff --git a/zh_cn/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/zh_cn/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md new file mode 100644 index 0000000000..7c3d57f4d3 --- /dev/null +++ b/zh_cn/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -0,0 +1,45 @@ +--- +layout: news_post +title: "CVE-2024-27280: StringIO 中的缓存过读漏洞" +author: "hsbt" +translator: "GAO Jun" +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: zh_cn +--- + +我们发布了包含缓存过读漏洞补丁的 StringIO gem 版本 3.0.1.1 和 3.0.1.2。 +此漏洞的 CVE 编号为 [CVE-2024-27280](https://www.cve.org/CVERecord?id=CVE-2024-27280). + +## 详情 + +在 StringIO 3.0.1 中发现了一个问题,在 Ruby 3.0.x 中影响至 3.0.6,在 3.1.x 中影响至 3.1.4。 + +StringIO 中的 `ungetbyte` 和 `ungetc` 方法能够读取超过字符串结尾的内容,如果后续调用 `StringIO.gets` 能返回内存数据。 + +此漏洞不会影响 StringIO 3.0.3 及之后版本,不会影响 Ruby 3.2.x 及之后版本。 + +## 建议操作 + +我们建议将 StringIO gem 更新到 3.0.3 或后续版本。 为确保与旧版 Ruby 中的绑定版本兼容,您可以按照下面的方式进行更新: + +* Ruby 3.0:更新 `stringio` 至 3.0.1.1 +* Ruby 3.1:更新 `stringio` 至 3.0.1.2 + +注意:StringIO 3.0.1.2 不仅包含了本问题的补丁,也包含了 [[Bug #19389]](https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2) 的补丁。 + +您可以通过 `gem update stringio` 进行更新。如果您使用 bundler,请在您的 `Gemfile` 中增加 `gem "stringio", ">= 3.0.1.2"`。 + +## 受影响版本 + +* Ruby 3.0.6 或更低版本 +* Ruby 3.1.4 或更低版本 +* StringIO gem 3.0.2 或更低版本 + +## 致谢 + +感谢 [david_h1](https://hackerone.com/david_h1?type=user) 发现此问题。 + +## 历史 + +* 最初发布于 2024-03-21 4:00:00 (UTC) diff --git a/zh_cn/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/zh_cn/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md new file mode 100644 index 0000000000..d2d8f5967c --- /dev/null +++ b/zh_cn/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞" +author: "hsbt" +translator: "GAO Jun" +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: zh_cn +--- + +我们发布了包含 RCE 漏洞补丁的 RDoc gem 版本 6.3.4.1, 6.4.1.1, 6.5.1.1 和 6.6.3.1。 +此漏洞的 CVE 编号为 [CVE-2024-27281](https://www.cve.org/CVERecord?id=CVE-2024-27281). + +## 详情 + +在 RDoc 6.3.3 至 6.6.2 中发现了一个问题,影响了 Ruby 3.x 至 3.3.0。 + +当解析 YAML 格式的 `.rdoc_options` 文件时(用于 RDoc 配置),由于对恢复的类没有限制,可能导致对象注入和由此产生的远程代码执行。 + +当载入文档缓存时,如果存在特制的缓存,对象注入和由此产生的远程代码执行也可能存在。 + +## 建议操作 + +我们建议将 RDoc gem 更新到 6.6.3.1 或后续版本。 为确保与旧版 Ruby 中的绑定版本兼容,您可以按照下面的方式进行更新: + +* Ruby 3.0:更新 `rdoc` 至 6.3.4.1 +* Ruby 3.1:更新 `rdoc` 至 6.4.1.1 +* Ruby 3.2:更新 `rdoc` 至 6.5.1.1 + +您可以通过 `gem update rdoc` 进行更新。如果您使用 bundler,请在您的 `Gemfile` 中增加 `gem "rdoc", ">= 6.6.3.1`。 + +注意: 6.3.4, 6.4.1, 6.5.1 和 6.6.3 中的补丁不正确。我们建议更新到 6.3.4.1, 6.4.1.1, 6.5.1.1 和 6.6.3.1。 + +## 受影响版本 + +* Ruby 3.0.6 或更低版本 +* Ruby 3.1.4 或更低版本 +* Ruby 3.2.3 或更低版本 +* Ruby 3.3.0 +* RDoc gem 6.3.3 或更低版本, 6.4.0 至 6.6.2 (除已修正版本 6.3.4,6.4.1, 6.5.1) + +## 致谢 + +感谢 [ooooooo_q](https://hackerone.com/ooooooo_q?type=user) 发现此问题。 + +## 历史 + +* 最初发布于 2024-03-21 4:00:00 (UTC) From 625c182c8f977d20d2b596bdb1ef61391b1ff112 Mon Sep 17 00:00:00 2001 From: Tommaso Barbato Date: Mon, 4 Dec 2023 09:34:52 +0100 Subject: [PATCH 206/607] Normalize all dates to Date instead of String --- _data/releases.yml | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/_data/releases.yml b/_data/releases.yml index ba23f794e1..21200e7253 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -193,7 +193,7 @@ zip: fd89a0a833df4b5cb1734a7ffc86a8cf7cb3a8e25944331db674d3ad7732f615867e7e214e1fdd61e44e9c9c856b461b46219b340de7c87a758f28f3a99dd172 - version: 3.2.2 - date: '2023-03-30' + date: 2023-03-30 post: "/en/news/2023/03/30/ruby-3-2-2-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.2.tar.gz @@ -217,7 +217,7 @@ zip: 569a68d89cc9a646cd0319d7cb8d57df3a55c0ac2c64f1f61607cc9c06b3aa8415eb8d38f7893ab3dbf072da9e919fbc454a9338e924c20a6a5110a1fa301d52 - version: 3.2.1 - date: '2023-02-08' + date: 2023-02-08 post: "/en/news/2023/02/08/ruby-3-2-1-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.1.tar.gz @@ -388,7 +388,7 @@ # 3.1 series - version: 3.1.4 - date: '2023-03-30' + date: 2023-03-30 post: "/en/news/2023/03/30/ruby-3-1-4-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.4.tar.gz @@ -412,7 +412,7 @@ zip: 3a334302df97c2c7fec3c2d05d19a40b1ec6f95fef52c85d397196ce62fac4834f96783f0ac7fcba6e2a670f004bcc275db6f1810ace6c68a594e7d2fd9b297b - version: 3.1.3 - date: '2022-11-24' + date: 2022-11-24 post: "/en/news/2022/11/24/ruby-3-1-3-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.3.tar.gz @@ -436,7 +436,7 @@ zip: 3901380a27157639dee72f80231790886d269cc741a6c9e0f6472554855be86bdb93f71577ed8d93e817ef0c8d9a168fcd6f6d426fabb465dd0dd22b5a56cfc9 - version: 3.1.2 - date: '2022-04-12' + date: 2022-04-12 post: "/en/news/2022/04/12/ruby-3-1-2-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.2.tar.gz @@ -544,7 +544,7 @@ # 3.0 series - version: 3.0.6 - date: '2023-03-30' + date: 2023-03-30 post: "/en/news/2023/03/30/ruby-3-0-6-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.6.tar.gz @@ -568,7 +568,7 @@ zip: 576d11c668acac57cf4952228b148d17f16ab1dc491145355a4f2068b15f6cab8a4007a84d9d1eda4c1b62837675c82be99ebe6379c314f46c6ebbbf89677b5e - version: 3.0.5 - date: '2022-11-24' + date: 2022-11-24 post: "/en/news/2022/11/24/ruby-3-0-5-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.5.tar.gz @@ -592,7 +592,7 @@ zip: 953cef1dd97395e04059cc76ee2a74348f2c9da0b2727c5406af26e88072e8c0bde91835354cb9f1b44f3a81a49ea7b807d7f048d138fd74ba3cabbf7859f2b3 - version: 3.0.4 - date: '2022-04-12' + date: 2022-04-12 post: "/en/news/2022/04/12/ruby-3-0-4-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.4.tar.gz @@ -616,7 +616,7 @@ zip: 2d97099161bcd17c5fdf1c70da6e062ae410186e7c1235e3b1df5bad6085e370bed3cf1ebd89ed9b5918cd386ae47d1f986a3c96c32f0c8a0b9375e56b66a1d9 - version: 3.0.3 - date: '2021-11-24' + date: 2021-11-24 post: "/en/news/2021/11/24/ruby-3-0-3-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.3.tar.gz @@ -640,7 +640,7 @@ zip: 24c2a4f455f90e54f85d9565e392519833b36aefce32dc707e6693994d175c82e84ee6c37ed4a9ddf8840479e7cdfaae714c12bc6923368bb00346d4edd434d8 - version: 3.0.2 - date: '2021-07-07' + date: 2021-07-07 post: "/en/news/2021/07/07/ruby-3-0-2-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.2.tar.gz @@ -808,7 +808,7 @@ # 2.7 series - version: 2.7.8 - date: '2023-03-30' + date: 2023-03-30 post: "/en/news/2023/03/30/ruby-2-7-8-released/" url: bz2: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.8.tar.bz2 @@ -837,7 +837,7 @@ zip: e7ad3380cc81ecfebccb39acad7364a20bc5ebf9ce74ca5d82225fe0dea76e2ee46aa97e49b975dd9a00c7ff60d94907d9a27acdbb5c5a48b88a3c58e0a998be - version: 2.7.7 - date: '2022-11-24' + date: 2022-11-24 post: "/en/news/2022/11/24/ruby-2-7-7-released/" url: bz2: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.7.tar.bz2 @@ -866,7 +866,7 @@ zip: 90dabc0fcedc25e3e46d5e9f2dff01c56e142c2e71b95c4c5f4da056f1e47cb320ef8b949282fd9594869e91cd76eab27ad70061be6c26b0d0d8837ae0fb8309 - version: 2.7.6 - date: '2022-04-12' + date: 2022-04-12 post: "/en/news/2022/04/12/ruby-2-7-6-released/" url: bz2: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.6.tar.bz2 @@ -895,7 +895,7 @@ zip: d7210aa211333cc1afa080b999bf1a50db1708bb8e2c608892bb42fe450f4567aa4d974532071e0eba3d96bee63ed1f2d51f123d443edc46668c4eca3fe1f791 - version: 2.7.5 - date: '2021-11-24' + date: 2021-11-24 post: "/en/news/2021/11/24/ruby-2-7-5-released/" url: bz2: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.5.tar.bz2 @@ -924,7 +924,7 @@ zip: fe9a706f8139e59a40ab205dc88cdc613c9c69186cb2daeb5adc80bdf45290a523fa7e3fd0866fa12325039ba413ff1e1f4233073d352da08079dc903063b31a - version: 2.7.4 - date: '2021-07-07' + date: 2021-07-07 post: "/en/news/2021/07/07/ruby-2-7-4-released/" url: bz2: https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.4.tar.bz2 @@ -1199,7 +1199,7 @@ # 2.6 series - version: 2.6.10 - date: '2022-04-12' + date: 2022-04-12 post: "/en/news/2022/04/12/ruby-2-6-10-released/" url: bz2: https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.10.tar.bz2 @@ -1228,7 +1228,7 @@ zip: 352efede781c3c3b1aaaaeaa28050d530b8a350ec549218464dfe57a4d39770f5a345978fc9f6c23d5f539db70bd9f53c4fbf807dc4ec4bdf9cae1acbe6c2c99 - version: 2.6.9 - date: '2021-11-24' + date: 2021-11-24 post: "/en/news/2021/11/24/ruby-2-6-9-released/" url: bz2: https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.9.tar.bz2 @@ -1257,7 +1257,7 @@ zip: 9073e0fc5040434f15158f24c6a551286bc5f1c4c1cb54d6e3debb4ac039187a4f274a217bdb5c8489c72360c65d708f89eb0f2472a1f9232fcfee8e296dec57 - version: 2.6.8 - date: '2021-07-07' + date: 2021-07-07 post: "/en/news/2021/07/07/ruby-2-6-8-released/" url: bz2: https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.8.tar.bz2 From 706b278dc1b09f7a76f084fe5bc2415195bbed44 Mon Sep 17 00:00:00 2001 From: Tommaso Barbato Date: Thu, 1 Feb 2024 11:49:53 +0100 Subject: [PATCH 207/607] Fix 3.2.3 release (ae9c2b0) --- _data/releases.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/releases.yml b/_data/releases.yml index 21200e7253..9d6d454dc3 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -169,7 +169,7 @@ # 3.2 series - version: 3.2.3 - date: '2024-01-18' + date: 2024-01-18 post: "/en/news/2024/01/18/ruby-3-2-3-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.3.tar.gz From 99bfd47d5660cb05e119fb2beacd0572328773b9 Mon Sep 17 00:00:00 2001 From: Maxim Dzyubak Date: Wed, 12 Jul 2023 15:02:20 +0300 Subject: [PATCH 208/607] Add vscode in (bg), (it), (pl), (ru) languages --- bg/documentation/index.md | 3 +++ it/documentation/index.md | 3 +++ pl/documentation/index.md | 3 +++ ru/documentation/index.md | 3 +++ 4 files changed, 12 insertions(+) diff --git a/bg/documentation/index.md b/bg/documentation/index.md index efbb1f7ea4..2cba7b0134 100644 --- a/bg/documentation/index.md +++ b/bg/documentation/index.md @@ -107,6 +107,7 @@ ruby -v * [SciTe][28] * [NetBeans][36] * [Sublime Text][37] + * [Visual Studio Code][vscode] с плъгина [Ruby LSP][40] * За Windows: * [Notepad++][29] @@ -159,3 +160,5 @@ ruby -v [37]: http://www.sublimetext.com/ [38]: https://learncodethehardway.org/ruby/ [39]: http://kapeli.com/dash +[vscode]: https://code.visualstudio.com/ +[40]: https://marketplace.visualstudio.com/items?itemName=Shopify.ruby-lsp diff --git a/it/documentation/index.md b/it/documentation/index.md index f624e05832..19995e888b 100644 --- a/it/documentation/index.md +++ b/it/documentation/index.md @@ -103,6 +103,7 @@ Questa è una lista dei tool più comunemente usati dagli sviluppatori Ruby: * [SciTe][28] * [NetBeans][36] * [Sublime Text][37] + * [Visual Studio Code][vscode] con [Ruby LSP][41] plugin * Per Windows: * [Notepad++][29] @@ -158,3 +159,5 @@ iniziare. [38]: https://learncodethehardway.org/ruby/ [39]: https://corsidia.com/materia/programmazione/imparare-a-programmare [40]: http://kapeli.com/dash +[vscode]: https://code.visualstudio.com/ +[41]: https://marketplace.visualstudio.com/items?itemName=Shopify.ruby-lsp diff --git a/pl/documentation/index.md b/pl/documentation/index.md index 45a8498ddb..454d600b8d 100644 --- a/pl/documentation/index.md +++ b/pl/documentation/index.md @@ -107,6 +107,7 @@ Oto lista popularnych narzędzi używanych przez rubistów: * [SciTe][28] * [NetBeans][36] * [Sublime Text][37] + * [Visual Studio Code][vscode] z wtyczką [Ruby LSP][40] * Dla Windows: * [Notepad++][29] @@ -163,3 +164,5 @@ Jeśli szukasz pomocy w języku polskim, zajrzyj na [forum][pl-2]. [39]: http://kapeli.com/dash [pl-1]: http://www.apohllo.pl/dydaktyka/ruby/intro/ [pl-2]: http://forum.rubyonrails.pl/ +[vscode]: https://code.visualstudio.com/ +[40]: https://marketplace.visualstudio.com/items?itemName=Shopify.ruby-lsp diff --git a/ru/documentation/index.md b/ru/documentation/index.md index 1af7f4448b..1f1749e8aa 100644 --- a/ru/documentation/index.md +++ b/ru/documentation/index.md @@ -116,6 +116,7 @@ ruby -v * [SciTe][28] * [NetBeans][36] * [Sublime Text][37] + * [Visual Studio Code][vscode] с [Ruby LSP][39] плагином * На Windows: * [Notepad++][29] @@ -168,3 +169,5 @@ ruby -v [36]: https://netbeans.org/ [37]: http://www.sublimetext.com/ [38]: https://learncodethehardway.org/ruby/ +[vscode]: https://code.visualstudio.com/ +[39]: https://marketplace.visualstudio.com/items?itemName=Shopify.ruby-lsp From a8a24c3bd2ad656bf2950ab9dc2cbd6fb2c1f877 Mon Sep 17 00:00:00 2001 From: Shugo Maeda Date: Thu, 11 Apr 2024 21:49:05 +0900 Subject: [PATCH 209/607] Fix the affected version of StringIO (#3214) --- en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md index 0ffe5943c2..0e0bf0c4be 100644 --- a/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md +++ b/en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -34,7 +34,7 @@ You can use `gem update stringio` to update it. If you are using bundler, please * Ruby 3.0.6 or lower * Ruby 3.1.4 or lower -* StringIO gem 3.0.2 or lower +* StringIO gem 3.0.1 or lower ## Credits @@ -42,4 +42,5 @@ Thanks to [david_h1](https://hackerone.com/david_h1?type=user) for discovering t ## History +* Fixed the affected version of StringIO (3.0.2 -> 3.0.1) at 2024-04-11 12:50:00 (UTC) * Originally published at 2024-03-21 4:00:00 (UTC) From d5ec2d0d4ca6ed08df2a8fee7f7f47edec7075fd Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Fri, 12 Apr 2024 16:38:20 +0900 Subject: [PATCH 210/607] Fix the affected version of StringIO (ko) (#3215) --- ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md index b136d36786..fa5cb2593b 100644 --- a/ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md +++ b/ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -34,7 +34,7 @@ StringIO gem을 3.0.3이나 그 이상으로 업데이트하는 것이 좋습니 * Ruby 3.0.6과 그 이하 * Ruby 3.1.4와 그 이하 -* StringIO gem 3.0.2와 그 이하 +* StringIO gem 3.0.1과 그 이하 ## 도움을 준 사람 @@ -42,4 +42,5 @@ StringIO gem을 3.0.3이나 그 이상으로 업데이트하는 것이 좋습니 ## 수정 이력 +* 2024-04-11 12:50:00 (UTC) StringIO의 해당 버전 수정(3.0.2 -> 3.0.1) * 2024-03-21 04:00:00 (UTC) 최초 공개 From 589ebac2d9a723846167b9db58e9f8821f5b1dac Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Sat, 13 Apr 2024 16:21:31 +0900 Subject: [PATCH 211/607] Partially revert d6657033b5e26b13a6cdd37d1dba171ea3e0c828 --- ...011-02-18-fileutils-is-vulnerable-to-symlink-race-attacks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2011-02-18-fileutils-is-vulnerable-to-symlink-race-attacks.md b/en/news/_posts/2011-02-18-fileutils-is-vulnerable-to-symlink-race-attacks.md index b3a72c05b2..8c52517f94 100644 --- a/en/news/_posts/2011-02-18-fileutils-is-vulnerable-to-symlink-race-attacks.md +++ b/en/news/_posts/2011-02-18-fileutils-is-vulnerable-to-symlink-race-attacks.md @@ -32,7 +32,7 @@ should not be world writable except when the sticky bit set. ### Updates -* Fixed typo. (vulnerable -> vulnerable) +* Fixed typo. (vulnerabile -> vulnerable) * 1\.8.7-334 was released to fix this issue. 1.8.7 users are encouraged to upgrade. * [https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p334.tar.gz][1] From edbcb01bcf308eaee19da313eb34d3a6b8065d82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Sat, 13 Apr 2024 16:00:05 -0400 Subject: [PATCH 212/607] Translate CVE-2024-27280, CVE-2024-27281 (es) (#3217) * Translate CVE-2024-27280, CVE-2024-27281 (es) * Remove trailing space --- ...24-03-21-buffer-overread-cve-2024-27280.md | 60 ++++++++++++++++++ .../2024-03-21-rce-rdoc-cve-2024-27281.md | 63 +++++++++++++++++++ 2 files changed, 123 insertions(+) create mode 100644 es/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md create mode 100644 es/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md diff --git a/es/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/es/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md new file mode 100644 index 0000000000..8a106ee914 --- /dev/null +++ b/es/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -0,0 +1,60 @@ +--- +layout: news_post +title: "CVE-2024-27280: Buffer overread vulnerability in StringIO" +author: "hsbt" +translator: vtamara +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: es +--- + +Hemos publicado las versiones 3.0.1.1 y 3.0.1.2 de la gema +StringIO que tiene una corrección de seguridad para una vulnerabilidad +de sobre-lectura de un buffer. +A esta vulnerabilidad se le ha asignado el identificador CVE +[CVE-2024-27280](https://www.cve.org/CVERecord?id=CVE-2024-27280). + +## Detalles + +Se descubrió un problema en StringIO 3.0.1, distribuido con +Ruby 3.0.x, hasta 3.0.6 y con 3.1.x hasta 3.1.4. + +Los métodos `ungetbyte` y `ungetc` de StringIO pueden leer más +allá del fin de una cadena, y las llamadas subsiguientes a +`StringIO.gets` pueden retornar valores en memoria. + +Esta vulnerabilidad no afecta a StringIO 3.0.3 ni a posteriores, ni +a Ruby 3.2.x ni a posteriores. + +## Acción recomendada + +Recomendamos actualizar la gema StringIO a la versión 3.0.3 o posterior. +Para asegurar la compatibilidad con las versiones incluidas en series +de Ruby anteriores, puede actualizar como se indica a continuación: + +* Para usuarios de Ruby 3.0: Actualizar a `stringio` 3.0.1.1 +* Para usuarios de Ruby 3.1: Actualizar a `stringio` 3.0.1.2 + +Nota: La gema StringIO 3.0.1.2 contiene no sólo corrección para +esta vulnerabilidad, sino también una solución para +la falla [[Falla #19389]](https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2). + +Puede usar `gem update stringio` para actualizar. +Si está usando bundler, por favror agregue +`gem "stringio", ">= 3.0.1.2"` a su `Gemfile`. + +## Versiones afectadas + +* Ruby 3.0.6 y anteriores +* Ruby 3.1.4 y anteriores +* Gema StringIO 3.0.1 y anteriores + +## Creditos + +Agradecemos a [david_h1](https://hackerone.com/david_h1?type=user) +por descubrir este problema. + +## Historia + +* Arreglada la versión afectada de StringIO (3.0.2 -> 3.0.1) el 2024-04-11 12:50:00 (UTC) +* Publiado originalmente el 2024-03-21 4:00:00 (UTC) diff --git a/es/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/es/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md new file mode 100644 index 0000000000..4bc965c3ba --- /dev/null +++ b/es/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -0,0 +1,63 @@ +--- +layout: news_post +title: "CVE-2024-27281: Vulnerabilidad RCE con .rdoc_options en RDoc" +author: "hsbt" +translator: vtamara +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: es +--- + +Hemos publicado la gema RDoc versiones 6.3.4.1, 6.4.1.1, 6.5.1.1 y +6.6.3.1 que tienen una corrección de seguridad para una vulnerabilidad RCE. +A esta vulnerabilidad se le ha asignado el identifiador CVE +[CVE-2024-27281](https://www.cve.org/CVERecord?id=CVE-2024-27281). + +## Detalles + +Se descubrió un problema en RDoc de 6.3.3 a 6.6.2, tal como se +distribuyó con Ruby 3.x hasta 3.3.0. + +Cuando se analiza el archivo YAML `.rdoc_options` (usado para configurar RDoc), +resulta posible una inyección de objetos y la resultante ejecución de +código porque no hay restricciones en las clases que pueden restaurarse. + +Cuando se carga el cache de documentación, también resultan viables +la inyección de objetos y la posterior ejecución de código remoto +si hay un cache modificado. + +## Acción recomendada + +Recomendamos actualizar la gema RDoc a la versiónn 6.6.3.1 o posterior. +Para asegurar compatibilidad con la versión incluida en series de Ruby +anteriores, en lugar de eso puede actualizar como se indica a continuación: + +* Para usuarios de Ruby 3.0: Actualizar a `rdoc` 6.3.4.1 +* Para usuarios de Ruby 3.1: Actualizar a `rdoc` 6.4.1.1 +* Para usuarios de Ruby 3.2: Actualizar a `rdoc` 6.5.1.1 + +Puede usar `gem update rdoc` para actualizar. Si está usando +bundler, por favor agregue `gem "rdoc", ">= 6.6.3.1"` a su archivo `Gemfile`. + +Nota: Las versiones 6.3.4, 6.4.1, 6.5.1 y 6.6.3 tienen un arreglo +errado. En lugar de esas, recomendamos actualizar a 6.3.4.1, 6.4.1.1, 6.5.1.1 +y 6.6.3.1. + +## Versiones afectadas + +* Ruby 3.0.6 y anteriores +* Ruby 3.1.4 y anteriores +* Ruby 3.2.3 y anteriores + +* Ruby 3.3.0 +* Gemas RDoc 6.3.3 y anteriores , 6.4.0 hasta 6.6.2 sin las versiones + parchadas (6.3.4, 6.4.1, 6.5.1) + +## Creditos + +Agradecemos a [ooooooo_q](https://hackerone.com/ooooooo_q?type=user) +por descubrir este problema. + +## Historia + +* Publicado originalmente el 2024-03-21 4:00:00 (UTC) From c946d08e8fca8db3fcabef5b513f7227fe073590 Mon Sep 17 00:00:00 2001 From: ANDO Yoko Date: Mon, 15 Apr 2024 13:27:54 +0900 Subject: [PATCH 213/607] Translate "CVE-2024-27280: Buffer overread vulnerability in StringIO" (ja) (#3216) --- ...24-03-21-buffer-overread-cve-2024-27280.md | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md diff --git a/ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md new file mode 100644 index 0000000000..e890924cdd --- /dev/null +++ b/ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -0,0 +1,47 @@ +--- +layout: news_post +title: "CVE-2024-27280: Buffer overread vulnerability in StringIO" +title: "CVE-2024-27280: StringIOにおけるバッファーオーバーリード脆弱性" +author: "hsbt" +translator: "nacl-ando" +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: ja +--- + +バッファーオーバーリード脆弱性のセキュリティ修正を含む StringIO gem 3.0.1.1 、 3.0.1.2 をリリースしました。 この脆弱性は、 [CVE-2024-27280](https://www.cve.org/CVERecord?id=CVE-2024-27280) として登録されています。 + +## 詳細 + + +Ruby 3.0.6 以下の 3.0.x 系と3.1.4 以下の 3.1.x 系で配布されている StringIO 3.0.1 に問題が見つかりました。 + +StringIO の`ungetbyte` と `ungetc` メソッドは文字列の終端を超えて読み込む可能性があり、その後に `StringIO.gets` を呼び出すとメモリの値を返します。 + +この脆弱性は StringIO 3.0.3 以降、 Ruby 3.2.x 以降のバージョンには影響ありません。 + +## 推奨する対応 + +StringIO gem を 3.0.3 以降にアップデートすることを推奨します。古い系列の Ruby で同梱されているバージョンとの互換性を確保するためには、以下のようにアップデートできます: + +* Ruby 3.0: `stringio` を 3.0.1.1 にアップデート +* Ruby 3.1: `stringio` を 3.0.1.2 にアップデート + +注意: StringIO 3.0.1.2 はこの脆弱性の他に [[Bug #19389]](https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2) のバグフィックスを含みます。 + +`gem update stringio` でアップデートできます。もし bundler を使っている場合は、 `Gemfile` に `gem "stringio", ">= 3.0.1.2"` を追加してください。 + +## 影響を受けるバージョン + +* Ruby 3.0.6 及びそれ以前のバージョン +* Ruby 3.1.4 及びそれ以前のバージョン +* StringIO gem 3.0.1 及びそれ以前のバージョン + +## クレジット + +この脆弱性情報は、 [david_h1](https://hackerone.com/david_h1?type=user) 氏によって報告されました。 + +## 更新履歴 + +* 2024-04-11 21:50:00 (JST) 影響を受ける StringIO の バージョンを 3.0.2 から 3.0.1 に変更 +* 2024-03-21 13:00:00 (JST) 初版 From c120d4aefaa0e16c3b9502f411d52bce1a234331 Mon Sep 17 00:00:00 2001 From: ANDO Yoko Date: Mon, 15 Apr 2024 15:46:43 +0900 Subject: [PATCH 214/607] Translate "CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc" (ja) (#3218) * Translate "CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc" (ja) --------- Co-authored-by: Shugo Maeda --- .../2024-03-21-rce-rdoc-cve-2024-27281.md | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md diff --git a/ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md new file mode 100644 index 0000000000..bb4053b0f1 --- /dev/null +++ b/ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "CVE-2024-27281: RDoc 内の .rdoc_options におけるRCE 脆弱性" +author: "hsbt" +translator: "nacl-ando" +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: ja +--- + + +RCE 脆弱性に対するセキュリティ修正を含む RDoc gem 6.3.4.1、 6.4.1.1、 6.5.1.1 および 6.6.3.1 をリリースしました。 +この脆弱性は、 [CVE-2024-27281](https://www.cve.org/CVERecord?id=CVE-2024-27281) として登録されています。 + +## 詳細 + +Ruby 3.3.0 以下の Ruby 3.x 系で配布されている.RDoc 6.3.3 から6.6.2 に問題が見つかりました。 + +RDoc の設定に使用される`.rdoc_options` ファイルを YAML 形式として解析する際に、復元可能なクラスに制限がないため、オブジェクトインジェクション及びそれに伴うリモートコード実行が可能です。 + +ドキュメントのキャッシュをロードする際に細工されたキャッシュがあった場合にも、オブジェクトインジェクション及びそれに伴うリモートコード実行が可能です。 + +## 推奨する対応 + +RDoc gem を 6.6.3.1 以上にアップデートすることを推奨します。古い系列の Ruby で同梱されているバージョンとの互換性を確保するためには、以下のようにアップデートできます: + +* Ruby 3.0: `rdoc` を 6.3.4.1 にアップデート +* Ruby 3.1: `rdoc` を 6.4.1.1 にアップデート +* Ruby 3.2: `rdoc` を 6.5.1.1 にアップデート + +`gem update rdoc` でアップデートできます。もし bundler を使っている場合は、 `Gemfile` に `gem "rdoc", ">= 6.6.3.1"` を追加してください。 + +注意: 6.3.4、 6.4.1、 6.5.1 及び 6.6.3 は不正な修正が含まれます。6.3.4.1、 6.4.1.1、 6.5.1.1 または 6.6.3.1 への修正を推奨します。 + +## 影響を受けるバージョン + +* Ruby 3.0.6 以前 +* Ruby 3.1.4 以前 +* Ruby 3.2.3 以前 +* Ruby 3.3.0 +* RDoc gem 6.3.3 以前、修正されたバージョン (6.3.4、 6.4.1、 6.5.1) を除く 6.4.0 から6.6.2 + +## クレジット + +この問題は [ooooooo_q](https://hackerone.com/ooooooo_q?type=user) によって報告されました。 + +## 更新履歴 + +* 2024-03-21 13:00:00 (JST) 初版 From e2e202c7935f17966c56d8da389e8401cdd27760 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Mon, 15 Apr 2024 07:38:46 -0400 Subject: [PATCH 215/607] Fix title of CVE-2024-27280 in spanish (#3219) --- es/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/es/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/es/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md index 8a106ee914..d6b48e825a 100644 --- a/es/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md +++ b/es/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-27280: Buffer overread vulnerability in StringIO" +title: "CVE-2024-27280: Vulnerabilidad de sobre-lectura de buffer en StringIO" author: "hsbt" translator: vtamara date: 2024-03-21 4:00:00 +0000 From 7ab48df47fa87e9ec36b71aa6e19c744b4f253a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Apr 2024 15:34:28 +0000 Subject: [PATCH 216/607] Bump ruby/setup-ruby from 1.173.0 to 1.174.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.173.0 to 1.174.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/5f19ec79cedfadb78ab837f95b87734d0003c899...6bd3d993c602f6b675728ebaecb2b569ff86e99b) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bdfde04563..ead78645c2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@5f19ec79cedfadb78ab837f95b87734d0003c899 # v1.173.0 + uses: ruby/setup-ruby@6bd3d993c602f6b675728ebaecb2b569ff86e99b # v1.174.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 5497e408af..d1fdd09b8e 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2 - name: Setup Ruby - uses: ruby/setup-ruby@5f19ec79cedfadb78ab837f95b87734d0003c899 # v1.173.0 + uses: ruby/setup-ruby@6bd3d993c602f6b675728ebaecb2b569ff86e99b # v1.174.0 with: ruby-version: '3.2' bundler-cache: true From 2fa5187b58dc82b5f43297db63a00a07c9393296 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Apr 2024 15:34:23 +0000 Subject: [PATCH 217/607] Bump actions/checkout from 4.1.2 to 4.1.3 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.2 to 4.1.3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/9bb56186c3b09b4f86b1c65136769dd318469633...1d96c772d19495a3b5c517cd2bc0cb401ea0529f) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ead78645c2..5a1c5ba91f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2 + uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index d1fdd09b8e..458cb5a735 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2 + uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3 - name: Setup Ruby uses: ruby/setup-ruby@6bd3d993c602f6b675728ebaecb2b569ff86e99b # v1.174.0 with: From 55217fba2d8d04c2bd6e204c8f7bb764e32bbb82 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 22 Apr 2024 14:46:16 +0900 Subject: [PATCH 218/607] CVE-2024-27282 --- ...mation-disclosure-regexp-cve-2024-27282.md | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md diff --git a/en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md b/en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md new file mode 100644 index 0000000000..271d336810 --- /dev/null +++ b/en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md @@ -0,0 +1,41 @@ +--- +layout: news_post +title: "CVE-2024-27282: Information disclosure vulnerability with Regex search" +author: "hsbt" +translator: +date: 2024-04-23 10:00:00 +0000 +tags: security +lang: en +--- + +We have released the Ruby version 3.0.7, 3.1.5, 3.2.4 and 3.3.1 that have a security fix for a vulnerability of information disclosure in Regex search. +This vulnerability has been assigned the CVE identifier [CVE-2024-27282](https://www.cve.org/CVERecord?id=CVE-2024-27282). + +## Details + +An issue was discovered in Ruby 3.x through 3.3.0. + +If attacker-supplied data is provided to the Ruby regex compiler, it is possible to extract arbitrary heap data relative to the start of the text, including pointers and sensitive strings. + +## Recommended action + +We recommend to update the Ruby to version 3.3.1 or later. In order to ensure compatibility with older Ruby series, you may update as follows instead: + +* For Ruby 3.0 users: Update to 3.0.7 +* For Ruby 3.1 users: Update to 3.1.5 +* For Ruby 3.2 users: Update to 3.2.4 + +## Affected versions + +* Ruby 3.0.6 or lower +* Ruby 3.1.4 or lower +* Ruby 3.2.3 or lower +* Ruby 3.3.0 + +## Credits + +Thanks to [sp2ip](https://hackerone.com/sp2ip?type=user) for discovering this issue. + +## History + +* Originally published at 2024-04-23 10:00:00 (UTC) From 8a4b6b42e0132174a6d5f21046c11add1337d183 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 22 Apr 2024 17:01:28 +0900 Subject: [PATCH 219/607] Added draft releases of all versions --- .../_posts/2024-04-23-ruby-3-0-7-released.md | 58 +++++++++++++++++++ .../_posts/2024-04-23-ruby-3-1-5-released.md | 47 +++++++++++++++ .../_posts/2024-04-23-ruby-3-2-4-released.md | 47 +++++++++++++++ .../_posts/2024-04-23-ruby-3-3-1-released.md | 47 +++++++++++++++ 4 files changed, 199 insertions(+) create mode 100644 en/news/_posts/2024-04-23-ruby-3-0-7-released.md create mode 100644 en/news/_posts/2024-04-23-ruby-3-1-5-released.md create mode 100644 en/news/_posts/2024-04-23-ruby-3-2-4-released.md create mode 100644 en/news/_posts/2024-04-23-ruby-3-3-1-released.md diff --git a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md new file mode 100644 index 0000000000..18e1b84cf4 --- /dev/null +++ b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -0,0 +1,58 @@ +--- +layout: news_post +title: "Ruby 3.0.7 Released" +author: "usa" +translator: +date: 2024-04-23 10:00:00 +0000 +lang: en +--- + +Ruby 3.0.7 has been released. + +This release includes security fixes. +Please check the topic below for details. + +* [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) + +See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_0_7) for further details. + +After this release, Ruby 3.0 reaches EOL. In other words, this is expected to be the last release of Ruby 3.0 series. +We will not release Ruby 3.0.8 even if a security vulnerability is found (but could release if a severe regression is found). +We recommend all Ruby 3.0 users to start migration to Ruby 3.3, 3.2, or 3.1 immediately. + +## Download + +{% assign release = site.data.releases | where: "version", "3.0.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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. diff --git a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md new file mode 100644 index 0000000000..119df34587 --- /dev/null +++ b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -0,0 +1,47 @@ +--- +layout: news_post +title: "Ruby 3.1.5 Released" +author: "usa" +translator: +date: 2024-04-23 10:00:00 +0000 +lang: en +--- + +Ruby 3.1.5 has been released. + +This release includes security fixes. +Please check the topic below for details. + +* [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) + +See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_5) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.1.5" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. diff --git a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md new file mode 100644 index 0000000000..4dbcdd82d6 --- /dev/null +++ b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -0,0 +1,47 @@ +--- +layout: news_post +title: "Ruby 3.2.4 Released" +author: "nagachika" +translator: +date: 2024-04-23 10:00:00 +0000 +lang: en +--- + +Ruby 3.2.4 has been released. + +This release includes security fixes. +Please check the topic below for details. + +* [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) + +See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_4) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.2.4" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. diff --git a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md new file mode 100644 index 0000000000..4a0c01b074 --- /dev/null +++ b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -0,0 +1,47 @@ +--- +layout: news_post +title: "Ruby 3.3.1 Released" +author: "naruse" +translator: +date: 2024-04-23 10:00:00 +0000 +lang: en +--- + +Ruby 3.3.1 has been released. + +This release includes security fixes. +Please check the topic below for details. + +* [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) + +See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_1) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.1" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 06b838a7026eb0a5e5f5b2efa0177c392b8a7ec0 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 15:39:04 +0900 Subject: [PATCH 220/607] Update author --- en/news/_posts/2024-04-23-ruby-3-0-7-released.md | 2 +- en/news/_posts/2024-04-23-ruby-3-1-5-released.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md index 18e1b84cf4..a9e6d73232 100644 --- a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -1,7 +1,7 @@ --- layout: news_post title: "Ruby 3.0.7 Released" -author: "usa" +author: "hsbt" translator: date: 2024-04-23 10:00:00 +0000 lang: en diff --git a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md index 119df34587..e2f60800c6 100644 --- a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -1,7 +1,7 @@ --- layout: news_post title: "Ruby 3.1.5 Released" -author: "usa" +author: "hsbt" translator: date: 2024-04-23 10:00:00 +0000 lang: en From 23c21e84169666244a46065a76c0ef6cf723d70b Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 15:50:20 +0900 Subject: [PATCH 221/607] Update branch status --- _data/branches.yml | 11 ++++++----- _data/downloads.yml | 18 +++++------------- 2 files changed, 11 insertions(+), 18 deletions(-) diff --git a/_data/branches.yml b/_data/branches.yml index 6925a4f8c8..2640368538 100644 --- a/_data/branches.yml +++ b/_data/branches.yml @@ -11,7 +11,9 @@ - name: 3.3 status: normal maintenance date: 2023-12-25 + security_maintenance_date: eol_date: + expected_eol_date: 2027-03-31 - name: 3.2 status: normal maintenance @@ -21,18 +23,17 @@ expected_eol_date: 2026-03-31 - name: 3.1 - status: normal maintenance + status: security maintenance date: 2021-12-25 - security_maintenance_date: + security_maintenance_date: 2024-04-01 eol_date: expected_eol_date: 2025-03-31 - name: 3.0 - status: security maintenance + status: eol date: 2020-12-25 security_maintenance_date: 2023-04-01 - eol_date: - expected_eol_date: 2024-03-31 + eol_date: 2024-04-23 - name: 2.7 status: eol diff --git a/_data/downloads.yml b/_data/downloads.yml index 9bb4c48899..fb475321d8 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -7,19 +7,18 @@ preview: stable: - - 3.3.0 - - 3.2.3 - - 3.1.4 + - 3.3.1 + - 3.2.4 # optional security_maintenance: - - 3.0.6 + - 3.1.5 # optional eol: - - 2.7.8 + - 3.0.7 stable_snapshots: @@ -44,17 +43,10 @@ stable_snapshots: zip: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_1.zip version: '3.1' - - branch: ruby_3_0 - url: - gz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_0.tar.gz - xz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_0.tar.xz - zip: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_0.zip - version: '3.0' - nightly_snapshot: url: gz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-master.tar.gz xz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-master.tar.xz zip: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-master.zip - version: '3.3' + version: '3.4' From 39d0033373b586cb8c11cb7b66bea2b9ca6f6fed Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 16:51:58 +0900 Subject: [PATCH 222/607] Added CVE-2024-27281 and CVE-2024-27280 --- en/news/_posts/2024-04-23-ruby-3-0-7-released.md | 2 ++ en/news/_posts/2024-04-23-ruby-3-1-5-released.md | 2 ++ en/news/_posts/2024-04-23-ruby-3-2-4-released.md | 2 ++ en/news/_posts/2024-04-23-ruby-3-3-1-released.md | 2 ++ 4 files changed, 8 insertions(+) diff --git a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md index a9e6d73232..63a011234c 100644 --- a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -13,6 +13,8 @@ This release includes security fixes. Please check the topic below for details. * [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_0_7) for further details. diff --git a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md index e2f60800c6..2e79e8adc3 100644 --- a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -13,6 +13,8 @@ This release includes security fixes. Please check the topic below for details. * [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_5) for further details. diff --git a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md index 4dbcdd82d6..96a623779d 100644 --- a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -13,6 +13,8 @@ This release includes security fixes. Please check the topic below for details. * [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_4) for further details. diff --git a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md index 4a0c01b074..0cde35c40a 100644 --- a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -13,6 +13,8 @@ This release includes security fixes. Please check the topic below for details. * [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_1) for further details. From e50f9406f377dd1256f92f1f19955e8e508d9006 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 16:52:09 +0900 Subject: [PATCH 223/607] Added draft for release metadata --- _data/releases.yml | 77 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/_data/releases.yml b/_data/releases.yml index 9d6d454dc3..0d5da2a18a 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,35 @@ # 3.3 series +- version: 3.3.1 + date: 2024-04-23 + post: /en/news/2024/04/23/ruby-3-3-1-released/ + tag: v3_3_1 + stats: + files_changed: + insertions: + deletions: + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.1.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.1.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.1.tar.xz + size: + gz: + zip: + xz: + sha1: + gz: + zip: + xz: + sha256: + gz: + zip: + xz: + sha512: + gz: + zip: + xz: + - version: 3.3.0 date: 2023-12-25 post: /en/news/2023/12/25/ruby-3-3-0-released/ @@ -168,6 +197,30 @@ # 3.2 series +- version: 3.2.4 + date: 2024-04-23 + post: "/en/news/2024/04/23/ruby-3-2-4-released/" + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.4.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.4.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.4.zip + size: + gz: + xz: + zip: + sha1: + gz: + xz: + zip: + sha256: + gz: + xz: + zip: + sha512: + gz: + xz: + zip: + - version: 3.2.3 date: 2024-01-18 post: "/en/news/2024/01/18/ruby-3-2-3-released/" @@ -387,6 +440,30 @@ # 3.1 series +- version: 3.1.5 + date: 2024-04-23 + post: "/en/news/2024/04/23/ruby-3-1-5-released/" + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.5.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.5.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.5.zip + size: + gz: + xz: + zip: + sha1: + gz: + xz: + zip: + sha256: + gz: + xz: + zip: + sha512: + gz: + xz: + zip: + - version: 3.1.4 date: 2023-03-30 post: "/en/news/2023/03/30/ruby-3-1-4-released/" From 71bb27a5b681610255b0f3863dafa9beb3679a8d Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 18:56:52 +0900 Subject: [PATCH 224/607] 3.0.7 --- _data/releases.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/_data/releases.yml b/_data/releases.yml index 0d5da2a18a..952b22e0d1 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -620,6 +620,30 @@ # 3.0 series +- version: 3.0.7 + date: 2024-04-23 + post: "/en/news/2024/04/23/ruby-3-0-7-released/" + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.7.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.7.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.7.zip + size: + gz: + xz: + zip: + sha1: + gz: + xz: + zip: + sha256: + gz: + xz: + zip: + sha512: + gz: + xz: + zip: + - version: 3.0.6 date: 2023-03-30 post: "/en/news/2023/03/30/ruby-3-0-6-released/" From a43aee20c5c2ba09c07013876ec42cc9b9d45b7d Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 18:58:30 +0900 Subject: [PATCH 225/607] Rename --- ...4-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md} | 2 +- en/news/_posts/2024-04-23-ruby-3-0-7-released.md | 2 +- en/news/_posts/2024-04-23-ruby-3-1-5-released.md | 2 +- en/news/_posts/2024-04-23-ruby-3-2-4-released.md | 2 +- en/news/_posts/2024-04-23-ruby-3-3-1-released.md | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) rename en/news/_posts/{2024-04-23-information-disclosure-regexp-cve-2024-27282.md => 2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md} (93%) diff --git a/en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md b/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md similarity index 93% rename from en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md rename to en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md index 271d336810..387a458a57 100644 --- a/en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md +++ b/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-27282: Information disclosure vulnerability with Regex search" +title: "CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search" author: "hsbt" translator: date: 2024-04-23 10:00:00 +0000 diff --git a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md index 63a011234c..9c5f81ccf2 100644 --- a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -12,7 +12,7 @@ Ruby 3.0.7 has been released. This release includes security fixes. Please check the topic below for details. -* [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) +* [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) * [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) diff --git a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md index 2e79e8adc3..42bc6ad06b 100644 --- a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -12,7 +12,7 @@ Ruby 3.1.5 has been released. This release includes security fixes. Please check the topic below for details. -* [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) +* [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) * [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) diff --git a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md index 96a623779d..d92e6a305a 100644 --- a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -12,7 +12,7 @@ Ruby 3.2.4 has been released. This release includes security fixes. Please check the topic below for details. -* [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) +* [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) * [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) diff --git a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md index 0cde35c40a..e8909d6374 100644 --- a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -12,7 +12,7 @@ Ruby 3.3.1 has been released. This release includes security fixes. Please check the topic below for details. -* [CVE-2024-27282: Information disclosure vulnerability with Regex search]({%link en/news/_posts/2024-04-23-information-disclosure-regexp-cve-2024-27282.md %}) +* [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) * [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) From c9184325d5a05172b112b5b9e7fc424d2546f6d9 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 20:01:54 +0900 Subject: [PATCH 226/607] Update 3.3.1 detail --- _data/releases.yml | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/_data/releases.yml b/_data/releases.yml index 952b22e0d1..a9d18c7a5c 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -25,30 +25,26 @@ date: 2024-04-23 post: /en/news/2024/04/23/ruby-3-3-1-released/ tag: v3_3_1 - stats: - files_changed: - insertions: - deletions: url: gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.1.tar.gz zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.1.zip xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.1.tar.xz size: - gz: - zip: - xz: + gz: 22074535 + zip: 26953741 + xz: 16350792 sha1: - gz: - zip: - xz: + gz: affd82947d7cd84bd586f7f487a1da0c0bd8b1fd + zip: 98b9858e3c125cfe6ca838ac4e4e269fa34bcaaa + xz: 88ef585faece4ed76f4330bce52903664d4fbfe0 sha256: - gz: - zip: - xz: + gz: 8dc2af2802cc700cd182d5430726388ccf885b3f0a14fcd6a0f21ff249c9aa99 + zip: d81c99dd03d095f116361c9d097145666f7bb2512cd856ee086545b1c3e54c55 + xz: 0686941a3ec395a15ae2a852487b2a88e5fb8a5518e188df00d8d1bb71a6349b sha512: - gz: - zip: - xz: + gz: 0c8ea922a79152ac7adbfb2541320565bce6a631692fd39d499a06f53ad6339c16fad8374d171351ed63f7bda3312b26d4f8c058c5b6df3d7548fde372c718f1 + zip: 200bfcc1cc11282c64b03fe529287509684e01266d248ec85f51f6b382beebd8324321c2db59f52185f42c49fdde84aaa42cb59f0048faca389985431224564d + xz: c58e9be9b5ab48191fbf7d67e13f0ec42ee71ed338170e0f7b246708e9cfc617ce65098f5ce7ab32d4305e785642d3e44253462104d5b9c4abcb1a4113f48347 - version: 3.3.0 date: 2023-12-25 From 836c880fea2b70bf8ab06529f967be8f54fc8650 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 20:21:34 +0900 Subject: [PATCH 227/607] Update 3.1.5 and 3.0.7 --- _data/releases.yml | 52 +++++++++++++++++++++++----------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/_data/releases.yml b/_data/releases.yml index a9d18c7a5c..765fdadb75 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -437,28 +437,28 @@ # 3.1 series - version: 3.1.5 - date: 2024-04-23 + date: '2024-04-23' post: "/en/news/2024/04/23/ruby-3-1-5-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.5.tar.gz xz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.5.tar.xz zip: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.5.zip size: - gz: - xz: - zip: + gz: 20884264 + xz: 15293020 + zip: 25208327 sha1: - gz: - xz: - zip: + gz: e3387c8fa2b6faf20beade2239ebdfc701ee6268 + xz: 807bf2b261cf71e7fe58641a6b5dac61fdeb05ea + zip: 83c6b2f26a35a1b23fef091e6db5c60ad0f52bf9 sha256: - gz: - xz: - zip: + gz: 3685c51eeee1352c31ea039706d71976f53d00ab6d77312de6aa1abaf5cda2c5 + xz: f9375a45bdf1cc41298558e7ac6c367f7b6cdcccf7196618b21f0886ff583b91 + zip: e5eefbd95844b0322f6b2650cdef4d884d31c08856df7362375d26360cca9ba4 sha512: - gz: - xz: - zip: + gz: 23661cb1b61013d912b7433f8707bbcd723391694d91f413747c71428e74f8c7385c1304de7d08b70c9fa3bd649e4eb5e9acb472d89dc2ad5678cc54855a24ae + xz: a9883f4d074825bb1f54ef3429a9a71341274bd2de1aa8ea32bce19b6b9c1bac5e5dc4c34a92b8e7caa73ba71d7ed7c546a6fec6f1fd3d8986974dce214f6d49 + zip: 390e6f99b101aa80de924532bfb0b9fc29702b1e14b92e12cc596e9c76f9a2e52ba0e72eb95accb4bac16d5d10d81900a2e8afba80aa514ef870f52cfd50b4fd - version: 3.1.4 date: 2023-03-30 @@ -617,28 +617,28 @@ # 3.0 series - version: 3.0.7 - date: 2024-04-23 + date: '2024-04-23' post: "/en/news/2024/04/23/ruby-3-0-7-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.7.tar.gz xz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.7.tar.xz zip: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.7.zip size: - gz: - xz: - zip: + gz: 21268288 + xz: 15848768 + zip: 25652209 sha1: - gz: - xz: - zip: + gz: ec95aee1364fc4d0ca0e8f83c525127016e05c86 + xz: efc97e609868a19f89653068c4915c162117b721 + zip: b258a1bfcd49fb801b83a0aec90a8bb3989e9e42 sha256: - gz: - xz: - zip: + gz: 2a3411977f2850431136b0fab8ad53af09fb74df2ee2f4fb7f11b378fe034388 + xz: 1748338373c4fad80129921080d904aca326e41bd9589b498aa5ee09fd575bab + zip: 163d752070a2ba1a015f004ae75e38ac9aa44bc4ebfafb55d5ff184cc72db5be sha512: - gz: - xz: - zip: + gz: 66e5116ddd027ab1b27d466104a5b440889318b4f2f74b5fdf3099812bf5f7ef77be62fe1df37e0dc7cd5b2f5efe7fee5b9096910ce815ca4126577cb2abfaa7 + xz: 4760dc7d1345279b53cff30f3dd015b67f6a505e5028357f046dbf23b15a52d09f7d91fcfe5cb75d6c3222e7283aad12b97b36f5de0ff959f824bd42073f9c48 + zip: ed5e6d827ba981808bc4d914e400963b4443d522d52dd5d3f645db0cf38b50ab6c9baafac1b5e348e677500a16ceef1a5ac15c6a67003c2b2037cb86c1bd3654 - version: 3.0.6 date: 2023-03-30 From b3df9a8312046f266a63e4c4c4d9a31322cc317d Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 20:22:00 +0900 Subject: [PATCH 228/607] Update _data/releases.yml Co-authored-by: nagachika --- _data/releases.yml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/_data/releases.yml b/_data/releases.yml index 765fdadb75..866d378782 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -201,21 +201,21 @@ xz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.4.tar.xz zip: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.4.zip size: - gz: - xz: - zip: + gz: 20581711 + zip: 24739492 + xz: 15175656 sha1: - gz: - xz: - zip: + gz: a177e809102270f1cd77bf23c6df30c50ee7c107 + zip: e81354859b904711ce18eda1f42960a53caf3019 + xz: 2806593a486f54ce56e5ba83c152f397e48eb416 sha256: - gz: - xz: - zip: + gz: c72b3c5c30482dca18b0f868c9075f3f47d8168eaf626d4e682ce5b59c858692 + zip: 7edc0163bb033e895a8a97392be0146daec03769c1a6c7f8d084b6e8dc7f7299 + xz: e7f1653d653232ec433472489a91afbc7433c9f760cc822defe7437c9d95791b sha512: - gz: - xz: - zip: + gz: b695b98dac7bb2c8755a106d949cb1b1b91551092fad263765171ddf8a4d86585259ffab5f7cc9bace70143d645dbe5932cfc61c6dba7817177de391d76bcd79 + zip: b52a95b19d98ff5bd29aa74cb7d2cbad58f1ccad75892ad966aec35eef1a57f7c9727b8fd2a51c5c6a1677eaf67226afceee8ce079e523c7b264e841790ddcae + xz: fb0af37be4b6ad7b98ab9f8a508952238ee68b5828e3926331e4db52e2ebc1e6046f31114069322db0cd3bea7c9b82ace91c8564573ddcfa1f960877b237dbff - version: 3.2.3 date: 2024-01-18 From 4b5740064f1d82690b30a6232a8d55d60797b3d8 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 20:22:11 +0900 Subject: [PATCH 229/607] Update en/news/_posts/2024-04-23-ruby-3-0-7-released.md Co-authored-by: nagachika --- en/news/_posts/2024-04-23-ruby-3-0-7-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md index 9c5f81ccf2..4b242abb30 100644 --- a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -10,7 +10,7 @@ lang: en Ruby 3.0.7 has been released. This release includes security fixes. -Please check the topic below for details. +Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) From f0bd423fa215e5b325f1976a9c0f3045d534316c Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 20:22:21 +0900 Subject: [PATCH 230/607] Update en/news/_posts/2024-04-23-ruby-3-1-5-released.md Co-authored-by: nagachika --- en/news/_posts/2024-04-23-ruby-3-1-5-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md index 42bc6ad06b..cadb647414 100644 --- a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -10,7 +10,7 @@ lang: en Ruby 3.1.5 has been released. This release includes security fixes. -Please check the topic below for details. +Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) From 6b62eda97ba0caf8cc437234d8a9ace346923a8d Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 20:22:29 +0900 Subject: [PATCH 231/607] Update en/news/_posts/2024-04-23-ruby-3-2-4-released.md Co-authored-by: nagachika --- en/news/_posts/2024-04-23-ruby-3-2-4-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md index d92e6a305a..3e97467f6f 100644 --- a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -10,7 +10,7 @@ lang: en Ruby 3.2.4 has been released. This release includes security fixes. -Please check the topic below for details. +Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) From cf2719f401a617898a9e772114defaf0710e6079 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 20:22:36 +0900 Subject: [PATCH 232/607] Update en/news/_posts/2024-04-23-ruby-3-3-1-released.md Co-authored-by: nagachika --- en/news/_posts/2024-04-23-ruby-3-3-1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md index e8909d6374..85d56f1fa1 100644 --- a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -10,7 +10,7 @@ lang: en Ruby 3.3.1 has been released. This release includes security fixes. -Please check the topic below for details. +Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) From 801f5265b2021785bc8afc277af0ea8a357e116f Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 20:28:30 +0900 Subject: [PATCH 233/607] Update en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md Co-authored-by: Yusuke Endoh --- ...04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md b/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md index 387a458a57..e04ac1ebcb 100644 --- a/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md +++ b/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md @@ -8,7 +8,7 @@ tags: security lang: en --- -We have released the Ruby version 3.0.7, 3.1.5, 3.2.4 and 3.3.1 that have a security fix for a vulnerability of information disclosure in Regex search. +We have released the Ruby version 3.0.7, 3.1.5, 3.2.4 and 3.3.1 that have a security fix for an arbitrary memory address read vulnerability in Regex search. This vulnerability has been assigned the CVE identifier [CVE-2024-27282](https://www.cve.org/CVERecord?id=CVE-2024-27282). ## Details From 755c797f15c2dde44b8366f195688838a31f5a08 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 23 Apr 2024 20:47:02 +0900 Subject: [PATCH 234/607] bzip2 is not available now --- en/news/_posts/2024-04-23-ruby-3-0-7-released.md | 7 ------- 1 file changed, 7 deletions(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md index 4b242abb30..ea15205666 100644 --- a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -26,13 +26,6 @@ We recommend all Ruby 3.0 users to start migration to Ruby 3.3, 3.2, or 3.1 imme {% assign release = site.data.releases | where: "version", "3.0.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 }} From 75819348c9a5cbd4727c02b07852af94f7f402d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 23 Apr 2024 19:34:48 -0400 Subject: [PATCH 235/607] Translate CVE 2024 27282 (es) (#3222) --- ...mory-address-read-regexp-cve-2024-27282.md | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 es/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md diff --git a/es/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md b/es/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md new file mode 100644 index 0000000000..ab32e8f5f2 --- /dev/null +++ b/es/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "CVE-2024-27282: Lectura de direcciones de memoria arbitrarias al buscar Regex" +author: "hsbt" +translator: vtamara +date: 2024-04-23 10:00:00 +0000 +tags: security +lang: es +--- + +Hemos publicado las versiones 3.0.7, 3.1.5, 3.2.4 y 3.3.1 que +incluyen una corrección de seguridad para una vulnerabilidad de +lectura de direcciones de memoria arbitrarias en la búsqueda Regex. +A esta vulnerabilidad se le ha asignado el identificador CVE +[CVE-2024-27282](https://www.cve.org/CVERecord?id=CVE-2024-27282). + +## Detalles + +Se ha descubierto un problema en Ruby 3.x incluyendo 3.3.0. + +Si se suministran datos preparados por un atacante al compilador de Regex de +Ruby, es posible extraer datos del heap relacionados con el comienzo +del texto, incluyendo apuntadores a cadenas sensitivas. + +## Acción recomendada + +Recomendamos actualizar a la versión de Ruby 3.3.1 o posterior. +Para asegurar compatibilidad con series anteriores de Ruby, +en lugar de eso, puede actualizar como se indica a continuación: + +* Para usuarios de Ruby 3.0: Actualizar a 3.0.7 +* Para usuarios de Ruby 3.1: Actualizar a 3.1.5 +* Para usuarios de Ruby 3.2: Actualizar a 3.2.4 + +## Versiones afectadas + +* Ruby 3.0.6 y anteriores +* Ruby 3.1.4 y anteriores +* Ruby 3.2.3 y anteriores +* Ruby 3.3.0 + +## Creditos + +Agradecmoes a [sp2ip](https://hackerone.com/sp2ip?type=user) +por descubrir este problema. + +## Historia + +* Publicado originalmente el 2024-04-23 10:00:00 (UTC) From f20d96c4c59bf8efc426ea96da30698660741eb0 Mon Sep 17 00:00:00 2001 From: Matheus Richard Date: Tue, 23 Apr 2024 21:45:47 -0300 Subject: [PATCH 236/607] Add compatibility note about `Regexp::new` (#3175) --- en/news/_posts/2023-12-25-ruby-3-3-0-released.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/en/news/_posts/2023-12-25-ruby-3-3-0-released.md b/en/news/_posts/2023-12-25-ruby-3-3-0-released.md index 30ae20b125..6cbad6d110 100644 --- a/en/news/_posts/2023-12-25-ruby-3-3-0-released.md +++ b/en/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -140,6 +140,9 @@ Note: Excluding feature bug fixes. deprecated. `it` will be a reference to the first block parameter in Ruby 3.4. [[Feature #18980]](https://bugs.ruby-lang.org/issues/18980) +* `Regexp::new` now only accepts up to 2 arguments instead of 3. This was + deprecated in Ruby 3.2. [[Bug #18797]](https://bugs.ruby-lang.org/issues/18797) + ### Removed environment variables The following deprecated methods are removed. From 59be334586107fcea2c6aec3fb513eed14269b0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 23 Apr 2024 21:23:52 -0400 Subject: [PATCH 237/607] Release of Ruby 3.3.1 and others (es) (#3223) * Release of Ruby 3.3.1 and others (es) * Consistency in titles * Remove blank at end --- .../_posts/2024-04-23-ruby-3-0-7-released.md | 57 +++++++++++++++++++ .../_posts/2024-04-23-ruby-3-1-5-released.md | 51 +++++++++++++++++ .../_posts/2024-04-23-ruby-3-2-4-released.md | 50 ++++++++++++++++ .../_posts/2024-04-23-ruby-3-3-1-released.md | 51 +++++++++++++++++ 4 files changed, 209 insertions(+) create mode 100644 es/news/_posts/2024-04-23-ruby-3-0-7-released.md create mode 100644 es/news/_posts/2024-04-23-ruby-3-1-5-released.md create mode 100644 es/news/_posts/2024-04-23-ruby-3-2-4-released.md create mode 100644 es/news/_posts/2024-04-23-ruby-3-3-1-released.md diff --git a/es/news/_posts/2024-04-23-ruby-3-0-7-released.md b/es/news/_posts/2024-04-23-ruby-3-0-7-released.md new file mode 100644 index 0000000000..060884cf78 --- /dev/null +++ b/es/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -0,0 +1,57 @@ +--- +layout: news_post +title: "Publicado Ruby 3.0.7" +author: "hsbt" +translator: vtamara +date: 2024-04-23 10:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 3.0.7. + +Esta versión incluye correcciones de seguridad. Por favor +revise detalles en los temas siguientes. + +* [CVE-2024-27282: Lectura de direcciones de memoria arbitrarias al buscar Regex]({%link es/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: Vulnerabilidad RCE con .rdoc_options en RDoc](https://www.ruby-lang.org/es/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: Vulnerabilidad de sobre-lectura de buffer en StringIO](https://www.ruby-lang.org/es/news/2024/03/21/buffer-overread-cve-2024-27280/) + +Ver más detalles en la [publicación en Github](https://github.com/ruby/ruby/releases/tag/v3_0_7). + +Tras esta versión, Ruby 3.0 llega a su Fin de Vida. En otras palabras, +se espera que esta sea la última versión de la serie Ruby 3.0. +No publicaremos Ruby 3.0.8 incluso si se encuentra una vulnerabilidad +de seguridad (aunque se podría publicar si se encontrara una +regresión mayor). +Recomendamos a todos los usuarios de Ruby 3.0 comenzar de inmediato +la migración hacía Ruby 3.3, 3.2, o 3.1. + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.0.7" | first %} + +* <{{ 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 }} + +## Notas de la publicación + +Muchos contribuyentes, desarrolladores, y usuarios que proveyeron reportes de +fallas nos ayudaron a hacer esta versión. Gracias por sus contribuciones. diff --git a/es/news/_posts/2024-04-23-ruby-3-1-5-released.md b/es/news/_posts/2024-04-23-ruby-3-1-5-released.md new file mode 100644 index 0000000000..139b7bb135 --- /dev/null +++ b/es/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -0,0 +1,51 @@ +--- +layout: news_post +title: "Publicado Ruby 3.1.5" +author: "hsbt" +translator: vtamara +date: 2024-04-23 10:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 3.1.5. + +Esta versión incluye correcciones de seguridad. Por favor +revise detalles en los temas siguientes. + +* [CVE-2024-27282: Lectura de direcciones de memoria arbitrarias al buscar Regex]({%link es/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: Vulnerabilidad RCE con .rdoc_options en RDoc](https://www.ruby-lang.org/es/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: Vulnerabilidad de sobre-lectura de buffer en StringIO](https://www.ruby-lang.org/es/news/2024/03/21/buffer-overread-cve-2024-27280/) + +Ver más detalles en la [publicación en Github](https://github.com/ruby/ruby/releases/tag/v3_1_5). + + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.1.5" | first %} + +* <{{ 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 }} + + +## Notas de la publicación + +Muchos contribuyentes, desarrolladores, y usuarios que proveyeron reportes de +fallas nos ayudaron a hacer esta versión. Gracias por sus contribuciones. diff --git a/es/news/_posts/2024-04-23-ruby-3-2-4-released.md b/es/news/_posts/2024-04-23-ruby-3-2-4-released.md new file mode 100644 index 0000000000..0a84215266 --- /dev/null +++ b/es/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Publicado Ruby 3.2.4" +author: "nagachika" +translator: vtamara +date: 2024-04-23 10:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 3.2.4. + +Esta versión incluye correcciones de seguridad. Por favor +revise detalles en los temas siguientes. + +* [CVE-2024-27282: Lectura de direcciones de memoria arbitrarias al buscar Regex]({%link es/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: Vulnerabilidad RCE con .rdoc_options en RDoc](https://www.ruby-lang.org/es/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: Vulnerabilidad de sobre-lectura de buffer en StringIO](https://www.ruby-lang.org/es/news/2024/03/21/buffer-overread-cve-2024-27280/) + +Ver más detalles en la [publicación en Github](https://github.com/ruby/ruby/releases/tag/v3_2_4). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.2.4" | first %} + +* <{{ 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 }} + + +## Notas de la publicación + +Muchos contribuyentes, desarrolladores, y usuarios que proveyeron reportes de +fallas nos ayudaron a hacer esta versión. Gracias por sus contribuciones. diff --git a/es/news/_posts/2024-04-23-ruby-3-3-1-released.md b/es/news/_posts/2024-04-23-ruby-3-3-1-released.md new file mode 100644 index 0000000000..4d1572e40d --- /dev/null +++ b/es/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -0,0 +1,51 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.1" +author: "naruse" +translator: vtamara +date: 2024-04-23 10:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 3.3.1. + +Esta versión incluye correcciones de seguridad. +Por favor revise detalles en los temas siguientes. + +* [CVE-2024-27282: Lectura de direcciones de memoria arbitrarias al buscar Regex]({%link es/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: Vulnerabilidad RCE con .rdoc_options en RDoc](https://www.ruby-lang.org/es/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: Vulnerabilidad de sobre-lectura de buffer en StringIO](https://www.ruby-lang.org/es/news/2024/03/21/buffer-overread-cve-2024-27280/) + +Ver más detalles en la [publicación en Github](https://github.com/ruby/ruby/releases/tag/v3_3_1). + + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.3.1" | first %} + +* <{{ 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 }} + + +## Notas de la publicación + +Muchos contribuyentes, desarrolladores, y usuarios que proveyeron reportes de +fallas nos ayudaron a hacer esta versión. Gracias por sus contribuciones. From e9a9a8cd461e816c6277c7fb81a9b3dd2bdeab00 Mon Sep 17 00:00:00 2001 From: Postmodern Date: Thu, 25 Apr 2024 13:52:15 -0700 Subject: [PATCH 238/607] Explicitly recommend that Ruby 3.3 users upgrade to 3.3.1 for CVE-2024-27282 --- ...-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md | 1 + 1 file changed, 1 insertion(+) diff --git a/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md b/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md index e04ac1ebcb..e27c89c452 100644 --- a/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md +++ b/en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md @@ -24,6 +24,7 @@ We recommend to update the Ruby to version 3.3.1 or later. In order to ensure co * For Ruby 3.0 users: Update to 3.0.7 * For Ruby 3.1 users: Update to 3.1.5 * For Ruby 3.2 users: Update to 3.2.4 +* For Ruby 3.3 users: Update to 3.3.1 ## Affected versions From 59a35dfe354781d94dcad323197b92dc164c3996 Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 27 Apr 2024 16:59:20 +0900 Subject: [PATCH 239/607] Add compatibility note about `Regexp::new` (ko) (#3229) * Import upstream change Ref: https://github.com/ruby/www.ruby-lang.org/pull/3175 * Translate imported text * Update ko/news/_posts/2023-12-25-ruby-3-3-0-released.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ko/news/_posts/2023-12-25-ruby-3-3-0-released.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md b/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md index 6fa1d5deb6..375c399a95 100644 --- a/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md +++ b/ko/news/_posts/2023-12-25-ruby-3-3-0-released.md @@ -139,6 +139,8 @@ IRB에 여러 개선 사항이 추가됩니다. 다음과 같은 내용이 포 Ruby 3.4부터 `it`은 첫 번째 블록 인수를 가리킵니다. [[Feature #18980]](https://bugs.ruby-lang.org/issues/18980) +* `Regexp::new`는 최대 3개의 인수를 받았지만 이제 2개까지 허용합니다. 이는 Ruby 3.2에서 폐기예정이었습니다. [[Bug #18797]](https://bugs.ruby-lang.org/issues/18797) + ### 삭제된 환경 변수 폐기 예정이었던 환경 변수가 삭제됩니다. From 9d8d325e1d7514bfb8ca9e294164bb0744ac1438 Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 27 Apr 2024 17:07:10 +0900 Subject: [PATCH 240/607] Translation of 2024-04-23 published news to ko (#3230) * Copy from origin news at 2024-04-23 * Translate news * Apply suggestions from code review Co-authored-by: Chayoung You * Use link --------- Co-authored-by: Chayoung You --- ...mory-address-read-regexp-cve-2024-27282.md | 42 +++++++++++++++ .../_posts/2024-04-23-ruby-3-0-7-released.md | 53 +++++++++++++++++++ .../_posts/2024-04-23-ruby-3-1-5-released.md | 49 +++++++++++++++++ .../_posts/2024-04-23-ruby-3-2-4-released.md | 49 +++++++++++++++++ .../_posts/2024-04-23-ruby-3-3-1-released.md | 49 +++++++++++++++++ 5 files changed, 242 insertions(+) create mode 100644 ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md create mode 100644 ko/news/_posts/2024-04-23-ruby-3-0-7-released.md create mode 100644 ko/news/_posts/2024-04-23-ruby-3-1-5-released.md create mode 100644 ko/news/_posts/2024-04-23-ruby-3-2-4-released.md create mode 100644 ko/news/_posts/2024-04-23-ruby-3-3-1-released.md diff --git a/ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md b/ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md new file mode 100644 index 0000000000..33868c900b --- /dev/null +++ b/ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "CVE-2024-27282: 정규표현식 검색의 임의의 메모리 주소 읽기 취약점" +author: "hsbt" +translator: "shia" +date: 2024-04-23 10:00:00 +0000 +tags: security +lang: ko +--- + +정규표현식 검색의 임의의 메모리 주소 읽기 취약점에 대한 보안 수정을 포함하는 Ruby 3.0.7, 3.1.5, 3.2.4, 3.3.1을 릴리스했습니다. +이 취약점은 CVE 번호 [CVE-2024-27282](https://www.cve.org/CVERecord?id=CVE-2024-27282)로 등록되어 있습니다. + +## 세부 내용 + +Ruby 3.x부터 3.3.0까지 문제가 발견되었습니다. + +공격자가 제공한 데이터가 Ruby 정규표현식 컴파일러에 제공되면, 텍스트 시작 지점과 관련된 임의의 힙 데이터를 추출할 수 있습니다. 여기에는 포인터와 민감한 문자열을 포함됩니다. + +## 권장 조치 + +Ruby를 3.3.1이나 그 이상으로 업데이트하는 것이 좋습니다. 이전 Ruby 버전대에 포함된 버전과의 호환성을 보장하기 위해 다음과 같이 업데이트할 수 있습니다. + +* Ruby 3.0 사용자: 3.0.7로 업데이트 +* Ruby 3.1 사용자: 3.1.5로 업데이트 +* Ruby 3.2 사용자: 3.2.4로 업데이트 +* Ruby 3.3 사용자: 3.3.1로 업데이트 + +## 해당 버전 + +* Ruby 3.0.6과 그 이하 +* Ruby 3.1.4와 그 이하 +* Ruby 3.2.3과 그 이하 +* Ruby 3.3.0 + +## 도움을 준 사람 + +이 문제를 발견해 준 [sp2ip](https://hackerone.com/sp2ip?type=user)에게 감사를 표합니다. + +## 수정 이력 + +* 2024-04-23 10:00:00 (UTC) 최초 공개 diff --git a/ko/news/_posts/2024-04-23-ruby-3-0-7-released.md b/ko/news/_posts/2024-04-23-ruby-3-0-7-released.md new file mode 100644 index 0000000000..23050cb394 --- /dev/null +++ b/ko/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -0,0 +1,53 @@ +--- +layout: news_post +title: "Ruby 3.0.7 릴리스" +author: "hsbt" +translator: "shia" +date: 2024-04-23 10:00:00 +0000 +lang: ko +--- + +Ruby 3.0.7이 릴리스되었습니다. + +이번 릴리스에는 보안 수정 사항이 포함되어 있습니다. +자세한 내용은 아래 항목을 참조하세요. + +* [CVE-2024-27282: 정규표현식 검색의 임의의 메모리 주소 읽기 취약점]({%link ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc에서 .rdoc_options 사용 시의 RCE 취약점]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: StringIO에서 버퍼 초과 읽기 취약점]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) + +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_0_7)를 참조하세요. + +이 릴리스 후에 Ruby 3.0은 EOL에 도달합니다. 즉, 이번 릴리스가 Ruby 3.0 버전대의 마지막 릴리스가 될 것입니다. +보안 취약점이 발견되더라도 Ruby 3.0.8은 릴리스되지 않을 것입니다. (심각한 회귀 버그가 발생하는 경우는 예외입니다.) +모든 Ruby 3.0 사용자는 즉시 Ruby 3.3, 3.2, 3.1로 마이그레이션할 것을 권장합니다. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.0.7" | first %} + +* <{{ 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/2024-04-23-ruby-3-1-5-released.md b/ko/news/_posts/2024-04-23-ruby-3-1-5-released.md new file mode 100644 index 0000000000..0b90862c4d --- /dev/null +++ b/ko/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.1.5 릴리스" +author: "hsbt" +translator: "shia" +date: 2024-04-23 10:00:00 +0000 +lang: ko +--- + +Ruby 3.1.5가 릴리스되었습니다. + +이번 릴리스에는 보안 수정 사항이 포함되어 있습니다. +자세한 내용은 아래 항목을 참조하세요. + +* [CVE-2024-27282: 정규표현식 검색의 임의의 메모리 주소 읽기 취약점]({%link ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc에서 .rdoc_options 사용 시의 RCE 취약점]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: StringIO에서 버퍼 초과 읽기 취약점]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) + +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_1_5)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.1.5" | first %} + +* <{{ 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/2024-04-23-ruby-3-2-4-released.md b/ko/news/_posts/2024-04-23-ruby-3-2-4-released.md new file mode 100644 index 0000000000..ef443be67c --- /dev/null +++ b/ko/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.2.4 릴리스" +author: "nagachika" +translator: "shia" +date: 2024-04-23 10:00:00 +0000 +lang: ko +--- + +Ruby 3.2.4가 릴리스되었습니다. + +이번 릴리스에는 보안 수정 사항이 포함되어 있습니다. +자세한 내용은 아래 항목을 참조하세요. + +* [CVE-2024-27282: 정규표현식 검색의 임의의 메모리 주소 읽기 취약점]({%link ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc에서 .rdoc_options 사용 시의 RCE 취약점]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: StringIO에서 버퍼 초과 읽기 취약점]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) + +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_2_4)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.2.4" | first %} + +* <{{ 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/2024-04-23-ruby-3-3-1-released.md b/ko/news/_posts/2024-04-23-ruby-3-3-1-released.md new file mode 100644 index 0000000000..aeeec8afc6 --- /dev/null +++ b/ko/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.3.1 릴리스" +author: "naruse" +translator: "shia" +date: 2024-04-23 10:00:00 +0000 +lang: ko +--- + +Ruby 3.3.1이 릴리스되었습니다. + +이번 릴리스에는 보안 수정 사항이 포함되어 있습니다. +자세한 내용은 아래 항목을 참조하세요. + +* [CVE-2024-27282: 정규표현식 검색의 임의의 메모리 주소 읽기 취약점]({%link ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc에서 .rdoc_options 사용 시의 RCE 취약점]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: StringIO에서 버퍼 초과 읽기 취약점]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) + +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_3_1)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.3.1" | first %} + +* <{{ 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 6f7bf194176e7cc1d31aa14d03d03e5b98707f7c Mon Sep 17 00:00:00 2001 From: Bear Su Date: Mon, 29 Apr 2024 12:12:41 +0800 Subject: [PATCH 241/607] Translation news in 20240321 and 20240423 (#3225) Translation (zh_tw) of posts: CVE-2024-27280: Buffer overread vulnerability in StringIO CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search Ruby 3.0.7 Released Ruby 3.1.5 Released Ruby 3.2.4 Released Ruby 3.3.1 Released --- ...24-03-21-buffer-overread-cve-2024-27280.md | 46 ++++++++++++++++ .../2024-03-21-rce-rdoc-cve-2024-27281.md | 47 +++++++++++++++++ ...mory-address-read-regexp-cve-2024-27282.md | 42 +++++++++++++++ .../_posts/2024-04-23-ruby-3-0-7-released.md | 52 +++++++++++++++++++ .../_posts/2024-04-23-ruby-3-1-5-released.md | 48 +++++++++++++++++ .../_posts/2024-04-23-ruby-3-2-4-released.md | 48 +++++++++++++++++ .../_posts/2024-04-23-ruby-3-3-1-released.md | 48 +++++++++++++++++ 7 files changed, 331 insertions(+) create mode 100644 zh_tw/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md create mode 100644 zh_tw/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md create mode 100644 zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md create mode 100644 zh_tw/news/_posts/2024-04-23-ruby-3-0-7-released.md create mode 100644 zh_tw/news/_posts/2024-04-23-ruby-3-1-5-released.md create mode 100644 zh_tw/news/_posts/2024-04-23-ruby-3-2-4-released.md create mode 100644 zh_tw/news/_posts/2024-04-23-ruby-3-3-1-released.md diff --git a/zh_tw/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md b/zh_tw/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md new file mode 100644 index 0000000000..46dc266d43 --- /dev/null +++ b/zh_tw/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md @@ -0,0 +1,46 @@ +--- +layout: news_post +title: "CVE-2024-27280: StringIO 中的緩衝區 overread 漏洞" +author: "hsbt" +translator: "Bear Su" +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: zh_tw +--- + +我們發布了 StringIO gem 版本 3.0.1.1 和 3.0.1.2,對緩衝區 overread 漏洞進行了安全性修復。 +該漏洞的 CVE 編號為 [CVE-2024-27280](https://www.cve.org/CVERecord?id=CVE-2024-27280)。 + +## 風險細節 + +在 StringIO 3.0.1 中發現了一個問題,Ruby 影響版本為 3.0.x 至 3.0.6 和 3.1.x 至 3.1.4。 + +StringIO 中的 `ungetbyte` 和 `ungetc` 方法能夠讀取超過字串結尾的內容,如果繼續呼叫 `StringIO.gets` 會回傳記憶體中的資料。 + +此漏洞不影響 StringIO 3.0.3 及更新版本,和 Ruby 3.2.x 及更新版本。 + +## 建議行動 + +我們建議升級 StringIO gem 至 3.0.3 或更新版本。為了確保相容於 Ruby 舊版本,您可以按照以下方式進行升級: + +* Ruby 3.0: 升級至 `stringio` 3.0.1.1 +* Ruby 3.1: 升級至 `stringio` 3.0.1.2 + +注意: StringIO 3.0.1.2 除了漏洞修復之外,也包含了錯誤修復 [[Bug #19389]](https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2)。 + +您可以使用 `gem update stringio` 進行更新。如果您使用 bundler,請將 `gem "stringio", ">= 3.0.1.2"` 加入到您的 `Gemfile` 中。 + +## 受影響版本 + +* Ruby 3.0.6 及更早版本 +* Ruby 3.1.4 及更早版本 +* StringIO gem 3.0.1 及更早版本 + +## 致謝 + +感謝 [david_h1](https://hackerone.com/david_h1?type=user) 發現此問題。 + +## 歷史 + +* 修復 StringIO 影響版本 (3.0.2 -> 3.0.1) 於 2024-04-11 12:50:00 (UTC) +* 最初發佈於 2024-03-21 4:00:00 (UTC) diff --git a/zh_tw/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md b/zh_tw/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md new file mode 100644 index 0000000000..3ef4b21f32 --- /dev/null +++ b/zh_tw/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md @@ -0,0 +1,47 @@ +--- +layout: news_post +title: "CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞" +author: "hsbt" +translator: "Bear Su" +date: 2024-03-21 4:00:00 +0000 +tags: security +lang: zh_tw +--- + +我們發布了 RDoc gem 版本 6.3.4.1、6.4.1.1、6.5.1.1 和 6.6.3.1 對 RCE 漏洞進行了安全性修復。 +該漏洞的 CVE 編號為 [CVE-2024-27281](https://www.cve.org/CVERecord?id=CVE-2024-27281)。 + +## 風險細節 + +在 RDoc 6.3.3 至 6.6.2 中發現了一個問題,Ruby 影響版本為 3.x 至 3.3.0。 + +當解析 YAML 格式的 `.rdoc_options` 檔案時 (用於 RDoc 設定),由於沒有限制恢復的類別,可能導致執行物件注入與遠端程式碼進行攻擊。 +當載入文件快取時,如果有特製的快取存在,則可能執行物件注入與遠端程式碼進行攻擊。 + +## 建議行動 + +我們建議升級 RDoc gem 至 6.6.3.1 或更新版本。為了確保相容於 Ruby 舊版本,您可以按照以下方式進行升級: + +* Ruby 3.0: 升級至 `rdoc` 6.3.4.1 +* Ruby 3.1: 升級至 `rdoc` 6.4.1.1 +* Ruby 3.2: 升級至 `rdoc` 6.5.1.1 + +您可以使用 `gem update rdoc` 進行更新。如果您使用 bundler,請將 `gem "rdoc", ">= 6.6.3.1"` 加入到您的 `Gemfile` 中。 + +注意: 6.3.4、6.4.1、6.5.1 和 6.6.3 有不正確的修復。我們建議升級至 6.3.4.1、6.4.1.1、6.5.1.1 和 6.6.3.1。 + +## 受影響版本 + +* Ruby 3.0.6 及更早版本 +* Ruby 3.1.4 及更早版本 +* Ruby 3.2.3 及更早版本 +* Ruby 3.3.0 +* RDoc gem 6.3.3 及更早版本,6.4.0 至 6.6.2 中未修補版本 (6.3.4, 6.4.1, 6.5.1) + +## 致謝 + +感謝 [ooooooo_q](https://hackerone.com/ooooooo_q?type=user) 發現此問題。 + +## 歷史 + +* 最初發佈於 2024-03-21 4:00:00 (UTC) diff --git a/zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md b/zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md new file mode 100644 index 0000000000..76d71a6a18 --- /dev/null +++ b/zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "CVE-2024-27282: Regex 搜尋的任意記憶體位址讀取漏洞" +author: "hsbt" +translator: "Bear Su" +date: 2024-04-23 10:00:00 +0000 +tags: security +lang: zh_tw +--- + +我們發布了 Ruby 版本 3.0.7、3.1.5、3.2.4 和 3.3.1,對 Regex 搜尋中的任意記憶體位址讀取漏洞進行了安全性修復。 +該漏洞的 CVE 編號為 [CVE-2024-27282](https://www.cve.org/CVERecord?id=CVE-2024-27282)。 + +## 風險細節 + +在 Ruby 3.x 至 3.3.0 中發現了一個問題。 + +如果將攻擊者提供的資料給 Ruby 的 Regex 編譯器,可能會被提取出相對於文字開頭的任意堆疊中的資料,包括指標與機敏字串。 + +## 建議行動 + +我們建議升級 Ruby 至 3.3.1 或更新版本。為了確保相容於 Ruby 舊版本,您可以按照以下方式進行升級: + +* Ruby 3.0: 升級至 3.0.7 +* Ruby 3.1: 升級至 3.1.5 +* Ruby 3.2: 升級至 3.2.4 +* Ruby 3.3: 升級至 3.3.1 + +## 受影響版本 + +* Ruby 3.0.6 及更早版本 +* Ruby 3.1.4 及更早版本 +* Ruby 3.2.3 及更早版本 +* Ruby 3.3.0 + +## 致謝 + +感謝 [sp2ip](https://hackerone.com/sp2ip?type=user) 發現此問題。 + +## 歷史 + +* 最初發佈於 2024-04-23 10:00:00 (UTC) diff --git a/zh_tw/news/_posts/2024-04-23-ruby-3-0-7-released.md b/zh_tw/news/_posts/2024-04-23-ruby-3-0-7-released.md new file mode 100644 index 0000000000..c95984ca73 --- /dev/null +++ b/zh_tw/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -0,0 +1,52 @@ +--- +layout: news_post +title: "Ruby 3.0.7 發布" +author: "hsbt" +translator: "Bear Su" +date: 2024-04-23 10:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.0.7 已經發布了。 + +本次發布版本包含安全性修正。 +細節請參考下列內容。 + +* [CVE-2024-27282: Regex 搜尋的任意記憶體位址讀取漏洞]({%link zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: StringIO 中的緩衝區 overread 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/buffer-overread-cve-2024-27280/) + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_0_7)。 + +隨著這個版本的發佈,Ruby 3.0 進入了終了階段(EOL)。這意味著此為 Ruby 3.0 系列的最後版本。 +之後即使發現安全性漏洞,我們也不會發布 Ruby 3.0.8 (除非發現有嚴重的回歸問題)。 +我們建議所有 Ruby 3.0 使用者盡快遷移至 Ruby 3.3、3.2、或是 3.1。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.0.7" | first %} + +* <{{ 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/zh_tw/news/_posts/2024-04-23-ruby-3-1-5-released.md b/zh_tw/news/_posts/2024-04-23-ruby-3-1-5-released.md new file mode 100644 index 0000000000..5471843e9a --- /dev/null +++ b/zh_tw/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "Ruby 3.1.5 發布" +author: "hsbt" +translator: "Bear Su" +date: 2024-04-23 10:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.1.5 已經發布了。 + +本次發布版本包含安全性修正。 +細節請參考下列內容。 + +* [CVE-2024-27282: Regex 搜尋的任意記憶體位址讀取漏洞]({%link zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: StringIO 中的緩衝區 overread 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/buffer-overread-cve-2024-27280/) + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_1_5)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.1.5" | first %} + +* <{{ 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/zh_tw/news/_posts/2024-04-23-ruby-3-2-4-released.md b/zh_tw/news/_posts/2024-04-23-ruby-3-2-4-released.md new file mode 100644 index 0000000000..65b0f723bf --- /dev/null +++ b/zh_tw/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "Ruby 3.2.4 發布" +author: "nagachika" +translator: "Bear Su" +date: 2024-04-23 10:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.2.4 已經發布了。 + +本次發布版本包含安全性修正。 +細節請參考下列內容。 + +* [CVE-2024-27282: Regex 搜尋的任意記憶體位址讀取漏洞]({%link zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: StringIO 中的緩衝區 overread 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/buffer-overread-cve-2024-27280/) + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_2_4)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.2.4" | first %} + +* <{{ 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/zh_tw/news/_posts/2024-04-23-ruby-3-3-1-released.md b/zh_tw/news/_posts/2024-04-23-ruby-3-3-1-released.md new file mode 100644 index 0000000000..c126baf3b1 --- /dev/null +++ b/zh_tw/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "Ruby 3.3.1 發布" +author: "naruse" +translator: "Bear Su" +date: 2024-04-23 10:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.3.1 已經發布了。 + +本次發布版本包含安全性修正。 +細節請參考下列內容。 + +* [CVE-2024-27282: Regex 搜尋的任意記憶體位址讀取漏洞]({%link zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: StringIO 中的緩衝區 overread 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/buffer-overread-cve-2024-27280/) + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_3_1)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.3.1" | first %} + +* <{{ 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 970689a9e84b603d948920c5c918d1a267abdd2a Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Mon, 29 Apr 2024 12:13:48 +0800 Subject: [PATCH 242/607] Translate CVE-2024-27282, Ruby 3.0.7, 3.1.5, 3.2.4, 3.3.1 (zh_cn) (#3224) --- ...mory-address-read-regexp-cve-2024-27282.md | 41 ++++++++++++++ .../_posts/2024-04-23-ruby-3-0-7-released.md | 53 +++++++++++++++++++ .../_posts/2024-04-23-ruby-3-1-5-released.md | 49 +++++++++++++++++ .../_posts/2024-04-23-ruby-3-2-4-released.md | 49 +++++++++++++++++ .../_posts/2024-04-23-ruby-3-3-1-released.md | 49 +++++++++++++++++ 5 files changed, 241 insertions(+) create mode 100644 zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md create mode 100644 zh_cn/news/_posts/2024-04-23-ruby-3-0-7-released.md create mode 100644 zh_cn/news/_posts/2024-04-23-ruby-3-1-5-released.md create mode 100644 zh_cn/news/_posts/2024-04-23-ruby-3-2-4-released.md create mode 100644 zh_cn/news/_posts/2024-04-23-ruby-3-3-1-released.md diff --git a/zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md b/zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md new file mode 100644 index 0000000000..18f037b8b3 --- /dev/null +++ b/zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md @@ -0,0 +1,41 @@ +--- +layout: news_post +title: "CVE-2024-27282: Regex 搜索中的任意地址读取漏洞" +author: "hsbt" +translator: "GAO Jun" +date: 2024-04-23 10:00:00 +0000 +tags: security +lang: zh_cn +--- + +我们发布了 Ruby 3.0.7,3.1.5,3.2.4 和 3.3.1,其中包含了 Regex 搜索中的任意地址读取漏洞的补丁。 +此漏洞的 CVE 编号为 [CVE-2024-27282](https://www.cve.org/CVERecord?id=CVE-2024-27282)。 + +## 详情 + +在 Ruby 3.x 至 3.3.0 中发现了一个问题。 + +如果将攻击者提供的特定数据提供给 Ruby 的正则表达式编译器,则可能提取与文本开始相关的任意堆数据,包括指针和敏感字符串。 + +## 建议操作 + +我们建议将 Ruby 更新到 3.3.1 或后续版本。为确保与旧版 Ruby 兼容,您可以按照下面的方式进行更新: + +* Ruby 3.0:更新至 3.0.7 +* Ruby 3.1:更新至 3.1.5 +* Ruby 3.2:更新至 3.2.4 + +## 受影响版本 + +* Ruby 3.0.6 或更低版本 +* Ruby 3.1.4 或更低版本 +* Ruby 3.2.3 或更低版本 +* Ruby 3.3.0 + +## 致谢 + +感谢 [sp2ip](https://hackerone.com/sp2ip?type=user) 发现此问题。 + +## 历史 + +* 最初发布于 2024-04-23 10:00:00 (UTC) diff --git a/zh_cn/news/_posts/2024-04-23-ruby-3-0-7-released.md b/zh_cn/news/_posts/2024-04-23-ruby-3-0-7-released.md new file mode 100644 index 0000000000..e6e1b76f39 --- /dev/null +++ b/zh_cn/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -0,0 +1,53 @@ +--- +layout: news_post +title: "Ruby 3.0.7 已发布" +author: "hsbt" +translator: "GAO Jun" +date: 2024-04-23 10:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.0.7 已发布。 + +此版本包括安全补丁。 +请通过以下条目来获取详情。 + +* [CVE-2024-27282: Regex 搜索中的任意地址读取漏洞]({%link zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: StringIO 中的缓存过读漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/buffer-overread-cve-2024-27280/) + +您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_0_7) 获取进一步信息。 + +此版本发布后,Ruby 3.0 达到 EOL。也就是说,这应该是 Ruby 3.0 系列的最后一个版本。 +即使发现安全漏洞,我们也不会发布 Ruby 3.0.8(但如果发现严重回归问题时,则有可能会发布)。 +我们建议所有 Ruby 3.0 用户立即开始迁移到 Ruby 3.3,3.2 或 3.1。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.0.7" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 diff --git a/zh_cn/news/_posts/2024-04-23-ruby-3-1-5-released.md b/zh_cn/news/_posts/2024-04-23-ruby-3-1-5-released.md new file mode 100644 index 0000000000..ecc1112dfb --- /dev/null +++ b/zh_cn/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.1.5 已发布" +author: "hsbt" +translator: "GAO Jun" +date: 2024-04-23 10:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.1.5 已发布。 + +此版本包括安全补丁。 +请通过以下条目来获取详情。 + +* [CVE-2024-27282: Regex 搜索中的任意地址读取漏洞]({%link zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: StringIO 中的缓存过读漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/buffer-overread-cve-2024-27280/) + +您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_1_5) 获取进一步信息。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.1.5" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 diff --git a/zh_cn/news/_posts/2024-04-23-ruby-3-2-4-released.md b/zh_cn/news/_posts/2024-04-23-ruby-3-2-4-released.md new file mode 100644 index 0000000000..acefb845c3 --- /dev/null +++ b/zh_cn/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.2.4 已发布" +author: "nagachika" +translator: "GAO Jun" +date: 2024-04-23 10:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.2.4 已发布。 + +此版本包括安全补丁。 +请通过以下条目来获取详情。 + +* [CVE-2024-27282: Regex 搜索中的任意地址读取漏洞]({%link zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: StringIO 中的缓存过读漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/buffer-overread-cve-2024-27280/) + +您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_2_4) 获取进一步信息。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.2.4" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 diff --git a/zh_cn/news/_posts/2024-04-23-ruby-3-3-1-released.md b/zh_cn/news/_posts/2024-04-23-ruby-3-3-1-released.md new file mode 100644 index 0000000000..5fbd3e8c1e --- /dev/null +++ b/zh_cn/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.3.1 已发布" +author: "naruse" +translator: "GAO Jun" +date: 2024-04-23 10:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.3.1 已发布。 + +此版本包括安全补丁。 +请通过以下条目来获取详情。 + +* [CVE-2024-27282: Regex 搜索中的任意地址读取漏洞]({%link zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/rce-rdoc-cve-2024-27281/) +* [CVE-2024-27280: StringIO 中的缓存过读漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/buffer-overread-cve-2024-27280/) + +您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_3_1) 获取进一步信息。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.3.1" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 08aa4315e70c359557592e7dee508ac999d084b5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Apr 2024 15:28:48 +0000 Subject: [PATCH 243/607] Bump actions/checkout from 4.1.3 to 4.1.4 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.3 to 4.1.4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/1d96c772d19495a3b5c517cd2bc0cb401ea0529f...0ad4b8fadaa221de15dcec353f45205ec38ea70b) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5a1c5ba91f..7785b0eaa6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3 + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 458cb5a735..613630c967 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3 + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 - name: Setup Ruby uses: ruby/setup-ruby@6bd3d993c602f6b675728ebaecb2b569ff86e99b # v1.174.0 with: From 6fb9349e353826a075d3de7f56316317c8757a54 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Apr 2024 15:28:45 +0000 Subject: [PATCH 244/607] Bump ruby/setup-ruby from 1.174.0 to 1.175.1 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.174.0 to 1.175.1. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/6bd3d993c602f6b675728ebaecb2b569ff86e99b...1198b074305f9356bd56dd4b311757cc0dab2f1c) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7785b0eaa6..ee4d1b1eb8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@6bd3d993c602f6b675728ebaecb2b569ff86e99b # v1.174.0 + uses: ruby/setup-ruby@1198b074305f9356bd56dd4b311757cc0dab2f1c # v1.175.1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 613630c967..d53f651e2f 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 - name: Setup Ruby - uses: ruby/setup-ruby@6bd3d993c602f6b675728ebaecb2b569ff86e99b # v1.174.0 + uses: ruby/setup-ruby@1198b074305f9356bd56dd4b311757cc0dab2f1c # v1.175.1 with: ruby-version: '3.2' bundler-cache: true From 4d72f8b4190c00e48c711ec6dc35b1ec9b9fcb53 Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 27 Apr 2024 17:04:03 +0900 Subject: [PATCH 245/607] Use link function of jekyll --- en/news/_posts/2024-04-23-ruby-3-0-7-released.md | 4 ++-- en/news/_posts/2024-04-23-ruby-3-1-5-released.md | 4 ++-- en/news/_posts/2024-04-23-ruby-3-2-4-released.md | 4 ++-- en/news/_posts/2024-04-23-ruby-3-3-1-released.md | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md index ea15205666..74140a06b2 100644 --- a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -13,8 +13,8 @@ This release includes security fixes. Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) -* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_0_7) for further details. diff --git a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md index cadb647414..33d87d334c 100644 --- a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -13,8 +13,8 @@ This release includes security fixes. Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) -* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_5) for further details. diff --git a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md index 3e97467f6f..9c1741ff8d 100644 --- a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -13,8 +13,8 @@ This release includes security fixes. Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) -* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_4) for further details. diff --git a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md index 85d56f1fa1..e13c18d792 100644 --- a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -13,8 +13,8 @@ This release includes security fixes. Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) -* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc](https://www.ruby-lang.org/en/news/2024/03/21/rce-rdoc-cve-2024-27281/) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO](https://www.ruby-lang.org/en/news/2024/03/21/buffer-overread-cve-2024-27280/) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_1) for further details. From bf6433c07cbc9fe85bbf71208238b0c110e807ea Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 27 Apr 2024 20:58:25 +0900 Subject: [PATCH 246/607] Fix link to en --- en/news/_posts/2024-04-23-ruby-3-0-7-released.md | 4 ++-- en/news/_posts/2024-04-23-ruby-3-1-5-released.md | 4 ++-- en/news/_posts/2024-04-23-ruby-3-2-4-released.md | 4 ++-- en/news/_posts/2024-04-23-ruby-3-3-1-released.md | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md index 74140a06b2..be1a8d617d 100644 --- a/en/news/_posts/2024-04-23-ruby-3-0-7-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -13,8 +13,8 @@ This release includes security fixes. Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) -* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_0_7) for further details. diff --git a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md index 33d87d334c..18b3a82ffa 100644 --- a/en/news/_posts/2024-04-23-ruby-3-1-5-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -13,8 +13,8 @@ This release includes security fixes. Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) -* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_5) for further details. diff --git a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md index 9c1741ff8d..cfc236f314 100644 --- a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -13,8 +13,8 @@ This release includes security fixes. Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) -* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_4) for further details. diff --git a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md index e13c18d792..3cd8cafe15 100644 --- a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -13,8 +13,8 @@ This release includes security fixes. Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) -* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) +* [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_1) for further details. From 3e2587d8711be832a4e73679242c315e26dffc51 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 15:40:16 +0000 Subject: [PATCH 247/607] Bump ruby/setup-ruby from 1.175.1 to 1.176.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.175.1 to 1.176.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/1198b074305f9356bd56dd4b311757cc0dab2f1c...cacc9f1c0b3f4eb8a16a6bb0ed10897b43b9de49) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ee4d1b1eb8..8febb99885 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@1198b074305f9356bd56dd4b311757cc0dab2f1c # v1.175.1 + uses: ruby/setup-ruby@cacc9f1c0b3f4eb8a16a6bb0ed10897b43b9de49 # v1.176.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index d53f651e2f..7342d2db94 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 - name: Setup Ruby - uses: ruby/setup-ruby@1198b074305f9356bd56dd4b311757cc0dab2f1c # v1.175.1 + uses: ruby/setup-ruby@cacc9f1c0b3f4eb8a16a6bb0ed10897b43b9de49 # v1.176.0 with: ruby-version: '3.2' bundler-cache: true From 5684ced9d3358236c06bd1ded040d9fd931eaab0 Mon Sep 17 00:00:00 2001 From: HiroTawara <45650777+HiroyasuTawara@users.noreply.github.com> Date: Fri, 10 May 2024 12:56:19 +0900 Subject: [PATCH 248/607] Translate CVE 2024 27282, Ruby 3.0.7, 3.1.5, 3.2.4, 3.3.1 released (ja) (#3236) * Translate CVE-2024-27282 (ja) * Translate Ruby 3.0.7, 3.1.5, 3.2.4, 3.3.1 released (ja) * Fix ja/news/_posts/2024-04-23 * Fix ja/news/_posts/2024-04-23 end newline character --- ...mory-address-read-regexp-cve-2024-27282.md | 41 +++++++++++++++ .../_posts/2024-04-23-ruby-3-0-7-released.md | 52 +++++++++++++++++++ .../_posts/2024-04-23-ruby-3-1-5-released.md | 49 +++++++++++++++++ .../_posts/2024-04-23-ruby-3-2-4-released.md | 49 +++++++++++++++++ .../_posts/2024-04-23-ruby-3-3-1-released.md | 49 +++++++++++++++++ 5 files changed, 240 insertions(+) create mode 100644 ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md create mode 100644 ja/news/_posts/2024-04-23-ruby-3-0-7-released.md create mode 100644 ja/news/_posts/2024-04-23-ruby-3-1-5-released.md create mode 100644 ja/news/_posts/2024-04-23-ruby-3-2-4-released.md create mode 100644 ja/news/_posts/2024-04-23-ruby-3-3-1-released.md diff --git a/ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md b/ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md new file mode 100644 index 0000000000..a8f80ac92e --- /dev/null +++ b/ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md @@ -0,0 +1,41 @@ +--- +layout: news_post +title: "CVE-2024-27282: 正規表現検索における任意のメモリアドレス読み取りの脆弱性" +author: "hsbt" +translator: "HiroyasuTawara" +date: 2024-04-23 10:00:00 +0000 +tags: security +lang: ja +--- + +正規表現検索における任意のメモリアドレス読み取りの脆弱性に対するセキュリティ修正が施されたRuby バージョン 3.0.7、3.1.5、3.2.4、および 3.3.1 をリリースしました。この脆弱性は[CVE-2024-27282](https://www.cve.org/CVERecord?id=CVE-2024-27282)として登録されています + +## 詳細 + +Ruby 3.x から 3.3.0 で問題が見つかりました。 + +攻撃者から与えられたデータを Ruby 正規表現コンパイラが受け取った場合、ポインタや機密文字列を含む、テキストの先頭からの相対アドレス上の任意のヒープデータを抽出することが可能になります。 + +## 推奨する対応 + +Rubyを3.3.1以降にアップデートすることを推奨します。古い系列の Ruby バージョンとの互換性を確保するためには、以下のようにアップデートできます: + +* Ruby 3.0: Ruby を 3.0.7 にアップデート +* Ruby 3.1: Ruby を 3.1.5 にアップデート +* Ruby 3.2: Ruby を 3.2.4 にアップデート +* Ruby 3.3: Ruby を 3.3.1 にアップデート + +## 影響を受けるバージョン + +* Ruby 3.0.6 以前 +* Ruby 3.1.4 以前 +* Ruby 3.2.3 以前 +* Ruby 3.3.0 + +## クレジット + +この脆弱性情報は、 [sp2ip](https://hackerone.com/sp2ip?type=user)氏によって報告されました。 + +## 更新履歴 + +* 2024-04-23 19:00:00 (JST) 初版 diff --git a/ja/news/_posts/2024-04-23-ruby-3-0-7-released.md b/ja/news/_posts/2024-04-23-ruby-3-0-7-released.md new file mode 100644 index 0000000000..70218c682c --- /dev/null +++ b/ja/news/_posts/2024-04-23-ruby-3-0-7-released.md @@ -0,0 +1,52 @@ +--- +layout: news_post +title: "Ruby 3.0.7 リリース" +author: "hsbt" +translator: "HiroyasuTawwara" +date: 2024-04-23 10:00:00 +0000 +lang: ja +--- + +Ruby 3.0.7 がリリースされました。 + +このリリースでは以下の脆弱性修正が含まれています。 +詳しくは以下の記事を参照してください。 + +* [CVE-2024-27282: 正規表現検索における任意のメモリアドレス読み取りの脆弱性]({%link ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 内の .rdoc_options におけるRCE 脆弱性]({%link ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: StringIOにおけるバッファーオーバーリード脆弱性]({%link ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_0_7) を参照してください。 + +このリリースをもって、Ruby 3.0 系列は EOL となります。即ち、Ruby 3.0.7 が Ruby 3.0 系列の最後のリリースとなる予定です。 +これ以降、仮に新たな脆弱性が発見されても、Ruby 3.0.8 などはリリースされません (ただし、深刻なリグレッションが発見された場合にはリリースする可能性があります)。すべての Ruby3.0 ユーザーの皆様は、速やかに 3.3、3.2、3.1 への移行を開始することをお勧めします。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.0.7" | first %} + +* <{{ 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 開発者の皆様、バグや脆弱性を報告してくれたユーザーの皆様のご協力により本リリースは行われています。 +皆様のご協力に感謝します。 diff --git a/ja/news/_posts/2024-04-23-ruby-3-1-5-released.md b/ja/news/_posts/2024-04-23-ruby-3-1-5-released.md new file mode 100644 index 0000000000..4bbf7a379e --- /dev/null +++ b/ja/news/_posts/2024-04-23-ruby-3-1-5-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.1.5 リリース" +author: "hsbt" +translator: "HiroyasuTawwara" +date: 2024-04-23 10:00:00 +0000 +lang: ja +--- + +Ruby 3.1.5 がリリースされました。 + +このリリースでは以下の脆弱性修正が含まれています。 +詳しくは以下の記事を参照してください。 + +* [CVE-2024-27282: 正規表現検索における任意のメモリアドレス読み取りの脆弱性]({%link ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 内の .rdoc_options におけるRCE 脆弱性]({%link ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: StringIOにおけるバッファーオーバーリード脆弱性]({%link ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_5) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.1.5" | first %} + +* <{{ 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 開発者の皆様、バグや脆弱性を報告してくれたユーザーの皆様のご協力により本リリースは行われています。 +皆様のご協力に感謝します。 diff --git a/ja/news/_posts/2024-04-23-ruby-3-2-4-released.md b/ja/news/_posts/2024-04-23-ruby-3-2-4-released.md new file mode 100644 index 0000000000..e82ab04b62 --- /dev/null +++ b/ja/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.2.4 リリース" +author: "nagachika" +translator: "HiroyasuTawwara" +date: 2024-04-23 10:00:00 +0000 +lang: ja +--- + +Ruby 3.2.4 がリリースされました。 + +このリリースでは以下の脆弱性修正が含まれています。 +詳しくは以下の記事を参照してください。 + +* [CVE-2024-27282: 正規表現検索における任意のメモリアドレス読み取りの脆弱性]({%link ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 内の .rdoc_options におけるRCE 脆弱性]({%link ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: StringIOにおけるバッファーオーバーリード脆弱性]({%link ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_4) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.2.4" | first %} + +* <{{ 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 開発者の皆様、バグや脆弱性を報告してくれたユーザーの皆様のご協力により本リリースは行われています。 +皆様のご協力に感謝します。 diff --git a/ja/news/_posts/2024-04-23-ruby-3-3-1-released.md b/ja/news/_posts/2024-04-23-ruby-3-3-1-released.md new file mode 100644 index 0000000000..94a32eddab --- /dev/null +++ b/ja/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.3.1 リリース" +author: "naruse" +translator: "HiroyasuTawwara" +date: 2024-04-23 10:00:00 +0000 +lang: ja +--- + +Ruby 3.3.1 がリリースされました。 + +このリリースでは以下の脆弱性修正が含まれています。 +詳しくは以下の記事を参照してください。 + +* [CVE-2024-27282: 正規表現検索における任意のメモリアドレス読み取りの脆弱性]({%link ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) +* [CVE-2024-27281: RDoc 内の .rdoc_options におけるRCE 脆弱性]({%link ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) +* [CVE-2024-27280: StringIOにおけるバッファーオーバーリード脆弱性]({%link ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_1) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.3.1" | first %} + +* <{{ 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 2e6c4d585fddaa041587b4dc43c27860fe1d2489 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 May 2024 23:36:48 +0000 Subject: [PATCH 249/607] Bump nokogiri from 1.16.2 to 1.16.5 Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.16.2 to 1.16.5. - [Release notes](https://github.com/sparklemotion/nokogiri/releases) - [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md) - [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.16.2...v1.16.5) --- updated-dependencies: - dependency-name: nokogiri dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 80ea67e7d7..49feaa03b0 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -73,14 +73,14 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) - mini_portile2 (2.8.5) + mini_portile2 (2.8.6) minitest (5.20.0) - nokogiri (1.16.2) + nokogiri (1.16.5) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.16.2-arm64-darwin) + nokogiri (1.16.5-arm64-darwin) racc (~> 1.4) - nokogiri (1.16.2-x86_64-linux) + nokogiri (1.16.5-x86_64-linux) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) From 17187533f343726c04e0fc7943f61b0da15d3c88 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 May 2024 15:45:08 +0000 Subject: [PATCH 250/607] Bump actions/checkout from 4.1.4 to 4.1.5 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.4 to 4.1.5. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/0ad4b8fadaa221de15dcec353f45205ec38ea70b...44c2b7a8a4ea60a981eaca3cf939b5f4305c123b) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8febb99885..d2894b7850 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 + uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 7342d2db94..f1758d6275 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 + uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5 - name: Setup Ruby uses: ruby/setup-ruby@cacc9f1c0b3f4eb8a16a6bb0ed10897b43b9de49 # v1.176.0 with: From 2b9e277c4e87476ca421a77ee8feb2792b35d8b2 Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Thu, 16 May 2024 13:49:58 +0900 Subject: [PATCH 251/607] Add CVE-2024-35176: DoS in REXML --- .../2024-05-16-dos-rexml-cve-2024-35176.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md diff --git a/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md b/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md new file mode 100644 index 0000000000..1c17407e52 --- /dev/null +++ b/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-35176: DoS in REXML" +author: "kou" +translator: +date: 2024-05-16 05:00:00 +0000 +tags: security +lang: en +--- + +There is a DoS vulnerability in REXML gem. This vulnerability has been assigned the CVE identifier [CVE-2024-35176](https://www.cve.org/CVERecord?id=CVE-2024-35176). We strongly recommend upgrading the REXML gem. + +## Details + +When parsing an XML document that has many `<` in an attribute value, REXML gem may take many time. + +Please update REXML gem to version 3.2.7 or later. + +## Affected versions + +* REXML gem 3.2.6 or prior + +## Credits + +Thanks to [mprogrammer](https://hackerone.com/mprogrammer) for discovering this issue. + +## History + +* Originally published at 2024-05-16 05:00:00 (UTC) From 8eacdf68153970b94feb519ffbeebddbb2ae53dc Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Thu, 16 May 2024 16:40:03 +0900 Subject: [PATCH 252/607] Fix wording Co-authored-by: nagachika --- en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md b/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md index 1c17407e52..5867f1a877 100644 --- a/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md +++ b/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md @@ -12,7 +12,7 @@ There is a DoS vulnerability in REXML gem. This vulnerability has been assigned ## Details -When parsing an XML document that has many `<` in an attribute value, REXML gem may take many time. +When parsing an XML document that has many `<` in an attribute value, REXML gem may take long time. Please update REXML gem to version 3.2.7 or later. From 100af59e84c8f8a01544dd3218eb46e7f507b07a Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Thu, 16 May 2024 17:01:09 +0900 Subject: [PATCH 253/607] Ruby 3.4.0-preview1 Released (#3240) --- _data/branches.yml | 5 + _data/downloads.yml | 1 + _data/releases.yml | 31 ++++ ...2024-05-16-ruby-3-4-0-preview1-released.md | 138 ++++++++++++++++++ 4 files changed, 175 insertions(+) create mode 100644 en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md diff --git a/_data/branches.yml b/_data/branches.yml index 2640368538..98aea5868d 100644 --- a/_data/branches.yml +++ b/_data/branches.yml @@ -8,6 +8,11 @@ # date: date of first stable release (YYYY-MM-DD) # eol_date: date of EOL (YYYY-MM-DD) +- name: 3.4 + status: preview + date: + eol_date: + - name: 3.3 status: normal maintenance date: 2023-12-25 diff --git a/_data/downloads.yml b/_data/downloads.yml index fb475321d8..6298896bd9 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,6 +4,7 @@ # optional preview: + - 3.4.0-preview1 stable: diff --git a/_data/releases.yml b/_data/releases.yml index 866d378782..89c262fc50 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -19,6 +19,37 @@ # In order to get the release listed on the downloads page, # you also need to add an entry to `_data/downloads.yml'. +# 3.4 series + +- version: 3.4.0-preview1 + date: 2024-05-16 + post: /en/news/2024/05/16/ruby-3-4-0-preview1-released/ + tag: v3_4_0_preview1 + stats: + files_changed: 3283 + insertions: 107449 + deletions: 115380 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-preview1.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-preview1.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-preview1.tar.xz + size: + gz: 22507726 + zip: 27731060 + xz: 16709536 + sha1: + gz: 1619cbe06b5a8c774711b3351d18bb0f84f1d017 + zip: 5d79834050369ea9241d86467bf93e9e89e2ab7a + xz: 6041ad2651527d01c36106de3d3cdab680ed3132 + sha256: + gz: 1a3c322e90cb22e5fba0b5d257bb2be9988affa3867eba7642ed981fdde895bb + zip: bd2a6c0e8396698e6f6768c00b0f155510859bb6fb92420f7b7abec610e71dbb + xz: 4ee4ec44366050d4b2ee1d88034cc63e0b9174a1a6650285777f3d3447213a97 + sha512: + gz: 29c0e32179f7b823b6708f5328e495cd333fe8dd88f7df7d9051deab47add67b14d899bba565bba1a77e1b04c9693d9708541445c112925777bb6891cb7b2b62 + zip: 36ea6897e6ad769141516f4c1bb18989fbde27a76f0f3abcce947f8b6b79639846ba93907e085181f7d305ab06ad73f1bbb37928049c8c951d33176ee444abbf + xz: 4ce306b9beb1e2d88c76d7f809724b66bed17e354c07a2b54aa050fc2035652e4d83deadc8dbf7a375bbdb1c816f2996334bb8e7ff5e6c24b71a858bf6b0cb7c + # 3.3 series - version: 3.3.1 diff --git a/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md new file mode 100644 index 0000000000..89c9b7adb1 --- /dev/null +++ b/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -0,0 +1,138 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview1 Released" +author: "naruse" +translator: +date: 2024-05-16 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview1" | first %} +We are pleased to announce the release of Ruby {{ release.version }}. + +## Language changes + +* String literals in files without a `frozen_string_literal` comment now behave + as if they were frozen. If they are mutated a deprecation warning is emitted. + These warnings can be enabled with `-W:deprecated` or by setting `Warning[:deprecated] = true`. + To disable this change, you can run Ruby with the `--disable-frozen-string-literal` + command line argument. [[Feature #20205]] + +* `it` is added to reference a block parameter. [[Feature #18980]] + +* Keyword splatting `nil` when calling methods is now supported. + `**nil` is treated similarly to `**{}`, passing no keywords, + and not calling any conversion methods. [[Bug #20064]] + +* Block passing is no longer allowed in index. [[Bug #19918]] + +* Keyword arguments are no longer allowed in index. [[Bug #20218]] + +## Core classes updates + +Note: We're only listing outstanding class updates. + +* Exception + + * Exception#set_backtrace now accepts arrays of `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` and `Fiber#raise` also accept this new format. [[Feature #13557]] + +* Range + + * Range#size now raises TypeError if the range is not iterable. [[Misc #18984]] + + + +## Compatibility issues + +Note: Excluding feature bug fixes. + +* Error messages and backtrace displays have been changed. + * Use a single quote instead of a backtick as a opening quote. [[Feature #16495]] + * Display a class name before a method name (only when the class has a permanent name). [[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location`'s methods, etc. are also changed accordingly. + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + + +## C API updates + +* `rb_newobj` and `rb_newobj_of` (and corresponding macros `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) have been removed. [[Feature #20265]] +* Removed deprecated function `rb_gc_force_recycle`. [[Feature #18290]] + +## Implementation improvements + +* `Array#each` is rewritten in Ruby for better performance [[Feature #20182]]. + +## Miscellaneous changes + +* Passing a block to a method which doesn't use the passed block will show + a warning on verbose mode (`-w`). + [[Feature #15554]] + +* Redefining some core methods that are specially optimized by the interpeter + and JIT like `String.freeze` or `Integer#+` now emits a performance class + warning (`-W:performance` or `Warning[:performance] = true`). + [[Feature #20429]] + +See GitHub releases like [Logger](https://github.com/ruby/logger/releases) or +changelog for details of the default gems or bundled gems. + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +since Ruby 3.3.0! + + +## Download + +* <{{ 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 + +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. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 From 142b0a626ea86ddebd42036d45e2571fc2420916 Mon Sep 17 00:00:00 2001 From: gaojun Date: Fri, 17 May 2024 11:15:56 +0800 Subject: [PATCH 254/607] Fix code block layout of 3.4.0-preview1 released --- en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md | 1 + 1 file changed, 1 insertion(+) diff --git a/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md index 89c9b7adb1..633636e3a4 100644 --- a/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md +++ b/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -51,6 +51,7 @@ Note: Excluding feature bug fixes. * Use a single quote instead of a backtick as a opening quote. [[Feature #16495]] * Display a class name before a method name (only when the class has a permanent name). [[Feature #19117]] * `Kernel#caller`, `Thread::Backtrace::Location`'s methods, etc. are also changed accordingly. + ``` Old: test.rb:1:in `foo': undefined method `time' for an instance of Integer From dd11d250ba5b0495e0104ce46cf2e999b1ef9a82 Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Sun, 19 May 2024 16:05:01 +0800 Subject: [PATCH 255/607] Translate CVE-2024-35176, Ruby 3.4.0 preview1 (zh_cn) (#3248) --- .../2024-05-16-dos-rexml-cve-2024-35176.md | 29 ++++ ...2024-05-16-ruby-3-4-0-preview1-released.md | 125 ++++++++++++++++++ 2 files changed, 154 insertions(+) create mode 100644 zh_cn/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md create mode 100644 zh_cn/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md diff --git a/zh_cn/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md b/zh_cn/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md new file mode 100644 index 0000000000..60277c548d --- /dev/null +++ b/zh_cn/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-35176: REXML 中的 DoS 漏洞" +author: "kou" +translator: "GAO Jun" +date: 2024-05-16 05:00:00 +0000 +tags: security +lang: zh_cn +--- + +REXML gem 中存在一个 DoS 漏洞。此漏洞的 CVE 编号为 [CVE-2024-35176](https://www.cve.org/CVERecord?id=CVE-2024-35176)。我们强烈建议您更新 REXML gem。 + +## 详情 + +当 XML 文档中的一个属性值包含很多 `<` 时,REXML gem 在解析时可能会花费很长时间。 + +请更新 REXML gem 至 3.2.7 或后续版本。 + +## 受影响版本 + +* REXML gem 3.2.6 或更低版本 + +## 致谢 + +感谢 [mprogrammer](https://hackerone.com/mprogrammer) 发现此问题。 + +## 历史 + +* 最初发布于 2024-05-16 05:00:00 (UTC) diff --git a/zh_cn/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/zh_cn/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md new file mode 100644 index 0000000000..cbd12e8f32 --- /dev/null +++ b/zh_cn/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -0,0 +1,125 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview1 已发布" +author: "naruse" +translator: "GAO Jun" +date: 2024-05-16 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview1" | first %} +我们很高兴地宣布 {{ release.version }} 发布。 + +## 语言变化 + +* 在没有 `frozen_string_literal` 注释的文件中的字符串将表现为已被冻结。 + 如果它们被修改,将发出弃用警告。 + 这些警告可以使用 `-W:deprecated` 或者通过设置 `Warning[:deprecated] = true` 来启用。 + 如要禁用此变化,您可以使用 `--disable-frozen-string-literal` 命令行参数运行 Ruby。 [[Feature #20205]] + +* 增加了 `it` 来引用块参数。 [[Feature #18980]] + +* 现在支持在调用方法时使用 `nil` 作为关键字展开。 + `**nil` 类似于 `**{}`,不传递关键字,也不调用任何转换方法。 [[Bug #20064]] + +* 索引不再接受块传递。 [[Bug #19918]] + +* 索引不再接受关键字参数。 [[Bug #20218]] + +## 核心类更新 + +注意:我们只列出了重要的类更新。 + +* Exception + + * Exception#set_backtrace 现在接受 `Thread::Backtrace::Location` 数组。 + `Kernel#raise`,`Thread#raise` 和 `Fiber#raise` 也接受这个新格式。 [[Feature #13557]] + +* Range + + * Range#size 在 range 不可枚举时,将抛出 TypeError。 [[Misc #18984]] + +## 兼容性问题 + +注意:不包括问题补丁。 + +* 修改了错误信息和错误栈的显示。 + * 使用单引号(`'`)代替反勾号(`` ` ``)作为错误消息的起始引号。 [[Feature #16495]] + * 在方法名前显示类名(仅当类具有永久名称时)。 [[Feature #19117]] + * `Kernel#caller`,`Thread::Backtrace::Location` 等的方法等也相应更改。 + + ``` + 此前: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + 现在: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + +## C API 更新 + +* 移除 `rb_newobj` 和 `rb_newobj_of` (以及相关的宏 `RB_NEWOBJ`,`RB_NEWOBJ_OF`,`NEWOBJ`,`NEWOBJ_OF`)。 [[Feature #20265]] +* 移除废除的函数 `rb_gc_force_recycle`。 [[Feature #18290]] + +## 实现改进 + +* `Array#each` 用 Ruby 重写,以提供更好的性能 [[Feature #20182]]。 + +## 其他变化 + +* 如果传递了一个块给不使用块的方法时,在详细模式(`-w`)中将显示警告。 [[Feature #15554]] + +* Ruby 对一些核心方法通过解释器和 JIT 进行了优化,诸如 `String.freeze`,`Integer#+`。 + 当这些方法被重定义时,解释器将发出性能警告(`-W:performance` 或 `Warning[:performance] = true`)。 [[Feature #20429]] + +有关默认 gems 和 绑定 gems 的细节,可以参考 GitHub 上的发布,例如 [logger gem](https://github.com/ruby/logger/releases) 或相应的变更日志。 + +更多详情,可参见 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +或 [提交日志](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})。 + +自 Ruby 3.3.0 以来,这些变化共导致 [{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+),删除 {{ release.stats.deletions }} 行(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)! + +## 下载 + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Ruby 是什么 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发,现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是 Web 开发领域。 + + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 From 88368bb1e26ef03a7dfde808bd0e6f4868d31c4b Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sun, 19 May 2024 16:05:54 +0800 Subject: [PATCH 256/607] Translate Ruby 3.4.0 preview1 news (zh_tw) (#3244) --- ...2024-05-16-ruby-3-4-0-preview1-released.md | 126 ++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 zh_tw/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md diff --git a/zh_tw/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/zh_tw/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md new file mode 100644 index 0000000000..5f96cefe79 --- /dev/null +++ b/zh_tw/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -0,0 +1,126 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview1 發布" +author: "naruse" +translator: "Bear Su" +date: 2024-05-16 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview1" | first %} +我們很高興宣布 Ruby {{ release.version }} 發布了。 + +## 語法變更 + +* 沒有 `frozen_string_literal` 註解的檔案中的字串文字,現在行為會跟被凍結一樣。如果它們被修改則會發出棄用警告。 + 這些警告可以透過 `-W:deprecated` 或 `Warning[:deprecated] = true` 啟用。 + 若要停用此變更,您可以在執行 Ruby 時加上參數 `--disable-frozen-string-literal`。 [[Feature #20205]] + +* 新增 `it` 來引用 block 的傳入參數。 [[Feature #18980]] + +* 現在呼叫方法支援使用 Keyword splatting `nil`。 + `**nil` 的處理方式與 `**{}` 類似,不會傳遞 keywords,也不會呼叫任何轉換方法。 [[Bug #20064]] + +* Block passing 不再允許作為索引。 [[Bug #19918]] + +* 不定長度參數不再允許作為索引。 [[Bug #20218]] + +## 核心類別更新 + +注意:我們只列出特別的類別更新。 + +* Exception + + * Exception#set_backtrace 現在可接受 `Thread::Backtrace::Location` 陣列。 + `Kernel#raise`、`Thread#raise` 和 `Fiber#raise` 也接受同樣的新格式。 [[Feature #13557]] + +* Range + + * Range#size 如果 range 無法迭代的話,現在會拋出 TypeError。 [[Misc #18984]] + +## 相容性問題 + +注意:不包含功能問題的修正。 + +* 錯誤訊息與 backtrace 的顯示改變。 + * 使用單引號 (`'`) 取代反引號 (`` ` ``) 作為起始引號。 [[Feature #16495]] + * 在方法名稱前顯示類別名稱 (僅當類別有固定名稱時)。 [[Feature #19117]] + * `Kernel#caller`、`Thread::Backtrace::Location` 的方法等等,也做了對應的改變。 + + ``` + 舊: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + 新: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + + +## C API 更新 + +* `rb_newobj` 和 `rb_newobj_of` (和相對應的巨集 `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) 已經被移除。 [[Feature #20265]] +* 移除已廢棄的函式 `rb_gc_force_recycle`。 [[Feature #18290]] + +## 實作改善 + +* `Array#each` 用 Ruby 重寫並有更好的效能 [[Feature #20182]]。 + +## Miscellaneous changes + +* 將 block 傳遞給不使用傳入 block 的方法,會在 verbose 模式 (`-w`) 下顯示警告。 + [[Feature #15554]] + +* 當重新定義一些由直譯器與 JIT 特別最佳化的核心方法,例如 `String.freeze` 和 `Integer#+`,現在會發出效能類型警告 (`-W:performance` or `Warning[:performance] = true`)。 + [[Feature #20429]] + +請參閱 GitHub 發布如 [Logger](https://github.com/ruby/logger/releases) 和變更紀錄來了解更多關於預設 gems 與 bundled gems 的資訊。 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +來了解更多。 + +自 Ruby 3.3.0 以來,計 [{{ release.stats.files_changed }} 檔案變更,{{ release.stats.insertions }} 行新增(+),{{ release.stats.deletions }} 行刪減(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)。 + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 From 2f30e7842f5f4dd76fd351039139b4c126d2a3ef Mon Sep 17 00:00:00 2001 From: Shia Date: Mon, 20 May 2024 21:36:54 +0900 Subject: [PATCH 257/607] Translate "CVE-2024-35176: DoS in REXML" (ko) (#3242) * Copy from en * Translate "CVE-2024-35176: DoS in REXML" * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../2024-05-16-dos-rexml-cve-2024-35176.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ko/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md diff --git a/ko/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md b/ko/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md new file mode 100644 index 0000000000..0a3558f93b --- /dev/null +++ b/ko/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-35176: REXML의 DoS 취약점" +author: "kou" +translator: "shia" +date: 2024-05-16 05:00:00 +0000 +tags: security +lang: ko +--- + +REXML gem에서 DoS 취약점이 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2024-35176](https://www.cve.org/CVERecord?id=CVE-2024-35176)으로 등록되었습니다. REXML gem 업그레이드를 강하게 추천합니다. + +## 세부 내용 + +대량의 `<`를 속성값으로 가지고 있는 XML을 파싱할 때, REXML gem은 처리에 긴 시간이 걸립니다. + +REXML gem을 3.2.7이나 그 이상으로 업데이트하세요. + +## 해당 버전 + +* REXML gem 3.2.6과 그 이하 + +## 도움을 준 사람 + +이 문제를 발견해 준 [mprogrammer](https://hackerone.com/mprogrammer)에게 감사를 표합니다. + +## 수정 이력 + +* 2024-05-16 05:00:00 (UTC) 최초 공개 From aef3fd05dd6201529899cc5cd2aa2aea1e4159ef Mon Sep 17 00:00:00 2001 From: Shia Date: Mon, 20 May 2024 21:43:34 +0900 Subject: [PATCH 258/607] Translate "Ruby 3.4.0-preview1 Released" (ko) (#3243) * Copy from en * Translate "Ruby 3.4.0-preview1 Released" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ...2024-05-16-ruby-3-4-0-preview1-released.md | 140 ++++++++++++++++++ 1 file changed, 140 insertions(+) create mode 100644 ko/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md diff --git a/ko/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/ko/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md new file mode 100644 index 0000000000..19d92c5efe --- /dev/null +++ b/ko/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -0,0 +1,140 @@ +--- +layout: news_post +title: "Ruby 3.4.0-preview1 릴리스" +author: "naruse" +translator: "shia" +date: 2024-05-16 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview1" | first %} +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. + +## 언어 변경 + +* 파일에 `frozen_string_literal` 주석이 없는 경우, 문자열 리터럴은 이제 얼린 것처럼 + 동작합니다. 해당 문자열이 변경되는 경우에는 폐기 예정 경고가 발생합니다. + 이 경고는 `-W:deprecated`나 `Warning[:deprecated] = true` 설정을 통해 활성화할 수 있습니다. + 이 변경을 무효화하고 싶다면 Ruby를 실행할 때 `--disable-frozen-string-literal` 커맨드라인 인수를 + 사용하세요. [[Feature #20205]] + +* 블록 인자를 가리키는 `it`이 추가됩니다. [[Feature #18980]] + +* 메서드 호출 시에 `nil`에 키워드 스플랫을 지원합니다. + `**nil`은 `**{}`와 비슷하게 동작하며, 키워드를 넘기지 않으며, + 어떤 변환 메서드도 호출하지 않습니다. [[Bug #20064]] + +* 블록을 인덱스로 사용할 수 없게 됩니다. [[Bug #19918]] + +* 키워드 인수를 인덱스로 사용할 수 없게 됩니다. [[Bug #20218]] + +## 코어 클래스 변경 + +주의: 눈에 띄는 클래스 변경만을 포함합니다. + +* Exception + + * Exception#set_backtrace는 이제 `Thread::Backtrace::Location`의 배열을 입력으로 받을 수 있습니다. + `Kernel#raise`, `Thread#raise`와 `Fiber#raise`도 같은 형식의 입력을 받습니다. [[Feature #13557]] + + +* Range + + * Range#size는 이제 범위가 순회 가능하지 않다면 TypeError를 던집니다. [[Misc #18984]] + + + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + +* 에러 메시지와 백트레이스의 출력 결과가 변경됩니다. + * 인용 시작 부분을 나타내던 백틱 대신 작은 따옴표를 사용합니다. [[Feature #16495]] + * 메서드 이름 앞에 클래스 이름을 출력합니다(클래스가 불변하는 이름을 가지고 있다면). [[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location`의 메서드 등도 마찬가지로 변경됩니다. + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + + +## C API 변경 + +* `rb_newobj`와 `rb_newobj_of`(그리고 대응하는 매크로인 `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`)가 삭제됩니다. [[Feature #20265]] +* 폐기 예정인 `rb_gc_force_recycle` 함수가 삭제됩니다. [[Feature #18290]] + +## 구현 개선 + +* `Array#each`를 더 나은 성능을 위해 Ruby로 재작성했습니다. [[Feature #20182]] + +## 그 이외의 변경 + +* 상세 모드(`-w`)에서 메서드에 넘긴 블록이 사용되지 않았을 때 + 경고를 출력합니다. + [[Feature #15554]] + +* `String.freeze`나 `Integer#+`처럼 인터프리터와 JIT이 특별히 최적화하는 + 몇몇 코어 메서드를 재정의하면 성능 클래스 + 경고(`-W:performance`나 `Warning[:performance] = true`)를 출력합니다. + [[Feature #20429]] + +기본 gem 또는 내장 gem에 대한 자세한 내용은 [Logger](https://github.com/ruby/logger/releases)와 같은 +GitHub 릴리스 또는 변경 로그에서 확인하세요. + +더 자세한 내용은 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.3.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 From 38f757c2b258a79a3e78f7bbf3404b3ae0909e3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Mon, 20 May 2024 15:11:15 -0400 Subject: [PATCH 259/607] Uses the cx_id for serching in english to search in spanish, improves #1384 (#3253) --- _data/locales/es.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/_data/locales/es.yml b/_data/locales/es.yml index 2751234494..94995797e3 100644 --- a/_data/locales/es.yml +++ b/_data/locales/es.yml @@ -23,6 +23,7 @@ sitelinks: search: text: Buscar + cx_id: '013598269713424429640:g5orptiw95w' sidebar: get_started: From 617d9cdcd50fd43fea4545d2d6a05fbeff45fe23 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 20 May 2024 15:46:04 +0000 Subject: [PATCH 260/607] Bump actions/checkout from 4.1.5 to 4.1.6 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.5 to 4.1.6. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/44c2b7a8a4ea60a981eaca3cf939b5f4305c123b...a5ac7e51b41094c92402da3b24376905380afc29) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d2894b7850..e61e515285 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5 + uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index f1758d6275..e77d858bf0 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5 + uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 - name: Setup Ruby uses: ruby/setup-ruby@cacc9f1c0b3f4eb8a16a6bb0ed10897b43b9de49 # v1.176.0 with: From d79fdf1ce6a4d323d933a35e66db1813a034bab1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 16 May 2024 21:54:48 +0000 Subject: [PATCH 261/607] Bump rexml from 3.2.6 to 3.2.8 Bumps [rexml](https://github.com/ruby/rexml) from 3.2.6 to 3.2.8. - [Release notes](https://github.com/ruby/rexml/releases) - [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md) - [Commits](https://github.com/ruby/rexml/compare/v3.2.6...v3.2.8) --- updated-dependencies: - dependency-name: rexml dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 49feaa03b0..b6fdc95e70 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -98,7 +98,8 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - rexml (3.2.6) + rexml (3.2.8) + strscan (>= 3.0.9) rouge (4.2.0) ruby-rc4 (0.1.5) safe_yaml (1.0.5) @@ -112,6 +113,7 @@ GEM slop (4.10.1) spidr (0.7.0) nokogiri (~> 1.3) + strscan (3.1.0) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) tidy_ffi (1.0.1) From 545cb02bc6709cc7277788e03175898ae0c40be2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Thu, 23 May 2024 09:14:33 -0400 Subject: [PATCH 262/607] Translation of CVE 2024-35176 (es) (#3251) --- .../2024-05-16-dos-rexml-cve-2024-35176.md | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 es/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md diff --git a/es/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md b/es/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md new file mode 100644 index 0000000000..4e093496a4 --- /dev/null +++ b/es/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md @@ -0,0 +1,34 @@ +--- +layout: news_post +title: "CVE-2024-35176: Denegación de servicio en REXML" +author: "kou" +translator: vtamara +date: 2024-05-16 05:00:00 +0000 +tags: security +lang: es +--- + +Hay una vulnerabilidad de denegación de servicio (DoS) en la gema REXML. +A esta vulnerabilidad se le ha asignado el identificador CVE +[CVE-2024-35176](https://www.cve.org/CVERecord?id=CVE-2024-35176). +Recomendamos enfáticamente actualizar la gema REXML. + +## Detalles + +Cuando se analiza un documento XML con muchos `<` en el valor +de un atributo, la gema REXML puede tardar largo tiempo. + +Por favor actualice la gema REXML a la versión 3.2.7 o posterior. + +## Versiones afectadas + +* Gema REXML 3.2.6 o anteriores + +## Créditos + +Agradecemos a [mprogrammer](https://hackerone.com/mprogrammer) +por descubrir este problema. + +## Historia + +* Publicado originalmente el 2024-05-16 05:00:00 (UTC) From 74b88a5a63a1e4460e1cd1d4c357869ed28a329d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Thu, 23 May 2024 09:14:51 -0400 Subject: [PATCH 263/607] Translation of release of ruby 3.4.0.preview1 (es) (#3252) --- ...2024-05-16-ruby-3-4-0-preview1-released.md | 157 ++++++++++++++++++ 1 file changed, 157 insertions(+) create mode 100644 es/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md diff --git a/es/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/es/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md new file mode 100644 index 0000000000..73c3e46515 --- /dev/null +++ b/es/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -0,0 +1,157 @@ +--- +layout: news_post +title: "Publicado Ruby 3.4.0 preview1" +author: "naruse" +translator: vtamara +date: 2024-05-16 00:00:00 +0000 +lang: es +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview1" | first %} +Nos complace anunciar la publicación de Ruby {{ release.version }}. + +## Cambios en el lenguaje + +* Las cadenas literales en archivos sin el comentario `frozen_string_literal` + ahora se comportan como si estuvieran congeladas. + Si llegan a ser mutadas se produce una advertencia de desprecio. + Estas advertencia pueden ser habilitadas con `-W:deprecated` + o estableciendo `Warning[:deprecated] = true`. + Para deshabilitar este cambio, puede ejecutar Ruby con el argumento + `--disable-frozen-string-literal` desde la línea de ordenes. + [[Característica #20205]] + +* `it` se agrega para referenciar un parámetro de bloque. + [[Característica #18980]] + +* Ahora se soporta hacer splat de palabras clave con `nil` cuando se + llaman métodos. + `**nil` se trata de manera similar a `**{}`, no pasar palabras clave, + y no llamar método de conversión alguno. [[Falla #20064]] + +* Ya no se permite pasar bloques como índices. [[Falla #19918]] + +* Ya no se permiten argumentos de palabra clave como índices. [[Falla #20218]] + +## Clases fundamentales actualizadas + +Nota: Listamos sólo actualizaciones mayores de clases. + +* Exception + + * Exception#set_backtrace ahora acepta arreglos de + `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` y `Fiber#raise` también aceptan + este nuevo formato. [[Característica #13557]] + +* Range + + * Range#size ahora lanza `TypeError` si el rango no es iterable. + [[Varios #18984]] + + + +## Problemas de compatibilidad + +Nota: Excluyendo correcciones a problemas en características. + +* Los mensajes de error y la presentación de trazas han sido cambiadas. + * Se usa un sólo apóstrofe en lugar de un apostrofe invertido para + iniciar una cita. [[Característica #16495]] + * Se presenta un nombre de clase antes del nombre de un método + (sólo cuando la clase tiene un nombre permanente). [[Característica #19117]] + * También se cambiaron de la manera análoga los métodos `Kernel#caller`, + `Thread::Backtrace::Location`, etc. + + ``` + Antes: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + Ahora: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + + +## Actualizaciones del API en C + +* Se han eliminado `rb_newobj` y `rb_newobj_of` (y los respectivos macros + `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`). + [[Característica #20265]] +* Se eliminó la función despreciada `rb_gc_force_recycle`. + [[Característica #18290]] + +## Mejoras en implementación + +* Se re-escribió `Array#each` en Ruby para mejorar el desempeño [[Característica #20182]]. + +## Cambios diversos + +* Al pasar un bloque a un método que no use el bloque recibido se + presentará una advertencia en modo verboso (`-w`). + [[Característica #15554]] + +* Al redefinir algunos métodos fundamentales que se han optimizado + de manera especial por el interprete y por JIT como `String.freeze` o + `Integer#+` ahora produce una advertencia en la clase de + desempeño (`-W:performance` o `Warning[:performance] = true`). + [[Característica #20429]] + +Vea notas de publicación como las de +[Logger](https://github.com/ruby/logger/releases) o +archivos de cambios (changelog) con detalles de las gemas +predeterminadas y las gemas incluidas. + +Ver más detalles en +[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +o en la [bitácora de contribuciones](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}). + +Con estas novedades, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +desde Ruby 3.3.0! + + +## Descargas + +* <{{ 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 }} + +## Qué es Ruby + +Ruby fu desarrollado inicialmente por Matz (Yukihiro Matsumoto) en 1993, +y ahora se desarrolla como Fuentes Abiertas. Corre en múltiples +plataformas y se usa en todo el mundoa especialmente para +de desarrollo de aplicaciones web. + +[Característica #13557]: https://bugs.ruby-lang.org/issues/13557 +[Característica #15554]: https://bugs.ruby-lang.org/issues/15554 +[Característica #16495]: https://bugs.ruby-lang.org/issues/16495 +[Característica #18290]: https://bugs.ruby-lang.org/issues/18290 +[Característica #18980]: https://bugs.ruby-lang.org/issues/18980 +[Varios #18984]: https://bugs.ruby-lang.org/issues/18984 +[Característica #19117]: https://bugs.ruby-lang.org/issues/19117 +[Falla #19918]: https://bugs.ruby-lang.org/issues/19918 +[Falla #20064]: https://bugs.ruby-lang.org/issues/20064 +[Característica #20182]: https://bugs.ruby-lang.org/issues/20182 +[Característica #20205]: https://bugs.ruby-lang.org/issues/20205 +[Falla #20218]: https://bugs.ruby-lang.org/issues/20218 +[Característica #20265]: https://bugs.ruby-lang.org/issues/20265 +[Característica #20429]: https://bugs.ruby-lang.org/issues/20429 From 247ba93ca00dd0f46edab41783cd06270005aa6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Thu, 23 May 2024 09:35:46 -0400 Subject: [PATCH 264/607] For searching uses cx_id of the language but if it is not defined uses cx_id of english --that will also search in other languages. Closes #1384 --- _includes/search.html | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/_includes/search.html b/_includes/search.html index 41158dd8e0..c78d342521 100644 --- a/_includes/search.html +++ b/_includes/search.html @@ -1,9 +1,13 @@ -{% if site.data.locales[page.lang].search %} - {% assign cx_id = site.data.locales[page.lang].search.cx_id %} +{% if site.data.locales[page.lang].search.text %} {% assign text = site.data.locales[page.lang].search.text %} {% else %} {% assign text = site.data.locales['en'].search.text %} {% endif%} +{% if site.data.locales[page.lang].search.cx_id %} + {% assign cx_id = site.data.locales[page.lang].search.cx_id %} +{% else %} + {% assign cx_id = site.data.locales['en'].search.cx_id %} +{% endif%}
From ca5b32e5fa5ec02e6db1273267ad8cf26663019c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?U=C4=9Fur=20=C3=96zy=C4=B1lmazel?= Date: Fri, 24 May 2024 09:16:27 +0300 Subject: [PATCH 265/607] fix broken document link --- tr/documentation/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tr/documentation/index.md b/tr/documentation/index.md index 50921f993a..cfcafe30c9 100644 --- a/tr/documentation/index.md +++ b/tr/documentation/index.md @@ -176,5 +176,5 @@ olacaktır. [atom]: https://atom.io/ [vscode]: https://code.visualstudio.com/ [ruby-kullanici-kilavuzu]: http://www.belgeler.org/uygulamalar/ruby/ruby-ug.html -[ruby-101-kitabi]: https://vigo.gitbooks.io/ruby-101/ +[ruby-101-kitabi]: https://vigo.github.io/ruby101-kitap/ [ab2014-ruby-notlari]: https://github.com/leylaKapi/AB2014-Ruby-Programlama-Dili/blob/master/Ruby_AB2014.md From eec0ee150937279bb68155b51d5b612339a660f6 Mon Sep 17 00:00:00 2001 From: kagancansit Date: Mon, 27 May 2024 23:54:11 +0300 Subject: [PATCH 266/607] Brokens links founded and fixed --- tr/about/index.md | 1 - tr/community/conferences/index.md | 2 +- tr/community/index.md | 4 ++-- tr/community/podcasts/index.md | 1 - tr/documentation/index.md | 1 - tr/documentation/installation/index.md | 2 +- .../_posts/2014-07-26-rubykaigi-2014-registration-online.md | 2 +- tr/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md | 2 -- tr/news/_posts/2020-12-25-ruby-3-0-0-released.md | 4 ++-- 9 files changed, 7 insertions(+), 12 deletions(-) diff --git a/tr/about/index.md b/tr/about/index.md index 98fffb63c3..ae66c0f4d0 100644 --- a/tr/about/index.md +++ b/tr/about/index.md @@ -219,5 +219,4 @@ Daha tam bir liste için, [Müthiş Ruby'ler][awesome-rubies]e bakın. [ironruby]: http://www.ironruby.net [maglev]: http://maglev.github.io [cardinal]: https://github.com/parrot/cardinal -[parrot]: http://parrot.org [awesome-rubies]: https://github.com/planetruby/awesome-rubies diff --git a/tr/community/conferences/index.md b/tr/community/conferences/index.md index 313bd54a3d..bcafbdcc16 100644 --- a/tr/community/conferences/index.md +++ b/tr/community/conferences/index.md @@ -69,5 +69,5 @@ Ayrıca Ruby Central'in [RailsConf][12]'u, RailsConf Avrupa (2006'da Ruby Centra [14]: http://www.skillsmatter.com [16]: http://steelcityruby.org/ [19]: http://goruco.com/ -[20]: http://www.deccanrubyconf.org/ +[20]: https://github.com/deccanrubyconf [21]: https://southeastruby.com/ diff --git a/tr/community/index.md b/tr/community/index.md index 7065657966..9fc09209af 100644 --- a/tr/community/index.md +++ b/tr/community/index.md @@ -67,6 +67,6 @@ Genel Ruby Kaynakları [ruby-central]: http://rubycentral.org/ [ruby-discord]: https://discord.gg/ad2acQFtkh -[ruby-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/ -[rails-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/Software/Frameworks/Rails/ +[ruby-opendir]: https://dmoztools.net +[rails-opendir]: https://dmoztools.net [ruby-turkiye-slack]: https://rubytr.herokuapp.com/ diff --git a/tr/community/podcasts/index.md b/tr/community/podcasts/index.md index 9fa082f04b..858aa39f1b 100644 --- a/tr/community/podcasts/index.md +++ b/tr/community/podcasts/index.md @@ -27,4 +27,3 @@ Ayrıca kendi Ruby podcast'inizi başlatıp bu listeye ekleyebilirsiniz. [rorpodcast]: https://www.therubyonrailspodcast.com [rogues]: https://rubyrogues.com -[yakut]: https://yakutrb.com/ diff --git a/tr/documentation/index.md b/tr/documentation/index.md index cfcafe30c9..865ba4c30c 100644 --- a/tr/documentation/index.md +++ b/tr/documentation/index.md @@ -175,6 +175,5 @@ olacaktır. [docs-rlo-en]: https://docs.ruby-lang.org/en/ [atom]: https://atom.io/ [vscode]: https://code.visualstudio.com/ -[ruby-kullanici-kilavuzu]: http://www.belgeler.org/uygulamalar/ruby/ruby-ug.html [ruby-101-kitabi]: https://vigo.github.io/ruby101-kitap/ [ab2014-ruby-notlari]: https://github.com/leylaKapi/AB2014-Ruby-Programlama-Dili/blob/master/Ruby_AB2014.md diff --git a/tr/documentation/installation/index.md b/tr/documentation/installation/index.md index caa14c1e5e..b42c0389bf 100644 --- a/tr/documentation/installation/index.md +++ b/tr/documentation/installation/index.md @@ -366,7 +366,7 @@ olabilir, çünkü kurulan Ruby herhangi bir araç tarafından yönetilmeyecekti [terminal]: https://en.wikipedia.org/wiki/List_of_terminal_emulators [download]: /tr/downloads/ [installers]: /tr/documentation/installation/#installers -[building-ruby]: https://github.com/ruby/ruby/blob/master/doc/contributing/building_ruby.md +[github-ruby]: https://github.com/ruby/ruby [wsl]: https://docs.microsoft.com/en-us/windows/wsl/about [asdf-vm]: https://asdf-vm.com/ [asdf-ruby]: https://github.com/asdf-vm/asdf-ruby diff --git a/tr/news/_posts/2014-07-26-rubykaigi-2014-registration-online.md b/tr/news/_posts/2014-07-26-rubykaigi-2014-registration-online.md index 3fb53bd25c..cc22b4f5c1 100644 --- a/tr/news/_posts/2014-07-26-rubykaigi-2014-registration-online.md +++ b/tr/news/_posts/2014-07-26-rubykaigi-2014-registration-online.md @@ -51,7 +51,7 @@ gelen Rubyciler için mükemmel bir ortam sağlayacağız. ## Daha fazla bilgi için: * [http://rubykaigi.org/2014](http://rubykaigi.org/2014) -* [http://blog.rubykaigi.org](http://blog.rubykaigi.org) +* [https://rubykaigi.org](https://rubykaigi.org) * [@rubykaigi](https://twitter.com/rubykaigi) * [http://lanyrd.com/2014/rubykaigi/](http://lanyrd.com/2014/rubykaigi) diff --git a/tr/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md b/tr/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md index 981e0e5504..307df2847c 100644 --- a/tr/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md +++ b/tr/news/_posts/2019-10-16-fukuoka-ruby-award-2020.md @@ -22,8 +22,6 @@ Matz ve bir grup oturum katılımcısı Fukuoka Yarışmasının kazananlarını Fukuoka Yarışması için büyük ödül 1 milyon yen'dir. Önceki büyük ödül sahipleri arasında Rhomobile (ABD) ve APEC İklim Merkezi (Kore) bulunmaktadır. -[http://myfukuoka.com/category/news/ruby-news/](http://myfukuoka.com/category/news/ruby-news/) - Yarışmaya giren programlar tümüyle Ruby ile yazılmak zorunda değildir fakat Ruby'nin eşsiz karakteristiklerinden faydalanmalıdır. Projeler, değerlendirmeye alınabilmeleri için, son 12 ayda geliştirilmiş ya da tamamlanmış olmalıdır. diff --git a/tr/news/_posts/2020-12-25-ruby-3-0-0-released.md b/tr/news/_posts/2020-12-25-ruby-3-0-0-released.md index d1889c441a..402b3b9589 100644 --- a/tr/news/_posts/2020-12-25-ruby-3-0-0-released.md +++ b/tr/news/_posts/2020-12-25-ruby-3-0-0-released.md @@ -17,7 +17,7 @@ Ruby 3.0.0'ın yayınlandığını duyurmaktan memnuniyet duyuyoruz. NES'in oyun emulasyonu işyükü temelli tek threadde performansı ölçen [Optcarrot kıyaslaması](https://github.com/mame/optcarrot) ile Ruby3, Ruby 2.0'dan 3 kat daha hızlı olduğunu kanıtladı!
- Bunlar şurada not edilen ortama göre ölçülmüştür: [benchmark-driver.github.io/hardware.html](https://benchmark-driver.github.io/hardware.html) + Bunlar şurada not edilen ortama göre ölçülmüştür: [benchmark-driver.github.io/hardware.html](https://github.com/benchmark-driver/benchmark-driver) [Commit 8c510e4095](https://github.com/ruby/ruby/commit/8c510e4095), Ruby 3.0 olarak kullanıldı. Ortamınıza ya da kıyaslamanıza göre 3 kat hız ölçemeyebilirsiniz.
@@ -46,7 +46,7 @@ Yukarıda anlatılan performans artışı ile birlikte, Ruby 3.0 aşağıda anla Birçok iyileştirme MJIT'te gerçeklenmiştir. Ayrıntılar için NEWS'e bakınız. -Ruby 3.0 itibariyle, JIT'in sınırlı işyüklerinde performans iyileştirmeleri vermesi gerekiyor; oyunlar ([Optcarrot](https://benchmark-driver.github.io/benchmarks/optcarrot/commits.html#chart-1)), yapay zeka ([Rubykon](https://benchmark-driver.github.io/benchmarks/rubykon/commits.html)) ya da zamanının çoğunu birkaç metodu birçok kez çağırarak geçiren herhangi bir uygulama gibi. +Ruby 3.0 itibariyle, JIT'in sınırlı işyüklerinde performans iyileştirmeleri vermesi gerekiyor; oyunlar ([Optcarrot](https://github.com/mame/optcarrot)), yapay zeka ([Rubykon](https://benchmark-driver.github.io/benchmarks/rubykon/commits.html)) ya da zamanının çoğunu birkaç metodu birçok kez çağırarak geçiren herhangi bir uygulama gibi. Ruby 3.0 [JIT'lenmiş kodun boyutunu önemli ölçüde düşürmüş olsa da](https://twitter.com/k0kubun/status/1256142302608650244), Rails gibi optimize eden işyükleri için hala hazır değildir. From bd11a9f7010a21492adc4553ee0a691e679ddea0 Mon Sep 17 00:00:00 2001 From: kagancansit Date: Tue, 28 May 2024 00:10:58 +0300 Subject: [PATCH 267/607] benchmark-driver link update --- tr/news/_posts/2020-12-25-ruby-3-0-0-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tr/news/_posts/2020-12-25-ruby-3-0-0-released.md b/tr/news/_posts/2020-12-25-ruby-3-0-0-released.md index 402b3b9589..ea2850a513 100644 --- a/tr/news/_posts/2020-12-25-ruby-3-0-0-released.md +++ b/tr/news/_posts/2020-12-25-ruby-3-0-0-released.md @@ -46,7 +46,7 @@ Yukarıda anlatılan performans artışı ile birlikte, Ruby 3.0 aşağıda anla Birçok iyileştirme MJIT'te gerçeklenmiştir. Ayrıntılar için NEWS'e bakınız. -Ruby 3.0 itibariyle, JIT'in sınırlı işyüklerinde performans iyileştirmeleri vermesi gerekiyor; oyunlar ([Optcarrot](https://github.com/mame/optcarrot)), yapay zeka ([Rubykon](https://benchmark-driver.github.io/benchmarks/rubykon/commits.html)) ya da zamanının çoğunu birkaç metodu birçok kez çağırarak geçiren herhangi bir uygulama gibi. +Ruby 3.0 itibariyle, JIT'in sınırlı işyüklerinde performans iyileştirmeleri vermesi gerekiyor; oyunlar ([Optcarrot](https://github.com/mame/optcarrot)), yapay zeka ([Rubykon](https://github.com/benchmark-driver)) ya da zamanının çoğunu birkaç metodu birçok kez çağırarak geçiren herhangi bir uygulama gibi. Ruby 3.0 [JIT'lenmiş kodun boyutunu önemli ölçüde düşürmüş olsa da](https://twitter.com/k0kubun/status/1256142302608650244), Rails gibi optimize eden işyükleri için hala hazır değildir. From 426060c4e354ba4fd06fd742ce14a11fa00260fe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 May 2024 15:16:20 +0000 Subject: [PATCH 268/607] Bump ruby/setup-ruby from 1.176.0 to 1.177.1 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.176.0 to 1.177.1. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/cacc9f1c0b3f4eb8a16a6bb0ed10897b43b9de49...943103cae7d3f1bb1e4951d5fcc7928b40e4b742) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e61e515285..01bc4fcc92 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@cacc9f1c0b3f4eb8a16a6bb0ed10897b43b9de49 # v1.176.0 + uses: ruby/setup-ruby@943103cae7d3f1bb1e4951d5fcc7928b40e4b742 # v1.177.1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index e77d858bf0..c64024414f 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 - name: Setup Ruby - uses: ruby/setup-ruby@cacc9f1c0b3f4eb8a16a6bb0ed10897b43b9de49 # v1.176.0 + uses: ruby/setup-ruby@943103cae7d3f1bb1e4951d5fcc7928b40e4b742 # v1.177.1 with: ruby-version: '3.2' bundler-cache: true From 3acee38a7fac096ae42d92b014af9a570860b6ec Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 28 May 2024 18:55:06 +0900 Subject: [PATCH 269/607] update bundles --- Gemfile.lock | 73 ++++++++++++++++++++++++++++++---------------------- 1 file changed, 42 insertions(+), 31 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index b6fdc95e70..c8f6cee33c 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,20 +1,22 @@ GEM remote: https://rubygems.org/ specs: - Ascii85 (1.1.0) + Ascii85 (1.1.1) addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) afm (0.2.2) - async (2.8.0) - console (~> 1.10) + async (2.11.0) + console (~> 1.25, >= 1.25.2) fiber-annotation - io-event (~> 1.1) + io-event (~> 1.5, >= 1.5.1) timers (~> 4.1) + bigdecimal (3.1.8) colorator (1.1.0) - concurrent-ruby (1.2.2) - console (1.23.3) + concurrent-ruby (1.2.3) + console (1.25.2) fiber-annotation - fiber-local + fiber-local (~> 1.1) + json crass (1.0.6) em-websocket (0.5.3) eventmachine (>= 0.12.9) @@ -24,13 +26,21 @@ GEM eventmachine (1.2.7) ffi (1.16.3) fiber-annotation (0.2.0) - fiber-local (1.0.0) + fiber-local (1.1.0) + fiber-storage + fiber-storage (0.1.1) forwardable-extended (2.6.0) - google-protobuf (3.25.2) - google-protobuf (3.25.2-arm64-darwin) - google-protobuf (3.25.2-x86_64-linux) + google-protobuf (4.27.0) + bigdecimal + rake (>= 13) + google-protobuf (4.27.0-arm64-darwin) + bigdecimal + rake (>= 13) + google-protobuf (4.27.0-x86_64-linux) + bigdecimal + rake (>= 13) hashery (2.1.2) - html-proofer (5.0.8) + html-proofer (5.0.9) addressable (~> 2.3) async (~> 2.1) nokogiri (~> 1.13) @@ -40,9 +50,9 @@ GEM yell (~> 2.0) zeitwerk (~> 2.5) http_parser.rb (0.8.0) - i18n (1.14.1) + i18n (1.14.5) concurrent-ruby (~> 1.0) - io-event (1.4.1) + io-event (1.5.1) jekyll (4.3.3) addressable (~> 2.4) colorator (~> 1.0) @@ -63,18 +73,18 @@ GEM sass-embedded (~> 1.54) jekyll-watch (2.2.1) listen (~> 3.0) - json (2.7.1) + json (2.7.2) kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) liquid (4.0.4) - listen (3.8.0) + listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) mini_portile2 (2.8.6) - minitest (5.20.0) + minitest (5.23.1) nokogiri (1.16.5) mini_portile2 (~> 2.8.2) racc (~> 1.4) @@ -91,27 +101,27 @@ GEM hashery (~> 2.0) ruby-rc4 ttfunk - public_suffix (5.0.4) - racc (1.7.3) + public_suffix (5.0.5) + racc (1.8.0) rainbow (3.1.1) - rake (13.1.0) + rake (13.2.1) rb-fsevent (0.11.2) - rb-inotify (0.10.1) + rb-inotify (0.11.1) ffi (~> 1.0) rexml (3.2.8) strscan (>= 3.0.9) - rouge (4.2.0) + rouge (4.2.1) ruby-rc4 (0.1.5) safe_yaml (1.0.5) - sass-embedded (1.69.7) - google-protobuf (~> 3.25) + sass-embedded (1.77.2) + google-protobuf (>= 3.25, < 5.0) rake (>= 13.0.0) - sass-embedded (1.69.7-arm64-darwin) - google-protobuf (~> 3.25) - sass-embedded (1.69.7-x86_64-linux-gnu) - google-protobuf (~> 3.25) + sass-embedded (1.77.2-arm64-darwin) + google-protobuf (>= 3.25, < 5.0) + sass-embedded (1.77.2-x86_64-linux-gnu) + google-protobuf (>= 3.25, < 5.0) slop (4.10.1) - spidr (0.7.0) + spidr (0.7.1) nokogiri (~> 1.3) strscan (3.1.0) terminal-table (3.0.2) @@ -119,7 +129,8 @@ GEM tidy_ffi (1.0.1) ffi (~> 1.2) timers (4.3.5) - ttfunk (1.7.0) + ttfunk (1.8.0) + bigdecimal (~> 3.1) typhoeus (1.4.1) ethon (>= 0.9.0) unicode-display_width (2.5.0) @@ -138,7 +149,7 @@ GEM rexml (~> 3.2) webrick (1.8.1) yell (2.2.2) - zeitwerk (2.6.12) + zeitwerk (2.6.15) PLATFORMS arm64-darwin-22 From 9ccb227dfa6644d0f382a6c4b24de4f2e4853654 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 29 May 2024 17:47:40 +0900 Subject: [PATCH 270/607] Release announcement for Ruby 3.1.6 --- _data/releases.yml | 24 +++++++++ .../_posts/2024-05-29-ruby-3-1-6-released.md | 50 +++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 en/news/_posts/2024-05-29-ruby-3-1-6-released.md diff --git a/_data/releases.yml b/_data/releases.yml index 89c262fc50..1ca82b7cd5 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -467,6 +467,30 @@ # 3.1 series +- version: 3.1.6 + date: '2024-05-29' + post: "/en/news/2024/05/29/ruby-3-1-6-released/" + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.6.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.6.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.6.zip + size: + gz: 20887803 + xz: 15273916 + zip: 25211787 + sha1: + gz: '02832465f9b0f68b9fe2c443f9f602d6e840b2ca' + xz: 2671606a00d0ad564fb93f92d093590563c4e25b + zip: 534e675022dc30c3674ee68a7b2fbe9300d64367 + sha256: + gz: 0d0dafb859e76763432571a3109d1537d976266be3083445651dc68deed25c22 + xz: 597bd1849f252d8a6863cb5d38014ac54152b508c36dca156f6356a9e63c6102 + zip: c21d16e7953d65d05824834e89d7e1a58ccf2bc018fe966f785774ea383f53db + sha512: + gz: 624555ab3681bd6663bca7cf3529a969b9f0f16928559cfb713c57f763506c8740410c9b460d946922994859189ef2b9956167bd31423cf2e3acbf5a30086fe1 + xz: a3159648706d6d11ce9613201141e884b3accc69bf928c756de8a8f2b71d219886e91435d30cf2c30e85af31f87801138e10106344766100f1b80662c7244652 + zip: f8b5a0fda8dc0248f29796a0b5b67f93a825a013b92b0db437ecf0a5ffaf06a800285999a0e9a61e890a8000dd2e2c081a6ecb5dae62b1045761a13fd87c397b + - version: 3.1.5 date: '2024-04-23' post: "/en/news/2024/04/23/ruby-3-1-5-released/" diff --git a/en/news/_posts/2024-05-29-ruby-3-1-6-released.md b/en/news/_posts/2024-05-29-ruby-3-1-6-released.md new file mode 100644 index 0000000000..dfba5287fa --- /dev/null +++ b/en/news/_posts/2024-05-29-ruby-3-1-6-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.1.5 Released" +author: "hsbt" +translator: +date: 2024-05-29 9:00:00 +0000 +lang: en +--- + +Ruby 3.1.6 has been released. + +Ruby 3.1 series is now in the security maintenance phase. In general, we will fix sonly ecurity issues in this phase. But we have several build failure issues after the release of Ruby 3.1.5. We decided to release Ruby 3.1.6 to fix these issues. + +Please check the topics below for details. + +* [Bug #20151: Can't build Ruby 3.1 on FreeBSD 14.0](https://bugs.ruby-lang.org/issues/20151) +* [Bug #20451: Bad Ruby 3.1.5 backport causes fiddle to fail to build](https://bugs.ruby-lang.org/issues/20451) +* [Bug #20431: Ruby 3.3.0 build fail with make: *** \[io_buffer.o\] Error 1](https://bugs.ruby-lang.org/issues/20431) + +See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_6) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.1.6" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From b056769de793bbf656b240ffb7e1eefc55ca35d9 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 29 May 2024 18:32:06 +0900 Subject: [PATCH 271/607] Fix a typo --- en/news/_posts/2024-05-29-ruby-3-1-6-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-05-29-ruby-3-1-6-released.md b/en/news/_posts/2024-05-29-ruby-3-1-6-released.md index dfba5287fa..a1c6c1e954 100644 --- a/en/news/_posts/2024-05-29-ruby-3-1-6-released.md +++ b/en/news/_posts/2024-05-29-ruby-3-1-6-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.1.5 Released" +title: "Ruby 3.1.6 Released" author: "hsbt" translator: date: 2024-05-29 9:00:00 +0000 From 8ca77c809c297b2d862c3d32132b634a20bc80b5 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 29 May 2024 18:43:14 +0900 Subject: [PATCH 272/607] Fix a typo too --- en/news/_posts/2024-05-29-ruby-3-1-6-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-05-29-ruby-3-1-6-released.md b/en/news/_posts/2024-05-29-ruby-3-1-6-released.md index a1c6c1e954..b2ba968d66 100644 --- a/en/news/_posts/2024-05-29-ruby-3-1-6-released.md +++ b/en/news/_posts/2024-05-29-ruby-3-1-6-released.md @@ -9,7 +9,7 @@ lang: en Ruby 3.1.6 has been released. -Ruby 3.1 series is now in the security maintenance phase. In general, we will fix sonly ecurity issues in this phase. But we have several build failure issues after the release of Ruby 3.1.5. We decided to release Ruby 3.1.6 to fix these issues. +Ruby 3.1 series is now in the security maintenance phase. In general, we will fix only security issues in this phase. But we have several build failure issues after the release of Ruby 3.1.5. We decided to release Ruby 3.1.6 to fix these issues. Please check the topics below for details. From d340523df62a415c1fcde57889e2aa44d0d104c3 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Wed, 29 May 2024 18:34:33 +0800 Subject: [PATCH 273/607] Translate Ruby 3.1.6 Released (zh_tw) --- .../_posts/2024-05-29-ruby-3-1-6-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 zh_tw/news/_posts/2024-05-29-ruby-3-1-6-released.md diff --git a/zh_tw/news/_posts/2024-05-29-ruby-3-1-6-released.md b/zh_tw/news/_posts/2024-05-29-ruby-3-1-6-released.md new file mode 100644 index 0000000000..4c39a76fb4 --- /dev/null +++ b/zh_tw/news/_posts/2024-05-29-ruby-3-1-6-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.1.6 發布" +author: "hsbt" +translator: "Bear Su" +date: 2024-05-29 9:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.1.6 已經發布了。 + +Ruby 3.1 已經進入安全性維護週期,在此週期通常我們只會修復安全性問題。但在發布 Ruby 3.1.5 後我們發現有一些建置失敗的問題。 +所以我們決定發布 Ruby 3.1.6 來修復這些問題。 + +細節請參考下列內容。 + +* [Bug #20151: Can't build Ruby 3.1 on FreeBSD 14.0](https://bugs.ruby-lang.org/issues/20151) +* [Bug #20451: Bad Ruby 3.1.5 backport causes fiddle to fail to build](https://bugs.ruby-lang.org/issues/20451) +* [Bug #20431: Ruby 3.3.0 build fail with make: *** \[io_buffer.o\] Error 1](https://bugs.ruby-lang.org/issues/20431) + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_1_6)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.1.6" | first %} + +* <{{ 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 4c164cc27e0fdaf7724142b22b6eb7a6e37f9538 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 28 May 2024 17:21:57 +0900 Subject: [PATCH 274/607] Draft --- .../_posts/2024-05-28-datadog-oss-program.md | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 en/news/_posts/2024-05-28-datadog-oss-program.md diff --git a/en/news/_posts/2024-05-28-datadog-oss-program.md b/en/news/_posts/2024-05-28-datadog-oss-program.md new file mode 100644 index 0000000000..eeba6cf928 --- /dev/null +++ b/en/news/_posts/2024-05-28-datadog-oss-program.md @@ -0,0 +1,28 @@ +--- +layout: news_post +title: "Datadog provides OSS community support for ruby-lang.org" +author: "hsbt" +translator: +date: 2024-05-28 00:00:00 +0000 +lang: en +--- + +We are excited to announce that Ruby's official website, ruby-lang.org, has adopted Datadog for monitoring by [Datadog OSS community support](https://opensource.datadoghq.com/projects/oss-program/). + +This allows us to effectively monitor the performance and availability of the site in real time for Ruby users. This key benefits of using Datadog include the following. + +## CDN Visibility + +cache.ruby-lang.org provided by Fastly is most important infrastructure of Ruby ecosystem. Datadog enables monitoring of Content Delivery Network (CDN) performance. It tracks cache coverage, error rate, enhancing user experiences. + +## Unified Data Visualization + +We have various web services for ruby-lang.org. Datadog allows to visualize log analytics data alongside metrics and application performance monitoring (APM) data in the same dashboards. + +## JIT Trace Visibility + +By utilizing Datadog’s tracing capabilities, we can capture traces as requests flow through web servers and databases. This helps identify bottlenecks and problematic requests. + +We published the [public dashboard](https://p.ap1.datadoghq.com/sb/1271b83e-af90-11ee-9072-da7ad0900009-01633a8fa8c0b0c0051f1889afdf55dc) of our key metrics. We will update the dashboard as we continue to improve our monitoring especially YJIT performance. + +We hope that this adoption of Datadog will contribute to improved site performance for the Ruby community. Please continue to use ruby-lang.org and enjoy an enhanced user experience. From 97d03f6dc6420f4193d04b56cb48fecdcbab3908 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 29 May 2024 17:25:09 +0900 Subject: [PATCH 275/607] Removed trailing white-space. --- en/news/_posts/2024-05-28-datadog-oss-program.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-05-28-datadog-oss-program.md b/en/news/_posts/2024-05-28-datadog-oss-program.md index eeba6cf928..e63bec523f 100644 --- a/en/news/_posts/2024-05-28-datadog-oss-program.md +++ b/en/news/_posts/2024-05-28-datadog-oss-program.md @@ -17,7 +17,7 @@ cache.ruby-lang.org provided by Fastly is most important infrastructure of Ruby ## Unified Data Visualization -We have various web services for ruby-lang.org. Datadog allows to visualize log analytics data alongside metrics and application performance monitoring (APM) data in the same dashboards. +We have various web services for ruby-lang.org. Datadog allows to visualize log analytics data alongside metrics and application performance monitoring (APM) data in the same dashboards. ## JIT Trace Visibility From 5ec77a92dea5706c755466a4bc7e8c3e9420809c Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 30 May 2024 12:05:41 +0900 Subject: [PATCH 276/607] Update publish date --- ...datadog-oss-program.md => 2024-05-30-datadog-oss-program.md} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename en/news/_posts/{2024-05-28-datadog-oss-program.md => 2024-05-30-datadog-oss-program.md} (98%) diff --git a/en/news/_posts/2024-05-28-datadog-oss-program.md b/en/news/_posts/2024-05-30-datadog-oss-program.md similarity index 98% rename from en/news/_posts/2024-05-28-datadog-oss-program.md rename to en/news/_posts/2024-05-30-datadog-oss-program.md index e63bec523f..2a809ec1c3 100644 --- a/en/news/_posts/2024-05-28-datadog-oss-program.md +++ b/en/news/_posts/2024-05-30-datadog-oss-program.md @@ -3,7 +3,7 @@ layout: news_post title: "Datadog provides OSS community support for ruby-lang.org" author: "hsbt" translator: -date: 2024-05-28 00:00:00 +0000 +date: 2024-05-30 00:00:00 +0000 lang: en --- From 2b7a933781abc9d440a812302ad02ba039efe628 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Wed, 29 May 2024 20:55:01 -0700 Subject: [PATCH 277/607] Release announcement for Ruby 3.3.2 --- _data/releases.yml | 24 +++++++++++ .../_posts/2024-05-30-ruby-3-3-2-released.md | 43 +++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 en/news/_posts/2024-05-30-ruby-3-3-2-released.md diff --git a/_data/releases.yml b/_data/releases.yml index 1ca82b7cd5..a887f29eae 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -52,6 +52,30 @@ # 3.3 series +- version: 3.3.2 + date: 2024-05-30 + post: /en/news/2024/05/30/ruby-3-3-2-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.2.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.2.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.2.tar.xz + size: + gz: 22095824 + zip: 26981906 + xz: 16349500 + sha1: + gz: b49719ef383c581008c1fd3b68690f874f78557b + zip: ee641ef4a0c5b9d12456c565d402841ae2ec5ab2 + xz: 5c9f7d5cf55d9e45b24c613014cbe2b605de009d + sha256: + gz: 3be1d100ebf2a0ce60c2cd8d22cd9db4d64b3e04a1943be2c4ff7b520f2bcb5b + zip: 06bf1aa3336afed66e2f89b0be3542c980fcdd76ffad0be284a860f25edea5b1 + xz: b5e8a8ed4a47cdd9a3358b5bdd998c37bd9e971ca63766a37d5ae5933fdb69f1 + sha512: + gz: a15ba8d6c2830fcd1f2b36f671acf9028c303ec78608fd268da0585db8e95ddd971666e8029bcfa2584da2184a6534e1f2f2da07fa7ca4494e8d842eed206f00 + zip: e2bbff1fbe5d9a892bd9c21fe9f10ea7b23f111f3876538bffea3d5451645e155f9ddc61345a44e409d44f83e190ffe30b9c90cd75905dc079cf8803f2f8ccdf + xz: 70dd8eb933956f894c52a8ede42e8ee74ff0e062bd8134a0bfb6bffc83a2848a658b62c8df5530b4dd64087b2d5373909c48917528facb1e6f4e99e79b6ad449 + - version: 3.3.1 date: 2024-04-23 post: /en/news/2024/04/23/ruby-3-3-1-released/ diff --git a/en/news/_posts/2024-05-30-ruby-3-3-2-released.md b/en/news/_posts/2024-05-30-ruby-3-3-2-released.md new file mode 100644 index 0000000000..e29a51f8a3 --- /dev/null +++ b/en/news/_posts/2024-05-30-ruby-3-3-2-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.2 Released" +author: "k0kubun" +translator: +date: 2024-05-30 03:50:00 +0000 +lang: en +--- + +Ruby 3.3.2 has been released. + +This release includes many bug-fixes. +See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_2) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.2" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 8c45227386e5ee509d1ef51c3a0f171822fbeafb Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 30 May 2024 16:12:00 +0800 Subject: [PATCH 278/607] Translate Ruby 3.3.2 Released (zh_tw) --- .../_posts/2024-05-30-ruby-3-3-2-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 zh_tw/news/_posts/2024-05-30-ruby-3-3-2-released.md diff --git a/zh_tw/news/_posts/2024-05-30-ruby-3-3-2-released.md b/zh_tw/news/_posts/2024-05-30-ruby-3-3-2-released.md new file mode 100644 index 0000000000..b461e283e0 --- /dev/null +++ b/zh_tw/news/_posts/2024-05-30-ruby-3-3-2-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.3.2 發布" +author: "k0kubun" +translator: "Bear Su" +date: 2024-05-30 03:50:00 +0000 +lang: zh_tw +--- + +Ruby 3.3.2 已經發布了。 + +本次發布版本包含許多問題修正。 +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_3_2)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.3.2" | first %} + +* <{{ 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 233935f2a6e66bc2572d5336a12fbfe62fd91e38 Mon Sep 17 00:00:00 2001 From: Yasuhiro Kimura Date: Fri, 17 May 2024 08:37:01 +0900 Subject: [PATCH 279/607] Update Japanese mirror to official URLs of Ring Server Currently URLs of backend servers are listed. And some of them fail to be connected. So replace them with official URLs of Ring Server. --- en/downloads/mirrors/index.md | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/en/downloads/mirrors/index.md b/en/downloads/mirrors/index.md index 612b3e2f75..49c4504557 100644 --- a/en/downloads/mirrors/index.md +++ b/en/downloads/mirrors/index.md @@ -15,10 +15,7 @@ Please try to use a mirror that is near you. ### Mirror sites via HTTP * [CDN][mirror-https-cdn] (fastly.com) -* Japan (RingServer) - * [shibaura-it.ac.jp][mirror-http-jp-ring-shibaura-it] - * [u-toyama.ac.jp][mirror-http-jp-ring-u-toyama] - * [airnet.ne.jp][mirror-http-jp-ring-airnet] +* [Japan][mirror-http-jp-ring] (RingServer) * [Holland][mirror-http-nl] (XS4ALL) - only release packages * [France][mirror-http-fr] (cyberbits.eu) * [China 2][mirror-http-cn2] (Ruby China) @@ -26,10 +23,7 @@ Please try to use a mirror that is near you. ### Mirror sites via FTP -* Japan (RingServer) - * [shibaura-it.ac.jp][mirror-ftp-jp-ring-shibaura-it] - * [u-toyama.ac.jp][mirror-ftp-jp-ring-u-toyama] - * [airnet.ne.jp][mirror-ftp-jp-ring-airnet] +* [Japan][mirror-ftp-jp-ring] (RingServer) * [Japan 3][mirror-ftp-jp3] (IIJ) * [South Korea][mirror-ftp-kr] (Korea FreeBSD Users Group) * [Germany][mirror-ftp-de] (FU Berlin) @@ -41,17 +35,12 @@ Please try to use a mirror that is near you. * [South Korea][mirror-rsync-kr] (Korea FreeBSD Users Group) [mirror-https-cdn]: https://cache.ruby-lang.org/pub/ruby/ -[mirror-http-jp-ring-shibaura-it]: http://ring.shibaura-it.ac.jp/archives/lang/ruby/ -[mirror-http-jp-ring-u-toyama]: http://ring.u-toyama.ac.jp/archives/lang/ruby/ -[mirror-http-jp-ring-airnet]: http://ring.airnet.ne.jp/archives/lang/ruby/ +[mirror-http-jp-ring]: http://www.ring.gr.jp/pub/lang/ruby/ [mirror-http-nl]: http://www.xs4all.nl/~hipster/lib/mirror/ruby/ [mirror-http-fr]: https://mirror.cyberbits.eu/ruby/ [mirror-http-cn2]: https://cache.ruby-china.com/pub/ruby/ [mirror-http-kr]: http://ftp.kr.freebsd.org/pub/ruby/ -[mirror-ftp-jp-ring-shibaura-it]: ftp://ring.shibaura-it.ac.jp/pub/lang/ruby/ -[mirror-ftp-jp-ring-u-toyama]: ftp://ring.u-toyama.ac.jp/pub/lang/ruby/ -[mirror-ftp-jp-ring-airnet]: ftp://ring.airnet.ne.jp/pub/lang/ruby/ -[mirror-ftp-jp-ring-maffin]: ftp://ring.maffin.ad.jp/pub/lang/ruby/ +[mirror-ftp-jp-ring]: ftp://ftp.ring.gr.jp/pub/lang/ruby/ [mirror-ftp-jp3]: ftp://ftp.iij.ad.jp/pub/lang/ruby/ [mirror-ftp-kr]: ftp://ftp.kr.freebsd.org/pub/ruby/ [mirror-ftp-de]: ftp://ftp.fu-berlin.de/unix/languages/ruby/ From 48d63287d6bff77b1797c416028a526687aa3818 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 30 May 2024 16:42:11 +0800 Subject: [PATCH 280/607] Translate Datadog provides OSS community support (zh_tw) --- .../_posts/2024-05-30-datadog-oss-program.md | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 zh_tw/news/_posts/2024-05-30-datadog-oss-program.md diff --git a/zh_tw/news/_posts/2024-05-30-datadog-oss-program.md b/zh_tw/news/_posts/2024-05-30-datadog-oss-program.md new file mode 100644 index 0000000000..57624957e6 --- /dev/null +++ b/zh_tw/news/_posts/2024-05-30-datadog-oss-program.md @@ -0,0 +1,28 @@ +--- +layout: news_post +title: "Datadog 為 ruby-lang.org 提供開源社群支援" +author: "hsbt" +translator: "Bear Su" +date: 2024-05-30 00:00:00 +0000 +lang: zh_tw +--- + +我們很高興宣佈 Ruby 官方網站 ruby-lang.org 透過 [Datadog 開源社群支援](https://opensource.datadoghq.com/projects/oss-program/) 建立了 Datadog 監控。 + +這使得我們能夠為 Ruby 使用者有效地即時監控網站的效能與可用性。使用 Datadog 的主要好處包含如下: + +## CDN 可見性 + +透過 Fastly 提供的 cache.ruby-lang.org 是 Ruby 生態系最重要的基礎建設。Datadog 可以監控 Content Delivery Network (CDN) 效能。追蹤快取覆蓋率、錯誤率,以增強使用者體驗。 + +## 統一資料視覺化 + +我們為 ruby-lang.org 建立了多種網路服務。Datadog 可以在相同的儀表板中視覺化日誌分析資料、監控指標和 application performance monitoring (APM) 資料。 + +## JIT Trace 可見性 + +借助 Datadog 的 tracing 功能,我們可以抓取請求執行過程中經過網頁伺服器與資料庫的 trace 資料。這有助於識別效能瓶頸和有問題的請求。 + +我們為主要監控指標發布了[公開儀表板](https://p.ap1.datadoghq.com/sb/1271b83e-af90-11ee-9072-da7ad0900009-01633a8fa8c0b0c0051f1889afdf55dc)。我們將會持續更新儀表板以改善監控,特別是 YJIT 效能。 + +我們希望採用 Datadog 將有助於提高 Ruby 社群的網站效能。請繼續使用 ruby​​-lang.org 並享受增強的用戶體驗。 From 42b8820567d59ebe61b9deb426d8dfabc73c72d6 Mon Sep 17 00:00:00 2001 From: 7riatsu Date: Sat, 1 Jun 2024 17:10:59 +0900 Subject: [PATCH 281/607] Translate Ruby 3.3.2 release (ja) --- .../_posts/2024-05-30-ruby-3-3-2-released.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 ja/news/_posts/2024-05-30-ruby-3-3-2-released.md diff --git a/ja/news/_posts/2024-05-30-ruby-3-3-2-released.md b/ja/news/_posts/2024-05-30-ruby-3-3-2-released.md new file mode 100644 index 0000000000..8eecfb0b86 --- /dev/null +++ b/ja/news/_posts/2024-05-30-ruby-3-3-2-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.2 リリース" +author: "k0kubun" +translator: 7riatsu +date: 2024-05-30 03:50:00 +0000 +lang: ja +--- + +Ruby 3.3.2 がリリースされました。 + +このリリースでは多くの不具合修正を行なっています。 +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_2) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.3.2" | first %} + +* <{{ 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 d7bb43f3997208c233faf65a71a926e9489f72e3 Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 1 Jun 2024 20:46:11 +0900 Subject: [PATCH 282/607] Translate "Ruby 3.3.2 Released" (ko) (#3269) * Copy from en * Translate "Ruby 3.3.2 Released" (ko) --- .../_posts/2024-05-30-ruby-3-3-2-released.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 ko/news/_posts/2024-05-30-ruby-3-3-2-released.md diff --git a/ko/news/_posts/2024-05-30-ruby-3-3-2-released.md b/ko/news/_posts/2024-05-30-ruby-3-3-2-released.md new file mode 100644 index 0000000000..aa4c590595 --- /dev/null +++ b/ko/news/_posts/2024-05-30-ruby-3-3-2-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.2 릴리스" +author: "k0kubun" +translator: "shia" +date: 2024-05-30 03:50:00 +0000 +lang: ko +--- + +Ruby 3.3.2가 릴리스되었습니다. + +이번 릴리스에는 많은 버그 수정이 포함되어 있습니다. +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_3_2)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.3.2" | first %} + +* <{{ 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 298a8538bb99b970fe47996ceb90697b8d259a8e Mon Sep 17 00:00:00 2001 From: Shia Date: Sun, 2 Jun 2024 11:52:09 +0900 Subject: [PATCH 283/607] Translate "Ruby 3.1.6 Released" (ko) (#3268) * Copy from en * Translate "Ruby 3.1.6 Released" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../_posts/2024-05-29-ruby-3-1-6-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ko/news/_posts/2024-05-29-ruby-3-1-6-released.md diff --git a/ko/news/_posts/2024-05-29-ruby-3-1-6-released.md b/ko/news/_posts/2024-05-29-ruby-3-1-6-released.md new file mode 100644 index 0000000000..d536320832 --- /dev/null +++ b/ko/news/_posts/2024-05-29-ruby-3-1-6-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.1.6 릴리스" +author: "hsbt" +translator: "shia" +date: 2024-05-29 9:00:00 +0000 +lang: ko +--- + +Ruby 3.1.6이 릴리스되었습니다. + +Ruby 3.1 버전대는 지금 보안 유지보수 단계입니다. 일반적으로 이 단계에서는 보안 문제만 수정합니다. 그러나 Ruby 3.1.5 릴리스 이후 빌드 실패 문제가 여럿 발생했습니다. 이 문제들을 해결하기 위해 Ruby 3.1.6을 릴리스하기로 결정했습니다. + +아래 항목에서 자세한 내용을 확인하세요. + +* [Bug #20151: FreeBSD 14.0에서 Ruby 3.1을 빌드할 수 없음](https://bugs.ruby-lang.org/issues/20151) +* [Bug #20451: 잘못된 Ruby 3.1.5 백포트로 fiddle 빌드에 실패함](https://bugs.ruby-lang.org/issues/20451) +* [Bug #20431: Ruby 3.3.0 빌드 실패 make: *** \[io_buffer.o\] Error 1](https://bugs.ruby-lang.org/issues/20431) + +자세한 사항은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_1_6)를 확인해 주세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.1.6" | first %} + +* <{{ 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 e197aa91941ec386b9a630380e42ff3644fbfdcc Mon Sep 17 00:00:00 2001 From: Shia Date: Sun, 2 Jun 2024 13:19:35 +0900 Subject: [PATCH 284/607] Translate "Datadog provides OSS community support for ruby-lang.org" (ko) (#3270) * Copy from en * Translate "Datadog provides OSS community support for ruby-lang.org" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../_posts/2024-05-30-datadog-oss-program.md | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 ko/news/_posts/2024-05-30-datadog-oss-program.md diff --git a/ko/news/_posts/2024-05-30-datadog-oss-program.md b/ko/news/_posts/2024-05-30-datadog-oss-program.md new file mode 100644 index 0000000000..f0277aefca --- /dev/null +++ b/ko/news/_posts/2024-05-30-datadog-oss-program.md @@ -0,0 +1,28 @@ +--- +layout: news_post +title: "Datadog가 ruby-lang.org의 OSS 커뮤니티 지원을 제공합니다" +author: "hsbt" +translator: "shia" +date: 2024-05-30 00:00:00 +0000 +lang: ko +--- + +우리는 Ruby의 공식 웹사이트인 ruby-lang.org가 모니터링을 위해 Datadog를 적용했다는 것을 알려드립니다. 이는 [Datadog OSS 커뮤니티 지원](https://opensource.datadoghq.com/projects/oss-program/)을 통해 이루어졌습니다. + +Datadog는 Ruby 사용자를 위해 실시간으로 사이트의 성능과 가용성을 효과적으로 모니터링할 수 있도록 도와줍니다. Datadog 사용의 주요 이점은 다음과 같습니다. + +## CDN 가시성 + +Fastly가 제공하는 cache.ruby-lang.org는 Ruby 생태계의 가장 중요한 인프라입니다. Datadog를 통해 콘텐츠 전송 네트워크(CDN) 성능을 모니터링할 수 있습니다. 캐시 커버리지, 오류율을 추적하여 사용자 경험을 향상시킵니다. + +## 통합된 데이터 시각화 + +ruby-lang.org에는 다양한 웹 서비스가 있습니다. Datadog는 로그 분석 데이터를 시각화할 때 메트릭 및 애플리케이션 성능 모니터링(APM) 데이터도 같은 대시보드에 함께 보여줄 수 있게 해줍니다. + +## JIT 추적 가시성 + +Datadog의 트레이싱 기능을 활용하여 웹 서버 및 데이터베이스를 통하는 요청의 흐름을 트레이스로 기록할 수 있습니다. 이를 통해 병목과 문제가 있는 요청을 확인할 수 있습니다. + +주요 메트릭의 [공개 대시보드](https://p.ap1.datadoghq.com/sb/1271b83e-af90-11ee-9072-da7ad0900009-01633a8fa8c0b0c0051f1889afdf55dc)를 게시했습니다. 모니터링, 특히 YJIT 성능을 개선하면서 대시보드를 계속 업데이트할 것입니다. + +Datadog 채택이 Ruby 커뮤니티의 사이트 성능 향상에 이바지하길 바랍니다. 계속해서 ruby-lang.org를 이용하고 향상된 사용자 경험을 즐기시기 바랍니다. From 5dd4bec139187c48828880bf9baf3b985ac15118 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jun 2024 15:36:03 +0000 Subject: [PATCH 285/607] Bump ruby/setup-ruby from 1.177.1 to 1.179.1 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.177.1 to 1.179.1. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/943103cae7d3f1bb1e4951d5fcc7928b40e4b742...78c01b705fd9d5ad960d432d3a0cfa341d50e410) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 01bc4fcc92..a248e2c03c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@943103cae7d3f1bb1e4951d5fcc7928b40e4b742 # v1.177.1 + uses: ruby/setup-ruby@78c01b705fd9d5ad960d432d3a0cfa341d50e410 # v1.179.1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index c64024414f..5cd3d3141b 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 - name: Setup Ruby - uses: ruby/setup-ruby@943103cae7d3f1bb1e4951d5fcc7928b40e4b742 # v1.177.1 + uses: ruby/setup-ruby@78c01b705fd9d5ad960d432d3a0cfa341d50e410 # v1.179.1 with: ruby-version: '3.2' bundler-cache: true From eb69b1e610f5b65d863fafd1ba748fca50fe3074 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Tue, 11 Jun 2024 17:37:04 -0700 Subject: [PATCH 286/607] Release announcement for Ruby 3.3.3 --- _data/downloads.yml | 2 +- _data/releases.yml | 24 +++++++++ .../_posts/2024-06-12-ruby-3-3-3-released.md | 53 +++++++++++++++++++ 3 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2024-06-12-ruby-3-3-3-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index 6298896bd9..997d212157 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -8,7 +8,7 @@ preview: stable: - - 3.3.1 + - 3.3.3 - 3.2.4 # optional diff --git a/_data/releases.yml b/_data/releases.yml index a887f29eae..c85fde0b54 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -52,6 +52,30 @@ # 3.3 series +- version: 3.3.3 + date: 2024-06-12 + post: /en/news/2024/06/12/ruby-3-3-3-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.3.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.3.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.3.tar.xz + size: + gz: 22105219 + zip: 26990910 + xz: 16361160 + sha1: + gz: b71971b141ee2325d99046a02291940fcca9830c + zip: 15a903003fba2fa5ae760263d6aa7b951747e545 + xz: 70cc5db132ea277487ede490e430e066a7c862d9 + sha256: + gz: 83c05b2177ee9c335b631b29b8c077b4770166d02fa527f3a9f6a40d13f3cce2 + zip: a9e4a6650cc40643b2b4a005541587443e373fbdec0c03164502f710cfd87a01 + xz: 83c0995388399c9555bad87e70af069755b5a9d84bbaa74aa22d1e37ff70fc1e + sha512: + gz: 0388a96127eb6e53b836f7954af51ff62b84cdb7abeab823cb1349993d805b151204e426b9ac04ca8333fbd5e01c386d58bc37d34c4e9286b219dcda7542a150 + zip: ed5ed5bc26598ba8c39eaae45147159d742e4792d4d8478b2db04bffe25b75b8bd4131a86c010bff91e0368f906bff04e852deab415fefd25cec39bc53f70020 + xz: 27dcae604e6613e1eaa20c6a75ee88b970bb0dd584d9bc0c021ad8da4340858e3c2e874ac841fcca0b0444a0c0146c4650d2d22bac3c9e12853533c37255f8f1 + - version: 3.3.2 date: 2024-05-30 post: /en/news/2024/05/30/ruby-3-3-2-released/ diff --git a/en/news/_posts/2024-06-12-ruby-3-3-3-released.md b/en/news/_posts/2024-06-12-ruby-3-3-3-released.md new file mode 100644 index 0000000000..0d7492fab4 --- /dev/null +++ b/en/news/_posts/2024-06-12-ruby-3-3-3-released.md @@ -0,0 +1,53 @@ +--- +layout: news_post +title: "Ruby 3.3.3 Released" +author: "k0kubun" +translator: +date: 2024-06-12 00:30:00 +0000 +lang: en +--- + +Ruby 3.3.3 has been released. + +This release includes: + +* RubyGems 3.5.11 +* Bundler 2.5.11 +* REXML 3.2.8 +* strscan 3.0.9 +* `--dump=prism_parsetree` is replaced by `--parser=prism --dump=parsetree` +* Invalid encoding symbols raise `SyntaxError` instead of `EncodingError` +* Memory leak fix in Ripper parsing +* Bugfixes for YJIT, `**{}`, `Ripper.tokenize`, `RubyVM::InstructionSequence#to_binary`, `--with-gmp`, and some build environments + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_3) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.3" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 87719aceacc1385f2385c044aeab42c0f7851b9a Mon Sep 17 00:00:00 2001 From: Bear Su Date: Wed, 12 Jun 2024 10:13:49 +0800 Subject: [PATCH 287/607] Translate Ruby 3.3.3 Released (zh_tw) --- .../_posts/2024-06-12-ruby-3-3-3-released.md | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 zh_tw/news/_posts/2024-06-12-ruby-3-3-3-released.md diff --git a/zh_tw/news/_posts/2024-06-12-ruby-3-3-3-released.md b/zh_tw/news/_posts/2024-06-12-ruby-3-3-3-released.md new file mode 100644 index 0000000000..77918ba8ee --- /dev/null +++ b/zh_tw/news/_posts/2024-06-12-ruby-3-3-3-released.md @@ -0,0 +1,52 @@ +--- +layout: news_post +title: "Ruby 3.3.3 發布" +author: "k0kubun" +translator: "Bear Su" +date: 2024-06-12 00:30:00 +0000 +lang: zh_tw +--- + +Ruby 3.3.3 已經發布了。 + +本次發布版本包含: + +* RubyGems 3.5.11 +* Bundler 2.5.11 +* REXML 3.2.8 +* strscan 3.0.9 +* `--dump=prism_parsetree` 已被 `--parser=prism --dump=parsetree` 取代 +* 不合法的 encoding symbols 會拋出 `SyntaxError` 而不是 `EncodingError` +* 修復 Ripper parsing 的 Memory leak +* 修復 YJIT, `**{}`、`Ripper.tokenize`、`RubyVM::InstructionSequence#to_binary`、`--with-gmp`、和一些建置環境中的錯誤 + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_3_3)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.3.3" | first %} + +* <{{ 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 6c818e43cd8cacf48f8c8001e524149470957534 Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 12 Jun 2024 17:33:59 +0900 Subject: [PATCH 288/607] Translate "Ruby 3.3.3 Released" (ko) (#3279) * cp {en,ko}/news/_posts/2024-06-12-ruby-3-3-3-released.md * Translate "Ruby 3.3.3 Released" (ko) --- .../_posts/2024-06-12-ruby-3-3-3-released.md | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 ko/news/_posts/2024-06-12-ruby-3-3-3-released.md diff --git a/ko/news/_posts/2024-06-12-ruby-3-3-3-released.md b/ko/news/_posts/2024-06-12-ruby-3-3-3-released.md new file mode 100644 index 0000000000..a06365931b --- /dev/null +++ b/ko/news/_posts/2024-06-12-ruby-3-3-3-released.md @@ -0,0 +1,54 @@ +--- +layout: news_post +title: "Ruby 3.3.3 릴리스" +author: "k0kubun" +translator: "shia" +date: 2024-06-12 00:30:00 +0000 +lang: ko +--- + +Ruby 3.3.3이 릴리스되었습니다. + +이번 릴리스는 아래 항목을 포함합니다. + +* RubyGems 3.5.11 +* Bundler 2.5.11 +* REXML 3.2.8 +* strscan 3.0.9 +* `--dump=prism_parsetree`는 `--parser=prism --dump=parsetree`로 대체되었습니다. +* Invalid encoding symbols raise `SyntaxError` instead of `EncodingError` +* 잘못된 인코딩 기호는 이제 `EncodingError` 대신 `SyntaxError`를 던집니다. +* Ripper 파싱 중의 메모리 누수 문제 수정 +* YJIT의 버그 수정, `**{}`, `Ripper.tokenize`, `RubyVM::InstructionSequence#to_binary`, `--with-gmp`, 여러 빌드 환경 수정 + +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_3_3)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.3.3" | first %} + +* <{{ 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 9629d0e48c5c90309a4292157e3bf165a3921928 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 16 May 2024 20:31:15 +0800 Subject: [PATCH 289/607] Translate CVE 2024 35176 (zh_tw) --- .../2024-05-16-dos-rexml-cve-2024-35176.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 zh_tw/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md diff --git a/zh_tw/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md b/zh_tw/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md new file mode 100644 index 0000000000..79c4133036 --- /dev/null +++ b/zh_tw/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-35176: DoS in REXML" +author: "kou" +translator: "Bear Su" +date: 2024-05-16 05:00:00 +0000 +tags: security +lang: zh_tw +--- + +在 REXML gem 發現了一個 DoS 漏洞。 +該漏洞的 CVE 編號為 [CVE-2024-35176](https://www.cve.org/CVERecord?id=CVE-2024-35176)。 +我們強烈建議您升級 REXML gem。 + +## 風險細節 + +當解析 attribute value 中包含許多 `<` 的 XML 文件時,REXML gem 可能會需要很長的處理時間。 + +請更新 REXML gem 至 3.2.7 或更新的版本。 + +## 受影響版本 + +* REXML gem 3.2.6 及更早版本 + +## 致謝 + +感謝 [mprogrammer](https://hackerone.com/mprogrammer) 發現此問題。 + +## 歷史 + +* 最初發佈於 2024-05-16 05:00:00 (UTC) From 5bee3604277c26d5f66514ba0bddb7432dad3294 Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 13 Jun 2024 20:21:21 +0900 Subject: [PATCH 290/607] Apply review after merge (#3282) https://github.com/ruby/www.ruby-lang.org/pull/3279#pullrequestreview-2113438987 --- ko/news/_posts/2024-06-12-ruby-3-3-3-released.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ko/news/_posts/2024-06-12-ruby-3-3-3-released.md b/ko/news/_posts/2024-06-12-ruby-3-3-3-released.md index a06365931b..ae48cb23a5 100644 --- a/ko/news/_posts/2024-06-12-ruby-3-3-3-released.md +++ b/ko/news/_posts/2024-06-12-ruby-3-3-3-released.md @@ -16,10 +16,9 @@ Ruby 3.3.3이 릴리스되었습니다. * REXML 3.2.8 * strscan 3.0.9 * `--dump=prism_parsetree`는 `--parser=prism --dump=parsetree`로 대체되었습니다. -* Invalid encoding symbols raise `SyntaxError` instead of `EncodingError` * 잘못된 인코딩 기호는 이제 `EncodingError` 대신 `SyntaxError`를 던집니다. * Ripper 파싱 중의 메모리 누수 문제 수정 -* YJIT의 버그 수정, `**{}`, `Ripper.tokenize`, `RubyVM::InstructionSequence#to_binary`, `--with-gmp`, 여러 빌드 환경 수정 +* YJIT, `**{}`, `Ripper.tokenize`, `RubyVM::InstructionSequence#to_binary`, `--with-gmp`, 몇몇 빌드 환경의 버그 수정 자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_3_3)를 참조하세요. From e6fe6ad64b04e19adc281db946a301ea87f93339 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Fri, 14 Jun 2024 13:08:51 +0900 Subject: [PATCH 291/607] Update latest version of Ruby 3.1 at download page. Fixed #3281 --- _data/downloads.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/downloads.yml b/_data/downloads.yml index 997d212157..16c5bf3784 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -14,7 +14,7 @@ stable: # optional security_maintenance: - - 3.1.5 + - 3.1.6 # optional eol: From 31a2acf4afab2b8ed1bf8d29aa6cfd115667c5d9 Mon Sep 17 00:00:00 2001 From: gaojun Date: Wed, 12 Jun 2024 21:24:07 +0800 Subject: [PATCH 292/607] Translate 3.3.3-realsed (zh_cn) --- .../_posts/2024-06-12-ruby-3-3-3-released.md | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 zh_cn/news/_posts/2024-06-12-ruby-3-3-3-released.md diff --git a/zh_cn/news/_posts/2024-06-12-ruby-3-3-3-released.md b/zh_cn/news/_posts/2024-06-12-ruby-3-3-3-released.md new file mode 100644 index 0000000000..8f79ba677f --- /dev/null +++ b/zh_cn/news/_posts/2024-06-12-ruby-3-3-3-released.md @@ -0,0 +1,53 @@ +--- +layout: news_post +title: "Ruby 3.3.3 已发布" +author: "k0kubun" +translator: "GAO Jun" +date: 2024-06-12 00:30:00 +0000 +lang: zh_cn +--- + +Ruby 3.3.3 已发布。 + +此版本包括: + +* RubyGems 3.5.11 +* Bundler 2.5.11 +* REXML 3.2.8 +* strscan 3.0.9 +* `--dump=prism_parsetree` 被替换为 `--parser=prism --dump=parsetree` +* 无效的编码将抛出 `SyntaxError`,取代原来的 `EncodingError` +* 修正 Ripper 解析中的内存溢出 +* YJIT 的问题修正,`**{}`,`Ripper.tokenize`,`RubyVM::InstructionSequence#to_binary`,`--with-gmp`,以及一些编译环境 + +您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_3_3) 获取进一步信息。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.3.3" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 6d0f87e133d202f2e459d333c7520a6f1ea8399b Mon Sep 17 00:00:00 2001 From: gaojun Date: Fri, 31 May 2024 16:51:21 +0800 Subject: [PATCH 293/607] Translate 3.1.6-released, 3.3.2-released, datadog-oss-program(zh_cn) --- .../_posts/2024-05-29-ruby-3-1-6-released.md | 51 +++++++++++++++++++ .../_posts/2024-05-30-datadog-oss-program.md | 28 ++++++++++ .../_posts/2024-05-30-ruby-3-3-2-released.md | 43 ++++++++++++++++ 3 files changed, 122 insertions(+) create mode 100644 zh_cn/news/_posts/2024-05-29-ruby-3-1-6-released.md create mode 100644 zh_cn/news/_posts/2024-05-30-datadog-oss-program.md create mode 100644 zh_cn/news/_posts/2024-05-30-ruby-3-3-2-released.md diff --git a/zh_cn/news/_posts/2024-05-29-ruby-3-1-6-released.md b/zh_cn/news/_posts/2024-05-29-ruby-3-1-6-released.md new file mode 100644 index 0000000000..b42e30a883 --- /dev/null +++ b/zh_cn/news/_posts/2024-05-29-ruby-3-1-6-released.md @@ -0,0 +1,51 @@ +--- +layout: news_post +title: "Ruby 3.1.6 已发布" +author: "hsbt" +translator: "GAO Jun" +date: 2024-05-29 9:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.1.6 已发布。 + +Ruby 3.1 目前处于安全维护状态。一般来说,在此期间我们只会修正安全问题。但在 Ruby 3.1.5 发布后,我们发现了一些编译失败的问题。 +因此,我们决定发布 Ruby 3.1.6 来修正这些问题。 + +您可以点击下面的链接来了解详情。 + +* [Bug #20151: Can't build Ruby 3.1 on FreeBSD 14.0](https://bugs.ruby-lang.org/issues/20151) +* [Bug #20451: Bad Ruby 3.1.5 backport causes fiddle to fail to build](https://bugs.ruby-lang.org/issues/20451) +* [Bug #20431: Ruby 3.3.0 build fail with make: *** \[io_buffer.o\] Error 1](https://bugs.ruby-lang.org/issues/20431) + +您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_1_6) 获取进一步信息。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.1.6" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 diff --git a/zh_cn/news/_posts/2024-05-30-datadog-oss-program.md b/zh_cn/news/_posts/2024-05-30-datadog-oss-program.md new file mode 100644 index 0000000000..d18dacfd66 --- /dev/null +++ b/zh_cn/news/_posts/2024-05-30-datadog-oss-program.md @@ -0,0 +1,28 @@ +--- +layout: news_post +title: "Datadog 为 ruby-lang.org 提供开源软件社区支持" +author: "hsbt" +translator: "GAO Jun" +date: 2024-05-30 00:00:00 +0000 +lang: zh_cn +--- + +我们很激动地宣布 Ruby 官方站点,ruby-lang.org,采用了 Datadog 的 [Datadog 开源软件社区支持](https://opensource.datadoghq.com/projects/oss-program/) 来进行运维监控。 + +这使我们能够有效地实时监控 Ruby 用户站点的性能和可用性。使用 Datadog 的好处包括以下几点: + +## CDN 可见性 + +由 Fastly 提供的 cache.ruby-lang.org 是 Ruby 生态系统中的重要一环。Datadog 能监控 CDN 的性能,跟踪缓存覆盖率和错误率,提升用户体验。 + +## 统一的数据可视化 + +ruby-lang.org 提供了多种 Web 服务。Datadog 能够在同一仪表板中可视化地呈现日志分析数据以及应用程序性能监控 (APM) 数据。 + +## JIT 跟踪可见性 + +通过 Datadog 的跟踪功能,我们可以在请求通过 Web 服务器和数据库时进行捕获并跟踪。这有助于识别瓶颈和有问题的请求。 + +我们发布了关键指标的 [公共仪表板](https://p.ap1.datadoghq.com/sb/1271b83e-af90-11ee-9072-da7ad0900009-01633a8fa8c0b0c0051f1889afdf55dc)。随着我们持续改进监控,尤其是 YJIT 性能,我们将相应地更新仪表板。 + +我们希望采用 Datadog 能有助于提高 Ruby 社区的站点性能。请继续使用 ruby-lang.org 来享受更好的用户体验。 diff --git a/zh_cn/news/_posts/2024-05-30-ruby-3-3-2-released.md b/zh_cn/news/_posts/2024-05-30-ruby-3-3-2-released.md new file mode 100644 index 0000000000..fec434fd75 --- /dev/null +++ b/zh_cn/news/_posts/2024-05-30-ruby-3-3-2-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.2 已发布" +author: "k0kubun" +translator: "GAO Jun" +date: 2024-05-30 03:50:00 +0000 +lang: zh_cn +--- + +Ruby 3.3.2 已发布. + +此版本包含了很多问题修正补丁。 +您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_3_2) 获取进一步信息。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.3.2" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 17d8741802f10544b4211d8d45343220dd79a884 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 17 Jun 2024 12:19:48 +0900 Subject: [PATCH 294/607] Update dependencies and fix for Ruby 3.4+ --- Gemfile | 4 ++++ Gemfile.lock | 54 ++++++++++++++++++++++------------------------------ 2 files changed, 27 insertions(+), 31 deletions(-) diff --git a/Gemfile b/Gemfile index bfed5db29b..b902f08e2e 100644 --- a/Gemfile +++ b/Gemfile @@ -9,3 +9,7 @@ group :development do gem "html-proofer" gem "validate-website", "~> 1.6" end + +# Jekyll need them for Ruby 3.4+ +gem "csv" +gem "base64" diff --git a/Gemfile.lock b/Gemfile.lock index c8f6cee33c..8db2dee8b0 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -5,38 +5,33 @@ GEM addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) afm (0.2.2) - async (2.11.0) + async (2.12.0) console (~> 1.25, >= 1.25.2) fiber-annotation - io-event (~> 1.5, >= 1.5.1) - timers (~> 4.1) + io-event (~> 1.6) + base64 (0.2.0) bigdecimal (3.1.8) colorator (1.1.0) - concurrent-ruby (1.2.3) + concurrent-ruby (1.3.3) console (1.25.2) fiber-annotation fiber-local (~> 1.1) json crass (1.0.6) + csv (3.3.0) em-websocket (0.5.3) eventmachine (>= 0.12.9) http_parser.rb (~> 0) ethon (0.16.0) ffi (>= 1.15.0) eventmachine (1.2.7) - ffi (1.16.3) + ffi (1.17.0) fiber-annotation (0.2.0) fiber-local (1.1.0) fiber-storage - fiber-storage (0.1.1) + fiber-storage (0.1.2) forwardable-extended (2.6.0) - google-protobuf (4.27.0) - bigdecimal - rake (>= 13) - google-protobuf (4.27.0-arm64-darwin) - bigdecimal - rake (>= 13) - google-protobuf (4.27.0-x86_64-linux) + google-protobuf (4.27.1) bigdecimal rake (>= 13) hashery (2.1.2) @@ -52,7 +47,7 @@ GEM http_parser.rb (0.8.0) i18n (1.14.5) concurrent-ruby (~> 1.0) - io-event (1.5.1) + io-event (1.6.4) jekyll (4.3.3) addressable (~> 2.4) colorator (~> 1.0) @@ -83,15 +78,11 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) - mini_portile2 (2.8.6) + mini_portile2 (2.8.7) minitest (5.23.1) - nokogiri (1.16.5) + nokogiri (1.16.6) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.16.5-arm64-darwin) - racc (~> 1.4) - nokogiri (1.16.5-x86_64-linux) - racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) forwardable-extended (~> 2.6) @@ -101,34 +92,33 @@ GEM hashery (~> 2.0) ruby-rc4 ttfunk - public_suffix (5.0.5) + public_suffix (5.1.0) racc (1.8.0) rainbow (3.1.1) rake (13.2.1) rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rexml (3.2.8) - strscan (>= 3.0.9) - rouge (4.2.1) + rexml (3.3.0) + strscan + rouge (4.3.0) ruby-rc4 (0.1.5) safe_yaml (1.0.5) - sass-embedded (1.77.2) + sass-embedded (1.77.5) google-protobuf (>= 3.25, < 5.0) - rake (>= 13.0.0) - sass-embedded (1.77.2-arm64-darwin) + rake (>= 13) + sass-embedded (1.77.5-arm64-darwin) google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.2-x86_64-linux-gnu) + sass-embedded (1.77.5-x86_64-linux-gnu) google-protobuf (>= 3.25, < 5.0) slop (4.10.1) spidr (0.7.1) nokogiri (~> 1.3) - strscan (3.1.0) + strscan (3.1.1) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) tidy_ffi (1.0.1) ffi (~> 1.2) - timers (4.3.5) ttfunk (1.8.0) bigdecimal (~> 3.1) typhoeus (1.4.1) @@ -149,7 +139,7 @@ GEM rexml (~> 3.2) webrick (1.8.1) yell (2.2.2) - zeitwerk (2.6.15) + zeitwerk (2.6.16) PLATFORMS arm64-darwin-22 @@ -157,6 +147,8 @@ PLATFORMS x86_64-linux DEPENDENCIES + base64 + csv html-proofer jekyll minitest From c4611e74cd5085bdb669d81d082333066a0ec091 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 17 Jun 2024 12:22:44 +0900 Subject: [PATCH 295/607] Fix platforms and pre-released version of strscan --- Gemfile.lock | 78 +++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 68 insertions(+), 10 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 8db2dee8b0..00e803984e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -25,7 +25,16 @@ GEM ethon (0.16.0) ffi (>= 1.15.0) eventmachine (1.2.7) - ffi (1.17.0) + ffi (1.17.0-aarch64-linux-gnu) + ffi (1.17.0-aarch64-linux-musl) + ffi (1.17.0-arm-linux-gnu) + ffi (1.17.0-arm-linux-musl) + ffi (1.17.0-arm64-darwin) + ffi (1.17.0-x86-linux-gnu) + ffi (1.17.0-x86-linux-musl) + ffi (1.17.0-x86_64-darwin) + ffi (1.17.0-x86_64-linux-gnu) + ffi (1.17.0-x86_64-linux-musl) fiber-annotation (0.2.0) fiber-local (1.1.0) fiber-storage @@ -34,6 +43,21 @@ GEM google-protobuf (4.27.1) bigdecimal rake (>= 13) + google-protobuf (4.27.1-aarch64-linux) + bigdecimal + rake (>= 13) + google-protobuf (4.27.1-arm64-darwin) + bigdecimal + rake (>= 13) + google-protobuf (4.27.1-x86-linux) + bigdecimal + rake (>= 13) + google-protobuf (4.27.1-x86_64-darwin) + bigdecimal + rake (>= 13) + google-protobuf (4.27.1-x86_64-linux) + bigdecimal + rake (>= 13) hashery (2.1.2) html-proofer (5.0.9) addressable (~> 2.3) @@ -78,10 +102,18 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) - mini_portile2 (2.8.7) minitest (5.23.1) - nokogiri (1.16.6) - mini_portile2 (~> 2.8.2) + nokogiri (1.16.6-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.6-arm-linux) + racc (~> 1.4) + nokogiri (1.16.6-arm64-darwin) + racc (~> 1.4) + nokogiri (1.16.6-x86-linux) + racc (~> 1.4) + nokogiri (1.16.6-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.16.6-x86_64-linux) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) @@ -104,17 +136,30 @@ GEM rouge (4.3.0) ruby-rc4 (0.1.5) safe_yaml (1.0.5) - sass-embedded (1.77.5) + sass-embedded (1.77.5-aarch64-linux-gnu) + google-protobuf (>= 3.25, < 5.0) + sass-embedded (1.77.5-aarch64-linux-musl) + google-protobuf (>= 3.25, < 5.0) + sass-embedded (1.77.5-arm-linux-gnueabihf) + google-protobuf (>= 3.25, < 5.0) + sass-embedded (1.77.5-arm-linux-musleabihf) google-protobuf (>= 3.25, < 5.0) - rake (>= 13) sass-embedded (1.77.5-arm64-darwin) google-protobuf (>= 3.25, < 5.0) + sass-embedded (1.77.5-x86-linux-gnu) + google-protobuf (>= 3.25, < 5.0) + sass-embedded (1.77.5-x86-linux-musl) + google-protobuf (>= 3.25, < 5.0) + sass-embedded (1.77.5-x86_64-darwin) + google-protobuf (>= 3.25, < 5.0) sass-embedded (1.77.5-x86_64-linux-gnu) google-protobuf (>= 3.25, < 5.0) + sass-embedded (1.77.5-x86_64-linux-musl) + google-protobuf (>= 3.25, < 5.0) slop (4.10.1) spidr (0.7.1) nokogiri (~> 1.3) - strscan (3.1.1) + strscan (3.1.0) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) tidy_ffi (1.0.1) @@ -142,9 +187,22 @@ GEM zeitwerk (2.6.16) PLATFORMS - arm64-darwin-22 - ruby + aarch64-linux + aarch64-linux-gnu + aarch64-linux-musl + arm-linux + arm-linux-gnu + arm-linux-gnueabihf + arm-linux-musl + arm-linux-musleabihf + arm64-darwin + x86-linux + x86-linux-gnu + x86-linux-musl + x86_64-darwin x86_64-linux + x86_64-linux-gnu + x86_64-linux-musl DEPENDENCIES base64 @@ -157,4 +215,4 @@ DEPENDENCIES validate-website (~> 1.6) BUNDLED WITH - 2.4.14 + 2.5.13 From 15b8197d70268315100aad8e9d2f3fde1f93aacc Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 17 Jun 2024 12:13:32 +0900 Subject: [PATCH 296/607] Added 1password logo for sponsored program --- en/about/website/index.md | 5 +++++ images/sponsor/1password.png | Bin 0 -> 15892 bytes 2 files changed, 5 insertions(+) create mode 100644 images/sponsor/1password.png diff --git a/en/about/website/index.md b/en/about/website/index.md index a510904806..d1698ea844 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -68,6 +68,10 @@ Also many thanks to the organizations that support us: Datadog +[1password](https://1password.com/) (password manager) + +1password + [logo]: /en/about/logo/ [webmaster]: mailto:webmaster@ruby-lang.org [jekyll]: http://www.jekyllrb.com/ @@ -85,3 +89,4 @@ Also many thanks to the organizations that support us: [rubynokai]: http://ruby-no-kai.org/ [aws]: https://aws.amazon.com/ [datadog]: https://www.datadoghq.com/ +[1password]: https://1password.com/ diff --git a/images/sponsor/1password.png b/images/sponsor/1password.png new file mode 100644 index 0000000000000000000000000000000000000000..aa55858738a7ea3bb15ccc7be10f2badc03cde9f GIT binary patch literal 15892 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 Date: Sun, 16 Jun 2024 22:41:10 -0700 Subject: [PATCH 297/607] Update Conferences Page (#3275) * Update Conferences Page - Remove out-of-date information - Remove regional conferences which are no longer up-to-date in favor of a link to rubyconferences.org * Remove trailing whitespace --- en/community/conferences/index.md | 54 +++---------------------------- 1 file changed, 4 insertions(+), 50 deletions(-) diff --git a/en/community/conferences/index.md b/en/community/conferences/index.md index 7ed2abce1f..490e91b588 100644 --- a/en/community/conferences/index.md +++ b/en/community/conferences/index.md @@ -18,13 +18,8 @@ event dates, location, CFP (Call For Proposals) and Registration information. [RubyConf][1] : Every year since 2001, [Ruby Central, Inc.][2] has produced RubyConf, - the International Ruby conference. Attendance grew by a factor of ten - between 2001 and 2006. RubyConf has provided a forum for presentations - about Ruby technologies by their creators, including talks by - Nathaniel Talbot on Test Unit, Jim Weirich on Rake, David Heinemeier - Hansson on Ruby on Rails, Why the Lucky Stiff on the YAML library, and - Sasada Koichi on YARV. Matz has attended, and spoken at, all the - RubyConfs but one. + the International Ruby conference. RubyConf has provided a forum for presentations + about Ruby technologies by their creators [RubyKaigi][3] : The first Japanese Ruby conference, RubyKaigi 2006, took place in @@ -39,52 +34,11 @@ event dates, location, CFP (Call For Proposals) and Registration information. ### Regional Ruby Conferences -[Ruby Central][2] administers a [Regional Conference Grant Program][6], -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 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 -community since 2008. - -[Steel City Ruby][16]: Pittsburg, PA - -[GoRuCo][19]: New York City's annual Ruby conference. A one-day single-track conference. - -[DeccanRubyConf][20]: Pune's (India) annual Ruby conference, -themed around fun activities filled around the day. -It is a single-day single-track conference. - -[Southeast Ruby][21]: Nashville, TN workshop and conference. - -### Ruby At Other Conferences - -There has been a Ruby track at the [O’Reilly Open Source Conference][10] -(OSCON) since 2004, and an increasing presence on the part of Ruby and -Rubyists at other non-Ruby-specific gatherings. A number of conferences -have also been devoted to [Ruby on Rails][11], including Ruby Central’s -[RailsConf][12], RailsConf Europe (co-produced in 2006 by Ruby -Central and [Skills Matter][14], and in 2007 by Ruby Central and -O’Reilly), and Canada on Rails. - +An updated list of Regional Ruby Conferences is available at [RubyConferences.org][rc]. +You can also find the GitHub repository link there to add or update information yourself. [rc]: http://rubyconferences.org/ [1]: http://rubyconf.org/ -[2]: http://rubycentral.org [3]: http://rubykaigi.org/ [4]: http://euruko.org -[6]: https://rubycentral.org/grants -[9]: http://windycityrails.org -[10]: http://conferences.oreillynet.com/os2006/ -[11]: http://www.rubyonrails.org -[12]: http://www.railsconf.org -[14]: http://www.skillsmatter.com -[16]: http://steelcityruby.org/ -[19]: http://goruco.com/ -[20]: http://www.deccanrubyconf.org/ -[21]: https://southeastruby.com/ From 59d40f028a9489c750d5c720b93191ace8eaff2c Mon Sep 17 00:00:00 2001 From: Shia Date: Mon, 17 Jun 2024 22:22:21 +0900 Subject: [PATCH 298/607] Update Conferences Page (ko) (#3288) * Update Conferences Page (ko) * Update ko/community/conferences/index.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ko/community/conferences/index.md | 27 ++++----------------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/ko/community/conferences/index.md b/ko/community/conferences/index.md index 7f5e1fd5df..07b34faaad 100644 --- a/ko/community/conferences/index.md +++ b/ko/community/conferences/index.md @@ -16,12 +16,8 @@ Ruby에 대한 콘퍼런스 목록입니다. 이곳에서는 행사일, 장소, [RubyConf][1] : 2001부터 매년, [Ruby Central, Inc.][2]에서 국제적인 Ruby 콘퍼런스인 - RubyConf를 개최합니다. 참가자 수는 2001년에서 2006년까지 10배 정도 - 증가했습니다. RubyConf에서는 제작자가 직접 자신의 테크놀로지를 설명하고 - 있습니다. 여기에는 Nathaniel Talbot의 Test Unit, Jim Weirich의 Rake, - David Heinemeier Hansson의 Ruby on Rails, Why the Lucky Stiff의 YAML - 라이브러리, Sasada Koichi의 YARV 등이 있었습니다. Matz도 한번을 - 제외한 전 RubyConf에 참가하고 강연했습니다. + RubyConf를 개최합니다. RubyConf에서는 제작자가 직접 자신의 테크놀로지를 설명하고 + 있습니다. [RubyKaigi][3] : 오다이바에서 개최된 RubyKaigi 2006은 최초의 일본 Ruby 콘퍼런스였습니다. @@ -37,26 +33,11 @@ Ruby에 대한 콘퍼런스 목록입니다. 이곳에서는 행사일, 장소, 한국에서는 아직 정기적인 Ruby 콘퍼런스는 개최되고 있지 않습니다. -### 다른 콘퍼런스에서의 Ruby - -2004년부터 [오라일리 오픈소스 콘퍼런스][10](OSCON)에 Ruby 트랙이 생겼고 매년 -다른 언어의 트랙에 비해 비중이 증가하는 추세입니다. Ruby Central의 -[RailsConf][12], RailsConf Europe (2006년엔 Ruby Central과 -[Skills Matter][14]에 의해 2007년엔 Ruby Central과 오라일리에 의해 공동기획), -Canada on Rails 등등의 많은 콘퍼런스들은 [Ruby on Rails][11]의 헌신 덕분에 -가능했습니다. - - -한국에서는 [대안언어축제](http://www.pnakorea.org/)에서 Ruby를 다루고 있습니다. +[RubyConferences.org][rc]에서는 지역 Ruby 콘퍼런스의 최신 목록을 확인할 수 있습니다. +정보를 추가하거나 업데이트하려면 해당 페이지에서 GitHub 저장소 링크를 찾아볼 수 있습니다. [rc]: http://rubyconferences.org/ [1]: http://rubyconf.org/ -[2]: http://rubycentral.org [3]: http://rubykaigi.org/ [4]: http://euruko.org -[5]: http://www.osdc.com.au/ -[10]: http://conferences.oreillynet.com/os2006/ -[11]: http://www.rubyonrails.org -[12]: http://www.railsconf.org -[14]: http://www.skillsmatter.com From 62552d879ab52e08397e67446f6ee18088ba7e64 Mon Sep 17 00:00:00 2001 From: Shia Date: Mon, 17 Jun 2024 22:22:35 +0900 Subject: [PATCH 299/607] Added 1password logo for sponsored program (ko) (#3287) * Added 1password logo for sponsored program (ko) * Update ko/about/website/index.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ko/about/website/index.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ko/about/website/index.md b/ko/about/website/index.md index 7fef1a9446..ba1dd53401 100644 --- a/ko/about/website/index.md +++ b/ko/about/website/index.md @@ -70,6 +70,10 @@ lang: ko Datadog +[1password](https://1password.com/) (비밀번호 관리자) + +1password + [logo]: /ko/about/logo/ [webmaster]: mailto:webmaster@ruby-lang.org [jekyll]: http://www.jekyllrb.com/ @@ -87,3 +91,4 @@ lang: ko [rubynokai]: http://ruby-no-kai.org/ [aws]: https://aws.amazon.com/ [datadog]: https://www.datadoghq.com/ +[1password]: https://1password.com/ From 2c0ef11d3495b4af3103a13930d284a91c50b426 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Mon, 17 Jun 2024 22:13:24 +0800 Subject: [PATCH 300/607] Update sponsored program (zh_tw) --- zh_tw/about/website/index.md | 47 +++++++++++++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/zh_tw/about/website/index.md b/zh_tw/about/website/index.md index d72cc7c1fe..18cc17e401 100644 --- a/zh_tw/about/website/index.md +++ b/zh_tw/about/website/index.md @@ -31,11 +31,43 @@ lang: zh_tw 此外感謝下列機構提供支持: - * [Ruby Association][rubyassociation] (網站托管) - * [AWS][aws] (網站托管) - * [Heroku][heroku] (網站托管) - * [Fastly][fastly] (CDN) +[Ruby Association][rubyassociation] (網站托管) +Ruby Association + +[Ruby no Kai][rubynokai] (建置伺服器) + +Ruby no Kai + +[AWS][aws] (網站托管) + +AWS + +[Heroku][heroku] (網站托管) + +Heroku + +[Works on Arm][works-on-arm] (網站托管) + +Works on Arm + +[IBM][ibm] (網站托管) + +[Fastly][fastly] (CDN) + +Fastly + +[Hatena][hatena] ([Mackerel][mackerel], 伺服器監控) + +mackerel + +[Datadog][datadog] (伺服器監控) + +Datadog + +[1password](https://1password.com/) (密碼管理器) + +1password [logo]: /zh_tw/about/logo/ [webmaster]: mailto:webmaster@ruby-lang.org @@ -46,5 +78,12 @@ lang: zh_tw [github-wiki]: https://github.com/ruby/www.ruby-lang.org/wiki [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ +[works-on-arm]: https://www.arm.com/markets/computing-infrastructure/works-on-arm +[ibm]: https://www.ibm.com [fastly]: http://www.fastly.com +[hatena]: http://hatenacorp.jp/ +[mackerel]: https://mackerel.io/ +[rubynokai]: http://ruby-no-kai.org/ [aws]: https://aws.amazon.com/ +[datadog]: https://www.datadoghq.com/ +[1password]: https://1password.com/ From 2a60b43b8fee59ade8b221c9205d38b6eea407cc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jun 2024 15:47:14 +0000 Subject: [PATCH 301/607] Bump actions/checkout from 4.1.6 to 4.1.7 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.6 to 4.1.7. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/a5ac7e51b41094c92402da3b24376905380afc29...692973e3d937129bcbf40652eb9f2f61becf3332) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a248e2c03c..4dd22eb280 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - name: Dump environment run: env | sort - name: Checkout ruby/www.ruby-lang.org - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 with: fetch-depth: 1 - name: Setup Ruby diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 5cd3d3141b..c83b848978 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Ruby uses: ruby/setup-ruby@78c01b705fd9d5ad960d432d3a0cfa341d50e410 # v1.179.1 with: From 3ce2c927a325eea104edd3252791ebcb5bbbcf62 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jun 2024 15:47:10 +0000 Subject: [PATCH 302/607] Bump ruby/setup-ruby from 1.179.1 to 1.180.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.179.1 to 1.180.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/78c01b705fd9d5ad960d432d3a0cfa341d50e410...ff740bc00a01b3a50fffc55a1071b1060eeae9dc) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4dd22eb280..de0400acb0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@78c01b705fd9d5ad960d432d3a0cfa341d50e410 # v1.179.1 + uses: ruby/setup-ruby@ff740bc00a01b3a50fffc55a1071b1060eeae9dc # v1.180.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index c83b848978..24c828c83e 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Ruby - uses: ruby/setup-ruby@78c01b705fd9d5ad960d432d3a0cfa341d50e410 # v1.179.1 + uses: ruby/setup-ruby@ff740bc00a01b3a50fffc55a1071b1060eeae9dc # v1.180.0 with: ruby-version: '3.2' bundler-cache: true From 38c4a74f32190fc4340e3a93b2f37ad70e587c2b Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 18 Jun 2024 21:51:53 +0900 Subject: [PATCH 303/607] Fix correct name for 1Password --- en/about/website/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/about/website/index.md b/en/about/website/index.md index d1698ea844..93f6be221b 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -68,7 +68,7 @@ Also many thanks to the organizations that support us: Datadog -[1password](https://1password.com/) (password manager) +[1Password](1password) (password manager) 1password From 88ad266088656c9bd8f4f5a7711ec2f4830f151b Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 18 Jun 2024 21:58:24 +0900 Subject: [PATCH 304/607] Fix typo --- en/about/website/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/about/website/index.md b/en/about/website/index.md index 93f6be221b..759fbc6b63 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -68,7 +68,7 @@ Also many thanks to the organizations that support us: Datadog -[1Password](1password) (password manager) +[1Password][1password] (password manager) 1password From 0f4120864f74344b404ad2fd9a0aff3ea8fca173 Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Tue, 18 Jun 2024 21:58:35 +0900 Subject: [PATCH 305/607] Fix name for 1Password (ko) --- ko/about/website/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ko/about/website/index.md b/ko/about/website/index.md index ba1dd53401..cb7cb6e456 100644 --- a/ko/about/website/index.md +++ b/ko/about/website/index.md @@ -70,7 +70,7 @@ lang: ko Datadog -[1password](https://1password.com/) (비밀번호 관리자) +[1Password][1password] (비밀번호 관리자) 1password From de56a057b37336d1ed71f504a9dbc8df006ba0db Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 18 Jun 2024 21:33:19 +0800 Subject: [PATCH 306/607] Fix correct name for 1Password (zh_tw) --- zh_tw/about/website/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zh_tw/about/website/index.md b/zh_tw/about/website/index.md index 18cc17e401..9960655094 100644 --- a/zh_tw/about/website/index.md +++ b/zh_tw/about/website/index.md @@ -65,7 +65,7 @@ lang: zh_tw Datadog -[1password](https://1password.com/) (密碼管理器) +[1Password][1password] (密碼管理器) 1password From 04a2157a8e534c5f76f8d151367a25f4af4040a3 Mon Sep 17 00:00:00 2001 From: Adarsh Pandit Date: Tue, 18 Jun 2024 12:26:41 -0700 Subject: [PATCH 307/607] Update Ruby Meetup Information (#3276) --- en/community/user-groups/index.md | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/en/community/user-groups/index.md b/en/community/user-groups/index.md index 329202a956..bd8a0f8b8a 100644 --- a/en/community/user-groups/index.md +++ b/en/community/user-groups/index.md @@ -8,8 +8,7 @@ In the programming community, user groups form support networks for people interested in certain topics. They are a great place to increase your skills and network with other programmers. User groups are informal and their structure varies from group to group. Anyone can form their -own group and set their own rules and schedule. -{: .summary} +own group and set their own rules and schedule{: .summary} ### Ruby User Groups @@ -21,26 +20,28 @@ to giving people a chance to write Ruby code). Information about Ruby user groups can be found on various websites: -[Ruby Meetup Groups][meetup] -: A substantial number of Ruby User Groups have chosen to make Meetup +- [Ruby Meetup Groups on meetup.com][meetup]. A substantial number + of Ruby User Groups have chosen to make Meetup their home. Meetup provides a number of tools for user groups, including: private forums, a place for announcements, automated meeting reminders, and a nice RSVP system. - -[OnRuby][onruby] -: A number of user groups can also be found at OnRuby. OnRuby is an +- [rubyconferences.org/meetups][rc-meetups] now has a list of Ruby Meetup events + from around the world. +- There is a [Google Group][meetups-google-group] for Ruby Meetup Organizers +- [OnRuby][onruby] - A number of user groups can also be found at OnRuby. OnRuby is an open source platform written in Ruby that can be used to organize meetups. It is [available on GitHub][onruby-github]. ### Organizing Your Own Group If you are interested in forming your own group, be sure to find out if -there is already a Ruby user group in your area. Larger meetings are -usually much more fun, so starting your own group may not be the best -option if there is already one nearby. +there is already a Ruby user group in your area. Try the meetup organizers +group if you're looking for advice on how to start your own group. [meetup]: https://www.meetup.com/topics/ruby/ [onruby]: https://www.onruby.eu/ [onruby-github]: https://github.com/phoet/on_ruby +[rc-meetups]: https://rubyconferences.org/meetups/ +[meetups-google-group]: https://groups.google.com/g/ruby-meetups From f36c6dea7ba134414b1497733da5a8d7f1e91078 Mon Sep 17 00:00:00 2001 From: Adarsh Pandit Date: Tue, 18 Jun 2024 19:09:26 -0700 Subject: [PATCH 308/607] Fix summary tag error --- en/community/user-groups/index.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/en/community/user-groups/index.md b/en/community/user-groups/index.md index bd8a0f8b8a..9dfd9762cd 100644 --- a/en/community/user-groups/index.md +++ b/en/community/user-groups/index.md @@ -8,7 +8,8 @@ In the programming community, user groups form support networks for people interested in certain topics. They are a great place to increase your skills and network with other programmers. User groups are informal and their structure varies from group to group. Anyone can form their -own group and set their own rules and schedule{: .summary} +own group and set their own rules and schedule +{: .summary} ### Ruby User Groups From e202c35fc7d35e4390508e747dadb4cb11b30783 Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 20 Jun 2024 14:09:21 +0900 Subject: [PATCH 309/607] Translate "Update Ruby Meepup Information" (ko) (#3296) * Translate "Update Ruby Meepup Information" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You * Update ko/community/user-groups/index.md --------- Co-authored-by: Chayoung You --- ko/community/user-groups/index.md | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/ko/community/user-groups/index.md b/ko/community/user-groups/index.md index db501dcd5e..ab15f4249d 100644 --- a/ko/community/user-groups/index.md +++ b/ko/community/user-groups/index.md @@ -19,24 +19,25 @@ Ruby 유저 그룹은 전적으로 Ruby에만 전념합니다. 일반적으로 Ruby 유저 그룹에 관한 정보는 여러 웹 사이트에서 얻을 수 있습니다. -[Ruby Meetup Groups][meetup] -: Ruby 유저 그룹의 상당수는 Meetup 사이트를 홈페이지로 합니다. Meetup은 -유저 그룹을 위한 몇 가지 툴을 제공하고 있습니다. 비공개 포럼, 공지를 위한 장소, -자동 리마인더, 훌륭한 RSVP(참석여부 체크) 시스템 등등이 그것이죠. - -[OnRuby][2] -: OnRuby에서도 유저 그룹을 발견할 수 있습니다. OnRuby는 Ruby로 작성한 오픈 소스 - 플랫폼으로, 미트업을 만드는 데 사용할 수 있습니다. 소스는 [GitHub][3]에서 볼 - 수 있습니다. +- [Ruby Meetup Groups on meetup.com][meetup]. Ruby 유저 그룹의 상당수는 + Meetup 사이트를 홈페이지로 삼습니다. Meetup은 유저 그룹을 위한 몇 가지 툴을 + 제공하고 있습니다. 비공개 포럼, 공지를 위한 장소, 자동 리마인더, 훌륭한 + RSVP(참석여부 체크) 시스템 등이 그것이죠. +- [rubyconferences.org/meetups][rc-meetups]는 전 세계의 Ruby 미트업 이벤트 일람을 + 제공합니다. +- Ruby 미트업 주최자들이 모이는 [Google 그룹][meetups-google-group]이 있습니다. +- [OnRuby][onruby] - OnRuby에서도 유저 그룹을 발견할 수 있습니다. OnRuby는 + Ruby로 작성한 오픈 소스 플랫폼으로, 미트업을 만드는 데 사용할 수 있습니다. + 소스는 [GitHub][onruby-github]에서 볼 수 있습니다. ### 직접 그룹을 만들기 직접 그룹을 만들기 원하시면 지역에 Ruby 그룹이 있는지를 먼저 확인하셔야 합니다. -큰 그룹이 보통 더 유익하고 재미있으므로, 그 지역에 다른 Ruby 그룹이있다면 새로 -만드는 것은 최고의 선택은 아닐 것입니다. - - +자신의 그룹을 시작하는 방법에 대한 조언을 구하고 싶다면, +미트업 주최자 그룹을 방문해보세요. [meetup]: https://www.meetup.com/topics/ruby/ -[2]: https://www.onruby.eu/ -[3]: https://github.com/phoet/on_ruby +[onruby]: https://www.onruby.eu/ +[onruby-github]: https://github.com/phoet/on_ruby +[rc-meetups]: https://rubyconferences.org/meetups/ +[meetups-google-group]: https://groups.google.com/g/ruby-meetups From c7dffd8ce8364a936dbc9928f1f2b707a4312797 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Jun 2024 15:09:37 +0000 Subject: [PATCH 310/607] Bump ruby/setup-ruby from 1.180.0 to 1.180.1 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.180.0 to 1.180.1. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/ff740bc00a01b3a50fffc55a1071b1060eeae9dc...3783f195e29b74ae398d7caca108814bbafde90e) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index de0400acb0..ca301697da 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@ff740bc00a01b3a50fffc55a1071b1060eeae9dc # v1.180.0 + uses: ruby/setup-ruby@3783f195e29b74ae398d7caca108814bbafde90e # v1.180.1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 24c828c83e..02826a8ab5 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Ruby - uses: ruby/setup-ruby@ff740bc00a01b3a50fffc55a1071b1060eeae9dc # v1.180.0 + uses: ruby/setup-ruby@3783f195e29b74ae398d7caca108814bbafde90e # v1.180.1 with: ruby-version: '3.2' bundler-cache: true From a39a38cded02fbba305f402abc731e059842307e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Jul 2024 15:14:30 +0000 Subject: [PATCH 311/607] Bump ruby/setup-ruby from 1.180.1 to 1.183.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.180.1 to 1.183.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb) - [Commits](https://github.com/ruby/setup-ruby/compare/3783f195e29b74ae398d7caca108814bbafde90e...1d0e911f615a112e322369596f10ee0b95b010ae) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ca301697da..17b5327627 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@3783f195e29b74ae398d7caca108814bbafde90e # v1.180.1 + uses: ruby/setup-ruby@1d0e911f615a112e322369596f10ee0b95b010ae # v1.183.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 02826a8ab5..418d8d36a4 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Ruby - uses: ruby/setup-ruby@3783f195e29b74ae398d7caca108814bbafde90e # v1.180.1 + uses: ruby/setup-ruby@1d0e911f615a112e322369596f10ee0b95b010ae # v1.183.0 with: ruby-version: '3.2' bundler-cache: true From 6b9bd905bb90a94dcb0b2f8e2b4cb486c58c8b9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Fri, 5 Jul 2024 08:15:53 -0400 Subject: [PATCH 312/607] Translation of 'Ruby 3.1.6 Released' (es) (#3298) --- .../_posts/2024-05-29-ruby-3-1-6-released.md | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 es/news/_posts/2024-05-29-ruby-3-1-6-released.md diff --git a/es/news/_posts/2024-05-29-ruby-3-1-6-released.md b/es/news/_posts/2024-05-29-ruby-3-1-6-released.md new file mode 100644 index 0000000000..bb70f5b2da --- /dev/null +++ b/es/news/_posts/2024-05-29-ruby-3-1-6-released.md @@ -0,0 +1,56 @@ +--- +layout: news_post +title: "Publicado Ruby 3.1.6" +author: "hsbt" +translator: vtamara +date: 2024-05-29 9:00:00 +0000 +lang: es +--- + +Ruby 3.1.6 ha sido publicado. + +La serie Ruby 3.1 ahora está en fase de mantenimiento de seguridad. +En general, corregiremos sólo fallas de seguridad en esta fase. +Pero tuvimos varios problemas de compilación después +de la publicación de Ruby 3.1.5. Decidimos publicar Ruby 3.1.6 +para corregir esos problemas. + +Por favor vea los temas siguientes para conocer detalles. + +* [Falla #20151: No puede compilar Ruby 3.1 en FreeBSD 14.0](https://bugs.ruby-lang.org/issues/20151) +* [Falla #20451: Retro-porte con falla en Ruby 3.1.5 impide compilación de fiddle](https://bugs.ruby-lang.org/issues/20451) +* [Falla #20431: Ruby 3.3.0 falla al compilar con make: *** \[io_buffer.o\] Error 1](https://bugs.ruby-lang.org/issues/20431) + +Ver la más detalles en la [publicación de GitHub](https://github.com/ruby/ruby/releases/tag/v3_1_6). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.1.6" | first %} + +* <{{ 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 }} + +## Comentarios de la versión + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a hacer esta publicación. + +Gracias por sus contribuciones. From b5d471f61d005365980b768c5b718f0e3ab6578c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Sat, 6 Jul 2024 05:53:32 -0400 Subject: [PATCH 313/607] Translate Datadog OSS Program (es) (#3300) --- .../_posts/2024-05-30-datadog-oss-program.md | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 es/news/_posts/2024-05-30-datadog-oss-program.md diff --git a/es/news/_posts/2024-05-30-datadog-oss-program.md b/es/news/_posts/2024-05-30-datadog-oss-program.md new file mode 100644 index 0000000000..1249220024 --- /dev/null +++ b/es/news/_posts/2024-05-30-datadog-oss-program.md @@ -0,0 +1,47 @@ +--- +layout: news_post +title: "Datadog provee soporte comunitario (software de código abierto) para ruby-lang.org" +author: "hsbt" +translator: vtamara +date: 2024-05-30 00:00:00 +0000 +lang: es +--- + +Nos emociona anunciar que el sitio oficial de Ruby, ruby-lang.org, +ha adoptado Datadog para el monitoreo proveido por el +[soporte comunitario de Datadog para software de código abierto](https://opensource.datadoghq.com/projects/oss-program/). + +Esto nos permite monitorear efectivamente el desempeño y disponibilidad del +sitio en tiempo real para los usuarios de Ruby. +Los beneficios clave de usar Datadog incluyen los siguientes. + +## Visibilidad del CDN + +cache.ruby-lang.org proveido por Fastly es la infraestructura más importante +para el ecosistema Ruby. Datadog permite monitorear el desempeño de la +Red de Entrega de Contenido (CDN). Registra la cobertura del cache y la +tasa de errores mejorando la experiencia de usuario. + +## Visualizción unificada de los datos + +Tenemos varios servicios web para ruby-lang.org. +Datadog permite visualizar datos de análisis de las bitácoras junto +con métricas y monitoreo de desempeño de la aplicación (APM) en un +mismo tablero. + +## Visibilidad de la traza JIT + +Al utilizar las capacidades de rastreo de Datadog, podemos capturar trazas como +flujos de peticiones entre servidores web y bases de datos. +Esto ayuda a identificar cuellos de botella y peticiones problemáticas. + +Publicamos el [tablero público](https://p.ap1.datadoghq.com/sb/1271b83e-af90-11ee-9072-da7ad0900009-01633a8fa8c0b0c0051f1889afdf55dc) +de nuestras métricas clave. +Actualizaremos el tablero mientras seguimos mejorando nuestro monitoreo, +especialmente del desempeño YJIT. + +Esperamos que esta adopción de Datadog contribuya a un desempeño mejorado +para la comunidad Ruby. + +Por favor siga usando ruby-lang.org y disfrute de una experiencia +de usuario mejorada. From 01588a20a1181b613c698e96aefbd0cb21a34b24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Sat, 6 Jul 2024 06:08:53 -0400 Subject: [PATCH 314/607] Translation of Ruby 3.3.2 Released (es) (#3301) --- .../_posts/2024-05-30-ruby-3-3-2-released.md | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 es/news/_posts/2024-05-30-ruby-3-3-2-released.md diff --git a/es/news/_posts/2024-05-30-ruby-3-3-2-released.md b/es/news/_posts/2024-05-30-ruby-3-3-2-released.md new file mode 100644 index 0000000000..805ff2b00a --- /dev/null +++ b/es/news/_posts/2024-05-30-ruby-3-3-2-released.md @@ -0,0 +1,45 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.2" +author: "k0kubun" +translator: vtamara +date: 2024-05-30 03:50:00 +0000 +lang: es +--- + +Ruby 3.3.2 ha sido publicado. + +Esta versión incluye muchas correcciones a fallas. +Ver más detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_2). + +## Descarga + +{% assign release = site.data.releases | where: "version", "3.3.2" | first %} + +* <{{ 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 }} + +## Comntario de la versión + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a hacer esta versión. + +Gracias por sus contribuciones. From 937fbe7641366508f469ed913504d64b9fb172e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Sat, 6 Jul 2024 06:11:33 -0400 Subject: [PATCH 315/607] Translation of Ruby 3.3.3 Released (es) (#3302) --- .../_posts/2024-06-12-ruby-3-3-3-released.md | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 es/news/_posts/2024-06-12-ruby-3-3-3-released.md diff --git a/es/news/_posts/2024-06-12-ruby-3-3-3-released.md b/es/news/_posts/2024-06-12-ruby-3-3-3-released.md new file mode 100644 index 0000000000..d1646ca397 --- /dev/null +++ b/es/news/_posts/2024-06-12-ruby-3-3-3-released.md @@ -0,0 +1,56 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.3" +author: "k0kubun" +translator: vtamara +date: 2024-06-12 00:30:00 +0000 +lang: es +--- + +Ruby 3.3.3 ha sido publicado. + +Esta versión incluye: + +* RubyGems 3.5.11 +* Bundler 2.5.11 +* REXML 3.2.8 +* strscan 3.0.9 +* se remplaza `--dump=prism_parsetree` por `--parser=prism --dump=parsetree` +* Los símbolos de codificación inválidos lanzan `SyntaxError` en lugar de + `EncodingError` +* Corrección a fuga de memoria al analizar con Ripper +* Correcciones a fallas para YJIT, `**{}`, `Ripper.tokenize`, `RubyVM::InstructionSequence#to_binary`, `--with-gmp`, y algunos ambientes de compilación. + +Por favor ver más detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_3). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.3.3" | first %} + +* <{{ 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 }} + +## Comentarios de la versión + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a hacer esta versión. + +Gracias por sus contribuciones. From 11d108b6782654d414d397d83222693be8daa755 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Mon, 8 Jul 2024 17:31:59 -0700 Subject: [PATCH 316/607] Release announcement for Ruby 3.3.4 --- _data/downloads.yml | 2 +- _data/releases.yml | 24 ++++++++ .../_posts/2024-07-09-ruby-3-3-4-released.md | 57 +++++++++++++++++++ 3 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2024-07-09-ruby-3-3-4-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index 16c5bf3784..b83d536d43 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -8,7 +8,7 @@ preview: stable: - - 3.3.3 + - 3.3.4 - 3.2.4 # optional diff --git a/_data/releases.yml b/_data/releases.yml index c85fde0b54..d94d68ca65 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -52,6 +52,30 @@ # 3.3 series +- version: 3.3.4 + date: 2024-07-09 + post: /en/news/2024/07/09/ruby-3-3-4-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.4.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.4.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.4.tar.xz + size: + gz: 22110179 + zip: 26995054 + xz: 16366580 + sha1: + gz: 408362dfb0413122e09d35bafdcced8922b54e71 + zip: dcd35f8d428e61807b5c95b6e2e79444fb32f214 + xz: 4fac2e1609535f71cbdbf9ab9dcea6f6e80a304a + sha256: + gz: fe6a30f97d54e029768f2ddf4923699c416cdbc3a6e96db3e2d5716c7db96a34 + zip: 3cf0ee03dd4c98e78e8ab5e191af926870415770ef4995088ed069caef639b2a + xz: 1caaee9a5a6befef54bab67da68ace8d985e4fb59cd17ce23c28d9ab04f4ddad + sha512: + gz: 56a0b88954a4efd0236626e49cc90cdb15d9bfd42b27d7fc34efae61f500058e58cb32c73fdef5f1505a36602f4632d6148bf3bd1df539cb5581ae157c78c22b + zip: c24ca2e6b1114f9c489c049c07acccb0db0916c42c68ea90eaa9acc430973de68342df19710c58130fe264a291958c89e60815c5b00f91decf5a4d1d674a0b32 + xz: b26461a13ff82a08a282f10108028bb2a2e4a28da6182a291062fc54089c6655d79c22cc69d59156f9b11cb10a17fe8c69d489343fbae123a45f03361b95c9eb + - version: 3.3.3 date: 2024-06-12 post: /en/news/2024/06/12/ruby-3-3-3-released/ diff --git a/en/news/_posts/2024-07-09-ruby-3-3-4-released.md b/en/news/_posts/2024-07-09-ruby-3-3-4-released.md new file mode 100644 index 0000000000..d1413568b6 --- /dev/null +++ b/en/news/_posts/2024-07-09-ruby-3-3-4-released.md @@ -0,0 +1,57 @@ +--- +layout: news_post +title: "Ruby 3.3.4 Released" +author: "k0kubun" +translator: +date: 2024-07-09 00:30:00 +0000 +lang: en +--- + +Ruby 3.3.4 has been released. + +This release fixes a regression in Ruby 3.3.3 that dependencies are missing in the gemspec +of some bundled gems: `net-pop`, `net-ftp`, `net-imap`, and `prime` +[[Bug #20581]](https://bugs.ruby-lang.org/issues/20581). +The fix allows Bundler to successfully install those gems on platforms like Heroku. +If your `bundle install` runs correctly now, you may not have this issue. + +Other changes are mostly minor bug fixes. +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_4) for further details. + +## Release Schedule + +Going forward, we intend to release the latest stable Ruby version (currently Ruby 3.3) every 2 months after a `.1` release. +For Ruby 3.3, 3.3.5 is supposed to be released on Sep 3rd, 3.3.6 on Nov 5th, and 3.3.7 on Jan 7th. + +If there's any change that affects a considerable amount of people, e.g. Ruby 3.3.3 users on Heroku for this release, +we may release a new version earlier than expected. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.4" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 3715270badeaf9823ff0d111c7a8ba135b4ebdf3 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 9 Jul 2024 16:51:02 +0800 Subject: [PATCH 317/607] Translate Ruby 3.3.4 Released (zh_tw) --- .../_posts/2024-07-09-ruby-3-3-4-released.md | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 zh_tw/news/_posts/2024-07-09-ruby-3-3-4-released.md diff --git a/zh_tw/news/_posts/2024-07-09-ruby-3-3-4-released.md b/zh_tw/news/_posts/2024-07-09-ruby-3-3-4-released.md new file mode 100644 index 0000000000..d5e272549e --- /dev/null +++ b/zh_tw/news/_posts/2024-07-09-ruby-3-3-4-released.md @@ -0,0 +1,55 @@ +--- +layout: news_post +title: "Ruby 3.3.4 發布" +author: "k0kubun" +translator: "Bear Su" +date: 2024-07-09 00:30:00 +0000 +lang: zh_tw +--- + +Ruby 3.3.4 已經發布了。 + +本次發佈版本修復在 Ruby 3.3.3 一些 bundled gems 的 gemspec 缺少依賴套件:`net-pop`、`net-ftp`、`net-imap`、和 `prime` [[Bug #20581]](https://bugs.ruby-lang.org/issues/20581)。 + +此修復允許 Bundler 在 Heroku 等平台上成功安裝這些 gems。 +如果您的 `bundle install` 現在運作正常,則可能不會遇到這個問題。 + +其他變更主要是修復小型錯誤。 +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_3_4)。 + +## 發布時程 + +在未來,我們打算在「.1」版本發布後每 2 個月發布一次最新的穩定 Ruby 版本(目前為 Ruby 3.3)。 +對於 Ruby 3.3,3.3.5 預計於 9 月 3 日發布,3.3.6 於 11 月 5 日發布,3.3.7 於 1 月 7 日發布。 + +如果有任何變更影響到相當多的人,例如本次發布版本提到的在 Heroku 上使用 Ruby 3.3.3 的使用者。 +我們可能會比預期更早發佈新版本。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.3.4" | first %} + +* <{{ 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 a0b3f99c3466b9e661af1e7d5203ebce3aa411a1 Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 11 Jul 2024 07:46:58 +0900 Subject: [PATCH 318/607] Translate "Ruby 3.3.4 Released" (ko) (#3306) * Copy from en * Translate "Ruby 3.3.4 Released" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../_posts/2024-07-09-ruby-3-3-4-released.md | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 ko/news/_posts/2024-07-09-ruby-3-3-4-released.md diff --git a/ko/news/_posts/2024-07-09-ruby-3-3-4-released.md b/ko/news/_posts/2024-07-09-ruby-3-3-4-released.md new file mode 100644 index 0000000000..5e8602c911 --- /dev/null +++ b/ko/news/_posts/2024-07-09-ruby-3-3-4-released.md @@ -0,0 +1,57 @@ +--- +layout: news_post +title: "Ruby 3.3.4 릴리스" +author: "k0kubun" +translator: "shia" +date: 2024-07-09 00:30:00 +0000 +lang: ko +--- + +Ruby 3.3.4가 릴리스되었습니다. + +이번 릴리스에는 Ruby 3.3.3의 내장 gem인 `net-pop`, `net-ftp`, `net-imap`, `prime`의 +gemspec에서 의존성이 누락된 회귀 버그를 해결했습니다 +[[Bug #20581]](https://bugs.ruby-lang.org/issues/20581). +이 수정으로 Bundler가 Heroku와 같은 플랫폼에서 해당 gem을 성공적으로 설치할 수 있습니다. +만약 `bundle install`이 정상적으로 작동한다면, 이 문제는 해결된 것입니다. + +나머지 변경 사항은 대부분 사소한 버그 수정입니다. +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_3_4)를 참조하세요. + +## 릴리스 일정 + +앞으로 최신 안정 버전의 Ruby(현재 Ruby 3.3)를 `.1` 릴리스 이후 2개월마다 릴리스할 계획입니다. +Ruby 3.3의 경우, 3.3.5는 9월 3일에, 3.3.6은 11월 5일에, 3.3.7은 1월 7일에 릴리스될 예정입니다. + +이번 릴리스는 Heroku의 Ruby 3.3.3 사용자가 영향을 받았습니다. 이와 같이 많은 사람들에게 영향을 미치는 변경 사항이 있을 경우, +예상보다 빨리 새 버전을 릴리스할 수 있습니다. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.3.4" | first %} + +* <{{ 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 9f7994a4f7a8acb8cd6f651de7e5599ab059fade Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 11 Jul 2024 09:54:08 +0900 Subject: [PATCH 319/607] Added patchlevel to initial minor release versions --- _data/releases.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/_data/releases.yml b/_data/releases.yml index d94d68ca65..f2f4d6a3a6 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -2497,7 +2497,7 @@ date: 2013-02-24 post: /en/news/2013/02/24/ruby-2-0-0-p0-is-released/ url: - gz: https://cache.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0.tar.gz + gz: https://cache.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.gz - version: 2.0.0-rc2 date: 2013-02-08 post: /en/news/2013/02/08/ruby-2-0-0-rc2-is-released/ @@ -2582,7 +2582,7 @@ date: 2011-10-31 post: /en/news/2011/10/31/ruby-1-9-3-p0-is-released/ url: - gz: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3.tar.gz + gz: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p0.tar.gz - version: 1.9.3-rc1 date: 2011-09-24 post: /en/news/2011/09/24/ruby-1-9-3-rc1-has-been-released/ @@ -2617,7 +2617,7 @@ date: 2010-08-18 post: /en/news/2010/08/18/ruby-1-9-2-released/ url: - gz: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2.tar.gz + gz: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p0.tar.gz - version: 1.9.2-rc2 date: 2010-07-11 post: /en/news/2010/07/11/ruby-1-9-2-rc2-is-released/ @@ -2665,7 +2665,7 @@ date: 2009-01-30 post: /en/news/2009/01/30/ruby-1-9-1-released/ url: - gz: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1.tar.gz + gz: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p0.tar.gz - version: 1.9.1-preview1 date: 2008-10-28 post: /en/news/2008/10/28/ruby-1-9-1-preview-1-released/ @@ -2675,7 +2675,7 @@ date: 2007-12-25 post: /en/news/2007/12/25/ruby-1-9-0-released/ url: - gz: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0.tar.gz + gz: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.tar.gz - version: 1.8.7-p374 date: 2013-06-27 post: /en/news/2013/06/27/ruby-1-8-7-p374-is-released/ From 66952a89ea4064905a3cbf7143e0f6506ec3a820 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Jul 2024 15:11:01 +0000 Subject: [PATCH 320/607] Bump ruby/setup-ruby from 1.183.0 to 1.185.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.183.0 to 1.185.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb) - [Commits](https://github.com/ruby/setup-ruby/compare/1d0e911f615a112e322369596f10ee0b95b010ae...3a77c29278ae80936b4cb030fefc7d21c96c786f) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 17b5327627..3f896cc461 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@1d0e911f615a112e322369596f10ee0b95b010ae # v1.183.0 + uses: ruby/setup-ruby@3a77c29278ae80936b4cb030fefc7d21c96c786f # v1.185.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 418d8d36a4..10e441b48a 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Ruby - uses: ruby/setup-ruby@1d0e911f615a112e322369596f10ee0b95b010ae # v1.183.0 + uses: ruby/setup-ruby@3a77c29278ae80936b4cb030fefc7d21c96c786f # v1.185.0 with: ruby-version: '3.2' bundler-cache: true From 743f1544afc1c3e843c04e9f7d204dac10f5b87c Mon Sep 17 00:00:00 2001 From: ANDO Yoko Date: Fri, 12 Jul 2024 15:57:30 +0900 Subject: [PATCH 321/607] Translate "CVE-2024-35176: DoS in REXML" (ja) (#3309) --- .../2024-05-16-dos-rexml-cve-2024-35176.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ja/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md diff --git a/ja/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md b/ja/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md new file mode 100644 index 0000000000..39a750ab92 --- /dev/null +++ b/ja/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-35176: REXML内のDoS脆弱性" +author: "kou" +translator: "nacl-ando" +date: 2024-05-16 05:00:00 +0000 +tags: security +lang: ja +--- + + +REXML gem内のDoS脆弱性が発見されました。この脆弱性は、[CVE-2024-35176](https://www.cve.org/CVERecord?id=CVE-2024-35176)として登録されています。REXML gem をアップグレードすることを強く推奨します。 + +## 詳細 + +REXML gem は、属性値に`<` が多く含まれているXMLドキュメントの解析に時間がかかることがあります。 +REXML gem を 3.2.7 以上にアップデートしてください。 + +## 影響を受けるバージョン + +* REXML gem 3.2.6 以前 + +## クレジット + +この脆弱性情報は、[mprogrammer](https://hackerone.com/mprogrammer) 氏によって報告されました。 + +## 更新履歴 + +* 2024-05-16 14:00:00 (JST) 初版 From 7799597c4500ac9239d05fb0a68d7d17cecb4eb9 Mon Sep 17 00:00:00 2001 From: 01hayakawa <01hayakawa@netlab.jp> Date: Fri, 12 Jul 2024 21:15:30 +0900 Subject: [PATCH 322/607] Translate "Ruby 3.4.0 preview1 Released" (ja) (#3310) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Translate Ruby 3.4.0 preview1 Released(ja) * 定型句を使用するよう修正 * 表現の不自然な個所を修正 --- ...2024-05-16-ruby-3-4-0-preview1-released.md | 126 ++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 ja/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md diff --git a/ja/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/ja/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md new file mode 100644 index 0000000000..913b2df832 --- /dev/null +++ b/ja/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -0,0 +1,126 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview1 リリース" +author: "naruse" +translator: "01hayakawa" +date: 2024-05-16 00:00:00 +0000 +lang: ja +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview1" | first %} +Ruby {{ release.version }}がリリースされました。 + +## 言語機能の変更 + +* `frozen_string_literal`のコメントがないファイルで文字列リテラルが凍結されたように振る舞うようになりました。 + 文字列リテラルが破壊的に変更された場合、非推奨の警告が表示されます。 + この警告は `-W:deprecated` または `Warning[:deprecated] = true` で有効にすることができます。 + コマンドライン引数で`--disable-frozen-string-literal` を指定してRubyを実行すると、この変更を無効にできます。 [[Feature #20205]] + +* `it`がブロックパラメータを参照するために追加されました。 [[Feature #18980]] + +* メソッド呼び出し時のnilのキーワードスプラットが使えるようになりました。 + `**nil`は`**{}`と同様に扱われ、キーワードは渡されず、変換メソッドも呼び出されません。 [[Bug #20064]] + +* インデックスにブロックを渡せなくなりました。 [[Bug #19918]] + +* インデックスにキーワード引数が使えなくなりました。 [[Bug #20218]] + +## コアクラスの更新 +注:特に重要なクラスアップデートのみを掲載しています。 + +* Exception + + * Exception#set_backtraceが`Thread::Backtrace::Location`の配列を受け付けるようになりました。 + `Kernel#raise`と`Thread#raise`、`Fiber#raise`も同様に新しいフォーマットを受け付けます。[[Feature #13557]] + +* Range + + * rangeが列挙可能でない場合、`Range#size`がTypeErrorを発生させるようになりました。[[Misc #18984]] + + + +## 互換性に関する変更 + +注:バグフィックスは掲載していません。 + +* エラーメッセージとバックトレースの表示が変更されました。 + * 冒頭の引用符にはバッククォートの代わりにシングルクォートを使用します。 [[Feature #16495]] + * メソッド名の前にクラス名を表示します(クラスが永続的な名前を持つ場合のみ)。 [[Feature #19117]] + * `Kernel#caller`、`Thread::Backtrace::Location`のメソッドなどがそれに応じて変更されました。 + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + + +## C API更新 + +* `rb_newobj`と`rb_newobj_of` (および対応するマクロ `RB_NEWOBJ`、`RB_NEWOBJ_OF`、`NEWOBJ`、`NEWOBJ_OF`)が削除されました。 [[Feature #20265]] +* 廃止予定だった関数`rb_gc_force_recycle`が削除されました。 [[Feature #18290]] + +## 実装の改善 + +* `Array#each`がRubyで書き直され、パフォーマンスが改善されました。 [[Feature #20182]]. + +## その他の変更 + +* 渡されたブロックを使用しないメソッドにブロックを渡すと、verboseモード (`-w`) で警告が表示されるようになりました。 [[Feature #15554]] + +* `String.freeze`や`Integer#+`のようなインタプリタやJITによって特別に最適化されたコアメソッドを再定義すると、パフォーマンスクラスの警告(`-W:performance`または`Warning[:performance] = true`)が出るようになりました。 [[Feature #20429]] + +default gemやbundled gemの詳細については、[Logger](https://github.com/ruby/logger/releases)などのGitHubのリリースやchangelogを参照してください。 + +詳細は[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +か[commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})を参照してください。 + +これらの変更により、Ruby 3.3.0から[{{ release.stats.files_changed }} ファイルが変更され、{{ release.stats.insertions }} 行が追加され、 {{ release.stats.deletions }} 行が削除されました!](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) + + +## ダウンロード + +* <{{ 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 とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 From ddbff34c9c5d40c14072c08c8a9b29f8b0eb19a2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Jul 2024 15:39:11 +0000 Subject: [PATCH 323/607] Bump ruby/setup-ruby from 1.185.0 to 1.187.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.185.0 to 1.187.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb) - [Commits](https://github.com/ruby/setup-ruby/compare/3a77c29278ae80936b4cb030fefc7d21c96c786f...161cd54b698f1fb3ea539faab2e036d409550e3c) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3f896cc461..528fbc03f0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@3a77c29278ae80936b4cb030fefc7d21c96c786f # v1.185.0 + uses: ruby/setup-ruby@161cd54b698f1fb3ea539faab2e036d409550e3c # v1.187.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 10e441b48a..1d1d48a81e 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Ruby - uses: ruby/setup-ruby@3a77c29278ae80936b4cb030fefc7d21c96c786f # v1.185.0 + uses: ruby/setup-ruby@161cd54b698f1fb3ea539faab2e036d409550e3c # v1.187.0 with: ruby-version: '3.2' bundler-cache: true From a23bd213fe802c36c0e5442f0248f3fcdd02a235 Mon Sep 17 00:00:00 2001 From: Watson Date: Tue, 16 Jul 2024 11:11:21 +0900 Subject: [PATCH 324/607] Add CVE-2024-39908 : DoS in REXML --- .../2024-07-16-dos-rexml-cve-2024-39908.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md diff --git a/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md new file mode 100644 index 0000000000..1da55ba595 --- /dev/null +++ b/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-39908 : DoS in REXML" +author: "watson1978" +translator: +date: 2024-07-16 03:00:00 +0000 +tags: security +lang: en +--- + +There is a DoS vulnerability in REXML gem. This vulnerability has been assigned the CVE identifier [CVE-2024-39908](https://www.cve.org/CVERecord?id=CVE-2024-399086). We strongly recommend upgrading the REXML gem. + +## Details + +When it parses an XML that has many specific characters such as `<`, `0` and `%>`. REXML gem may take long time. + +Please update REXML gem to version 3.3.2 or later. + +## Affected versions + +* REXML gem 3.3.2 or prior + +## Credits + +Thanks to [mprogrammer](https://hackerone.com/mprogrammer) for discovering this issue. + +## History + +* Originally published at 2024-07-16 03:00:00 (UTC) From 40003f52eb21d6d5fe814f393bd4e297a0ff00ab Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Tue, 16 Jul 2024 17:58:33 +0900 Subject: [PATCH 325/607] Translate CVE-2024-39908 news (ko) (#3316) * cp {en,ko}/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md * Translate CVE-2024-39908 news (ko) --- .../2024-07-16-dos-rexml-cve-2024-39908.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md diff --git a/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md new file mode 100644 index 0000000000..ac0de248d7 --- /dev/null +++ b/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-39908: REXML의 DoS 취약점" +author: "watson1978" +translator: "yous" +date: 2024-07-16 03:00:00 +0000 +tags: security +lang: ko +--- + +REXML gem에서 DoS 취약점이 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2024-39908](https://www.cve.org/CVERecord?id=CVE-2024-39908)로 등록되었습니다. REXML gem 업그레이드를 강하게 추천합니다. + +## 세부 내용 + +`<`, `0`, `%>`과 같은 특정 캐릭터를 대량으로 갖고 있는 XML을 파싱할 때, REXML gem은 처리에 긴 시간이 걸립니다. + +REXML gem을 3.3.2나 그 이상으로 업데이트하세요. + +## 해당 버전 + +* REXML gem 3.3.2와 그 이하 + +## 도움을 준 사람 + +이 문제를 발견해 준 [mprogrammer](https://hackerone.com/mprogrammer)에게 감사를 표합니다. + +## 수정 이력 + +* 2024-07-16 03:00:00 (UTC) 최초 공개 From 5eed80f25b510d80685a9884ec3bf1c236aeb287 Mon Sep 17 00:00:00 2001 From: Watson Date: Tue, 16 Jul 2024 17:51:43 +0900 Subject: [PATCH 326/607] Fix typo in URL for CVE-2024-39908 Fix typos pointed out by https://github.com/ruby/www.ruby-lang.org/pull/3314#discussion_r1678946524 --- en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md index 1da55ba595..af03328df8 100644 --- a/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md +++ b/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -8,7 +8,7 @@ tags: security lang: en --- -There is a DoS vulnerability in REXML gem. This vulnerability has been assigned the CVE identifier [CVE-2024-39908](https://www.cve.org/CVERecord?id=CVE-2024-399086). We strongly recommend upgrading the REXML gem. +There is a DoS vulnerability in REXML gem. This vulnerability has been assigned the CVE identifier [CVE-2024-39908](https://www.cve.org/CVERecord?id=CVE-2024-39908). We strongly recommend upgrading the REXML gem. ## Details From 88c4ea9ac93417bdf3f5338a65867328cc3e14f9 Mon Sep 17 00:00:00 2001 From: Watson Date: Tue, 16 Jul 2024 18:49:04 +0900 Subject: [PATCH 327/607] Fix affected version --- en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md | 2 +- ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md index af03328df8..48e7c7a131 100644 --- a/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md +++ b/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -18,7 +18,7 @@ Please update REXML gem to version 3.3.2 or later. ## Affected versions -* REXML gem 3.3.2 or prior +* REXML gem 3.3.1 or prior ## Credits diff --git a/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md index ac0de248d7..5b2464f2da 100644 --- a/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md +++ b/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -18,7 +18,7 @@ REXML gem을 3.3.2나 그 이상으로 업데이트하세요. ## 해당 버전 -* REXML gem 3.3.2와 그 이하 +* REXML gem 3.3.1와 그 이하 ## 도움을 준 사람 From b72f241719602e88655f04717ffca16167d63a72 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 16 Jul 2024 16:20:49 +0800 Subject: [PATCH 328/607] Translate CVE 2024 39908 (zh_tw) --- .../2024-07-16-dos-rexml-cve-2024-39908.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md diff --git a/zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md new file mode 100644 index 0000000000..343734d255 --- /dev/null +++ b/zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-39908 : DoS in REXML" +author: "watson1978" +translator: "Bear Su" +date: 2024-07-16 03:00:00 +0000 +tags: security +lang: zh_tw +--- + +在 REXML gem 發現了一個 DoS 漏洞。 +該漏洞的 CVE 編號為 [CVE-2024-39908](https://www.cve.org/CVERecord?id=CVE-2024-39908)。 +我們強烈建議您升級 REXML gem。 + +## 風險細節 + +當解析包含許多特定字元如 `<`、`0` 和 `%>` 的 XML 文件時,REXML gem 可能會需要很長的處理時間。 + +請更新 REXML gem 至 3.3.2 或更新的版本。 + +## 受影響版本 + +* REXML gem 3.3.1 及更早版本 + +## 致謝 + +感謝 [mprogrammer](https://hackerone.com/mprogrammer) 發現此問題。 + +## 歷史 + +* 最初發布於 2024-07-16 03:00:00 (UTC) From ccb545730855c40eb401079830160d7e81d26de4 Mon Sep 17 00:00:00 2001 From: Juanito Fatas Date: Wed, 17 Jul 2024 10:21:43 +0900 Subject: [PATCH 329/607] Fix affected version typo (ko) Co-authored-by: Chayoung You --- ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md index 5b2464f2da..8443590fc4 100644 --- a/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md +++ b/ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -18,7 +18,7 @@ REXML gem을 3.3.2나 그 이상으로 업데이트하세요. ## 해당 버전 -* REXML gem 3.3.1와 그 이하 +* REXML gem 3.3.1과 그 이하 ## 도움을 준 사람 From cf26200c1486e15c65dda5cb44bfd366f82721dc Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 17 Jul 2024 13:11:21 +0900 Subject: [PATCH 330/607] Update MailmanLists dashboard urls. https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-list.ml.ruby-lang.org/ is 404 status. It's updated with https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/ --- bg/community/mailing-lists/index.md | 2 +- de/community/mailing-lists/index.md | 4 ++-- en/community/mailing-lists/index.md | 2 +- es/community/mailing-lists/index.md | 2 +- fr/community/mailing-lists/index.md | 2 +- id/community/mailing-lists/index.md | 2 +- it/community/mailing-lists/index.md | 2 +- ja/community/mailing-lists/index.md | 8 ++++---- ko/community/mailing-lists/index.md | 4 ++-- pl/community/mailing-lists/index.md | 2 +- pt/community/mailing-lists/index.md | 2 +- ru/community/mailing-lists/index.md | 2 +- tr/community/mailing-lists/index.md | 4 ++-- vi/community/mailing-lists/index.md | 2 +- zh_cn/community/mailing-lists/index.md | 2 +- zh_tw/community/mailing-lists/index.md | 2 +- 16 files changed, 22 insertions(+), 22 deletions(-) diff --git a/bg/community/mailing-lists/index.md b/bg/community/mailing-lists/index.md index 19bd46cc71..56386a242c 100644 --- a/bg/community/mailing-lists/index.md +++ b/bg/community/mailing-lists/index.md @@ -32,7 +32,7 @@ comp.lang.ruby дискусионна група. ## Абониране -[Абониране](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[Абониране](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/de/community/mailing-lists/index.md b/de/community/mailing-lists/index.md index 23be89aa83..41d8c3f34a 100644 --- a/de/community/mailing-lists/index.md +++ b/de/community/mailing-lists/index.md @@ -38,13 +38,13 @@ comp.lang.ruby (Newsgroup) [comp.lang.ruby](news:comp.lang.ruby)-Newsgroup eine gute Anlaufstelle. ([FAQ][clrFAQ]) -Siehe [https://ml.ruby-lang.org/mailman3/postorius/lists/](https://ml.ruby-lang.org/mailman3/postorius/lists/) +Siehe [https://ml.ruby-lang.org/mailman3/lists/](https://ml.ruby-lang.org/mailman3/lists/) für weitere Informationen über alle Mailinglisten bei ruby-lang.org, einschließlich der Listen in japanischer Sprache. ## An- oder Abmelden -[An- oder Abmelden](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[An- oder Abmelden](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/en/community/mailing-lists/index.md b/en/community/mailing-lists/index.md index 8e9647067a..da3fed322f 100644 --- a/en/community/mailing-lists/index.md +++ b/en/community/mailing-lists/index.md @@ -31,7 +31,7 @@ The comp.lang.ruby Newsgroup ## Subscribe or Unsubscribe -See [https://ml.ruby-lang.org/mailman3/postorius/lists/](https://ml.ruby-lang.org/mailman3/postorius/lists/) +See [https://ml.ruby-lang.org/mailman3/lists/](https://ml.ruby-lang.org/mailman3/lists/) for more information about all mailing lists on ruby-lang.org, including the lists in Japanese language. diff --git a/es/community/mailing-lists/index.md b/es/community/mailing-lists/index.md index 0a81bd38fe..6da4ab13bd 100644 --- a/es/community/mailing-lists/index.md +++ b/es/community/mailing-lists/index.md @@ -28,7 +28,7 @@ Ruby-CVS ## Suscribirse o desuscribirse -[Suscribirse o desuscribirse](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[Suscribirse o desuscribirse](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/fr/community/mailing-lists/index.md b/fr/community/mailing-lists/index.md index e399c3cd10..d27d9037ef 100644 --- a/fr/community/mailing-lists/index.md +++ b/fr/community/mailing-lists/index.md @@ -29,7 +29,7 @@ Ruby-CVS ## S’inscrire ou résilier son inscription -[S’inscrire ou résilier son inscription](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[S’inscrire ou résilier son inscription](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/id/community/mailing-lists/index.md b/id/community/mailing-lists/index.md index 8820394a76..f782ea5280 100644 --- a/id/community/mailing-lists/index.md +++ b/id/community/mailing-lists/index.md @@ -42,7 +42,7 @@ termasuk daftar milis dalam bahasa Jepang. ## Mulai atau Berhenti Berlangganan -[Mulai atau Berhenti Berlangganan](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[Mulai atau Berhenti Berlangganan](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/it/community/mailing-lists/index.md b/it/community/mailing-lists/index.md index 5aa4c6e761..7493eef6de 100644 --- a/it/community/mailing-lists/index.md +++ b/it/community/mailing-lists/index.md @@ -28,7 +28,7 @@ Ruby-CVS ## Iscriviti o annulla la tua iscrizione -(Iscriviti o annulla la tua iscrizione)[https://ml.ruby-lang.org/mailman3/postorius/lists/] +(Iscriviti o annulla la tua iscrizione)[https://ml.ruby-lang.org/mailman3/lists/] diff --git a/ja/community/mailing-lists/index.md b/ja/community/mailing-lists/index.md index c4893fe9c8..6f5c4899bb 100644 --- a/ja/community/mailing-lists/index.md +++ b/ja/community/mailing-lists/index.md @@ -8,12 +8,12 @@ lang: ja 参加希望の方は、それぞれのリンク先のページより登録を行ってください。 -## [ruby-list](https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-list.ml.ruby-lang.org/)(日本語) +## [ruby-list](https://ml.ruby-lang.org/mailman3/lists/ruby-list.ml.ruby-lang.org/)(日本語) Rubyを使ってプログラムを書く人たちが情報交換を行うためのメーリングリストです。 Rubyを使う上での疑問点についての相談や、Rubyを利用したアプリケーションやライブラリなどのリリース情報の紹介、Rubyに関連するイベントの紹介などが行われています。 -## [ruby-dev](https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-dev.ml.ruby-lang.org/)(日本語) +## [ruby-dev](https://ml.ruby-lang.org/mailman3/lists/ruby-dev.ml.ruby-lang.org/)(日本語) Rubyの開発者向け公式メーリングリストです。 こちらではRuby自体のバグの報告とそれに対する対応や、将来の仕様拡張や実装上の問題などについての議論が行われています。 @@ -22,11 +22,11 @@ Rubyの開発者向け公式メーリングリストです。 また、セキュリティ関連のバグや脆弱性については後述する非公開メーリングリストへ報告してください。 -## [ruby-talk](https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-talk.ml.ruby-lang.org/)(英語) +## [ruby-talk](https://ml.ruby-lang.org/mailman3/lists/ruby-talk.ml.ruby-lang.org/)(英語) 英語で一般的な話題を取り扱っています。 上記ruby-listの英語版という位置づけになります。 -## [ruby-core](https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/)(英語) +## [ruby-core](https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/)(英語) 英語でRubyの実装について話し合っています。 上記ruby-devの英語版という位置づけになります。 diff --git a/ko/community/mailing-lists/index.md b/ko/community/mailing-lists/index.md index 204a0c8ebc..a736eacb74 100644 --- a/ko/community/mailing-lists/index.md +++ b/ko/community/mailing-lists/index.md @@ -28,11 +28,11 @@ comp.lang.ruby 뉴스그룹 [comp.lang.ruby](news:comp.lang.ruby) 뉴스그룹에서 체크아웃하세요. ([FAQ][clrFAQ]) ruby-lang.org의 일본어 리스트를 포함한 모든 메일링 리스트에 대해 자세히 알고 -싶다면 [https://ml.ruby-lang.org/mailman3/postorius/lists/](https://ml.ruby-lang.org/mailman3/postorius/lists/)를 참조하세요. +싶다면 [https://ml.ruby-lang.org/mailman3/lists/](https://ml.ruby-lang.org/mailman3/lists/)를 참조하세요. ## 구독과 해지 -[구독과 해지](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[구독과 해지](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/pl/community/mailing-lists/index.md b/pl/community/mailing-lists/index.md index d9e1525980..c8d456005b 100644 --- a/pl/community/mailing-lists/index.md +++ b/pl/community/mailing-lists/index.md @@ -33,7 +33,7 @@ listy: ## Subscribe or Unsubscribe -[Subscribe or Unsubscribe](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[Subscribe or Unsubscribe](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/pt/community/mailing-lists/index.md b/pt/community/mailing-lists/index.md index 8c7e14ea64..39be72f00c 100644 --- a/pt/community/mailing-lists/index.md +++ b/pt/community/mailing-lists/index.md @@ -35,7 +35,7 @@ Ruby << portuguese ## Inscrever ou Desinscrever -[Inscrever ou Desinscrever](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[Inscrever ou Desinscrever](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/ru/community/mailing-lists/index.md b/ru/community/mailing-lists/index.md index 24a0fd0b37..a82fe126d4 100644 --- a/ru/community/mailing-lists/index.md +++ b/ru/community/mailing-lists/index.md @@ -32,7 +32,7 @@ Ruby-CVS ## Подписаться или не подписаться -[Подписаться или не подписаться](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[Подписаться или не подписаться](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/tr/community/mailing-lists/index.md b/tr/community/mailing-lists/index.md index fd060010a4..c88d2df8b1 100644 --- a/tr/community/mailing-lists/index.md +++ b/tr/community/mailing-lists/index.md @@ -31,11 +31,11 @@ comp.lang.ruby Haber Grubu Japonca dilindeki listeler de dahil olmak üzere ruby-lang.org'daki tüm e-posta listeleri hakkında daha fazla bilgi için -[https://ml.ruby-lang.org/mailman3/postorius/lists/](https://ml.ruby-lang.org/mailman3/postorius/lists/)'a göz atın. +[https://ml.ruby-lang.org/mailman3/lists/](https://ml.ruby-lang.org/mailman3/lists/)'a göz atın. ## Abone Olun ya da Abonelikten Ayrılın -[Abone Olun ya da Abonelikten Ayrılın](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[Abone Olun ya da Abonelikten Ayrılın](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/vi/community/mailing-lists/index.md b/vi/community/mailing-lists/index.md index 90b0878649..ef152caafb 100644 --- a/vi/community/mailing-lists/index.md +++ b/vi/community/mailing-lists/index.md @@ -32,7 +32,7 @@ The comp.lang.ruby Newsgroup ## Đăng ký theo dõi hoặc Hủy đăng ký -[Đăng ký theo dõi hoặc Hủy đăng ký](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[Đăng ký theo dõi hoặc Hủy đăng ký](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/zh_cn/community/mailing-lists/index.md b/zh_cn/community/mailing-lists/index.md index 6334f0dfd6..06e1861717 100644 --- a/zh_cn/community/mailing-lists/index.md +++ b/zh_cn/community/mailing-lists/index.md @@ -26,7 +26,7 @@ comp.lang.ruby新闻组 ## 订阅或退订 -[订阅或退订](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[订阅或退订](https://ml.ruby-lang.org/mailman3/lists/) diff --git a/zh_tw/community/mailing-lists/index.md b/zh_tw/community/mailing-lists/index.md index 3cddcab32c..198689b4d6 100644 --- a/zh_tw/community/mailing-lists/index.md +++ b/zh_tw/community/mailing-lists/index.md @@ -27,7 +27,7 @@ The comp.lang.ruby 新聞組 ## 立即訂閱或是取消訂閱 -[立即訂閱或是取消訂閱](https://ml.ruby-lang.org/mailman3/postorius/lists/) +[立即訂閱或是取消訂閱](https://ml.ruby-lang.org/mailman3/lists/) From 78187079dda01650a3149b0fcb347be28cdbab5f Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Mon, 22 Jul 2024 10:05:38 +0800 Subject: [PATCH 331/607] Translate CVE-2024-39908 (zh_cn) (#3320) --- .../2024-07-16-dos-rexml-cve-2024-39908.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 zh_cn/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md diff --git a/zh_cn/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/zh_cn/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md new file mode 100644 index 0000000000..6562dc0395 --- /dev/null +++ b/zh_cn/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-39908 : REXML 中的 DoS 漏洞" +author: "watson1978" +translator: "GAO Jun" +date: 2024-07-16 03:00:00 +0000 +tags: security +lang: zh_cn +--- + +REXML gem 中存在一个 DoS 漏洞。此漏洞的 CVE 编号为 [CVE-2024-39908](https://www.cve.org/CVERecord?id=CVE-2024-39908)。我们强烈建议您更新 REXML gem。 + +## 详情 + +当 XML 文档中包含很多 `<`,`0`,`%>` 之类的特殊字符时,REXML gem 在解析时可能会花费很长时间。 + +请更新 REXML gem 至 3.3.2 或后续版本。 + +## 受影响版本 + +* REXML gem 3.3.1 或更低版本 + +## 致谢 + +感谢 [mprogrammer](https://hackerone.com/mprogrammer) 发现此问题。 + +## 历史 + +* 最初发布于 2024-07-16 03:00:00 (UTC) From 740a93e38259747207a2fb8ada45e07749beb44f Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Mon, 22 Jul 2024 10:06:09 +0800 Subject: [PATCH 332/607] Translate 3.3.4-realsed (zh_cn) (#3315) --- .../_posts/2024-07-09-ruby-3-3-4-released.md | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 zh_cn/news/_posts/2024-07-09-ruby-3-3-4-released.md diff --git a/zh_cn/news/_posts/2024-07-09-ruby-3-3-4-released.md b/zh_cn/news/_posts/2024-07-09-ruby-3-3-4-released.md new file mode 100644 index 0000000000..cf23340324 --- /dev/null +++ b/zh_cn/news/_posts/2024-07-09-ruby-3-3-4-released.md @@ -0,0 +1,55 @@ +--- +layout: news_post +title: "Ruby 3.3.4 已发布" +author: "k0kubun" +translator: "GAO Jun" +date: 2024-07-09 00:30:00 +0000 +lang: zh_cn +--- + +Ruby 3.3.4 已发布。 + +此版本修复了 Ruby 3.3.3 中的一个回归问题,一些绑定 gem 的 gemspec 中缺失了依赖项,这些 gem 包括:`net-pop`,`net-ftp`,`net-imap` 和 `prime`。 +[[问题 #20581]](https://bugs.ruby-lang.org/issues/20581)。 +这个修正可以让 Bundler 在 Heroku 之类的平台上成功安装这些 gem。 +如果您能够正常运行 `bundle install` ,说明您可能不受此问题影响。 + +其他的变化大多是一些较小的问题修正。 +您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_3_4) 获取进一步信息。 + +## 发布时间表 + +从今以后,我们打算在 `.1` 版本发布后,每 2 个月发布一次最新的 Ruby 稳定版本(目前是 Ruby 3.3)。 +对于 Ruby 3.3,计划在9月3日发布 3.3.5,在11月7日发布 3.3.6,在1月7日发布 3.3.7。 + +如果有影响大量用户的变更,例如此次发布对 Heroku 上的 Ruby 3.3.3 用户的情况,我们可能会提前发布新版本。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.3.4" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 7aaf2bf04ff88ebfdfd04b58eb4e93c0c8738967 Mon Sep 17 00:00:00 2001 From: nagachika Date: Fri, 26 Jul 2024 19:25:08 +0900 Subject: [PATCH 333/607] Release announcement for ruby 3.2.5. --- _data/downloads.yml | 2 +- _data/releases.yml | 24 ++++++++++ .../_posts/2024-07-26-ruby-3-2-5-released.md | 46 +++++++++++++++++++ 3 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2024-07-26-ruby-3-2-5-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index b83d536d43..6bcf6a680d 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -9,7 +9,7 @@ preview: stable: - 3.3.4 - - 3.2.4 + - 3.2.5 # optional security_maintenance: diff --git a/_data/releases.yml b/_data/releases.yml index f2f4d6a3a6..31c56a920b 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -296,6 +296,30 @@ # 3.2 series +- version: 3.2.5 + date: '2024-07-26' + post: "/en/news/2024/07/26/ruby-3-2-5-released/" + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.5.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.5.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.5.zip + size: + gz: 20619890 + xz: 15194868 + zip: 24777648 + sha1: + gz: 55bd9b68c421a04b787d721af9c72a48e79d2f21 + xz: 3276c53b48e3b1878ea0ae0ee5c3dc497babaafb + zip: e15405aecd5f6dd3d0f5cde7acc3bbc7ea7a7978 + sha256: + gz: 3bb68ec629f1ddfd435e0562462122482ab1879d6b0872895bfcb36ee1de80f5 + xz: 5a6a4c58c37f0c5e090dddbf2e6c5b0f839cf28c3e8e8d86f98e34b111218a5e + zip: 76497e8548b6a0d69544934848165d5a7988fda643814127f394a1e4def5a3f7 + sha512: + gz: c930a8f67df5978a576365fbd3e78355d5f1f60fc7cedae8de6eda56aadc0327bd50db921360d1f0722f11017a6952d144303040107f0aa22efc47aac739bef6 + xz: c488ea25dd91a10b39da97ca2bcb6e06bfb90630b88aa0d9f7adfbae0694c194a0c7b56e82c9162ef1d2e18fdde8c0e84538d9264931c9a655b2fb707c50f27c + zip: 70101138a00df7fbfcc71ff96b58c8a4f617b7c3e7d641b2c7a7247666250c00bf870a1feff316a06cca2d266b15b142c0554a5b4443c5ffd997fc61179c3cdb + - version: 3.2.4 date: 2024-04-23 post: "/en/news/2024/04/23/ruby-3-2-4-released/" diff --git a/en/news/_posts/2024-07-26-ruby-3-2-5-released.md b/en/news/_posts/2024-07-26-ruby-3-2-5-released.md new file mode 100644 index 0000000000..95cda73bdc --- /dev/null +++ b/en/news/_posts/2024-07-26-ruby-3-2-5-released.md @@ -0,0 +1,46 @@ +--- +layout: news_post +title: "Ruby 3.2.5 Released" +author: "nagachika" +translator: +date: 2024-07-26 10:00:00 +0000 +lang: en +--- + +Ruby 3.2.5 has been released. + +This release include many bug-fixes. +And we updated the version of bundled gem `rexml` to include the following security fix.. +[CVE-2024-39908 : DoS in REXML](({%link en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md %}). + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_5) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.2.5" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From d457febff7d80a2d9ea82f7c5e83b20e44823932 Mon Sep 17 00:00:00 2001 From: nagachika Date: Fri, 26 Jul 2024 21:18:17 +0900 Subject: [PATCH 334/607] regenerate package info. --- _data/releases.yml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/_data/releases.yml b/_data/releases.yml index 31c56a920b..0794b2401f 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -304,21 +304,21 @@ xz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.5.tar.xz zip: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.5.zip size: - gz: 20619890 - xz: 15194868 - zip: 24777648 + gz: 20619047 + xz: 15189072 + zip: 24777979 sha1: - gz: 55bd9b68c421a04b787d721af9c72a48e79d2f21 - xz: 3276c53b48e3b1878ea0ae0ee5c3dc497babaafb - zip: e15405aecd5f6dd3d0f5cde7acc3bbc7ea7a7978 + gz: e5166c947a4d9057b1310710a2a963df12264ac9 + xz: b5f21884084077b1f684efe40144844b8b37a316 + zip: 07e7638dd5ec40f261c820be523be619fdebe4aa sha256: - gz: 3bb68ec629f1ddfd435e0562462122482ab1879d6b0872895bfcb36ee1de80f5 - xz: 5a6a4c58c37f0c5e090dddbf2e6c5b0f839cf28c3e8e8d86f98e34b111218a5e - zip: 76497e8548b6a0d69544934848165d5a7988fda643814127f394a1e4def5a3f7 + gz: ef0610b498f60fb5cfd77b51adb3c10f4ca8ed9a17cb87c61e5bea314ac34a16 + xz: 7780d91130139406d39b29ed8fe16bba350d8fa00e510c76bef9b8ec1340903c + zip: b001e6c157d79f6fb351d5be83ba389c6ca20000686bbdfc8d2b8a46d38a7183 sha512: - gz: c930a8f67df5978a576365fbd3e78355d5f1f60fc7cedae8de6eda56aadc0327bd50db921360d1f0722f11017a6952d144303040107f0aa22efc47aac739bef6 - xz: c488ea25dd91a10b39da97ca2bcb6e06bfb90630b88aa0d9f7adfbae0694c194a0c7b56e82c9162ef1d2e18fdde8c0e84538d9264931c9a655b2fb707c50f27c - zip: 70101138a00df7fbfcc71ff96b58c8a4f617b7c3e7d641b2c7a7247666250c00bf870a1feff316a06cca2d266b15b142c0554a5b4443c5ffd997fc61179c3cdb + gz: d86c0151fabf21b418b007465e3f5b3fd0b2de0a9652057fd465b1f7e91b01d00f83a737e972ea994a5d9231e8cb27e64e576852390fe6c2ad502f0d099fe5f4 + xz: '092348b84b513aec62e63ec10b326370d0e3d1fa3126c59c03c84f28e2d7741a4772c461b077ec6a7dac3964a20f434655729e1acd50a3438755d7ad64073305' + zip: f7a05c96a22bd4018c4a79ff595e62aa92dc844ebaf3e66d50c7b35041fade7608806668b5cb25c17b360a3cd98df1c3e0f97c49448a968accab59a9dac97e47 - version: 3.2.4 date: 2024-04-23 From f7dd8ac379fb5d41cbfc874742f912f41b996ead Mon Sep 17 00:00:00 2001 From: nagachika Date: Fri, 26 Jul 2024 21:38:35 +0900 Subject: [PATCH 335/607] fix typo. --- en/news/_posts/2024-07-26-ruby-3-2-5-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-07-26-ruby-3-2-5-released.md b/en/news/_posts/2024-07-26-ruby-3-2-5-released.md index 95cda73bdc..0b51079ed3 100644 --- a/en/news/_posts/2024-07-26-ruby-3-2-5-released.md +++ b/en/news/_posts/2024-07-26-ruby-3-2-5-released.md @@ -10,7 +10,7 @@ lang: en Ruby 3.2.5 has been released. This release include many bug-fixes. -And we updated the version of bundled gem `rexml` to include the following security fix.. +And we updated the version of bundled gem `rexml` to include the following security fix. [CVE-2024-39908 : DoS in REXML](({%link en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md %}). Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_5) for further details. From 9df77ac680d656f3bf9bc22468b8dc489e7272ce Mon Sep 17 00:00:00 2001 From: nagachika Date: Fri, 26 Jul 2024 21:52:57 +0900 Subject: [PATCH 336/607] fix markup. --- en/news/_posts/2024-07-26-ruby-3-2-5-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-07-26-ruby-3-2-5-released.md b/en/news/_posts/2024-07-26-ruby-3-2-5-released.md index 0b51079ed3..95ed0effc9 100644 --- a/en/news/_posts/2024-07-26-ruby-3-2-5-released.md +++ b/en/news/_posts/2024-07-26-ruby-3-2-5-released.md @@ -11,7 +11,7 @@ Ruby 3.2.5 has been released. This release include many bug-fixes. And we updated the version of bundled gem `rexml` to include the following security fix. -[CVE-2024-39908 : DoS in REXML](({%link en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md %}). +[CVE-2024-39908 : DoS in REXML]({%link en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md %}). Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_5) for further details. From f794c6679af6d0f8794f70e40f1c5ffbcd8349f4 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Fri, 26 Jul 2024 22:36:30 +0800 Subject: [PATCH 337/607] Translate Ruby 3.2.5 Released (zh_tw) --- .../_posts/2024-07-26-ruby-3-2-5-released.md | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 zh_tw/news/_posts/2024-07-26-ruby-3-2-5-released.md diff --git a/zh_tw/news/_posts/2024-07-26-ruby-3-2-5-released.md b/zh_tw/news/_posts/2024-07-26-ruby-3-2-5-released.md new file mode 100644 index 0000000000..60f730b4b2 --- /dev/null +++ b/zh_tw/news/_posts/2024-07-26-ruby-3-2-5-released.md @@ -0,0 +1,45 @@ +--- +layout: news_post +title: "Ruby 3.2.5 發布" +author: "nagachika" +translator: "Bear Su" +date: 2024-07-26 10:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.2.5 已經發布了。 + +本次發布版本包含許多問題修正。 +我們也更新了 bundled gem `rexml` 的版本以包含下列安全性修正: +[CVE-2024-39908 : DoS in REXML]({%link zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md %}). + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_2_5)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.2.5" | first %} + +* <{{ 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 7858f975f4a32e8ed1e29b7bf492af3809fc0ce4 Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Mon, 29 Jul 2024 19:45:53 +0800 Subject: [PATCH 338/607] Translate 3.2.5-realsed (zh_cn) (#3326) --- .../_posts/2024-07-26-ruby-3-2-5-released.md | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 zh_cn/news/_posts/2024-07-26-ruby-3-2-5-released.md diff --git a/zh_cn/news/_posts/2024-07-26-ruby-3-2-5-released.md b/zh_cn/news/_posts/2024-07-26-ruby-3-2-5-released.md new file mode 100644 index 0000000000..1ad8aa6532 --- /dev/null +++ b/zh_cn/news/_posts/2024-07-26-ruby-3-2-5-released.md @@ -0,0 +1,47 @@ +--- +layout: news_post +title: "Ruby 3.2.5 已发布" +author: "nagachika" +translator: "GAO Jun" +date: 2024-07-26 10:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.2.5 已发布。 + +此版本包含很多修正补丁。 +并更新了绑定 gem `rexml` 的版本,以包含下面的安全更新。 + +[CVE-2024-39908 : REXML 中的 DoS 漏洞]({%link zh_cn/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md %}). + +您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_2_5) 获取进一步信息。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.2.5" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From eb925535b22d01a37f982787ef0c7419d4697549 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jul 2024 16:00:19 +0000 Subject: [PATCH 339/607] Bump ruby/setup-ruby from 1.187.0 to 1.190.0 Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.187.0 to 1.190.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb) - [Commits](https://github.com/ruby/setup-ruby/compare/161cd54b698f1fb3ea539faab2e036d409550e3c...a6e6f86333f0a2523ece813039b8b4be04560854) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/jekyll.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 528fbc03f0..4c18fa2eb0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: fetch-depth: 1 - name: Setup Ruby - uses: ruby/setup-ruby@161cd54b698f1fb3ea539faab2e036d409550e3c # v1.187.0 + uses: ruby/setup-ruby@a6e6f86333f0a2523ece813039b8b4be04560854 # v1.190.0 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index 1d1d48a81e..60593add43 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Ruby - uses: ruby/setup-ruby@161cd54b698f1fb3ea539faab2e036d409550e3c # v1.187.0 + uses: ruby/setup-ruby@a6e6f86333f0a2523ece813039b8b4be04560854 # v1.190.0 with: ruby-version: '3.2' bundler-cache: true From f48500d7d4652b4f4dccb43761989c8692d5f7d0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jul 2024 23:32:20 +0000 Subject: [PATCH 340/607] Bump rexml from 3.3.0 to 3.3.2 Bumps [rexml](https://github.com/ruby/rexml) from 3.3.0 to 3.3.2. - [Release notes](https://github.com/ruby/rexml/releases) - [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md) - [Commits](https://github.com/ruby/rexml/compare/v3.3.0...v3.3.2) --- updated-dependencies: - dependency-name: rexml dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 00e803984e..4f21b81428 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -131,7 +131,7 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rexml (3.3.0) + rexml (3.3.2) strscan rouge (4.3.0) ruby-rc4 (0.1.5) From 408d47dc6e66a9465951aae2fd06cf49f73c2bf7 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 30 Jul 2024 13:41:57 +0900 Subject: [PATCH 341/607] Translate "Ruby 3.2.5 Released" (ko) (#3327) * Copy from en cp {en,ko}/news/_posts/2024-07-26-ruby-3-2-5-released.md * Translate "Ruby 3.2.5 Released" (ko) --- .../_posts/2024-07-26-ruby-3-2-5-released.md | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 ko/news/_posts/2024-07-26-ruby-3-2-5-released.md diff --git a/ko/news/_posts/2024-07-26-ruby-3-2-5-released.md b/ko/news/_posts/2024-07-26-ruby-3-2-5-released.md new file mode 100644 index 0000000000..363e256e87 --- /dev/null +++ b/ko/news/_posts/2024-07-26-ruby-3-2-5-released.md @@ -0,0 +1,46 @@ +--- +layout: news_post +title: "Ruby 3.2.5 릴리스" +author: "nagachika" +translator: "shia" +date: 2024-07-26 10:00:00 +0000 +lang: ko +--- + +Ruby 3.2.5가 릴리스되었습니다. + +이번 릴리스에는 많은 버그 수정이 포함되어 있습니다. +그리고 내장된 `rexml` gem을 다음 보안 수정을 포함하는 버전으로 업데이트했습니다. +[CVE-2024-39908: REXML의 DoS 취약점]({%link ko/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md %}). + +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_2_5)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.2.5" | first %} + +* <{{ 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 e95fa76e61b25b27fb19fa933983745137586c23 Mon Sep 17 00:00:00 2001 From: Jun Aruga Date: Wed, 31 Jul 2024 13:10:06 +0200 Subject: [PATCH 342/607] Removing Works on Arm logo. See for the context and details. --- en/about/website/index.md | 5 ----- images/sponsor/works-on-arm.png | Bin 9527 -> 0 bytes ko/about/website/index.md | 5 ----- zh_tw/about/website/index.md | 5 ----- 4 files changed, 15 deletions(-) delete mode 100644 images/sponsor/works-on-arm.png diff --git a/en/about/website/index.md b/en/about/website/index.md index 759fbc6b63..d83fcfecfc 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -50,10 +50,6 @@ Also many thanks to the organizations that support us: Heroku -[Works on Arm][works-on-arm] (hosting) - -Works on Arm - [IBM][ibm] (hosting) [Fastly][fastly] (CDN) @@ -81,7 +77,6 @@ Also many thanks to the organizations that support us: [github-wiki]: https://github.com/ruby/www.ruby-lang.org/wiki [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ -[works-on-arm]: https://www.arm.com/markets/computing-infrastructure/works-on-arm [ibm]: https://www.ibm.com [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ diff --git a/images/sponsor/works-on-arm.png b/images/sponsor/works-on-arm.png deleted file mode 100644 index 4657de902df85f25aec062a37cd9351427ca7ac7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9527 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 fjh~X -[Works on Arm][works-on-arm] (호스팅) - -Works on Arm - [IBM][ibm] (호스팅) [Fastly][fastly] (CDN) @@ -83,7 +79,6 @@ lang: ko [github-wiki]: https://github.com/ruby/www.ruby-lang.org/wiki [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ -[works-on-arm]: https://www.arm.com/markets/computing-infrastructure/works-on-arm [ibm]: https://www.ibm.com [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ diff --git a/zh_tw/about/website/index.md b/zh_tw/about/website/index.md index 9960655094..789c69403c 100644 --- a/zh_tw/about/website/index.md +++ b/zh_tw/about/website/index.md @@ -47,10 +47,6 @@ lang: zh_tw Heroku -[Works on Arm][works-on-arm] (網站托管) - -Works on Arm - [IBM][ibm] (網站托管) [Fastly][fastly] (CDN) @@ -78,7 +74,6 @@ lang: zh_tw [github-wiki]: https://github.com/ruby/www.ruby-lang.org/wiki [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ -[works-on-arm]: https://www.arm.com/markets/computing-infrastructure/works-on-arm [ibm]: https://www.ibm.com [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ From 29663a8d83d1b4265f9082bab05094f6ae8cd57d Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Thu, 1 Aug 2024 11:59:59 +0900 Subject: [PATCH 343/607] Add missing "vulnerability" to REXML related security announces --- en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md | 2 +- en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md b/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md index 5867f1a877..7d51393eca 100644 --- a/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md +++ b/en/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-35176: DoS in REXML" +title: "CVE-2024-35176: DoS vulnerability in REXML" author: "kou" translator: date: 2024-05-16 05:00:00 +0000 diff --git a/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md index 48e7c7a131..844edd5347 100644 --- a/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md +++ b/en/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-39908 : DoS in REXML" +title: "CVE-2024-39908: DoS vulnerability in REXML" author: "watson1978" translator: date: 2024-07-16 03:00:00 +0000 From 552a3c0690001cf8ef05063dc1b9ef450bbb199d Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Thu, 1 Aug 2024 12:04:38 +0900 Subject: [PATCH 344/607] Add CVE-2024-41123: DoS vulnerabilities in REXML --- .../2024-08-01-dos-rexml-cve-2024-41123.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 en/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md diff --git a/en/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md b/en/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md new file mode 100644 index 0000000000..d4d5e49bd9 --- /dev/null +++ b/en/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-41123: DoS vulnerabilities in REXML" +author: "kou" +translator: +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: en +--- + +There are some DoS vulnerabilities in REXML gem. These vulnerabilities have been assigned the CVE identifier [CVE-2024-41123](https://www.cve.org/CVERecord?id=CVE-2024-41123). We strongly recommend upgrading the REXML gem. + +## Details + +When parsing an XML document that has many specific characters such as whitespace character, `>]` and `]>`, REXML gem may take long time. + +Please update REXML gem to version 3.3.3 or later. + +## Affected versions + +* REXML gem 3.3.2 or prior + +## Credits + +Thanks to [mprogrammer](https://hackerone.com/mprogrammer) and [scyoon](https://hackerone.com/scyoon) for discovering these issues. + +## History + +* Originally published at 2024-08-01 03:00:00 (UTC) From 11a15d61d86552a4775b25b18e99130f587c3f1e Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Thu, 1 Aug 2024 12:08:50 +0900 Subject: [PATCH 345/607] Add CVE-2024-41946: DoS vulnerability in REXML --- .../2024-08-01-dos-rexml-cve-2024-41946.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 en/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md diff --git a/en/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md b/en/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md new file mode 100644 index 0000000000..34cad88476 --- /dev/null +++ b/en/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-41946: DoS vulnerability in REXML" +author: "kou" +translator: +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: en +--- + +There is a DoS vulnerability in REXML gem. This vulnerability has been assigned the CVE identifier [CVE-2024-41946](https://www.cve.org/CVERecord?id=CVE-2024-41946). We strongly recommend upgrading the REXML gem. + +## Details + +When parsing an XML that has many entity expansions with SAX2 or pull parser API, REXML gem may take long time. + +Please update REXML gem to version 3.3.3 or later. + +## Affected versions + +* REXML gem 3.3.2 or prior + +## Credits + +Thanks to [NAITOH Jun](https://github.com/naitoh) for discovering and fixing this issue. + +## History + +* Originally published at 2024-08-01 03:00:00 (UTC) From 38adbd9db447bd20cb56db1963604c1bda9d3ef3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 2 Aug 2024 02:14:00 +0000 Subject: [PATCH 346/607] Bump rexml from 3.3.2 to 3.3.3 Bumps [rexml](https://github.com/ruby/rexml) from 3.3.2 to 3.3.3. - [Release notes](https://github.com/ruby/rexml/releases) - [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md) - [Commits](https://github.com/ruby/rexml/compare/v3.3.2...v3.3.3) --- updated-dependencies: - dependency-name: rexml dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 4f21b81428..eeaabeb19d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -131,7 +131,7 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rexml (3.3.2) + rexml (3.3.3) strscan rouge (4.3.0) ruby-rc4 (0.1.5) From ac9edde94905e61c2193a064644f5a8aa0ba8b93 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 1 Aug 2024 23:23:46 +0800 Subject: [PATCH 347/607] Translate CVE 2024 41123 (zh_tw) --- .../2024-08-01-dos-rexml-cve-2024-41123.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md diff --git a/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md b/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md new file mode 100644 index 0000000000..800cd47f56 --- /dev/null +++ b/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-41123: DoS vulnerabilities in REXML" +author: "kou" +translator: "Bear Su" +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: zh_tw +--- + +在 REXML gem 發現了一些 DoS 漏洞。 +該漏洞的 CVE 編號為 [CVE-2024-41123](https://www.cve.org/CVERecord?id=CVE-2024-41123)。 +我們強烈建議您升級 REXML gem。 + +## 風險細節 + +當解析包含許多特定字元如空白字元、`>]`、和 `]>` 的 XML 文件時,REXML gem 可能會需要很長的處理時間。 + +請更新 REXML gem 至 3.3.3 或更新的版本。 + +## 受影響版本 + +* REXML gem 3.3.2 及更早版本 + +## 致謝 + +感謝 [mprogrammer](https://hackerone.com/mprogrammer) 和 [scyoon](https://hackerone.com/scyoon) 發現這些問題。 + +## 歷史 + +* 最初發布於 2024-08-01 03:00:00 (UTC) From b799fd6e2c6c6a2dfc6c1ef541f2726815b4660b Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 1 Aug 2024 23:23:56 +0800 Subject: [PATCH 348/607] Translate CVE 2024 41946 (zh_tw) --- .../2024-08-01-dos-rexml-cve-2024-41946.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md diff --git a/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md b/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md new file mode 100644 index 0000000000..dc3a4281a1 --- /dev/null +++ b/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-41946: DoS vulnerability in REXML" +author: "kou" +translator: "Bear Su" +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: zh_tw +--- + +在 REXML gem 發現了一個 DoS 漏洞。 +該漏洞的 CVE 編號為 [CVE-2024-41946](https://www.cve.org/CVERecord?id=CVE-2024-41946)。 +我們強烈建議您升級 REXML gem。 + +## 風險細節 + +當使用 SAX2 或是 pull parser API 解析包含許多 entity expansion 的 XML 時,REXML gem 可能會需要很長的處理時間。 + +請更新 REXML gem 至 3.3.3 或更新的版本。 + +## 受影響版本 + +* REXML gem 3.3.2 及更早版本 + +## 致謝 + +感謝 [NAITOH Jun](https://github.com/naitoh) 發現並修復此問題。 + +## 歷史 + +* 最初發布於 2024-08-01 03:00:00 (UTC) From feaf940a2cf87980716c0202719647fd82c38dbc Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 3 Aug 2024 09:27:29 +0900 Subject: [PATCH 349/607] Translate "DoS vulnerabilities in REXML" (ko) (#3334) * cp from origin posts * Tranlates 2024-08-01 dos rexml (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../2024-08-01-dos-rexml-cve-2024-41123.md | 29 +++++++++++++++++++ .../2024-08-01-dos-rexml-cve-2024-41946.md | 29 +++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 ko/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md create mode 100644 ko/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md diff --git a/ko/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md b/ko/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md new file mode 100644 index 0000000000..d8efca8b1e --- /dev/null +++ b/ko/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-41123: REXML의 DoS 취약점" +author: "kou" +translator: "shia" +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: ko +--- + +REXML gem에서 DoS 취약점이 몇 개 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2024-41123](https://www.cve.org/CVERecord?id=CVE-2024-41123)으로 등록되었습니다. REXML gem 업그레이드를 강하게 추천합니다. + +## 세부 내용 + +공백 문자, `>]`, `]>`와 같은 특정 문자가 많이 포함된 XML 문서를 파싱할 때, REXML gem은 처리에 긴 시간이 걸립니다. + +REXML gem을 3.3.3이나 그 이상으로 업데이트하세요. + +## 해당 버전 + +* REXML gem 3.3.2와 그 이하 + +## 도움을 준 사람 + +이 문제를 발견해 준 [mprogrammer](https://hackerone.com/mprogrammer)와 [scyoon](https://hackerone.com/scyoon)에게 감사를 표합니다. + +## 수정 이력 + +* 2024-08-01 03:00:00 (UTC) 최초 공개 diff --git a/ko/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md b/ko/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md new file mode 100644 index 0000000000..0ab27c73d9 --- /dev/null +++ b/ko/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-41946: REXML의 DoS 취약점" +author: "kou" +translator: "shia" +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: ko +--- + +REXML gem에서 DoS 취약점이 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2024-41946](https://www.cve.org/CVERecord?id=CVE-2024-41946)으로 등록되었습니다. REXML gem 업그레이드를 강하게 추천합니다. + +## 세부 내용 + +SAX2나 풀(pull) 파서 API로 많은 엔티티 확장을 포함하는 XML을 파싱할 때, REXML gem은 처리에 긴 시간이 걸립니다. + +REXML gem을 3.3.3이나 그 이상으로 업데이트하세요. + +## 해당 버전 + +* REXML gem 3.3.2와 그 이하 + +## 도움을 준 사람 + +이 문제를 발견해 준 [NAITOH Jun](https://github.com/naitoh)에게 감사를 표합니다. + +## 수정 이력 + +* 2024-08-01 03:00:00 (UTC) 최초 공개 From 5e44011be3862c05ce5ec7b9f81e99c2d5e837bb Mon Sep 17 00:00:00 2001 From: Anita Hammer <166057949+anitahammer@users.noreply.github.com> Date: Sun, 14 Jul 2024 15:02:52 +0100 Subject: [PATCH 350/607] Fix broken link --- en/documentation/faq/3/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/documentation/faq/3/index.md b/en/documentation/faq/3/index.md index 7d740be207..377778f896 100644 --- a/en/documentation/faq/3/index.md +++ b/en/documentation/faq/3/index.md @@ -189,7 +189,7 @@ Thanks to Anders Schneiderman for the basis of this description. {% include faq-out-of-date.html %} Is Tk installed correctly on your Windows box? Go to -[http://dev.scriptics.com/software/tcltk/](http://dev.scriptics.com/software/tcltk/) +[https://wiki.tcl-lang.org/page/Binary+Distributions](https://wiki.tcl-lang.org/page/Binary+Distributions#85b8647b1ec80c2fa1698c3c7e76204a944a95db2487347c51773f26b9dad6ae) to find a precompiled binary Tcl/Tk distribution for your box. Are the environment variables `TCL_LIBRARY` and `TK_LIBRARY` pointing to the From 670d94a37d66ba69ed764b280b285212c3641c37 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 6 Aug 2024 14:49:31 +0900 Subject: [PATCH 351/607] Update ko/documentation/faq/3/index.md (#3338) --- ko/documentation/faq/3/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ko/documentation/faq/3/index.md b/ko/documentation/faq/3/index.md index e001e4456b..521d2a55ad 100644 --- a/ko/documentation/faq/3/index.md +++ b/ko/documentation/faq/3/index.md @@ -184,7 +184,7 @@ rbcw 버전을 사용하려면 Cygwin의 .dll을 별도로 설치해야 합니 {% include faq-out-of-date.html %} -Windows에 Tk가 올바르게 설치되었나요? 로 +Windows에 Tk가 올바르게 설치되었나요? [https://wiki.tcl-lang.org/page/Binary+Distributions](https://wiki.tcl-lang.org/page/Binary+Distributions#85b8647b1ec80c2fa1698c3c7e76204a944a95db2487347c51773f26b9dad6ae)로 이동하여 해당 운영 체제에 대해 미리 컴파일된 Tcl/Tk 바이너리 배포판을 찾아보세요. 환경 변수 `TCL_LIBRARY` 및 `TK_LIBRARY`가 tcl 및 tk가 포함된 디렉터리를 가리키고 From b40b11fc0d97e4f0189789680fe3d6fce65ea215 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 6 Aug 2024 04:00:24 -0400 Subject: [PATCH 352/607] Translation of the news of July 2024 (es) (#3339) * Translation of the news of July 2024 (es) * Fix whitespace * Fix lang --- .../_posts/2024-07-09-ruby-3-3-4-released.md | 68 +++++++++++++++++++ .../2024-07-16-dos-rexml-cve-2024-39908.md | 34 ++++++++++ .../_posts/2024-07-26-ruby-3-2-5-released.md | 48 +++++++++++++ 3 files changed, 150 insertions(+) create mode 100644 es/news/_posts/2024-07-09-ruby-3-3-4-released.md create mode 100644 es/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md create mode 100644 es/news/_posts/2024-07-26-ruby-3-2-5-released.md diff --git a/es/news/_posts/2024-07-09-ruby-3-3-4-released.md b/es/news/_posts/2024-07-09-ruby-3-3-4-released.md new file mode 100644 index 0000000000..12ace2cbba --- /dev/null +++ b/es/news/_posts/2024-07-09-ruby-3-3-4-released.md @@ -0,0 +1,68 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.4" +author: "k0kubun" +translator: vtamara +date: 2024-07-09 00:30:00 +0000 +lang: es +--- + +Ruby 3.3.4 ha sido publicado. + +Esta versión corrige una regresión en Ruby 3.3.3 de dependencias +que faltaban en el gemspec de algunas gemas incluidas: `net-pop`, +`net-ftp`, `net-imap`, y `prime` +[[Falla #20581]](https://bugs.ruby-lang.org/issues/20581). + +Esta corrección permite que Bundler instale correctamente esas gemas +en plataformas como Heroku. + +Si `bundle install` le opera correctamente, puede que no tenga +esta falla. + +Otros cambios son correcciones a fallas menores. +Por favor ver detalles en [la publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_4). + +## Calendario de publicación + +Para avanzar, queremos publicar una nueva versión de Ruby estable +(en este momento Ruby 3.3) cada 2 meses después de la versión `.1`. +En el caso de Ruby 3.3, la versión 3.3.5 se supone que debe ser +liberada el 3 de Septiembre, 3.3.6 el 5 de noviembre, y la +3.3.7 el 7 de Enero. + +Si hay algún cambio que afecte a una cantidad considerable de personas, +e.g. para esta versión, los usuarios de Ruby 3.3.3 en Heroku, +liberaremos una nueva versión antes de lo planeado. + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.3.4" | first %} + +* <{{ 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 }} + +## Comentario de la versión + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a hacer esta versión. + +Gracias por sus contribuciones. diff --git a/es/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/es/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md new file mode 100644 index 0000000000..f61893ce22 --- /dev/null +++ b/es/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -0,0 +1,34 @@ +--- +layout: news_post +title: "CVE-2024-39908: Vulnerabilidad de Denegación de Servicio (DoS) en REXML" +author: "watson1978" +translator: vtamara +date: 2024-07-16 03:00:00 +0000 +tags: security +lang: es +--- + +Hay una vulnerabilidad de denegación de servicio (DoS) en la gema REXML. +A esta vulnerabilidad se le ha asignado el identificador CVE +[CVE-2024-39908](https://www.cve.org/CVERecord?id=CVE-2024-39908). +Recomendamos enfáticamente actualizar la gema REXML. + +## Detalles + +Cuando analiza un XML que tiene caracteres específicos como +`<`, `0` y `%>`, la gema REXML puede tardar mucho tiempo. + +Por favor actualice la gema REXML a la versión 3.3.2 o posterior. + +## Versiones afectadas + +* Gema REXML 3.3.1 y previas. + +## Créditos + +Agradecemos a [mprogrammer](https://hackerone.com/mprogrammer) +por descrubir este problema. + +## Historia + +* Publicado originalmente el 2024-07-16 03:00:00 (UTC) diff --git a/es/news/_posts/2024-07-26-ruby-3-2-5-released.md b/es/news/_posts/2024-07-26-ruby-3-2-5-released.md new file mode 100644 index 0000000000..cc809b0283 --- /dev/null +++ b/es/news/_posts/2024-07-26-ruby-3-2-5-released.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "Publicado Ruby 3.2.5" +author: "nagachika" +translator: vtamara +date: 2024-07-26 10:00:00 +0000 +lang: es +--- + +Ruby 3.2.5 ha sido publicado. + +Esta versión incluye muchas correcciones a fallas. +Y actualizamos la versión de la gema incluida `rexml` para incorporar +la corrección a la falla de seguridad +[CVE-2024-39908 : Denegación de servicio (DoS) en REXML]({%link es/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md %}). + +Por favor vea detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_2_5). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.2.5" | first %} + +* <{{ 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 }} + +## Comentarios de la versión + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de fallas nos ayudaron a hacer esta versión. + +Gracias por sus contribuciones. From a353b11759aacd7eb1e6a74862c18aacecf85586 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 6 Aug 2024 04:30:21 -0400 Subject: [PATCH 353/607] Translate news of 1st august 2024 (#3340) --- .../2024-08-01-dos-rexml-cve-2024-41123.md | 36 ++++++++++++++++++ .../2024-08-01-dos-rexml-cve-2024-41946.md | 38 +++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 es/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md create mode 100644 es/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md diff --git a/es/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md b/es/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md new file mode 100644 index 0000000000..24f6454fe2 --- /dev/null +++ b/es/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md @@ -0,0 +1,36 @@ +--- +layout: news_post +title: "CVE-2024-41123: vulnerabilidad de denegación de servicio (DoS) en REXML" +author: "kou" +translator: vtamara +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: es +--- + +Hay algunas vulnerabilidades de denegación de servicio en la gema +REXML. +A estas vulnerabilidades se les ha asignado el identificador CVE +[CVE-2024-41123](https://www.cve.org/CVERecord?id=CVE-2024-41123). +Recomendamos enfáticamente actualizar la gema REXML. + +## Detalles + +Cuando analiza un documento XML que tiene muchos caracteres específicos +como espacio en blanco, `>]` y `]>`, la gema REXML puede tardar mucho +tiempo. + +Por favor actualice la gema REXML a la versión 3.3.3 o posterior. + +## Versiones afectadas + +* Gema REXML 3.3.2 o anterior + +## Créditos + +Agradecemos a [mprogrammer](https://hackerone.com/mprogrammer) y +[scyoon](https://hackerone.com/scyoon) por descubrir estos problemas. + +## Historia + +* Publicado originalmente el 2024-08-01 03:00:00 (UTC) diff --git a/es/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md b/es/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md new file mode 100644 index 0000000000..350980ddce --- /dev/null +++ b/es/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md @@ -0,0 +1,38 @@ +--- +layout: news_post +title: "CVE-2024-41946: Vulnerabilidad de denegación de servicio en REXML" +author: "kou" +translator: vtamara +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: es +--- + + +Hay una vulnerabilidad de denegación de servicio en la gema +REXML. +A esta vulnerabilidad se le ha asignado el identificador CVE +[CVE-2024-41946](https://www.cve.org/CVERecord?id=CVE-2024-41946). + +Recomendamos enfáticamente actualizar la gema REXML. + + +## Detalles + +Cuando analiza un XML que tiene muchas expansiones de entidades con SAX2 +o la API de analizar, la gema REXML puede tardar mucho tiempo. + +Por favor actualice la gema REXML a la version 3.3.3 o posterior. + +## Versiones afectadas + +* Gema REXML 3.3.2 y anteriores + +## Créditos + +Agradecemos a [NAITOH Jun](https://github.com/naitoh) por descubrir y +resolver este problema. + +## Historia + +* Publicado originalmente el 2024-08-01 03:00:00 (UTC) From 938b6611254dd9646a53e17a163f3c45a13e5552 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 7 Aug 2024 14:35:36 +0900 Subject: [PATCH 354/607] Create release draft with erb --- lib/draft-release.rb | 10 ++++++++++ lib/release-templete.erb | 42 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 lib/draft-release.rb create mode 100644 lib/release-templete.erb diff --git a/lib/draft-release.rb b/lib/draft-release.rb new file mode 100644 index 0000000000..9760fb3a05 --- /dev/null +++ b/lib/draft-release.rb @@ -0,0 +1,10 @@ +require "erb" + +template = File.read("lib/release-template.erb") +version = ARGV[0] || "3.3.4" + +output_path = "en/news/_posts/#{Time.now.strftime("%Y-%m-%d")}-#{version.gsub(/\./, "-")}-released.md" + +File.open(output_path, "w") do |file| + file.write ERB.new(template).result(binding) +end diff --git a/lib/release-templete.erb b/lib/release-templete.erb new file mode 100644 index 0000000000..067e651799 --- /dev/null +++ b/lib/release-templete.erb @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby <%= version %> Released" +author: +translator: +date: <%= Time.now %> +lang: en +--- + +Ruby <%= version %> has been released. + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v<%= version.gsub(/\./, '_') %>) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "<%= version %>" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 8dfe5240e69e3a08b62cdbb009a9abb7569a4197 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 7 Aug 2024 14:53:51 +0900 Subject: [PATCH 355/607] Added GitHub Actions for release draft --- .github/workflows/draft-release.yml | 45 +++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .github/workflows/draft-release.yml diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml new file mode 100644 index 0000000000..da662597c8 --- /dev/null +++ b/.github/workflows/draft-release.yml @@ -0,0 +1,45 @@ +name: Create draft release + +on: + repository_dispatch: + types: + - release + workflow_dispatch: + inputs: + version: + description: 'Version of the Ruby package to release' + required: true + default: '3.3.4' + +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: ruby/setup-ruby@v1 + with: + ruby-version: 3.3.4 + + - name: Generate draft release entry + run: | + ruby lib/draft-release.rb ${{ github.event.client_payload.version || github.event.inputs.version }} + + - name: Create Commit + run: | + git config user.name "GitHub Actions Bot" + git config user.email "github-actions[bot]@users.noreply.github.com" + git add . + git commit -m "Create release for ${{ github.event.client_payload.version || github.event.inputs.version }}" + env: + GITHUB_TOKEN: ${{ secrets.MATZBOT_GITHUB_WORKFLOW_TOKEN }} + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v6 + with: + token: ${{ secrets.MATZBOT_GITHUB_WORKFLOW_TOKEN }} + branch: releases/${{ github.event.client_payload.version || github.event.inputs.version }} + delete-branch: true + title: "Create release for ${{ github.event.client_payload.version || github.event.inputs.version }}" + body: "This is an automated pull request to create a release" + draft: true From 51bf0765763fb9212e237e1a32173ac292f02fcf Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 7 Aug 2024 15:53:42 +0900 Subject: [PATCH 356/607] typofix --- lib/{release-templete.erb => release-template.erb} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename lib/{release-templete.erb => release-template.erb} (100%) diff --git a/lib/release-templete.erb b/lib/release-template.erb similarity index 100% rename from lib/release-templete.erb rename to lib/release-template.erb From f806c6d5fb4c382ab7d4d7b2faae9b8648144992 Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Thu, 8 Aug 2024 16:57:36 +0800 Subject: [PATCH 357/607] Translate CVE-2024-41123, CVE-2024-41946 (zh_cn) (#3337) --- .../2024-08-01-dos-rexml-cve-2024-41123.md | 29 +++++++++++++++++++ .../2024-08-01-dos-rexml-cve-2024-41946.md | 29 +++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 zh_cn/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md create mode 100644 zh_cn/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md diff --git a/zh_cn/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md b/zh_cn/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md new file mode 100644 index 0000000000..0d4dfa9dbf --- /dev/null +++ b/zh_cn/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-41123: REXML 中的 DoS 漏洞" +author: "kou" +translator: "GAO Jun" +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: zh_cn +--- + +REXML gem 中存在多个 DoS 漏洞。此漏洞的 CVE 编号为 [CVE-2024-41123](https://www.cve.org/CVERecord?id=CVE-2024-41123)。我们强烈建议您更新 REXML gem。 + +## 详情 + +当要处理的 XML 文档中存在很多特定字符时(如空格、`>]` 和 `]>`),REXML gem 可能会花费很长时间。 + +请更新 REXML gem 至 3.3.3 或更高版本。 + +## 受影响版本 + +* REXML gem 3.3.2 或更低版本 + +## 致谢 + +感谢 [mprogrammer](https://hackerone.com/mprogrammer) 和 [scyoon](https://hackerone.com/scyoon) 发现此问题 + +## 历史 + +* 最初发布于 2024-08-01 03:00:00 (UTC) diff --git a/zh_cn/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md b/zh_cn/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md new file mode 100644 index 0000000000..7ea4c504e5 --- /dev/null +++ b/zh_cn/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-41946: REXML 中的 DoS 漏洞" +author: "kou" +translator: "GAO Jun" +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: zh_cn +--- + +REXML gem 中存在 DoS 漏洞。此漏洞的 CVE 编号为 [CVE-2024-41946](https://www.cve.org/CVERecord?id=CVE-2024-41946)。我们强烈建议您更新 REXML gem。 + +## 详情 + +当使用 SAX2 或 拉取解析器 API 解析具有许多实体扩展的 XML 时,REXML gem 可能需要很长时间。 + +请更新 REXML gem 至 3.3.3 或更高版本。 + +## 受影响版本 + +* REXML gem 3.3.2 或更低版本 + +## 致谢 + +感谢 [NAITOH Jun](https://github.com/naitoh) 发现此问题。 + +## 历史 + +* 最初发布于 2024-08-01 03:00:00 (UTC) From d15fe2a56360f14878122b8d016d3c532a35c3d6 Mon Sep 17 00:00:00 2001 From: John Gallagher Date: Sat, 17 Aug 2024 18:07:52 +0100 Subject: [PATCH 358/607] fix: correct URL for Remote Ruby --- en/community/podcasts/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/community/podcasts/index.md b/en/community/podcasts/index.md index f33dabbf85..f8b3775f06 100644 --- a/en/community/podcasts/index.md +++ b/en/community/podcasts/index.md @@ -30,6 +30,6 @@ wisdom to share, get in touch with the creators of these shows. You can also start your own Ruby podcast and get added to this list! [rooftop_ruby]: https://www.rooftopruby.com -[remote_ruby]: https://remoteruby.transistor.fm/ +[remote_ruby]: https://www.remoteruby.com [rorpodcast]: https://www.therubyonrailspodcast.com [rogues]: https://rubyrogues.com From 75fc7453dec9cf9257458e15a3cb875646f16ec3 Mon Sep 17 00:00:00 2001 From: Yoshikazu Takata Date: Thu, 8 Aug 2024 15:54:25 +0900 Subject: [PATCH 359/607] Translate "Ruby 3.1.6 Released" (ja) --- .../_posts/2024-05-29-ruby-3-1-6-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ja/news/_posts/2024-05-29-ruby-3-1-6-released.md diff --git a/ja/news/_posts/2024-05-29-ruby-3-1-6-released.md b/ja/news/_posts/2024-05-29-ruby-3-1-6-released.md new file mode 100644 index 0000000000..26db09db33 --- /dev/null +++ b/ja/news/_posts/2024-05-29-ruby-3-1-6-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.1.6 リリース" +author: "hsbt" +translator: "teeta32" +date: 2024-05-29 9:00:00 +0000 +lang: ja +--- + +Ruby 3.1.6 がリリースされました。 + +現在、Ruby 3.1 系列はセキュリティメンテナンスフェーズのため、通常は脆弱性の修正のみ行います。しかし、Ruby 3.1.5 のリリース後に Ruby のビルドに失敗する問題がいくつか生じたため、この問題を修正する Ruby 3.1.6 がリリースされました。 + +詳しくは以下の記事を参照してください。 + +* [Bug #20151: Can't build Ruby 3.1 on FreeBSD 14.0](https://bugs.ruby-lang.org/issues/20151) +* [Bug #20451: Bad Ruby 3.1.5 backport causes fiddle to fail to build](https://bugs.ruby-lang.org/issues/20451) +* [Bug #20431: Ruby 3.3.0 build fail with make: *** \[io_buffer.o\] Error 1](https://bugs.ruby-lang.org/issues/20431) + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_6) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.1.6" | first %} + +* <{{ 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 ae483cd4265a25fee55ae2659876c8c4beb0b366 Mon Sep 17 00:00:00 2001 From: 01hayakawa <01hayakawa@netlab.jp> Date: Fri, 9 Aug 2024 10:24:32 +0900 Subject: [PATCH 360/607] Translate Datadog provides OSS community support for ruby-lang.org (ja) --- .../_posts/2024-05-30-datadog-oss-program.md | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 ja/news/_posts/2024-05-30-datadog-oss-program.md diff --git a/ja/news/_posts/2024-05-30-datadog-oss-program.md b/ja/news/_posts/2024-05-30-datadog-oss-program.md new file mode 100644 index 0000000000..55c071aaf2 --- /dev/null +++ b/ja/news/_posts/2024-05-30-datadog-oss-program.md @@ -0,0 +1,30 @@ +--- +layout: news_post +title: "Datadogがruby-lang.orgに対してOSSコミュニティサポートを提供" +author: "hsbt" +translator: "01hayakawa" +date: 2024-05-30 00:00:00 +0000 +lang: ja +--- + +Rubyの公式サイトであるruby-lang.orgが、[Datadog OSSコミュニティサポート](https://opensource.datadoghq.com/projects/oss-program/)によりモニタリングにDatadogを採用しました。 + +これにより、サイトのパフォーマンスと可用性をリアルタイムで効果的に監視することができます。Datadogを使用する主な利点は以下の通りです。 + +## CDNの可視性 + +Fastlyが提供するcache.ruby-lang.orgは、Rubyエコシステムの最も重要なインフラです。DatadogはContent Delivery Network (CDN)のパフォーマンスを監視することができます。キャッシュカバレッジ、エラー率を追跡し、ユーザ体験を向上させます。 + +## 統一されたデータビジュアライゼーション + +ruby-lang.orgにはさまざまなWebサービスが存在します。Datadogを使用することで、ログ分析データをメトリクスやアプリケーションパフォーマンス監視(APM)データと同じダッシュボードで視覚化することができます。 + +## JITトレースの可視化 + +Datadogのトレース機能を活用することで、リクエストがWebサーバーやデータベースを通過する際のトレースをキャプチャできます。 +これはボトルネックや問題のあるリクエストを特定するのに役立ちます。 + +主要なメトリクスの[公開ダッシュボード](https://p.ap1.datadoghq.com/sb/1271b83e-af90-11ee-9072-da7ad0900009-01633a8fa8c0b0c0051f1889afdf55dc)を公開しました。 +ダッシュボードは、モニタリングの改善を続けながら随時更新していきます。特に、YJITのパフォーマンスモニタリングに注力する予定です。 + +今回のDatadogの採用が、Rubyコミュニティのサイトパフォーマンスの向上に寄与することを期待しています。引き続きruby-lang.orgをご利用いただき、より快適なユーザ体験をお楽しみください。 From 6ae1fa7834eba933d5be5cabe45756322be2b70d Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 20 Aug 2024 05:38:42 +0900 Subject: [PATCH 361/607] Follow up "Remote Ruby podcast link is broken" on others (#3346) --- id/community/podcasts/index.md | 2 +- ko/community/podcasts/index.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/id/community/podcasts/index.md b/id/community/podcasts/index.md index 1fab7ea77a..5696d7ca02 100644 --- a/id/community/podcasts/index.md +++ b/id/community/podcasts/index.md @@ -31,6 +31,6 @@ Anda juga dapat memulai *podcast* Ruby sendiri and menambahkan pada daftar berikut! [rooftop_ruby]: https://www.rooftopruby.com -[remote_ruby]: https://remoteruby.transistor.fm/ +[remote_ruby]: https://www.remoteruby.com [rorpodcast]: https://www.therubyonrailspodcast.com [rogues]: https://rubyrogues.com diff --git a/ko/community/podcasts/index.md b/ko/community/podcasts/index.md index bdcbf68b67..c043abe4c5 100644 --- a/ko/community/podcasts/index.md +++ b/ko/community/podcasts/index.md @@ -30,6 +30,6 @@ Ruby와 Ruby 커뮤니티에 대한 뉴스, 인터뷰, 토론을 들어보세요 당신의 Ruby 팟캐스트를 시작하고 이 목록에 추가할 수도 있습니다! [rooftop_ruby]: https://www.rooftopruby.com -[remote_ruby]: https://remoteruby.transistor.fm/ +[remote_ruby]: https://www.remoteruby.com [rorpodcast]: https://www.therubyonrailspodcast.com [rogues]: https://rubyrogues.com From 92ea9b2821c82a5041c3abea91d3696e89e50f1f Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Thu, 22 Aug 2024 10:46:36 +0900 Subject: [PATCH 362/607] Add CVE-2024-43398: DoS vulnerability in REXML --- .../2024-08-22-dos-rexml-cve-2024-43398.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 en/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md diff --git a/en/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md b/en/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md new file mode 100644 index 0000000000..c2118b4d93 --- /dev/null +++ b/en/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-43398: DoS vulnerability in REXML" +author: "kou" +translator: +date: 2024-08-22 03:00:00 +0000 +tags: security +lang: en +--- + +There is a DoS vulnerability in REXML gem. This vulnerability has been assigned the CVE identifier [CVE-2024-43398](https://www.cve.org/CVERecord?id=CVE-2024-43398). We strongly recommend upgrading the REXML gem. + +## Details + +When parsing an XML that has many deep elements that have same local name attributes. + +It's only affected with the tree parser API. If you're using `REXML::Document.new` to parse an XML, you may be affected. + +Please update REXML gem to version 3.3.6 or later. + +## Affected versions + +* REXML gem 3.3.5 or prior + +## Credits + +Thanks to [l33thaxor](https://hackerone.com/l33thaxor) for discovering this issue. + +## History + +* Originally published at 2024-08-22 03:00:00 (UTC) From bcc7cdb4007261d0c7d8d1ce3b1f74fdd0ccb1e5 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 22 Aug 2024 16:55:04 +0800 Subject: [PATCH 363/607] Translate CVE 2024 43398 (zh_tw) --- .../2024-08-22-dos-rexml-cve-2024-43398.md | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md diff --git a/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md b/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md new file mode 100644 index 0000000000..e0f4adfd04 --- /dev/null +++ b/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md @@ -0,0 +1,33 @@ +--- +layout: news_post +title: "CVE-2024-43398: DoS vulnerability in REXML" +author: "kou" +translator: "Bear Su" +date: 2024-08-22 03:00:00 +0000 +tags: security +lang: zh_tw +--- + +在 REXML gem 發現了一個 DoS 漏洞。 +該漏洞的 CVE 編號為 [CVE-2024-43398](https://www.cve.org/CVERecord?id=CVE-2024-43398)。 +我們強烈建議您升級 REXML gem。 + +## 風險細節 + +當解析的 XML 擁有許多深層級的元素,並且這些元素有相同的名稱屬性時。 + +此風險只有影響到 Tree 解析 API。如果您正在使用 `REXML::Document.new` 解析 XML,您可能會受到影響。 + +請更新 REXML gem 至 3.3.6 或更新的版本。 + +## 受影響版本 + +* REXML gem 3.3.5 及更早版本 + +## 致謝 + +感謝 [l33thaxor](https://hackerone.com/l33thaxor) 發現此問題。 + +## 歷史 + +* 最初發布於 2024-08-22 03:00:00 (UTC) From cfbdcceafcd8adabcbb009db17221bc7aa845394 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 20:50:34 +0000 Subject: [PATCH 364/607] Bump rexml from 3.3.3 to 3.3.6 Bumps [rexml](https://github.com/ruby/rexml) from 3.3.3 to 3.3.6. - [Release notes](https://github.com/ruby/rexml/releases) - [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md) - [Commits](https://github.com/ruby/rexml/compare/v3.3.3...v3.3.6) --- updated-dependencies: - dependency-name: rexml dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index eeaabeb19d..b743d2083b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -131,7 +131,7 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rexml (3.3.3) + rexml (3.3.6) strscan rouge (4.3.0) ruby-rc4 (0.1.5) From fc28dfae615ff78b9d372612c1ef9cccba4cec4d Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Fri, 23 Aug 2024 12:05:15 +0900 Subject: [PATCH 365/607] bundle up --bundler --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index b743d2083b..aada939bb3 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -215,4 +215,4 @@ DEPENDENCIES validate-website (~> 1.6) BUNDLED WITH - 2.5.13 + 2.5.17 From 58612d9d8a8d20636c3de94a864c47cee5439e3b Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Fri, 23 Aug 2024 12:05:34 +0900 Subject: [PATCH 366/607] update bundles --- Gemfile.lock | 90 ++++++++++++++++++++++++++-------------------------- 1 file changed, 45 insertions(+), 45 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index aada939bb3..ea21f009ba 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,18 +2,18 @@ GEM remote: https://rubygems.org/ specs: Ascii85 (1.1.1) - addressable (2.8.6) - public_suffix (>= 2.0.2, < 6.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) afm (0.2.2) - async (2.12.0) - console (~> 1.25, >= 1.25.2) + async (2.15.3) + console (~> 1.26) fiber-annotation - io-event (~> 1.6) + io-event (~> 1.6, >= 1.6.5) base64 (0.2.0) bigdecimal (3.1.8) colorator (1.1.0) - concurrent-ruby (1.3.3) - console (1.25.2) + concurrent-ruby (1.3.4) + console (1.27.0) fiber-annotation fiber-local (~> 1.1) json @@ -38,24 +38,24 @@ GEM fiber-annotation (0.2.0) fiber-local (1.1.0) fiber-storage - fiber-storage (0.1.2) + fiber-storage (1.0.0) forwardable-extended (2.6.0) - google-protobuf (4.27.1) + google-protobuf (4.27.3) bigdecimal rake (>= 13) - google-protobuf (4.27.1-aarch64-linux) + google-protobuf (4.27.3-aarch64-linux) bigdecimal rake (>= 13) - google-protobuf (4.27.1-arm64-darwin) + google-protobuf (4.27.3-arm64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.27.1-x86-linux) + google-protobuf (4.27.3-x86-linux) bigdecimal rake (>= 13) - google-protobuf (4.27.1-x86_64-darwin) + google-protobuf (4.27.3-x86_64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.27.1-x86_64-linux) + google-protobuf (4.27.3-x86_64-linux) bigdecimal rake (>= 13) hashery (2.1.2) @@ -71,7 +71,7 @@ GEM http_parser.rb (0.8.0) i18n (1.14.5) concurrent-ruby (~> 1.0) - io-event (1.6.4) + io-event (1.6.5) jekyll (4.3.3) addressable (~> 2.4) colorator (~> 1.0) @@ -102,18 +102,18 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) - minitest (5.23.1) - nokogiri (1.16.6-aarch64-linux) + minitest (5.25.1) + nokogiri (1.16.7-aarch64-linux) racc (~> 1.4) - nokogiri (1.16.6-arm-linux) + nokogiri (1.16.7-arm-linux) racc (~> 1.4) - nokogiri (1.16.6-arm64-darwin) + nokogiri (1.16.7-arm64-darwin) racc (~> 1.4) - nokogiri (1.16.6-x86-linux) + nokogiri (1.16.7-x86-linux) racc (~> 1.4) - nokogiri (1.16.6-x86_64-darwin) + nokogiri (1.16.7-x86_64-darwin) racc (~> 1.4) - nokogiri (1.16.6-x86_64-linux) + nokogiri (1.16.7-x86_64-linux) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) @@ -124,8 +124,8 @@ GEM hashery (~> 2.0) ruby-rc4 ttfunk - public_suffix (5.1.0) - racc (1.8.0) + public_suffix (6.0.1) + racc (1.8.1) rainbow (3.1.1) rake (13.2.1) rb-fsevent (0.11.2) @@ -136,26 +136,26 @@ GEM rouge (4.3.0) ruby-rc4 (0.1.5) safe_yaml (1.0.5) - sass-embedded (1.77.5-aarch64-linux-gnu) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.5-aarch64-linux-musl) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.5-arm-linux-gnueabihf) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.5-arm-linux-musleabihf) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.5-arm64-darwin) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.5-x86-linux-gnu) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.5-x86-linux-musl) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.5-x86_64-darwin) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.5-x86_64-linux-gnu) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.77.5-x86_64-linux-musl) - google-protobuf (>= 3.25, < 5.0) + sass-embedded (1.77.8-aarch64-linux-gnu) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-aarch64-linux-musl) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-arm-linux-gnueabihf) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-arm-linux-musleabihf) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-arm64-darwin) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-x86-linux-gnu) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-x86-linux-musl) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-x86_64-darwin) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-x86_64-linux-gnu) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-x86_64-linux-musl) + google-protobuf (~> 4.26) slop (4.10.1) spidr (0.7.1) nokogiri (~> 1.3) @@ -184,7 +184,7 @@ GEM rexml (~> 3.2) webrick (1.8.1) yell (2.2.2) - zeitwerk (2.6.16) + zeitwerk (2.6.17) PLATFORMS aarch64-linux From 933bab753d114f4ec4751eac9bb81241eb1b6189 Mon Sep 17 00:00:00 2001 From: nagachika Date: Mon, 19 Aug 2024 20:32:04 +0900 Subject: [PATCH 367/607] Removed a CVE link that was added by mistake in ruby-3.2.4 release announces. --- en/news/_posts/2024-04-23-ruby-3-2-4-released.md | 1 - ja/news/_posts/2024-04-23-ruby-3-2-4-released.md | 1 - 2 files changed, 2 deletions(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md index cfc236f314..0b93cd45f4 100644 --- a/en/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -14,7 +14,6 @@ Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_4) for further details. diff --git a/ja/news/_posts/2024-04-23-ruby-3-2-4-released.md b/ja/news/_posts/2024-04-23-ruby-3-2-4-released.md index e82ab04b62..f9fe35204e 100644 --- a/ja/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/ja/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -14,7 +14,6 @@ Ruby 3.2.4 がリリースされました。 * [CVE-2024-27282: 正規表現検索における任意のメモリアドレス読み取りの脆弱性]({%link ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RDoc 内の .rdoc_options におけるRCE 脆弱性]({%link ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: StringIOにおけるバッファーオーバーリード脆弱性]({%link ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) 詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_4) を参照してください。 From 5ff24041faebbcc2e4f6b771945e8199c6e169a3 Mon Sep 17 00:00:00 2001 From: nagachika Date: Mon, 19 Aug 2024 20:37:54 +0900 Subject: [PATCH 368/607] Removed a unrelated CVE link that was added by mistake in ruby-3.2.4 release announces. --- es/news/_posts/2024-04-23-ruby-3-2-4-released.md | 1 - ko/news/_posts/2024-04-23-ruby-3-2-4-released.md | 1 - zh_cn/news/_posts/2024-04-23-ruby-3-2-4-released.md | 1 - zh_tw/news/_posts/2024-04-23-ruby-3-2-4-released.md | 1 - 4 files changed, 4 deletions(-) diff --git a/es/news/_posts/2024-04-23-ruby-3-2-4-released.md b/es/news/_posts/2024-04-23-ruby-3-2-4-released.md index 0a84215266..db96250759 100644 --- a/es/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/es/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -14,7 +14,6 @@ revise detalles en los temas siguientes. * [CVE-2024-27282: Lectura de direcciones de memoria arbitrarias al buscar Regex]({%link es/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: Vulnerabilidad RCE con .rdoc_options en RDoc](https://www.ruby-lang.org/es/news/2024/03/21/rce-rdoc-cve-2024-27281/) -* [CVE-2024-27280: Vulnerabilidad de sobre-lectura de buffer en StringIO](https://www.ruby-lang.org/es/news/2024/03/21/buffer-overread-cve-2024-27280/) Ver más detalles en la [publicación en Github](https://github.com/ruby/ruby/releases/tag/v3_2_4). diff --git a/ko/news/_posts/2024-04-23-ruby-3-2-4-released.md b/ko/news/_posts/2024-04-23-ruby-3-2-4-released.md index ef443be67c..ac30b6e203 100644 --- a/ko/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/ko/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -14,7 +14,6 @@ Ruby 3.2.4가 릴리스되었습니다. * [CVE-2024-27282: 정규표현식 검색의 임의의 메모리 주소 읽기 취약점]({%link ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RDoc에서 .rdoc_options 사용 시의 RCE 취약점]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: StringIO에서 버퍼 초과 읽기 취약점]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) 자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_2_4)를 참조하세요. diff --git a/zh_cn/news/_posts/2024-04-23-ruby-3-2-4-released.md b/zh_cn/news/_posts/2024-04-23-ruby-3-2-4-released.md index acefb845c3..dace0fbe73 100644 --- a/zh_cn/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/zh_cn/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -14,7 +14,6 @@ Ruby 3.2.4 已发布。 * [CVE-2024-27282: Regex 搜索中的任意地址读取漏洞]({%link zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/rce-rdoc-cve-2024-27281/) -* [CVE-2024-27280: StringIO 中的缓存过读漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/buffer-overread-cve-2024-27280/) 您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_2_4) 获取进一步信息。 diff --git a/zh_tw/news/_posts/2024-04-23-ruby-3-2-4-released.md b/zh_tw/news/_posts/2024-04-23-ruby-3-2-4-released.md index 65b0f723bf..c55e7c0866 100644 --- a/zh_tw/news/_posts/2024-04-23-ruby-3-2-4-released.md +++ b/zh_tw/news/_posts/2024-04-23-ruby-3-2-4-released.md @@ -14,7 +14,6 @@ Ruby 3.2.4 已經發布了。 * [CVE-2024-27282: Regex 搜尋的任意記憶體位址讀取漏洞]({%link zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/rce-rdoc-cve-2024-27281/) -* [CVE-2024-27280: StringIO 中的緩衝區 overread 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/buffer-overread-cve-2024-27280/) 詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_2_4)。 From 57eee1f899980fde1ee3e6be3c16089c347cf53c Mon Sep 17 00:00:00 2001 From: nagachika Date: Sun, 25 Aug 2024 12:07:47 +0900 Subject: [PATCH 369/607] Removed a unrelated CVE link that was added by mistake in ruby-3.3.1 release announces. --- en/news/_posts/2024-04-23-ruby-3-3-1-released.md | 1 - ja/news/_posts/2024-04-23-ruby-3-3-1-released.md | 1 - ko/news/_posts/2024-04-23-ruby-3-3-1-released.md | 1 - zh_cn/news/_posts/2024-04-23-ruby-3-3-1-released.md | 1 - zh_tw/news/_posts/2024-04-23-ruby-3-3-1-released.md | 1 - 5 files changed, 5 deletions(-) diff --git a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md index 3cd8cafe15..1119d572ed 100644 --- a/en/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/en/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -14,7 +14,6 @@ Please check the topics below for details. * [CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search]({%link en/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc]({%link en/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: Buffer overread vulnerability in StringIO]({%link en/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_1) for further details. diff --git a/ja/news/_posts/2024-04-23-ruby-3-3-1-released.md b/ja/news/_posts/2024-04-23-ruby-3-3-1-released.md index 94a32eddab..94ac592d00 100644 --- a/ja/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/ja/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -14,7 +14,6 @@ Ruby 3.3.1 がリリースされました。 * [CVE-2024-27282: 正規表現検索における任意のメモリアドレス読み取りの脆弱性]({%link ja/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RDoc 内の .rdoc_options におけるRCE 脆弱性]({%link ja/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: StringIOにおけるバッファーオーバーリード脆弱性]({%link ja/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) 詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_1) を参照してください。 diff --git a/ko/news/_posts/2024-04-23-ruby-3-3-1-released.md b/ko/news/_posts/2024-04-23-ruby-3-3-1-released.md index aeeec8afc6..05b4b2e137 100644 --- a/ko/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/ko/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -14,7 +14,6 @@ Ruby 3.3.1이 릴리스되었습니다. * [CVE-2024-27282: 정규표현식 검색의 임의의 메모리 주소 읽기 취약점]({%link ko/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RDoc에서 .rdoc_options 사용 시의 RCE 취약점]({%link ko/news/_posts/2024-03-21-rce-rdoc-cve-2024-27281.md %}) -* [CVE-2024-27280: StringIO에서 버퍼 초과 읽기 취약점]({%link ko/news/_posts/2024-03-21-buffer-overread-cve-2024-27280.md %}) 자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_3_1)를 참조하세요. diff --git a/zh_cn/news/_posts/2024-04-23-ruby-3-3-1-released.md b/zh_cn/news/_posts/2024-04-23-ruby-3-3-1-released.md index 5fbd3e8c1e..bddf2004a4 100644 --- a/zh_cn/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/zh_cn/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -14,7 +14,6 @@ Ruby 3.3.1 已发布。 * [CVE-2024-27282: Regex 搜索中的任意地址读取漏洞]({%link zh_cn/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/rce-rdoc-cve-2024-27281/) -* [CVE-2024-27280: StringIO 中的缓存过读漏洞](https://www.ruby-lang.org/zh_cn/news/2024/03/21/buffer-overread-cve-2024-27280/) 您可以通过 [发布说明](https://github.com/ruby/ruby/releases/tag/v3_3_1) 获取进一步信息。 diff --git a/zh_tw/news/_posts/2024-04-23-ruby-3-3-1-released.md b/zh_tw/news/_posts/2024-04-23-ruby-3-3-1-released.md index c126baf3b1..602a74100e 100644 --- a/zh_tw/news/_posts/2024-04-23-ruby-3-3-1-released.md +++ b/zh_tw/news/_posts/2024-04-23-ruby-3-3-1-released.md @@ -14,7 +14,6 @@ Ruby 3.3.1 已經發布了。 * [CVE-2024-27282: Regex 搜尋的任意記憶體位址讀取漏洞]({%link zh_tw/news/_posts/2024-04-23-arbitrary-memory-address-read-regexp-cve-2024-27282.md %}) * [CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/rce-rdoc-cve-2024-27281/) -* [CVE-2024-27280: StringIO 中的緩衝區 overread 漏洞](https://www.ruby-lang.org/zh_tw/news/2024/03/21/buffer-overread-cve-2024-27280/) 詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_3_1)。 From 7a8287cb16ddc838736c92d9b48db22f7c55ee3a Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 27 Aug 2024 18:11:32 +0900 Subject: [PATCH 370/607] Improve cve-2024-43398 details --- en/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md b/en/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md index c2118b4d93..86ed5ca251 100644 --- a/en/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md +++ b/en/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md @@ -12,7 +12,7 @@ There is a DoS vulnerability in REXML gem. This vulnerability has been assigned ## Details -When parsing an XML that has many deep elements that have same local name attributes. +When parsing an XML that has many deep elements that have same local name attributes, REXML gem may take long time. It's only affected with the tree parser API. If you're using `REXML::Document.new` to parse an XML, you may be affected. From c5ff9bbfb3d3f17863957de41150a0dc3f730d99 Mon Sep 17 00:00:00 2001 From: Stan Lo Date: Tue, 27 Aug 2024 17:49:23 +0100 Subject: [PATCH 371/607] Remove dead or outdated links - Link 13 and 15 both point to https://ruby-doc.org/3.2.2, which is not up to date and don't provide more information than the official docs. - Link 17 points to https://rubydocs.org/ which is not maintained anymore. - Link 18 points to https://apidock.com/ only has information up to Ruby 2.6, which is clearly outdated. --- en/documentation/index.md | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/en/documentation/index.md b/en/documentation/index.md index 1965f0706d..02716e2bef 100644 --- a/en/documentation/index.md +++ b/en/documentation/index.md @@ -55,15 +55,6 @@ the [installation guide](installation/) for help on installing Ruby. : The official Ruby API documentation for different versions including the currently unreleased (trunk) version. -[Ruby Core Reference][13] -: Pulled straight from the source code using [RDoc][14], this reference - work documents all of the core classes and modules (like String, - Array, Symbol, etc…). - -[Ruby Standard Library Reference][15] -: Also pulled from the source code using RDoc, this reference work - documents the standard library. - [Ruby C API Reference][extensions] : The official introduction to Ruby's C API. Great if you want to write C extensions @@ -73,12 +64,6 @@ the [installation guide](installation/) for help on installing Ruby. : The one-stop web site for reference documentation about Ruby gems and GitHub-hosted Ruby projects. -[Ruby & Rails Searchable API Docs][17] -: Rails and Ruby documentation with smart searching. - -[APIdock][18] -: Ruby, Rails and RSpec documentation with users’ notes. - [RubyAPI.org][rubyapi-org] : Easily find and browse Ruby classes, modules, and methods. @@ -125,8 +110,6 @@ documentation sources. If you have questions about Ruby the [mailing list](/en/community/mailing-lists/) is a great place to start. - - [1]: https://try.ruby-lang.org/ [2]: https://rubykoans.com/ [5]: https://poignant.guide @@ -135,13 +118,8 @@ If you have questions about Ruby the [9]: http://www.ruby-doc.org/docs/ProgrammingRuby/ [10]: http://pragmaticprogrammer.com/titles/ruby/index.html [12]: http://en.wikibooks.org/wiki/Ruby_programming_language -[13]: http://www.ruby-doc.org/core -[14]: https://ruby.github.io/rdoc/ -[15]: http://www.ruby-doc.org/stdlib [extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html [16]: http://www.rubydoc.info/ -[17]: http://rubydocs.org/ -[18]: http://apidock.com/ [rubyapi-org]: https://rubyapi.org/ [19]: http://www.aptana.com/ [20]: http://www.gnu.org/software/emacs/ From 57833a4555cbd7cdec5b213db44537b107f534da Mon Sep 17 00:00:00 2001 From: Stan Lo Date: Tue, 27 Aug 2024 17:54:03 +0100 Subject: [PATCH 372/607] Make the link to VS Code directly visit its Ruby doc --- en/documentation/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/documentation/index.md b/en/documentation/index.md index 02716e2bef..2b2fdcb1d4 100644 --- a/en/documentation/index.md +++ b/en/documentation/index.md @@ -143,7 +143,7 @@ If you have questions about Ruby the [39]: http://kapeli.com/dash [docs-rlo-en]: https://docs.ruby-lang.org/en/ [atom]: https://atom.io/ -[vscode]: https://code.visualstudio.com/ +[vscode]: https://code.visualstudio.com/docs/languages/ruby [eric]: https://eric-ide.python-projects.org/ [kdevelop]: https://www.kdevelop.org/ [kate]: https://kate-editor.org/ From 6492b1bc5ac79b43c30f29d718e58cab0790be19 Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 28 Aug 2024 06:39:46 +0900 Subject: [PATCH 373/607] Translate "CVE-2024-43398: DoS vulnerability in REXML" (ko) (#3353) * cp {en,ko}/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md * Translate "CVE-2024-43398: DoS vulnerability in REXML" (ko) --- .../2024-08-22-dos-rexml-cve-2024-43398.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 ko/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md diff --git a/ko/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md b/ko/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md new file mode 100644 index 0000000000..8daecb6fdb --- /dev/null +++ b/ko/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-43398: REXML의 DoS 취약점" +author: "kou" +translator: "shia" +date: 2024-08-22 03:00:00 +0000 +tags: security +lang: ko +--- + +REXML gem에서 DoS 취약점이 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2024-43398](https://www.cve.org/CVERecord?id=CVE-2024-43398)로 등록되었습니다. REXML gem 업그레이드를 강하게 추천합니다. + +## 세부 내용 + +동일한 지역 이름 속성을 가진 여러 깊은 요소를 포함하는 XML을 파싱할 때, REXML gem은 처리에 긴 시간이 걸립니다. + +해당 취약점은 트리 파서 API에만 영향을 줍니다. XML을 파싱하기 위해 `REXML::Document.new`를 사용한다면 영향을 받을 수 있습니다. + +REXML gem을 3.3.6이나 그 이상으로 업데이트하세요. + +## 해당 버전 + +* REXML gem 3.3.5와 그 이하 + +## 도움을 준 사람 + +이 문제를 발견해 준 [l33thaxor](https://hackerone.com/l33thaxor)에게 감사를 표합니다. + +## 수정 이력 + +* 2024-08-22 03:00:00 (UTC) 최초 공개 From 51a4d8cacbe28e9057bcb80e889e9734f55b3514 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sun, 1 Sep 2024 11:12:08 +0800 Subject: [PATCH 374/607] Improve Text CVE 2024 43398 (zh_tw) --- zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md b/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md index e0f4adfd04..b0d24e2f0d 100644 --- a/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md +++ b/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md @@ -14,7 +14,7 @@ lang: zh_tw ## 風險細節 -當解析的 XML 擁有許多深層級的元素,並且這些元素有相同的名稱屬性時。 +當解析的 XML 擁有許多深層級的元素,並且這些元素有相同的名稱屬性時,REXML gem 可能會需要很長的處理時間。 此風險只有影響到 Tree 解析 API。如果您正在使用 `REXML::Document.new` 解析 XML,您可能會受到影響。 From 5a4bda084cb33bfd77199f81b52ecbaf2f2a5c35 Mon Sep 17 00:00:00 2001 From: Aoran Zeng Date: Mon, 2 Sep 2024 13:45:23 +0800 Subject: [PATCH 375/607] Fix rbenv for Windows GitHub URL --- en/documentation/installation/index.md | 3 ++- ja/documentation/installation/index.md | 2 +- ko/documentation/installation/index.md | 3 ++- zh_cn/documentation/installation/index.md | 3 ++- zh_tw/documentation/installation/index.md | 2 +- 5 files changed, 8 insertions(+), 5 deletions(-) diff --git a/en/documentation/installation/index.md b/en/documentation/installation/index.md index f87cd3103b..ba63647526 100644 --- a/en/documentation/installation/index.md +++ b/en/documentation/installation/index.md @@ -58,6 +58,7 @@ Here are available installation methods: * [asdf-vm](#asdf-vm) * [chruby](#chruby) * [rbenv](#rbenv) + * [rbenv for Windows](#rbenv-for-windows) * [RVM](#rvm) * [uru](#uru) * [Building from source](#building-from-source) @@ -391,7 +392,7 @@ though, because the installed Ruby won't be managed by any tools. [rvm]: http://rvm.io/ [rbenv]: https://github.com/rbenv/rbenv#readme -[rbenv-for-windows]: https://github.com/ccmywish/rbenv-for-windows#readme +[rbenv-for-windows]: https://github.com/RubyMetric/rbenv-for-windows#readme [ruby-build]: https://github.com/rbenv/ruby-build#readme [ruby-install]: https://github.com/postmodern/ruby-install#readme [chruby]: https://github.com/postmodern/chruby#readme diff --git a/ja/documentation/installation/index.md b/ja/documentation/installation/index.md index d11169fcfc..a18e7a8b01 100644 --- a/ja/documentation/installation/index.md +++ b/ja/documentation/installation/index.md @@ -342,5 +342,5 @@ $ sudo make install [rubystack]: https://bitnami.com/stack/ruby/virtual-machine [asdf-vm]: https://asdf-vm.com/ [asdf-ruby]: https://github.com/asdf-vm/asdf-ruby -[rbenv-for-windows]: https://github.com/ccmywish/rbenv-for-windows#readme +[rbenv-for-windows]: https://github.com/RubyMetric/rbenv-for-windows#readme [uru]: https://bitbucket.org/jonforums/uru/src/master/ diff --git a/ko/documentation/installation/index.md b/ko/documentation/installation/index.md index 56cd89788f..ad786cc914 100644 --- a/ko/documentation/installation/index.md +++ b/ko/documentation/installation/index.md @@ -57,6 +57,7 @@ Windows 10을 사용 중이라면 [Windows Subsystem for Linux][wsl]를 사용 * [관리자](#managers) * [chruby](#chruby) * [rbenv](#rbenv) + * [rbenv for Windows](#rbenv-for-windows) * [RVM](#rvm) * [uru](#uru) * [소스에서 빌드하기](#building-from-source) @@ -369,7 +370,7 @@ $ sudo make install [rvm]: http://rvm.io/ [rbenv]: https://github.com/rbenv/rbenv#readme -[rbenv-for-windows]: https://github.com/ccmywish/rbenv-for-windows#readme +[rbenv-for-windows]: https://github.com/RubyMetric/rbenv-for-windows#readme [ruby-build]: https://github.com/rbenv/ruby-build#readme [ruby-install]: https://github.com/postmodern/ruby-install#readme [chruby]: https://github.com/postmodern/chruby#readme diff --git a/zh_cn/documentation/installation/index.md b/zh_cn/documentation/installation/index.md index 2b9ea57375..774fc1f8b3 100644 --- a/zh_cn/documentation/installation/index.md +++ b/zh_cn/documentation/installation/index.md @@ -35,6 +35,7 @@ lang: zh_cn * [管理工具](#managers) * [chruby](#chruby) * [rbenv](#rbenv) + * [rbenv for Windows](#rbenv-for-windows) * [RVM](#rvm) * [uru](#uru) * [通过源码编译安装](#building-from-source) @@ -214,7 +215,7 @@ $ sudo make install [rvm]: http://rvm.io/ [rbenv]: https://github.com/rbenv/rbenv#readme -[rbenv-for-windows]: https://github.com/ccmywish/rbenv-for-windows#readme +[rbenv-for-windows]: https://github.com/RubyMetric/rbenv-for-windows#readme [ruby-build]: https://github.com/rbenv/ruby-build#readme [ruby-install]: https://github.com/postmodern/ruby-install#readme [chruby]: https://github.com/postmodern/chruby#readme diff --git a/zh_tw/documentation/installation/index.md b/zh_tw/documentation/installation/index.md index e5d50b5ca7..fd0e2bcff7 100644 --- a/zh_tw/documentation/installation/index.md +++ b/zh_tw/documentation/installation/index.md @@ -325,7 +325,7 @@ $ sudo make install [rvm]: http://rvm.io/ [rbenv]: https://github.com/rbenv/rbenv -[rbenv-for-windows]: https://github.com/ccmywish/rbenv-for-windows#readme +[rbenv-for-windows]: https://github.com/RubyMetric/rbenv-for-windows#readme [ruby-build]: https://github.com/rbenv/ruby-build#readme [ruby-install]: https://github.com/postmodern/ruby-install#readme [chruby]: https://github.com/postmodern/chruby From 37cf179ec1763231af2a0c725b7efce8212794c5 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 2 Sep 2024 14:52:25 +0900 Subject: [PATCH 376/607] Update archive url for ruby-talk and ruby-core --- bg/community/mailing-lists/index.md | 6 +++--- de/community/mailing-lists/index.md | 6 +++--- en/community/mailing-lists/index.md | 6 +++--- en/documentation/faq/1/index.md | 2 +- es/community/mailing-lists/index.md | 6 +++--- fr/community/mailing-lists/index.md | 6 +++--- id/community/mailing-lists/index.md | 6 +++--- it/community/mailing-lists/index.md | 6 +++--- ko/community/mailing-lists/index.md | 6 +++--- ko/documentation/faq/1/index.md | 2 +- pl/community/mailing-lists/index.md | 6 +++--- pt/community/mailing-lists/index.md | 6 +++--- ru/community/mailing-lists/index.md | 6 +++--- tr/community/mailing-lists/index.md | 6 +++--- vi/community/mailing-lists/index.md | 6 +++--- zh_cn/community/mailing-lists/index.md | 6 +++--- zh_tw/community/mailing-lists/index.md | 6 +++--- 17 files changed, 47 insertions(+), 47 deletions(-) diff --git a/bg/community/mailing-lists/index.md b/bg/community/mailing-lists/index.md index 56386a242c..d0ad402338 100644 --- a/bg/community/mailing-lists/index.md +++ b/bg/community/mailing-lists/index.md @@ -36,6 +36,6 @@ comp.lang.ruby дискусионна група. -[3]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[3]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ diff --git a/de/community/mailing-lists/index.md b/de/community/mailing-lists/index.md index 41d8c3f34a..1d013d0d77 100644 --- a/de/community/mailing-lists/index.md +++ b/de/community/mailing-lists/index.md @@ -50,9 +50,9 @@ einschließlich der Listen in japanischer Sprache. [guidelines]: /en/community/mailing-lists/ruby-talk-guidelines/ [clrFAQ]: http://rubyhacker.com/clrFAQ.html -[3]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[3]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ [6]: http://lists.ruby-lang.org/cgi-bin/mailman/listinfo/ruby-de [7]: http://lists.ruby-lang.org/pipermail/ruby-de/ [8]: http://planet.ruby-portal.de/ruby-de.html diff --git a/en/community/mailing-lists/index.md b/en/community/mailing-lists/index.md index da3fed322f..c5ad7a7dc4 100644 --- a/en/community/mailing-lists/index.md +++ b/en/community/mailing-lists/index.md @@ -39,7 +39,7 @@ including the lists in Japanese language. [guidelines]: ruby-talk-guidelines/ [clrFAQ]: http://rubyhacker.com/clrFAQ.html -[3]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[3]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org +[5]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ [rubytalk]: https://rubytalk.org/ diff --git a/en/documentation/faq/1/index.md b/en/documentation/faq/1/index.md index 1d03ad67e0..c536bef63c 100644 --- a/en/documentation/faq/1/index.md +++ b/en/documentation/faq/1/index.md @@ -205,7 +205,7 @@ There are several mailing lists talking about Ruby. See the page for more information. You can search the mailing list archives using -[https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/](https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/). +[https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/](https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/). (This is the URL for the ruby-talk list, munge as required for the others). ### How can I thread the mailing list in mutt? diff --git a/es/community/mailing-lists/index.md b/es/community/mailing-lists/index.md index 6da4ab13bd..5e6f2a8649 100644 --- a/es/community/mailing-lists/index.md +++ b/es/community/mailing-lists/index.md @@ -32,6 +32,6 @@ Ruby-CVS -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[6]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[6]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ diff --git a/fr/community/mailing-lists/index.md b/fr/community/mailing-lists/index.md index d27d9037ef..9413111715 100644 --- a/fr/community/mailing-lists/index.md +++ b/fr/community/mailing-lists/index.md @@ -33,6 +33,6 @@ Ruby-CVS -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[6]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[6]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ diff --git a/id/community/mailing-lists/index.md b/id/community/mailing-lists/index.md index f782ea5280..ab284eccce 100644 --- a/id/community/mailing-lists/index.md +++ b/id/community/mailing-lists/index.md @@ -51,7 +51,7 @@ termasuk daftar milis dalam bahasa Jepang. [1]: http://id.wikipedia.org/wiki/Milis "Group diskusi di internet dimana setiap orang bisa berlangganan dan berpartisipasi didalamnya." [2]: http://groups.yahoo.com/group/id-ruby/ [3]: http://www.mail-archive.com/id-ruby@yahoogroups.com/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[6]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[6]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ [rubytalk]: https://rubytalk.org/ diff --git a/it/community/mailing-lists/index.md b/it/community/mailing-lists/index.md index 7493eef6de..f3db1cdcfe 100644 --- a/it/community/mailing-lists/index.md +++ b/it/community/mailing-lists/index.md @@ -32,6 +32,6 @@ Ruby-CVS -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[6]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[6]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ diff --git a/ko/community/mailing-lists/index.md b/ko/community/mailing-lists/index.md index a736eacb74..9ebaa99f61 100644 --- a/ko/community/mailing-lists/index.md +++ b/ko/community/mailing-lists/index.md @@ -38,7 +38,7 @@ ruby-lang.org의 일본어 리스트를 포함한 모든 메일링 리스트에 [guidelines]: /en/community/mailing-lists/ruby-talk-guidelines/ [clrFAQ]: http://rubyhacker.com/clrFAQ.html -[3]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[3]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ [rubytalk]: https://rubytalk.org/ diff --git a/ko/documentation/faq/1/index.md b/ko/documentation/faq/1/index.md index e98913f95c..ac8cfcdd49 100644 --- a/ko/documentation/faq/1/index.md +++ b/ko/documentation/faq/1/index.md @@ -193,7 +193,7 @@ comp.lang.ruby는 2000년 5월에 설립되었습니다. Ruby에 대해 이야기하는 여러 메일링 리스트가 있습니다. 자세한 내용은 [메일링 리스트](/ko/community/mailing-lists/) 페이지를 참조하세요. -를 +를 사용하여 메일링 리스트 아카이브를 검색할 수 있습니다. (이것은 ruby-talk 메일링 리스트의 URL이며, 다른 메일링 리스트를 원하면 변경해서 사용하세요.) diff --git a/pl/community/mailing-lists/index.md b/pl/community/mailing-lists/index.md index c8d456005b..98e3eb1ccf 100644 --- a/pl/community/mailing-lists/index.md +++ b/pl/community/mailing-lists/index.md @@ -37,6 +37,6 @@ listy: -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[6]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[6]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ diff --git a/pt/community/mailing-lists/index.md b/pt/community/mailing-lists/index.md index 39be72f00c..10bab12a31 100644 --- a/pt/community/mailing-lists/index.md +++ b/pt/community/mailing-lists/index.md @@ -39,7 +39,7 @@ Ruby << portuguese -[3]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[3]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ [ruby-pt]: http://groups.google.com/group/ruby-pt diff --git a/ru/community/mailing-lists/index.md b/ru/community/mailing-lists/index.md index a82fe126d4..1ec1770f3a 100644 --- a/ru/community/mailing-lists/index.md +++ b/ru/community/mailing-lists/index.md @@ -36,6 +36,6 @@ Ruby-CVS -[3]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[3]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ diff --git a/tr/community/mailing-lists/index.md b/tr/community/mailing-lists/index.md index c88d2df8b1..7484f840cd 100644 --- a/tr/community/mailing-lists/index.md +++ b/tr/community/mailing-lists/index.md @@ -41,7 +41,7 @@ listeleri hakkında daha fazla bilgi için [guidelines]: ruby-talk-guidelines/ [clrFAQ]: http://rubyhacker.com/clrFAQ.html -[3]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[3]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ [rubytalk]: https://rubytalk.org/ diff --git a/vi/community/mailing-lists/index.md b/vi/community/mailing-lists/index.md index ef152caafb..26eddc62dc 100644 --- a/vi/community/mailing-lists/index.md +++ b/vi/community/mailing-lists/index.md @@ -36,6 +36,6 @@ The comp.lang.ruby Newsgroup -[3]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[3]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ diff --git a/zh_cn/community/mailing-lists/index.md b/zh_cn/community/mailing-lists/index.md index 06e1861717..cb6506b07f 100644 --- a/zh_cn/community/mailing-lists/index.md +++ b/zh_cn/community/mailing-lists/index.md @@ -30,6 +30,6 @@ comp.lang.ruby新闻组 -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[6]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[6]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ diff --git a/zh_tw/community/mailing-lists/index.md b/zh_tw/community/mailing-lists/index.md index 198689b4d6..3ee9c23057 100644 --- a/zh_tw/community/mailing-lists/index.md +++ b/zh_tw/community/mailing-lists/index.md @@ -32,6 +32,6 @@ The comp.lang.ruby 新聞組 [1]: https://www.ruby-forum.com/ -[3]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-talk@ml.ruby-lang.org/ -[4]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-core@ml.ruby-lang.org/ -[5]: https://ml.ruby-lang.org/mailman3/hyperkitty/list/ruby-doc@ml.ruby-lang.org/ +[3]: https://ml.ruby-lang.org/archives/list/ruby-talk@ml.ruby-lang.org/ +[4]: https://ml.ruby-lang.org/archives/list/ruby-core@ml.ruby-lang.org/ +[5]: https://ml.ruby-lang.org/archives/list/ruby-doc@ml.ruby-lang.org/ From fcc3715e44d66efb875c5f25cc5e2b8f9d13beb4 Mon Sep 17 00:00:00 2001 From: matzbot Date: Tue, 3 Sep 2024 15:55:57 +0900 Subject: [PATCH 377/607] Create release for 3.3.5 (#3359) * Create release for 3.3.5 * Update 2024-09-02-3-3-5-released.md * Rename 2024-09-02-3-3-5-released.md to 2024-09-03-3-3-5-released.md --------- Co-authored-by: GitHub Actions Bot Co-authored-by: Takashi Kokubun --- en/news/_posts/2024-09-03-3-3-5-released.md | 50 +++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 en/news/_posts/2024-09-03-3-3-5-released.md diff --git a/en/news/_posts/2024-09-03-3-3-5-released.md b/en/news/_posts/2024-09-03-3-3-5-released.md new file mode 100644 index 0000000000..4780be7748 --- /dev/null +++ b/en/news/_posts/2024-09-03-3-3-5-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.3.5 Released" +author: k0kubun +translator: +date: 2024-09-03 06:40:00 +0000 +lang: en +--- + +Ruby 3.3.5 has been released. + +This is a routine update that includes minor bug fixes. +We recommend upgrading your Ruby version at your earliest convenience. +For more details, please refer to the [GitHub release notes](https://github.com/ruby/ruby/releases/tag/v3_3_5). + +## Release Schedule + +As previously [announced](https://www.ruby-lang.org/en/news/2024/07/09/ruby-3-3-4-released/), we intend to release the latest stable Ruby version (currently Ruby 3.3) every 2 months following a `.1` release. + +We expect to release Ruby 3.3.6 on November 5th and Ruby 3.3.7 on January 7th. If any significant changes arise that impact a large number of users, we may release a new version earlier than scheduled. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.5" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 77878eadaf675e0b71681d6954dba1450ae473fc Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Tue, 3 Sep 2024 00:05:39 -0700 Subject: [PATCH 378/607] Fix downloads.yml and releases.yml for 3.3.5 (#3360) * Fix downloads.yml and releases.yml for 3.3.5 * Fix url --- _data/downloads.yml | 2 +- _data/releases.yml | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/_data/downloads.yml b/_data/downloads.yml index 6bcf6a680d..8abbc92eb4 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -8,7 +8,7 @@ preview: stable: - - 3.3.4 + - 3.3.5 - 3.2.5 # optional diff --git a/_data/releases.yml b/_data/releases.yml index 0794b2401f..a3b23d5e63 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -52,6 +52,30 @@ # 3.3 series +- version: 3.3.5 + date: 2024-09-03 + post: /en/news/2024/09/03/3-3-5-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.5.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.5.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.5.tar.xz + size: + gz: 22129139 + zip: 27020194 + xz: 16403660 + sha1: + gz: 59444476bbe9e789fc777d8fb4dd456bc057604f + zip: ccb32746aef491ce05be42218301e2c47185e5fc + xz: 692bc3188bdb9ec30b8672543961b011d699590a + sha256: + gz: 3781a3504222c2f26cb4b9eb9c1a12dbf4944d366ce24a9ff8cf99ecbce75196 + zip: d3c13e124707494935d00ebc5c7983b0252bc13de49223fd31104ba5467a057a + xz: 51aec7ea89b46125a2c9adc6f36766b65023d47952b916b1aed300ddcc042359 + sha512: + gz: 5c482059628ef9de5d8a6ad4751f8043f2fc2b159b768265be7f3ee0574ad51d9500ee4fc9146c5978fbd51313039c3de39e7b7a4dedc9bcd5d09a41a713f1a7 + zip: bf83af835a74283aff21042538ee1f1eb70ff12dac1edd4672d787547cd29cb7b69a9299682f89c8499eb610737b10a7fc03eca038574cb4ba565205d96b0016 + xz: dd5c6a7f74854e143e0ca46b9d7c0d1983fc4886f5f733cd108345dbf4b21f61ad978ad6806e05a57b7af28fd9216dd38d7145808188bbb3695a7f3a4eda3883 + - version: 3.3.4 date: 2024-07-09 post: /en/news/2024/07/09/ruby-3-3-4-released/ From c0678be3affb03ef7b6ead6aae9d57e7f003a476 Mon Sep 17 00:00:00 2001 From: egamasa <40469431+egamasa@users.noreply.github.com> Date: Tue, 3 Sep 2024 18:49:17 +0900 Subject: [PATCH 379/607] Translate Home link in site navigation (ja) --- _data/locales/ja.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/locales/ja.yml b/_data/locales/ja.yml index 351e725332..2b8667468c 100644 --- a/_data/locales/ja.yml +++ b/_data/locales/ja.yml @@ -3,7 +3,7 @@ ruby: Ruby slogan: A Programmer's Best Friend sitelinks: -- text: Home +- text: ホーム url: /ja home: true - text: ダウンロード From d6ef2da9948acd7884483cce78a669271c1bab94 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 3 Sep 2024 18:21:20 +0800 Subject: [PATCH 380/607] Translate Ruby 3.3.5 Released (zh_tw) --- .../news/_posts/2024-09-03-3-3-5-released.md | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 zh_tw/news/_posts/2024-09-03-3-3-5-released.md diff --git a/zh_tw/news/_posts/2024-09-03-3-3-5-released.md b/zh_tw/news/_posts/2024-09-03-3-3-5-released.md new file mode 100644 index 0000000000..a10fbc3aa2 --- /dev/null +++ b/zh_tw/news/_posts/2024-09-03-3-3-5-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.3.5 發布" +author: k0kubun +translator: "Bear Su" +date: 2024-09-03 06:40:00 +0000 +lang: zh_tw +--- + +Ruby 3.3.5 已經發布了。 + +這是包括修復小型錯誤的例行更新。 +我們建議您儘早升級您的 Ruby 版本。 +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_3_5)。 + +## 發布時程 + +如同之前[公布](https://www.ruby-lang.org/zh_tw/news/2024/07/09/ruby-3-3-4-released/),我們打算在「.1」版本發布後每 2 個月發布一次最新的穩定 Ruby 版本(目前為 Ruby 3.3)。 + +我們預計 Ruby 3.3.6 於 11 月 5 日發布,Ruby 3.3.7 於 1 月 7 日發布。如果有任何變更影響到相當多的人,我們可能會比預期更早發佈新版本。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.3.5" | first %} + +* <{{ 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 bd7cb221e99cb130cd2ee1822334c83e018adb0f Mon Sep 17 00:00:00 2001 From: egamasa <40469431+egamasa@users.noreply.github.com> Date: Tue, 3 Sep 2024 19:50:03 +0900 Subject: [PATCH 381/607] Translate "Ruby 3.3.3 Released" (ja) --- .../_posts/2024-06-12-ruby-3-3-3-released.md | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 ja/news/_posts/2024-06-12-ruby-3-3-3-released.md diff --git a/ja/news/_posts/2024-06-12-ruby-3-3-3-released.md b/ja/news/_posts/2024-06-12-ruby-3-3-3-released.md new file mode 100644 index 0000000000..ad5e9f477c --- /dev/null +++ b/ja/news/_posts/2024-06-12-ruby-3-3-3-released.md @@ -0,0 +1,53 @@ +--- +layout: news_post +title: "Ruby 3.3.3 リリース" +author: "k0kubun" +translator: "egamasa" +date: 2024-06-12 00:30:00 +0000 +lang: ja +--- + +Ruby 3.3.3 がリリースされました。 + +このリリースには、以下が含まれています。 + +* RubyGems 3.5.11 +* Bundler 2.5.11 +* REXML 3.2.8 +* strscan 3.0.9 +* `--dump=prism_parsetree` を `--parser=prism --dump=parsetree` に置き換えました。 +* シンボルのエンコーディング失敗時に、`EncodingError` の代わりに `SyntaxError` を発生させます。 +* Ripper での解析時のメモリリークを修正しました。 +* YJIT、`**{}`、`Ripper.tokenize`、`RubyVM::InstructionSequence#to_binary`、`--with-gmp` および一部のビルド環境におけるバグ修正 + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_3) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.3.3" | first %} + +* <{{ 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 289356d8ab806e3be64246843921c8c9eec4e03e Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 4 Sep 2024 07:09:10 +0900 Subject: [PATCH 382/607] Follow up "Improve documentation page" (ko) (#3363) --- ko/documentation/index.md | 21 +-------------------- 1 file changed, 1 insertion(+), 20 deletions(-) diff --git a/ko/documentation/index.md b/ko/documentation/index.md index 843f3ab17f..dc46f7017f 100644 --- a/ko/documentation/index.md +++ b/ko/documentation/index.md @@ -62,14 +62,6 @@ Ruby를 배울 수 있는 매뉴얼과 튜토리얼, 코딩할 때 도움이 되 [공식 API 문서][docs-rlo-en] : 아직 릴리스되지 않은 트렁크를 포함한 여러 Ruby 버전의 공식 API 문서입니다. -[Ruby 코어 레퍼런스][13] (영문) -: [RDoc][14]을 이용해 소스에서 추출한 레퍼런스입니다. String, Array, - Symbol 등 모든 코어 클래스와 모듈에 대한 문서를 찾아볼 수 있습니다. - -[Ruby 표준 라이브러리][15] (영문) -: 마찬가지로 RDoc을 이용해 소스에서 추출한 것으로 표준 라이브러리에 - 대한 레퍼런스입니다. - [Ruby C API 레퍼런스][extensions] (영문) : Ruby의 공식 C API 문서입니다. Ruby 개발에 참여하거나, C 확장을 개발할 때 도움이 될 것입니다. @@ -78,12 +70,6 @@ Ruby를 배울 수 있는 매뉴얼과 튜토리얼, 코딩할 때 도움이 되 : Ruby gem과 GitHub에서 호스팅 되는 Ruby 프로젝트의 레퍼런스 문서들을 모아놓은 사이트입니다. -[Ruby & Rails Searchable API Docs][17] (영문) -: 스마트 검색이 가능한 Ruby, Rails 문서입니다. - -[APIdock][18] (영문) -: 유저의 댓글이 달린 Ruby, Rails, RSpec의 문서입니다. - [Ruby API][40] (영문) : Ruby 클래스, 모듈, 메서드를 편하게 찾고 탐색하세요. @@ -138,13 +124,8 @@ Ruby를 코딩할 때 운영체제의 기본 편집기를 사용할 수 있습 [9]: http://www.ruby-doc.org/docs/ProgrammingRuby/ [10]: http://pragmaticprogrammer.com/titles/ruby/index.html [12]: http://en.wikibooks.org/wiki/Ruby_programming_language -[13]: http://www.ruby-doc.org/core -[14]: https://ruby.github.io/rdoc/ -[15]: http://www.ruby-doc.org/stdlib [extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html [16]: http://www.rubydoc.info/ -[17]: http://rubydocs.org/ -[18]: http://apidock.com/ [19]: http://www.aptana.com/ [20]: http://www.gnu.org/software/emacs/ [21]: http://www.emacswiki.org/emacs/RubyMode @@ -168,7 +149,7 @@ Ruby를 코딩할 때 운영체제의 기본 편집기를 사용할 수 있습 [40]: https://rubyapi.org/ [docs-rlo-en]: https://docs.ruby-lang.org/en/ [atom]: https://atom.io/ -[vscode]: https://code.visualstudio.com/ +[vscode]: https://code.visualstudio.com/docs/languages/ruby [eric]: https://eric-ide.python-projects.org/ [kdevelop]: https://www.kdevelop.org/ [kate]: https://kate-editor.org/ From d1dd39f162d06f93695f7488c174227545f81431 Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 4 Sep 2024 13:35:50 +0900 Subject: [PATCH 383/607] Translate "Ruby 3.3.5 Released" (ko) (#3362) * cp {en,ko}/news/_posts/2024-09-03-3-3-5-released.md * Translate "Ruby 3.3.5 Released" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ko/news/_posts/2024-09-03-3-3-5-released.md | 50 +++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ko/news/_posts/2024-09-03-3-3-5-released.md diff --git a/ko/news/_posts/2024-09-03-3-3-5-released.md b/ko/news/_posts/2024-09-03-3-3-5-released.md new file mode 100644 index 0000000000..2e2b176920 --- /dev/null +++ b/ko/news/_posts/2024-09-03-3-3-5-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.3.5 릴리스" +author: k0kubun +translator: shia +date: 2024-09-03 06:40:00 +0000 +lang: ko +--- + +Ruby 3.3.5가 릴리스되었습니다. + +이번 릴리스는 일반적인 업데이트로, 사소한 버그 수정이 포함되어 있습니다. +가능한 빨리 Ruby 버전을 업그레이드하는 것을 권장합니다. +자세한 내용은 [GitHub 릴리스 노트](https://github.com/ruby/ruby/releases/tag/v3_3_5)를 참조하세요. + +## 릴리스 일정 + +이전에 [발표했던 것](https://www.ruby-lang.org/ko/news/2024/07/09/ruby-3-3-4-released/)처럼, 앞으로 최신 안정 버전의 Ruby(현재 Ruby 3.3)를 `.1` 릴리스 이후 2개월마다 릴리스할 계획입니다. + +3.3.6은 11월 5일에, 3.3.7은 1월 7일에 릴리스될 예정입니다. 많은 사람들에게 영향을 미치는 변경 사항이 있을 경우, 예상보다 빨리 새 버전을 릴리스할 수 있습니다. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.3.5" | first %} + +* <{{ 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 d141d824fe6de76f6f2064ec908c6ad2f2d3f07c Mon Sep 17 00:00:00 2001 From: egamasa <40469431+egamasa@users.noreply.github.com> Date: Wed, 4 Sep 2024 20:11:36 +0900 Subject: [PATCH 384/607] Translate "Ruby 3.3.4 Released" (ja) --- .../_posts/2024-07-09-ruby-3-3-4-released.md | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 ja/news/_posts/2024-07-09-ruby-3-3-4-released.md diff --git a/ja/news/_posts/2024-07-09-ruby-3-3-4-released.md b/ja/news/_posts/2024-07-09-ruby-3-3-4-released.md new file mode 100644 index 0000000000..3f3f787ec5 --- /dev/null +++ b/ja/news/_posts/2024-07-09-ruby-3-3-4-released.md @@ -0,0 +1,54 @@ +--- +layout: news_post +title: "Ruby 3.3.4 リリース" +author: "k0kubun" +translator: "egamasa" +date: 2024-07-09 00:30:00 +0000 +lang: ja +--- + +Ruby 3.3.4 がリリースされました。 + +このリリースでは、Ruby 3.3.3 にバンドルされているいくつかの gem (`net-pop`、`net-ftp`、`net-imap` および `prime`)において、gemspec の依存関係が欠落していたリグレッションが修正されました [[Bug #20581]](https://bugs.ruby-lang.org/issues/20581)。 +この修正により、Bundler はこれらの gem を Heroku などのプラットフォームへ正常にインストールできるようになりました。 +現在 `bundle install` を正常に実行できている場合、この問題は発生しないかもしれません。 + +そのほか、数多くの軽微なバグ修正を行っています。 +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_4) を参照してください。 + +## リリーススケジュール + +今後は、最新の安定版 Ruby(現在は Ruby 3.3)を `.1` リリース後の2ヶ月おきにリリースする予定です。 +Ruby 3.3 の場合、3.3.5 は 9 月 3 日に、3.3.6 は 11 月 5 日に、3.3.7 は 1 月 7 日にリリースされる予定です。 + +Heroku 上で Ruby 3.3.3 を使用するユーザーに影響を与える今回のリリースのように、多くのユーザーに影響を与えるような変更があった場合、予定よりも早く新しいバージョンをリリースすることがあります。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.3.4" | first %} + +* <{{ 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 698e5e4a67c0375ea141c3802a9fc180251505e4 Mon Sep 17 00:00:00 2001 From: egamasa <40469431+egamasa@users.noreply.github.com> Date: Wed, 4 Sep 2024 20:56:24 +0900 Subject: [PATCH 385/607] Translate CVE-2024-39908 (ja) --- .../2024-07-16-dos-rexml-cve-2024-39908.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ja/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md diff --git a/ja/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/ja/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md new file mode 100644 index 0000000000..ca343d5448 --- /dev/null +++ b/ja/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-39908: REXML内のDoS脆弱性" +author: "watson1978" +translator: "egamasa" +date: 2024-07-16 03:00:00 +0000 +tags: security +lang: ja +--- + +REXML gem内のDoS脆弱性が発見されました。この脆弱性は、[CVE-2024-39908](https://www.cve.org/CVERecord?id=CVE-2024-39908) として登録されています。REXML gem をアップグレードすることを強く推奨します。 + +## 詳細 + +REXML gem は、 `<`、`0` および `%>` のような特定の文字が多く含まれているXMLドキュメントの解析に時間がかかることがあります。 + +REXML gem を 3.3.2 以上にアップデートしてください。 + +## 影響を受けるバージョン + +* REXML gem 3.3.1 以前 + +## クレジット + +この脆弱性情報は、[mprogrammer](https://hackerone.com/mprogrammer) 氏によって報告されました。 + +## 更新履歴 + +* 2024-07-16 12:00:00 (JST) 初版 From 4f88b27df83928737d230055987f402a0ad2a130 Mon Sep 17 00:00:00 2001 From: egamasa <40469431+egamasa@users.noreply.github.com> Date: Wed, 4 Sep 2024 20:56:38 +0900 Subject: [PATCH 386/607] Translate CVE-2024-41123 (ja) --- .../2024-08-01-dos-rexml-cve-2024-41123.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ja/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md diff --git a/ja/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md b/ja/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md new file mode 100644 index 0000000000..4c4c48b689 --- /dev/null +++ b/ja/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-41123: REXML内のDoS脆弱性" +author: "kou" +translator: "egamasa" +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: ja +--- + +REXML gem内のDoS脆弱性が発見されました。この脆弱性は、[CVE-2024-41123](https://www.cve.org/CVERecord?id=CVE-2024-41123) として登録されています。REXML gem をアップグレードすることを強く推奨します。 + +## 詳細 + +REXML gem は、空白文字、`>]` および `]>` のような特定の文字が多く含まれているXMLドキュメントの解析に時間がかかることがあります。 + +REXML gem を 3.3.3 以上にアップデートしてください。 + +## 影響を受けるバージョン + +* REXML gem 3.3.2 以前 + +## クレジット + +この脆弱性情報は、[mprogrammer](https://hackerone.com/mprogrammer) 氏および [scyoon](https://hackerone.com/scyoon) 氏によって報告されました。 + +## 更新履歴 + +* 2024-08-01 12:00:00 (JST) 初版 From 607d0682ec557b70125085af8674b64cb0efde46 Mon Sep 17 00:00:00 2001 From: egamasa <40469431+egamasa@users.noreply.github.com> Date: Wed, 4 Sep 2024 20:56:49 +0900 Subject: [PATCH 387/607] Translate CVE-2024-41946 (ja) --- .../2024-08-01-dos-rexml-cve-2024-41946.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ja/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md diff --git a/ja/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md b/ja/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md new file mode 100644 index 0000000000..fb940eecaf --- /dev/null +++ b/ja/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2024-41946: REXML内のDoS脆弱性" +author: "kou" +translator: "egamasa" +date: 2024-08-01 03:00:00 +0000 +tags: security +lang: ja +--- + +REXML gem内のDoS脆弱性が発見されました。この脆弱性は、[CVE-2024-41946](https://www.cve.org/CVERecord?id=CVE-2024-41946) として登録されています。REXML gem をアップグレードすることを強く推奨します。 + +## 詳細 + +REXML gem は、SAX2 またはプル方式の XML パーサを使用した場合、多数のエンティティ展開を持つ XML ドキュメントの解析に時間がかかることがあります。 + +REXML gem を 3.3.3 以上にアップデートしてください。 + +## 影響を受けるバージョン + +* REXML gem 3.3.2 以前 + +## クレジット + +この脆弱性情報は、[NAITOH Jun](https://github.com/naitoh) 氏によって報告されました。 + +## 更新履歴 + +* 2024-08-01 12:00:00 (JST) 初版 From fdf0b92ca70d00cf99c9ec1e6bcde316a0e1d1ee Mon Sep 17 00:00:00 2001 From: egamasa <40469431+egamasa@users.noreply.github.com> Date: Wed, 4 Sep 2024 20:56:59 +0900 Subject: [PATCH 388/607] Translate CVE-2024-43398 (ja) --- .../2024-08-22-dos-rexml-cve-2024-43398.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 ja/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md diff --git a/ja/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md b/ja/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md new file mode 100644 index 0000000000..91430ad44e --- /dev/null +++ b/ja/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-43398: REXML内のDoS脆弱性" +author: "kou" +translator: "egamasa" +date: 2024-08-22 03:00:00 +0000 +tags: security +lang: ja +--- + +REXML gem内のDoS脆弱性が発見されました。この脆弱性は、[CVE-2024-43398](https://www.cve.org/CVERecord?id=CVE-2024-43398) として登録されています。REXML gem をアップグレードすることを強く推奨します。 + +## 詳細 + +REXML gem は、同じローカル名の階層の深い要素を多く持つ XML ドキュメントの解析に時間がかかることがあります。 + +これは TreeParser API にのみ影響します。`REXML::Document.new` を使用して XML ドキュメントを解析する場合に影響を受ける可能性があります。 + +REXML gem を 3.3.6 以上にアップデートしてください。 + +## 影響を受けるバージョン + +* REXML gem 3.3.5 以前 + +## クレジット + +この脆弱性情報は、[l33thaxor](https://hackerone.com/l33thaxor) 氏によって報告されました。 + +## 更新履歴 + +* 2024-08-22 12:00:00 (JST) 初版 From 1513a94e0c40fa8ac376c0222f7774c704c6645f Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 4 Sep 2024 14:15:38 +0900 Subject: [PATCH 389/607] Added misisng ruby- prefix --- lib/draft-release.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/draft-release.rb b/lib/draft-release.rb index 9760fb3a05..cc48b529e9 100644 --- a/lib/draft-release.rb +++ b/lib/draft-release.rb @@ -3,7 +3,7 @@ template = File.read("lib/release-template.erb") version = ARGV[0] || "3.3.4" -output_path = "en/news/_posts/#{Time.now.strftime("%Y-%m-%d")}-#{version.gsub(/\./, "-")}-released.md" +output_path = "en/news/_posts/ruby-#{Time.now.strftime("%Y-%m-%d")}-#{version.gsub(/\./, "-")}-released.md" File.open(output_path, "w") do |file| file.write ERB.new(template).result(binding) From 2e5580871a28aa724b818e9d9a731cdacac279bb Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 4 Sep 2024 14:28:50 +0900 Subject: [PATCH 390/607] Use format-release for yaml update --- .github/workflows/draft-release.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index da662597c8..917964daa7 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -16,6 +16,13 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + with: + path: www + + - uses: actions/checkout@v4 + with: + repository: ruby/ruby + path: ruby - uses: ruby/setup-ruby@v1 with: @@ -25,6 +32,11 @@ jobs: run: | ruby lib/draft-release.rb ${{ github.event.client_payload.version || github.event.inputs.version }} + - name: Update data files + run: | + tool/format-release ../www ${{ github.event.client_payload.version || github.event.inputs.version }} . + working-directory: ruby + - name: Create Commit run: | git config user.name "GitHub Actions Bot" @@ -43,3 +55,5 @@ jobs: title: "Create release for ${{ github.event.client_payload.version || github.event.inputs.version }}" body: "This is an automated pull request to create a release" draft: true + + working-directory: www From 2dc97b9db823708ec35c5b56bf9992914f726de4 Mon Sep 17 00:00:00 2001 From: egamasa <40469431+egamasa@users.noreply.github.com> Date: Wed, 18 Sep 2024 21:46:15 +0900 Subject: [PATCH 391/607] Translate "Ruby 3.2.5 Released" (ja) --- .../_posts/2024-07-26-ruby-3-2-5-released.md | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 ja/news/_posts/2024-07-26-ruby-3-2-5-released.md diff --git a/ja/news/_posts/2024-07-26-ruby-3-2-5-released.md b/ja/news/_posts/2024-07-26-ruby-3-2-5-released.md new file mode 100644 index 0000000000..50b86899bd --- /dev/null +++ b/ja/news/_posts/2024-07-26-ruby-3-2-5-released.md @@ -0,0 +1,46 @@ +--- +layout: news_post +title: "Ruby 3.2.5 リリース" +author: "nagachika" +translator: "egamasa" +date: 2024-07-26 10:00:00 +0000 +lang: ja +--- + +Ruby 3.2.5 がリリースされました。 + +このリリースでは多くの不具合修正を行っています。 +また、バンドルされている `rexml` gem のバージョンが更新されました。これには、[CVE-2024-39908: REXML内のDoS脆弱性]({%link ja/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md %}) の脆弱性修正が含まれています。 + + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_5) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.2.5" | first %} + +* <{{ 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 5295136bb850cf991a428249a29091ffa8a33588 Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Wed, 18 Sep 2024 20:53:31 +0800 Subject: [PATCH 392/607] Translate Ruby 3.3.5 Released (zh_cn) (#3369) --- .../news/_posts/2024-09-03-3-3-5-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 zh_cn/news/_posts/2024-09-03-3-3-5-released.md diff --git a/zh_cn/news/_posts/2024-09-03-3-3-5-released.md b/zh_cn/news/_posts/2024-09-03-3-3-5-released.md new file mode 100644 index 0000000000..f013b30446 --- /dev/null +++ b/zh_cn/news/_posts/2024-09-03-3-3-5-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.3.5 已发布" +author: k0kubun +translator: "GAO Jun" +date: 2024-09-03 06:40:00 +0000 +lang: zh_cn +--- + +Ruby 3.3.5 已发布。 + +这是包含了一些小补丁的计划更新。 +我们建议您在方便的时候尽早更新您的 Ruby 版本。 +更多信息,可以参考 [GitHub 发布说明](https://github.com/ruby/ruby/releases/tag/v3_3_5). + +## 发布计划 + +正如此前的 [公告](https://www.ruby-lang.org/zh_cn/news/2024/07/09/ruby-3-3-4-released/),我们打算在 `.1` 版本发布后,每 2 个月发布一次最新的 Ruby 稳定版本(目前是 Ruby 3.3)。 + +我们期望在11月5日发布 Ruby 3.3.6,在1月7日发布 3.3.7。如果有影响大量用户的变更,我们可能会提前发布新版本。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.3.5" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 1b3c54459c83b07134bb3f4281a77cd37977149a Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Wed, 18 Sep 2024 20:57:17 +0800 Subject: [PATCH 393/607] Translate CVE-2024-43398 (zh_cn) (#3351) Co-authored-by: Alex Shi --- .../2024-08-22-dos-rexml-cve-2024-43398.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 zh_cn/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md diff --git a/zh_cn/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md b/zh_cn/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md new file mode 100644 index 0000000000..6123f6fda2 --- /dev/null +++ b/zh_cn/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-43398: REXML 中的 DoS 漏洞" +author: "kou" +translator: "GAO Jun" +date: 2024-08-22 03:00:00 +0000 +tags: security +lang: zh_cn +--- + +REXML gem 中存在 DoS 漏洞。此漏洞的 CVE 编号为 [CVE-2024-43398](https://www.cve.org/CVERecord?id=CVE-2024-43398)。我们强烈建议您更新 REXML gem。 + +## 详情 + +问题触发场景:当解析的 XML 中存在很多深层元素,且这些元素有同名本地属性时。 + +此问题仅影响树解析 API。如果您使用 `REXML::Document.new` 来解析 XML,就有可能受到影响。 + +请更新 REXML gem 至 3.3.6 或更高版本。 + +## 受影响版本 + +* REXML gem 3.3.5 或更低版本 + +## 致谢 + +感谢 [l33thaxor](https://hackerone.com/l33thaxor) 发现此问题。 + +## 历史 + +* 最初发布于 2024-08-22 03:00:00 (UTC) From 21ab317ed1e1639734669ac3d90b8cdb3ac8877a Mon Sep 17 00:00:00 2001 From: Alex S Date: Wed, 18 Sep 2024 22:15:00 +0800 Subject: [PATCH 394/607] Move working directory directive to defaults --- .github/workflows/draft-release.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 917964daa7..3f5d1abe2c 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -14,6 +14,9 @@ on: jobs: release: runs-on: ubuntu-latest + defaults: + run: + working-directory: www steps: - uses: actions/checkout@v4 with: @@ -56,4 +59,3 @@ jobs: body: "This is an automated pull request to create a release" draft: true - working-directory: www From 0ea6de7ac224d861f62cb6cfcaca5698d8b23a12 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 16:18:59 +0000 Subject: [PATCH 395/607] Bump google-protobuf from 4.27.3 to 4.27.5 Bumps [google-protobuf](https://github.com/protocolbuffers/protobuf) from 4.27.3 to 4.27.5. - [Release notes](https://github.com/protocolbuffers/protobuf/releases) - [Changelog](https://github.com/protocolbuffers/protobuf/blob/main/protobuf_release.bzl) - [Commits](https://github.com/protocolbuffers/protobuf/commits) --- updated-dependencies: - dependency-name: google-protobuf dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index ea21f009ba..70b3e4585c 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -40,22 +40,22 @@ GEM fiber-storage fiber-storage (1.0.0) forwardable-extended (2.6.0) - google-protobuf (4.27.3) + google-protobuf (4.27.5) bigdecimal rake (>= 13) - google-protobuf (4.27.3-aarch64-linux) + google-protobuf (4.27.5-aarch64-linux) bigdecimal rake (>= 13) - google-protobuf (4.27.3-arm64-darwin) + google-protobuf (4.27.5-arm64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.27.3-x86-linux) + google-protobuf (4.27.5-x86-linux) bigdecimal rake (>= 13) - google-protobuf (4.27.3-x86_64-darwin) + google-protobuf (4.27.5-x86_64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.27.3-x86_64-linux) + google-protobuf (4.27.5-x86_64-linux) bigdecimal rake (>= 13) hashery (2.1.2) From 535e39842fdad9ac878155ec687d39f292ef1d74 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:56:19 +0000 Subject: [PATCH 396/607] Bump peter-evans/create-pull-request from 6 to 7 Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6 to 7. - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/v6...v7) --- updated-dependencies: - dependency-name: peter-evans/create-pull-request dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/draft-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 3f5d1abe2c..b23dd829e4 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -50,7 +50,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.MATZBOT_GITHUB_WORKFLOW_TOKEN }} - name: Create Pull Request - uses: peter-evans/create-pull-request@v6 + uses: peter-evans/create-pull-request@v7 with: token: ${{ secrets.MATZBOT_GITHUB_WORKFLOW_TOKEN }} branch: releases/${{ github.event.client_payload.version || github.event.inputs.version }} From 941b5fc49c2e8565b3a839d3244a82c6029d3044 Mon Sep 17 00:00:00 2001 From: Tommaso Barbato Date: Tue, 24 Sep 2024 11:52:50 +0200 Subject: [PATCH 397/607] Normalize all dates to Date instead of String --- _data/releases.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/_data/releases.yml b/_data/releases.yml index a3b23d5e63..81b64bac4f 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -321,7 +321,7 @@ # 3.2 series - version: 3.2.5 - date: '2024-07-26' + date: 2024-07-26 post: "/en/news/2024/07/26/ruby-3-2-5-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.5.tar.gz @@ -588,7 +588,7 @@ # 3.1 series - version: 3.1.6 - date: '2024-05-29' + date: 2024-05-29 post: "/en/news/2024/05/29/ruby-3-1-6-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.6.tar.gz @@ -612,7 +612,7 @@ zip: f8b5a0fda8dc0248f29796a0b5b67f93a825a013b92b0db437ecf0a5ffaf06a800285999a0e9a61e890a8000dd2e2c081a6ecb5dae62b1045761a13fd87c397b - version: 3.1.5 - date: '2024-04-23' + date: 2024-04-23 post: "/en/news/2024/04/23/ruby-3-1-5-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.5.tar.gz @@ -792,7 +792,7 @@ # 3.0 series - version: 3.0.7 - date: '2024-04-23' + date: 2024-04-23 post: "/en/news/2024/04/23/ruby-3-0-7-released/" url: gz: https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.7.tar.gz From 20aa4056858b149b4240f84b737ac6e4361dbe33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Fri, 27 Sep 2024 06:39:14 -0400 Subject: [PATCH 398/607] Translate CVE-2024-43398 (es) (#3376) * Translate CVE-2024-43398 (es) --- .../2024-08-22-dos-rexml-cve-2024-43398.md | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 es/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md diff --git a/es/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md b/es/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md new file mode 100644 index 0000000000..6b9aa87686 --- /dev/null +++ b/es/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md @@ -0,0 +1,39 @@ +--- +layout: news_post +title: "CVE-2024-43398: Vulnerabilidad de denegación de servicio (DoS) en REXML" +author: "kou" +translator: vtamara +date: 2024-08-22 03:00:00 +0000 +tags: security +lang: es +--- + +Hay una vulnerabilidad de denegación de servicio en la gema REXML. +A esta vulnerabilidad le ha sido asignado el identificador +[CVE-2024-43398](https://www.cve.org/CVERecord?id=CVE-2024-43398). +Recomendamos enfáticamente actualizar la gema REXML. + +## Detalles + +Cuando analiza un XML que tiene muchos elementos profundos con los +mismos nombres de atributos locales, la gema REXML puede tardar +largo tiempo. + +Esta vulnerabilidad sola afecta la API para analizar árboles. +Si está usando `REXML::Document.new` para analizar un XML, puede +resultar afectado. + +Por favor actualice la gema REXML a la versión 3.3.6 o posterior. + +## Versiones afectadas + +* Gema REXML 3.3.5 y anteriores + +## Créditos + +Agradecemos a [l33thaxor](https://hackerone.com/l33thaxor) por descubrir +este problema. + +## Historia + +* Publicado originalmente el 2024-08-22 03:00:00 (UTC) From 5cad87f8a217583a6db86778efb4ec182c0b78d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Fri, 27 Sep 2024 07:21:40 -0400 Subject: [PATCH 399/607] Translation of Ruby 3.3.5 released (es) (#3377) --- es/news/_posts/2024-09-03-3-3-5-released.md | 57 +++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 es/news/_posts/2024-09-03-3-3-5-released.md diff --git a/es/news/_posts/2024-09-03-3-3-5-released.md b/es/news/_posts/2024-09-03-3-3-5-released.md new file mode 100644 index 0000000000..bcac7f7058 --- /dev/null +++ b/es/news/_posts/2024-09-03-3-3-5-released.md @@ -0,0 +1,57 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.5" +author: k0kubun +translator: vtamara +date: 2024-09-03 06:40:00 +0000 +lang: es +--- + +Ruby 3.3.5 ha sido publicado. + +Esta es una actualización rutinaria que incluye solución a fallas menores. +Recomendamos actualizar su versión de Ruby tan pronto le convenga. +Para ver más detalles, por favor refiérase a +[las notas de la publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_5). + +## Calendario de versiones + +Como previamente se [había anunciado](https://www.ruby-lang.org/en/news/2024/07/09/ruby-3-3-4-released/), +pretendemos publicar la versión estable más reciente de Ruby (en el momento +Ruby 3.3) cada 2 meses tras una versión `.1`. + +Esperamos publicar Ruby 3.3.6 el 5 de Noviembre y Ruby 3.3.7 el 7 de Enero. +Si aparecen algunos cambios significativos que impacten a un gran número +de usuarios, podríamos publicar una nueva versión antes de lo programado. + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.3.5" | first %} + +* <{{ 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 }} + +## Comentarios de la versión + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a producir esta versión. + +Gracias por sus contribuciones. From c58f2557ddbc44294e7a000923ea4a3421d68d83 Mon Sep 17 00:00:00 2001 From: Koichi ITO Date: Wed, 11 Sep 2024 13:16:38 +0900 Subject: [PATCH 400/607] Translate "Ruby 3.3.5 Released" (ja) Translated [Ruby 3.3.5 release](https://www.ruby-lang.org/en/news/2024/09/03/3-3-5-released/) into Japanese. refs: #3359 and #3360 --- ja/news/_posts/2024-09-03-3-3-5-released.md | 50 +++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ja/news/_posts/2024-09-03-3-3-5-released.md diff --git a/ja/news/_posts/2024-09-03-3-3-5-released.md b/ja/news/_posts/2024-09-03-3-3-5-released.md new file mode 100644 index 0000000000..cdd61a34e9 --- /dev/null +++ b/ja/news/_posts/2024-09-03-3-3-5-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.3.5 リリース" +author: "k0kubun" +translator: "koic" +date: 2024-09-03 06:40:00 +0000 +lang: ja +--- + +Ruby 3.3.5がリリースされました。 + +これは定期的なアップデートであり、マイナーなバグ修正を含みます。できるだけ早くRubyのバージョンをアップグレードすることを推奨します。 + +詳しくは[GitHub release notes](https://github.com/ruby/ruby/releases/tag/v3_3_5)を参照してください。 + +## Release Schedule + +以前[お知らせ](https://www.ruby-lang.org/ja/news/2024/07/09/ruby-3-3-4-released/)したとおり、最新の安定版Ruby(現在はRuby 3.3)を `.1` リリース後の2ヶ月おきにリリースする予定です。 + +Ruby 3.3.6は11月5日に、Ruby 3.3.7は1月7日にリリースされる予定です。多くのユーザーに影響を与えるような変更があった場合、予定よりも早く新しいバージョンをリリースすることがあります。 + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.5" | first %} + +* <{{ 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 d1f672fd8b2f4cfd1219ecbdb26edaf8198bb4f8 Mon Sep 17 00:00:00 2001 From: Juanito Fatas Date: Tue, 1 Oct 2024 23:42:08 +0900 Subject: [PATCH 401/607] Translate h2 in 3.3.5 post (ja) closes #3370 --- ja/news/_posts/2024-09-03-3-3-5-released.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ja/news/_posts/2024-09-03-3-3-5-released.md b/ja/news/_posts/2024-09-03-3-3-5-released.md index cdd61a34e9..1f82b63f81 100644 --- a/ja/news/_posts/2024-09-03-3-3-5-released.md +++ b/ja/news/_posts/2024-09-03-3-3-5-released.md @@ -13,13 +13,13 @@ Ruby 3.3.5がリリースされました。 詳しくは[GitHub release notes](https://github.com/ruby/ruby/releases/tag/v3_3_5)を参照してください。 -## Release Schedule +## リリーススケジュール 以前[お知らせ](https://www.ruby-lang.org/ja/news/2024/07/09/ruby-3-3-4-released/)したとおり、最新の安定版Ruby(現在はRuby 3.3)を `.1` リリース後の2ヶ月おきにリリースする予定です。 Ruby 3.3.6は11月5日に、Ruby 3.3.7は1月7日にリリースされる予定です。多くのユーザーに影響を与えるような変更があった場合、予定よりも早く新しいバージョンをリリースすることがあります。 -## Download +## ダウンロード {% assign release = site.data.releases | where: "version", "3.3.5" | first %} From 2fefef19c972b9cf9e1c49cb0692f7fc079c0409 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Mon, 7 Oct 2024 22:28:05 +0900 Subject: [PATCH 402/607] Ruby 3.4.0 Preview 2 Released (#3379) --- _data/downloads.yml | 2 +- _data/releases.yml | 29 ++++ ...2024-10-07-ruby-3-4-0-preview2-released.md | 144 ++++++++++++++++++ 3 files changed, 174 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index 8abbc92eb4..f8bec70dbb 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,7 +4,7 @@ # optional preview: - - 3.4.0-preview1 + - 3.4.0-preview2 stable: diff --git a/_data/releases.yml b/_data/releases.yml index 81b64bac4f..b43179020c 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,35 @@ # 3.4 series +- version: 3.4.0-preview2 + date: 2024-10-07 + post: /en/news/2024/10/07/ruby-3-4-0-preview2-released/ + tag: v3_4_0_preview2 + stats: + files_changed: 4422 + insertions: 163889 + deletions: 243380 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-preview2.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-preview2.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-preview2.tar.xz + size: + gz: 22722332 + zip: 28101194 + xz: 16878876 + sha1: + gz: c23265acf6c07b4c1df1e41eebf8b4cf2f25b97b + zip: 479bd223bca3225fb3a15984e3eae4efb9a40189 + xz: dbff404b969012702dc500cac72f4d6b3822068e + sha256: + gz: 443cd7ec54ade4786bc974ce9f5d49f172a60f8edc84b597b7fe2bd2a94b8371 + zip: e00a6fbf6f9e25a725711a8aac7e38be6bed61de4db9862a405172b96bf38b5b + xz: 626bf4fe952323c15ec9a8999f470ec136ef91c0fc34c484646aaaa9a0b62ca7 + sha512: + gz: 0946d256587597bdf13437a50f7a3298c151133edea161a1c4806a04dcbd8c2e8a7fd617f3eda16c5c05f6e6346317562cc30ba67698f1fdd92237c03bdbd23e + zip: 0d9ee1c41920e4d594b0f2c40d02339b4e9a2cd5232f5ee914cab5a685cb4a2279fbbfd8fbad40ef0a53866db4e1de96068c62580ede6d8fab02550393bcbe81 + xz: f23257896a35d3a581cbf5e8c94fe28e45725e39608a7669f47f31085338b1b4929a4db40d826d8fee628afb97b0c25b2f9e7bda4cd42e80c1208c46caf54265 + - version: 3.4.0-preview1 date: 2024-05-16 post: /en/news/2024/05/16/ruby-3-4-0-preview1-released/ diff --git a/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md new file mode 100644 index 0000000000..0ef5b99d42 --- /dev/null +++ b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -0,0 +1,144 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview2 Released" +author: "naruse" +translator: +date: 2024-10-07 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview2" | first %} +We are pleased to announce the release of Ruby {{ release.version }}. +In + +## Prism + +Switch the default parser from parse.y to Prism. [[Feature #20564]] + +## Language changes + +* String literals in files without a `frozen_string_literal` comment now behave + as if they were frozen. If they are mutated a deprecation warning is emitted. + These warnings can be enabled with `-W:deprecated` or by setting `Warning[:deprecated] = true`. + To disable this change, you can run Ruby with the `--disable-frozen-string-literal` + command line argument. [[Feature #20205]] + +* `it` is added to reference a block parameter. [[Feature #18980]] + +* Keyword splatting `nil` when calling methods is now supported. + `**nil` is treated similarly to `**{}`, passing no keywords, + and not calling any conversion methods. [[Bug #20064]] + +* Block passing is no longer allowed in index. [[Bug #19918]] + +* Keyword arguments are no longer allowed in index. [[Bug #20218]] + +## Core classes updates + +Note: We're only listing outstanding class updates. + +* Exception + + * `Exception#set_backtrace` now accepts an array of `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` and `Fiber#raise` also accept this new format. [[Feature #13557]] + +* Range + + * `Range#size` now raises `TypeError` if the range is not iterable. [[Misc #18984]] + + + +## Compatibility issues + +Note: Excluding feature bug fixes. + +* Error messages and backtrace displays have been changed. + * Use a single quote instead of a backtick as a opening quote. [[Feature #16495]] + * Display a class name before a method name (only when the class has a permanent name). [[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location`'s methods, etc. are also changed accordingly. + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + + +## C API updates + +* `rb_newobj` and `rb_newobj_of` (and corresponding macros `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) have been removed. [[Feature #20265]] +* Removed deprecated function `rb_gc_force_recycle`. [[Feature #18290]] + +## Implementation improvements + +* `Array#each` is rewritten in Ruby for better performance [[Feature #20182]]. + +## Miscellaneous changes + +* Passing a block to a method which doesn't use the passed block will show + a warning on verbose mode (`-w`). + [[Feature #15554]] + +* Redefining some core methods that are specially optimized by the interpeter + and JIT like `String.freeze` or `Integer#+` now emits a performance class + warning (`-W:performance` or `Warning[:performance] = true`). + [[Feature #20429]] + +See GitHub releases like [Logger](https://github.com/ruby/logger/releases) or +changelog for details of the default gems or bundled gems. + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +since Ruby 3.3.0! + + +## Download + +* <{{ 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 + +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. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 From ad9eb92219070c1d7727a4d409659d679ec08561 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Mon, 7 Oct 2024 10:05:45 -0700 Subject: [PATCH 403/607] Remove unneeded "In" (#3381) --- en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md | 1 - 1 file changed, 1 deletion(-) diff --git a/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md index 0ef5b99d42..36ee22ae46 100644 --- a/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md +++ b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -9,7 +9,6 @@ lang: en {% assign release = site.data.releases | where: "version", "3.4.0-preview2" | first %} We are pleased to announce the release of Ruby {{ release.version }}. -In ## Prism From 3e7096cd2e5e5202b2e46c75c8c503f9eb85c2f4 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Mon, 7 Oct 2024 20:11:32 +0200 Subject: [PATCH 404/607] Fix quoting of backtraces (#3382) --- en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md | 1 + 1 file changed, 1 insertion(+) diff --git a/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md index 36ee22ae46..2e5c85df95 100644 --- a/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md +++ b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -55,6 +55,7 @@ Note: Excluding feature bug fixes. * Use a single quote instead of a backtick as a opening quote. [[Feature #16495]] * Display a class name before a method name (only when the class has a permanent name). [[Feature #19117]] * `Kernel#caller`, `Thread::Backtrace::Location`'s methods, etc. are also changed accordingly. + ``` Old: test.rb:1:in `foo': undefined method `time' for an instance of Integer From 235860a7fdc3f0a6ac8fb191a3e220e671281e7b Mon Sep 17 00:00:00 2001 From: Jean Boussier Date: Mon, 7 Oct 2024 14:19:56 -0400 Subject: [PATCH 405/607] Clarify 3-4-0-preview2 release notes (#3380) The part about chilled string has changed since preview1. And I also think we should call out the Hash#inspect change. --- en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md index 2e5c85df95..a6a062c394 100644 --- a/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md +++ b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -16,8 +16,8 @@ Switch the default parser from parse.y to Prism. [[Feature #20564]] ## Language changes -* String literals in files without a `frozen_string_literal` comment now behave - as if they were frozen. If they are mutated a deprecation warning is emitted. +* String literals in files without a `frozen_string_literal` comment now emit a deprecation warning + when they are mutated. These warnings can be enabled with `-W:deprecated` or by setting `Warning[:deprecated] = true`. To disable this change, you can run Ruby with the `--disable-frozen-string-literal` command line argument. [[Feature #20205]] @@ -66,6 +66,9 @@ Note: Excluding feature bug fixes. from test.rb:2:in `
' ``` +* `Hash#inspect` rendering has changed. [[Bug #20433]] + * Symbol keys are displayed using the modern symbol key syntax: `"{user: 1}"` + * Other keys now have spaces around `=>`: `'{"user" => 1}'`, while previously they didn't: `'{"user"=>1}'` ## C API updates @@ -142,3 +145,4 @@ and is used all over the world especially for web development. [Feature #20265]: https://bugs.ruby-lang.org/issues/20265 [Feature #20429]: https://bugs.ruby-lang.org/issues/20429 [Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 From 271361ddf5b238a9a56787058c3ae2b7e34edd24 Mon Sep 17 00:00:00 2001 From: Kazuhiro NISHIYAMA Date: Tue, 8 Oct 2024 10:39:44 +0900 Subject: [PATCH 406/607] Fix quotes of
This changed since 3.4.0-preview1. ``` % docker run --platform linux/amd64 --rm -it ghcr.io/ruby/all-ruby env LANG=C.UTF-8 ALL_RUBY_SINCE=ruby-3.3 ./all-ruby -e 'def foo; time; end; foo' ruby-3.3.0 -e:1:in `foo': undefined local variable or method `time' for main (NameError) def foo; time; end; foo ^^^^ from -e:1:in `
' exit 1 ... ruby-3.3.4 -e:1:in `foo': undefined local variable or method `time' for main (NameError) def foo; time; end; foo ^^^^ from -e:1:in `
' exit 1 ruby-3.4.0-preview1 -e:1:in 'Object#foo': undefined local variable or method 'time' for main (NameError) def foo; time; end; foo ^^^^ from -e:1:in '
' exit 1 ``` --- en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md | 2 +- en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md | 2 +- es/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md | 2 +- ja/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md | 2 +- ko/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md | 2 +- zh_cn/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md | 2 +- zh_tw/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md index 633636e3a4..c8048b4950 100644 --- a/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md +++ b/en/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -59,7 +59,7 @@ Note: Excluding feature bug fixes. New: test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer - from test.rb:2:in `
' + from test.rb:2:in '
' ``` diff --git a/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md index a6a062c394..4f32eb934a 100644 --- a/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md +++ b/en/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -63,7 +63,7 @@ Note: Excluding feature bug fixes. New: test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer - from test.rb:2:in `
' + from test.rb:2:in '
' ``` * `Hash#inspect` rendering has changed. [[Bug #20433]] diff --git a/es/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/es/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md index 73c3e46515..01abcd258b 100644 --- a/es/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md +++ b/es/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -70,7 +70,7 @@ Nota: Excluyendo correcciones a problemas en características. Ahora: test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer - from test.rb:2:in `
' + from test.rb:2:in '
' ``` diff --git a/ja/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/ja/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md index 913b2df832..69cd4d00ef 100644 --- a/ja/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md +++ b/ja/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -56,7 +56,7 @@ Ruby {{ release.version }}がリリースされました。 New: test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer - from test.rb:2:in `
' + from test.rb:2:in '
' ``` diff --git a/ko/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/ko/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md index 19d92c5efe..d93cc972c3 100644 --- a/ko/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md +++ b/ko/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -60,7 +60,7 @@ Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. New: test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer - from test.rb:2:in `
' + from test.rb:2:in '
' ``` diff --git a/zh_cn/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/zh_cn/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md index cbd12e8f32..0d2a4d1480 100644 --- a/zh_cn/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md +++ b/zh_cn/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -55,7 +55,7 @@ lang: zh_cn 现在: test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer - from test.rb:2:in `
' + from test.rb:2:in '
' ``` ## C API 更新 diff --git a/zh_tw/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md b/zh_tw/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md index 5f96cefe79..8d9ccb0b1f 100644 --- a/zh_tw/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md +++ b/zh_tw/news/_posts/2024-05-16-ruby-3-4-0-preview1-released.md @@ -54,7 +54,7 @@ lang: zh_tw 新: test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer - from test.rb:2:in `
' + from test.rb:2:in '
' ``` From 26ba60ebd2544a600687eb4f191d3da016deb01c Mon Sep 17 00:00:00 2001 From: Andy Waite <13400+andyw8@users.noreply.github.com> Date: Mon, 7 Oct 2024 21:50:57 -0400 Subject: [PATCH 407/607] Update link for Programming Ruby book --- en/documentation/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/documentation/index.md b/en/documentation/index.md index 2b2fdcb1d4..e6c3d83be7 100644 --- a/en/documentation/index.md +++ b/en/documentation/index.md @@ -116,7 +116,7 @@ If you have questions about Ruby the [7]: http://www.techotopia.com/index.php/Ruby_Essentials [8]: http://pine.fm/LearnToProgram/ [9]: http://www.ruby-doc.org/docs/ProgrammingRuby/ -[10]: http://pragmaticprogrammer.com/titles/ruby/index.html +[10]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ [12]: http://en.wikibooks.org/wiki/Ruby_programming_language [extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html [16]: http://www.rubydoc.info/ From bea21219192e0c021954d5fdd5285edddbfda4c5 Mon Sep 17 00:00:00 2001 From: motohiro-mm Date: Tue, 8 Oct 2024 20:43:26 +0900 Subject: [PATCH 408/607] Translate Ruby 3.4.0 preview2 Released(ja) --- ...2024-10-07-ruby-3-4-0-preview2-released.md | 136 ++++++++++++++++++ 1 file changed, 136 insertions(+) create mode 100644 ja/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md diff --git a/ja/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/ja/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md new file mode 100644 index 0000000000..424639f64c --- /dev/null +++ b/ja/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -0,0 +1,136 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview2 リリース" +author: "naruse" +translator: "motohiro-mm" +date: 2024-10-07 00:00:00 +0000 +lang: ja +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview2" | first %} +Ruby {{ release.version }}がリリースされました。 + +## Prism + +デフォルトのパーサーを parse.y から Prism に変更しました。 [[Feature #20564]] + +## 言語機能の変更 + +* `frozen_string_literal`のコメントがないファイルで文字列リテラルが凍結されたように振る舞うようになりました。 + 文字列リテラルが破壊的に変更された場合、非推奨の警告が表示されます。 + この警告は `-W:deprecated` または `Warning[:deprecated] = true` で有効にすることができます。 + コマンドライン引数で`--disable-frozen-string-literal` を指定してRubyを実行すると、この変更を無効にできます。 [[Feature #20205]] + +* `it`がブロックパラメータを参照するために追加されました。 [[Feature #18980]] + +* メソッド呼び出し時のnilのキーワードスプラットが使えるようになりました。 + `**nil`は`**{}`と同様に扱われ、キーワードは渡されず、変換メソッドも呼び出されません。 [[Bug #20064]] + +* インデックスにブロックを渡せなくなりました。 [[Bug #19918]] + +* インデックスにキーワード引数が使えなくなりました。 [[Bug #20218]] + +## コアクラスの更新 +注:特に重要なクラスアップデートのみを掲載しています。 + +* Exception + + * Exception#set_backtraceが`Thread::Backtrace::Location`の配列を受け付けるようになりました。 + `Kernel#raise`と`Thread#raise`、`Fiber#raise`も同様に新しいフォーマットを受け付けます。[[Feature #13557]] + +* Range + + * rangeが列挙可能でない場合、`Range#size`がTypeErrorを発生させるようになりました。[[Misc #18984]] + + +## 互換性に関する変更 + +注:バグフィックスは掲載していません。 + +* エラーメッセージとバックトレースの表示が変更されました。 + * 冒頭の引用符にはバッククォートの代わりにシングルクォートを使用します。 [[Feature #16495]] + * メソッド名の前にクラス名を表示します(クラスが永続的な名前を持つ場合のみ)。 [[Feature #19117]] + * `Kernel#caller`、`Thread::Backtrace::Location`のメソッドなどがそれに応じて変更されました。 + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + +* `Hash#inspect`の出力を変更しました。 [[Bug #20433]] + * キーがシンボルの場合は、コロン形式を使用するようになりました。`"{user: 1}"` + * キーがシンボルでない場合は、`=>`の前後にスペースを追加します。`'{"user" => 1}'` + 以前:`'{"user"=>1}'` + + +## C API更新 + +* `rb_newobj`と`rb_newobj_of` (および対応するマクロ `RB_NEWOBJ`、`RB_NEWOBJ_OF`、`NEWOBJ`、`NEWOBJ_OF`)が削除されました。 [[Feature #20265]] +* 廃止予定だった関数`rb_gc_force_recycle`が削除されました。 [[Feature #18290]] + +## 実装の改善 + +* `Array#each`がRubyで書き直され、パフォーマンスが改善されました。 [[Feature #20182]]. + +## その他の変更 + +* 渡されたブロックを使用しないメソッドにブロックを渡すと、verboseモード (`-w`) で警告が表示されるようになりました。 [[Feature #15554]] + +* `String.freeze`や`Integer#+`のようなインタプリタやJITによって特別に最適化されたコアメソッドを再定義すると、パフォーマンスクラスの警告(`-W:performance`または`Warning[:performance] = true`)が出るようになりました。 [[Feature #20429]] + +default gemやbundled gemの詳細については、[Logger](https://github.com/ruby/logger/releases)などのGitHubのリリースやchangelogを参照してください。 + +詳細は[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +か[commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})を参照してください。 + +これらの変更により、Ruby 3.3.0から[{{ release.stats.files_changed }} ファイルが変更され、{{ release.stats.insertions }} 行が追加され、 {{ release.stats.deletions }} 行が削除されました!](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) + + +## ダウンロード + +* <{{ 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 とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 From de09474d35372e76c003967ca3c030a990298769 Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Tue, 8 Oct 2024 22:35:40 +0800 Subject: [PATCH 409/607] Translate "Ruby 3.4.0 preview2 Released" (zh_CN) (#3383) --- ...2024-10-07-ruby-3-4-0-preview2-released.md | 134 ++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 zh_cn/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md diff --git a/zh_cn/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/zh_cn/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md new file mode 100644 index 0000000000..7c47b47d56 --- /dev/null +++ b/zh_cn/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -0,0 +1,134 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview2 已发布" +author: "naruse" +translator: "GAO Jun" +date: 2024-10-07 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview2" | first %} +我们很高兴地宣布 Ruby {{ release.version }} 发布。 + +## Prism + +默认解析器由 parse.y 切换到 Prism。 [[Feature #20564]] + +## 语言变化 + +* 在没有 `frozen_string_literal` 注释的文件中,当字符串字面量被修改时会发出警告。 + 这些警告可以使用 `-W:deprecated` 或者通过设置 `Warning[:deprecated] = true` 来启用。 + 如要禁用此变化,您可以在运行 Ruby 时,使用 `--disable-frozen-string-literal` 命令行参数。 [[Feature #20205]] + +* 增加了 `it` 来引用块参数。 [[Feature #18980]] + +* 支持在调用方法时使用 `nil` 作为关键字展开参数。 + `**nil` 类似于 `**{}`,不传递关键字参数,也不调用任何转换方法。 [[Bug #20064]] + +* 索引不再接受块传递。 [[Bug #19918]] + +* 索引不再接受关键字参数。 [[Bug #20218]] + +## 核心类更新 + +注意:我们只列出了重要的类更新。 + +* Exception + + * Exception#set_backtrace 现在接受 `Thread::Backtrace::Location` 数组。 + `Kernel#raise`,`Thread#raise` 和 `Fiber#raise` 也接受这个新格式。 [[Feature #13557]] + +* Range + + * 当 range 不可枚举时,Range#size 将抛出 TypeError。 [[Misc #18984]] + + + +## 兼容性问题 + +注意:不包括问题补丁。 + +* 修改了错误信息和错误栈的显示。 + * 使用单引号(`'`)代替反勾号(`` ` ``)作为错误消息的起始引号。 [[Feature #16495]] + * 在方法名前显示类名(仅当类具有永久名称时)。 [[Feature #19117]] + * `Kernel#caller`,`Thread::Backtrace::Location` 等的方法也进行了相应更改。 + + ``` + 此前: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + 现在: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + +* `Hash#inspect` 显示格式发生变化 [[Bug #20433]] + * 使用现代的表达语法来显示符号类型键值的情况: `"{user: 1}"` + * 其他类型的键值在显示时,在 `=>` 前后增加空格: `'{"user" => 1}'`,此前的显示为: `'{"user"=>1}'` + +## C API 更新 + +* 移除 `rb_newobj` 和 `rb_newobj_of` (以及相关的宏 `RB_NEWOBJ`,`RB_NEWOBJ_OF`,`NEWOBJ`,`NEWOBJ_OF`)。 [[Feature #20265]] +* 移除废除的函数 `rb_gc_force_recycle`。 [[Feature #18290]] + +## 实现改进 + +* `Array#each` 用 Ruby 重写,以提供更好的性能 [[Feature #20182]]。 + +## 其他变化 + +* 如果传递了一个块给不使用块的方法时,在详细模式(`-w`)中将显示警告。 [[Feature #15554]] + +* Ruby 对一些核心方法通过解释器和 JIT 进行了优化,诸如 `String.freeze`,`Integer#+`。 + 当这些方法被重定义时,解释器将发出性能警告(`-W:performance` 或 `Warning[:performance] = true`)。 [[Feature #20429]] + +有关默认 gems 和 绑定 gems 的细节,可以参考 GitHub 上的发布,例如 [logger gem](https://github.com/ruby/logger/releases) 或相应的变更日志。 +或 [提交日志](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})。 + +自 Ruby 3.3.0 以来,这些变化共导致 [{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+),删除 {{ release.stats.deletions }} 行(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)! + + +## 下载 + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Ruby 是什么 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发,现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是 Web 开发领域。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 From a697d0af4f58d8a05a87a6c0e8aab38c7e44baba Mon Sep 17 00:00:00 2001 From: Nithin Bekal Date: Tue, 8 Oct 2024 23:07:39 -0400 Subject: [PATCH 410/607] Remove obsolete editor links --- en/documentation/index.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/en/documentation/index.md b/en/documentation/index.md index 2b2fdcb1d4..edfea7262e 100644 --- a/en/documentation/index.md +++ b/en/documentation/index.md @@ -95,8 +95,6 @@ Here is a list of popular tools used by Rubyists: * On Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * On macOS: * [TextMate][32] @@ -132,8 +130,6 @@ If you have questions about Ruby the [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org From 81a366e8bdd158f0900d528682951a882db66d77 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 8 Oct 2024 16:32:07 +0800 Subject: [PATCH 411/607] Translate Ruby 3.4.0 preview2 news (zh_tw) --- ...2024-10-07-ruby-3-4-0-preview2-released.md | 136 ++++++++++++++++++ 1 file changed, 136 insertions(+) create mode 100644 zh_tw/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md diff --git a/zh_tw/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/zh_tw/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md new file mode 100644 index 0000000000..92ef60440c --- /dev/null +++ b/zh_tw/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -0,0 +1,136 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview2 發布" +author: "naruse" +translator: "Bear Su" +date: 2024-10-07 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview2" | first %} +我們很高興宣布 Ruby {{ release.version }} 發布了。 + +## Prism + +預設的解析器從 parse.y 切換為 Prism。 [[Feature #20564]] + +## 語法變更 + +* 沒有 `frozen_string_literal` 註解的檔案中的字串文字,現在行為會跟被凍結一樣。如果它們被修改則會發出棄用警告。 + 這些警告可以透過 `-W:deprecated` 或 `Warning[:deprecated] = true` 啟用。 + 若要停用此變更,您可以在執行 Ruby 時加上參數 `--disable-frozen-string-literal`。 [[Feature #20205]] + +* 新增 `it` 來引用 block 的傳入參數。 [[Feature #18980]] + +* 現在呼叫方法支援使用 Keyword splatting `nil`。 + `**nil` 的處理方式與 `**{}` 類似,不會傳遞 keywords,也不會呼叫任何轉換方法。 [[Bug #20064]] + +* Block passing 不再允許作為索引。 [[Bug #19918]] + +* 不定長度參數不再允許作為索引。 [[Bug #20218]] + +## 核心類別更新 + +注意:我們只列出特別的類別更新。 + +* Exception + + * Exception#set_backtrace 現在可接受 `Thread::Backtrace::Location` 陣列。 + `Kernel#raise`、`Thread#raise` 和 `Fiber#raise` 也接受同樣的新格式。 [[Feature #13557]] + +* Range + + * Range#size 如果 range 無法迭代的話,現在會拋出 TypeError。 [[Misc #18984]] + +## 相容性問題 + +注意:不包含功能問題的修正。 + +* 錯誤訊息與 backtrace 的顯示改變。 + * 使用單引號 (`'`) 取代反引號 (`` ` ``) 作為起始引號。 [[Feature #16495]] + * 在方法名稱前顯示類別名稱 (僅當類別有固定名稱時)。 [[Feature #19117]] + * `Kernel#caller`、`Thread::Backtrace::Location` 的方法等等,也做了對應的改變。 + + ``` + 舊: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + 新: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +* `Hash#inspect` 渲染變更。 [[Bug #20433]] + * Symbol keys 會使用現代 symbol key 語法顯示: `"{user: 1}"` + * 其他 keys 現在會在 `=>` 前後加上空白: `'{"user" => 1}'`,在之前不會添加: `'{"user"=>1}'` + +## C API 更新 + +* `rb_newobj` 和 `rb_newobj_of` (和相對應的巨集 `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) 已經被移除。 [[Feature #20265]] +* 移除已廢棄的函式 `rb_gc_force_recycle`。 [[Feature #18290]] + +## 實作改善 + +* `Array#each` 用 Ruby 重寫並有更好的效能 [[Feature #20182]]。 + +## 其他變更 + +* 將 block 傳遞給不使用傳入 block 的方法,會在 verbose 模式 (`-w`) 下顯示警告。 + [[Feature #15554]] + +* 當重新定義一些由直譯器與 JIT 特別最佳化的核心方法,例如 `String.freeze` 和 `Integer#+`,現在會發出效能類型警告 (`-W:performance` or `Warning[:performance] = true`)。 + [[Feature #20429]] + +請參閱 GitHub 發布如 [Logger](https://github.com/ruby/logger/releases) 和變更紀錄來了解更多關於預設 gems 與 bundled gems 的資訊。 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +來了解更多。 + +自 Ruby 3.3.0 以來,計 [{{ release.stats.files_changed }} 檔案變更,{{ release.stats.insertions }} 行新增(+),{{ release.stats.deletions }} 行刪減(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)。 + + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 From 54751d8667d891102ddcd28a0420a145c7036318 Mon Sep 17 00:00:00 2001 From: motohiro-mm Date: Wed, 9 Oct 2024 19:17:21 +0900 Subject: [PATCH 412/607] fixed a backquote to a singlequote --- ja/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ja/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/ja/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md index 424639f64c..8002c6e967 100644 --- a/ja/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md +++ b/ja/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -58,7 +58,7 @@ Ruby {{ release.version }}がリリースされました。 from test.rb:2:in `
' New: test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer - from test.rb:2:in `
' + from test.rb:2:in '
' ``` * `Hash#inspect`の出力を変更しました。 [[Bug #20433]] From 9c4d9707dcdda642a4511d404676038df7142e4a Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 9 Oct 2024 20:00:05 +0900 Subject: [PATCH 413/607] Follow up "Update link for Programming Ruby book" (ko) --- ko/documentation/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ko/documentation/index.md b/ko/documentation/index.md index dc46f7017f..71c5463c79 100644 --- a/ko/documentation/index.md +++ b/ko/documentation/index.md @@ -122,7 +122,7 @@ Ruby를 코딩할 때 운영체제의 기본 편집기를 사용할 수 있습 [7]: http://www.techotopia.com/index.php/Ruby_Essentials [8]: http://pine.fm/LearnToProgram/ [9]: http://www.ruby-doc.org/docs/ProgrammingRuby/ -[10]: http://pragmaticprogrammer.com/titles/ruby/index.html +[10]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ [12]: http://en.wikibooks.org/wiki/Ruby_programming_language [extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html [16]: http://www.rubydoc.info/ From 0acf718d856e81d23f8878bef7cb970419d2b0ce Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 9 Oct 2024 20:04:08 +0900 Subject: [PATCH 414/607] Follow up "Remove obsolete editor links" (ko) --- ko/documentation/index.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/ko/documentation/index.md b/ko/documentation/index.md index dc46f7017f..bcba62a8c7 100644 --- a/ko/documentation/index.md +++ b/ko/documentation/index.md @@ -100,8 +100,6 @@ Ruby를 코딩할 때 운영체제의 기본 편집기를 사용할 수 있습 * Windows * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * macOS * [TextMate][32] @@ -137,8 +135,6 @@ Ruby를 코딩할 때 운영체제의 기본 편집기를 사용할 수 있습 [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org From 4365c5e2526049d1626246fa5f2ad060b48b5932 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Wed, 9 Oct 2024 22:21:30 +0800 Subject: [PATCH 415/607] Follow up "Remove obsolete editor links" (zh_tw) --- zh_tw/documentation/index.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/zh_tw/documentation/index.md b/zh_tw/documentation/index.md index 8a4ec1553b..3e8f0df3f8 100644 --- a/zh_tw/documentation/index.md +++ b/zh_tw/documentation/index.md @@ -88,8 +88,6 @@ lang: zh_tw * Windows 作業系統: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * macOS 作業系統: * [TextMate][32] @@ -129,8 +127,6 @@ lang: zh_tw [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org From 65fbbc19b38d61d6d5219688cb7366bd5f3e10f8 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Wed, 9 Oct 2024 22:25:58 +0800 Subject: [PATCH 416/607] Follow up "Update link for Programming Ruby book" (zh_tw) --- zh_tw/documentation/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zh_tw/documentation/index.md b/zh_tw/documentation/index.md index 8a4ec1553b..26adcf9610 100644 --- a/zh_tw/documentation/index.md +++ b/zh_tw/documentation/index.md @@ -108,7 +108,7 @@ lang: zh_tw [7]: http://www.techotopia.com/index.php/Ruby_Essentials [8]: http://pine.fm/LearnToProgram/ [9]: http://www.ruby-doc.org/docs/ProgrammingRuby/ -[10]: http://pragmaticprogrammer.com/titles/ruby/index.html +[10]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ [12]: http://en.wikibooks.org/wiki/Ruby_programming_language [13]: http://www.ruby-doc.org/core [14]: https://ruby.github.io/rdoc/ From 1ba90c38d6bd1d5a072f0145f0634f7417cf5ce5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Madis=20N=C3=B5mme?= Date: Wed, 9 Oct 2024 21:11:53 +0300 Subject: [PATCH 417/607] Fix orthography in hello_world.md --- es/examples/hello_world.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/es/examples/hello_world.md b/es/examples/hello_world.md index ff82caf3e2..d41be1e654 100644 --- a/es/examples/hello_world.md +++ b/es/examples/hello_world.md @@ -9,10 +9,10 @@ layout: null # Son superfluos: # # * Un método "main" -# * Nueva linea +# * Nueva línea # * Punto y coma # -# Aqui esta el código: +# Aquí está el código: puts "¡Hola Mundo!" {% endhighlight %} From 0fbc6423307bb9c347835797a8ea6c0a1472a614 Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 11 Oct 2024 06:27:30 +0900 Subject: [PATCH 418/607] Translate "Ruby 3.4.0 preview2 Released" (ko) (#3392) * cp {en,ko}/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md * Translate "Ruby 3.4.0 preview2 Released" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ...2024-10-07-ruby-3-4-0-preview2-released.md | 148 ++++++++++++++++++ 1 file changed, 148 insertions(+) create mode 100644 ko/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md diff --git a/ko/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/ko/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md new file mode 100644 index 0000000000..070b8dea8e --- /dev/null +++ b/ko/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -0,0 +1,148 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview2 릴리스" +author: "naruse" +translator: "shia" +date: 2024-10-07 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview2" | first %} +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. + +## Prism + +parse.y에서 Prism으로 기본 파서를 변경했습니다. [[Feature #20564]] + +## 언어 변경 + +* 파일에 `frozen_string_literal` 주석이 없을 때, 문자열 리터럴이 변경되면 + 폐기 예정 경고를 출력합니다. + 이 경고는 `-W:deprecated`나 `Warning[:deprecated] = true` 설정을 통해 활성화할 수 있습니다. + 이 변경을 무효화하고 싶다면 Ruby를 실행할 때 `--disable-frozen-string-literal` 커맨드라인 인수를 + 사용하세요. [[Feature #20205]] + +* 블록 인자를 가리키는 `it`이 추가됩니다. [[Feature #18980]] + +* 메서드 호출 시에 `nil`에 키워드 스플랫을 지원합니다. + `**nil`은 `**{}`와 비슷하게 동작하며, 키워드를 넘기지 않으며, + 어떤 변환 메서드도 호출하지 않습니다. [[Bug #20064]] + +* 블록을 인덱스로 사용할 수 없게 됩니다. [[Bug #19918]] + +* 키워드 인수를 인덱스로 사용할 수 없게 됩니다. [[Bug #20218]] + +## 코어 클래스 변경 + +주의: 눈에 띄는 클래스 변경만을 포함합니다. + +* Exception + + * `Exception#set_backtrace`는 이제 `Thread::Backtrace::Location`의 배열을 입력으로 받을 수 있습니다. + `Kernel#raise`, `Thread#raise`와 `Fiber#raise`도 같은 형식의 입력을 받습니다. [[Feature #13557]] + +* Range + + * `Range#size`는 이제 범위가 순회 가능하지 않다면 `TypeError`를 던집니다. [[Misc #18984]] + + + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + +* 에러 메시지와 백트레이스의 출력 결과가 변경됩니다. + * 여는 따옴표로 백틱 대신 작은 따옴표를 사용합니다. [[Feature #16495]] + * 메서드 이름 앞에 클래스 이름을 출력합니다(클래스가 불변하는 이름을 가지고 있는 경우만). [[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location`의 메서드 등도 마찬가지로 변경됩니다. + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +* `Hash#inspect` 결과가 변경되었습니다. [[Bug #20433]] + * 심볼 키는 최신 심볼 키 구문을 사용하여 표시됩니다. 예시: `"{user: 1}"` + * 다른 키는 `=>` 주변에 공백이 추가되었습니다. 예시: `'{"user" => 1}'`. 이전에는 그렇지 않았습니다. 예시: `'{"user"=>1}'`. + +## C API 변경 + +* `rb_newobj`와 `rb_newobj_of`(그리고 대응하는 매크로인 `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`)가 삭제됩니다. [[Feature #20265]] +* 폐기 예정인 `rb_gc_force_recycle` 함수가 삭제됩니다. [[Feature #18290]] + +## 구현 개선 + +* 더 나은 성능을 위해 `Array#each`를 Ruby로 재작성했습니다. [[Feature #20182]] + +## 그 이외의 변경 + +* 상세 모드(`-w`)에서 메서드에 넘긴 블록이 사용되지 않았을 때 + 경고를 출력합니다. + [[Feature #15554]] + +* `String.freeze`나 `Integer#+`처럼 인터프리터와 JIT이 특별히 최적화하는 + 몇몇 코어 메서드를 재정의하면 성능 클래스 + 경고(`-W:performance`나 `Warning[:performance] = true`)를 출력합니다. + [[Feature #20429]] + +기본 gem 또는 내장 gem에 대한 자세한 내용은 [Logger](https://github.com/ruby/logger/releases)와 같은 +GitHub 릴리스 또는 변경 로그에서 확인하세요. + +더 자세한 내용은 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.3.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 From e2f2675d5b274a326996ace654335cd20d8369a6 Mon Sep 17 00:00:00 2001 From: "Italo A." Date: Thu, 10 Oct 2024 21:21:11 -0300 Subject: [PATCH 419/607] Update tiobe index link into pt-BR --- pt/about/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pt/about/index.md b/pt/about/index.md index 2c14fa521f..27ec4f4840 100644 --- a/pt/about/index.md +++ b/pt/about/index.md @@ -240,7 +240,7 @@ Nov. 2001. [ror]: http://rubyonrails.org/ [linuxdevcenter]: http://www.linuxdevcenter.com/pub/a/linux/2001/11/29/ruby.html [artima]: http://www.artima.com/intv/closures2.html -[tiobe]: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html +[tiobe]: https://www.tiobe.com/tiobe-index/ [jruby]: http://jruby.org [rubinius]: http://rubini.us [mruby]: http://www.mruby.org/ From 809dc3e5382d53a7d27c4ce831965d3beecd6e22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Wed, 23 Oct 2024 11:15:15 -0400 Subject: [PATCH 420/607] Translation of Ruby 3.4.0.preview2 (es) (#3397) --- ...2024-10-07-ruby-3-4-0-preview2-released.md | 169 ++++++++++++++++++ 1 file changed, 169 insertions(+) create mode 100644 es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md diff --git a/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md new file mode 100644 index 0000000000..6b1b774c29 --- /dev/null +++ b/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -0,0 +1,169 @@ +--- +layout: news_post +title: "Ruby 3.4.0 preview2 Released" +author: "naruse" +translator: vtamara +date: 2024-10-07 00:00:00 +0000 +lang: es +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-preview2" | first %} +Nos complace anunciar la publicación de Ruby {{ release.version }}. + +## Prism + +Cambió el analizador sintáctico predeterminado de parse.y a Prism. +[[Característica #20564]] + +## Cambios en el lenguaje + +* Las cadenas literales en archivos sin un comentario `frozen_string_literal` + ahora producen una advertencia de obsolescencia cuando se mutan. + Estas advertencias pueden habilitarse con `-W:deprecated` + o estableciendo `Warning[:deprecated] = true`. + Para deshabilitar este cambio, puede ejecutar Ruby con el argumento + `--disable-frozen-string-literal` en la línea de ordenes. + [[Característica #20205]] + +* Se añade `it` para referenciar un parámetro de bloque. + [[Característica #18980]] + +* Ahora soporta splat de palabra clave `nil` + cuando se llaman métodos. + `**nil` se trata de manera similar a `**{}`, al no pasar + palabras clave, ni llamar método de conversión alguno [[Falla #20064]] + +* Ya no se permite pasar bloques como índices. [[Falla #19918]] + +* Argumentos de palabra clave ya no son permitidos como índices. + [[Falla #20218]] + + +## Actualización a clases fundamentales + +Nota: Listamos sólo actualizaciones a clases muy importantes. + +* Excepción + + * `Exception#set_backtrace` ahora acepta un arreglo de + `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` y `Fiber#raise` también aceptan + este nuevo formato. [[Característica #13557]] + +* Rangos + + * `Range#size` ahora lanza `TypeError` si el rango no es iterable. + [[Varios #18984]] + + + +## Problemas de compatibilidad + +Nota: Excluyendo correcciones a fallas. + +* Se han cambiado mensajes de error y presentación de trazas. + * Se usa un sólo apostrofe en lugar de un acento grave para iniciar + citas. [[Característica #16495]] + * Presentar el nombre de la clase antes del nombre del método (sólo + cuando la clase tiene un nombre permanente). [[Característica #19117]] + * Los métodos de `Kernel#caller`, `Thread::Backtrace::Location` se + han cambiado análogamente. + + ``` + Antiguo: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + Nuevo: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +* La presentación de `Hash#inspect` ha cambiado. [[Falla #20433]] + * Las llaves que son símbolos se presentan con la sintaxis moderna + para llaves que son símbolos: `"{user: 1}"` + * Otras llaves ahora tiene espacios alrededor de `=>`: + `'{"user" => 1}'`, mientras que antes no tenían: `'{"user"=>1}'` + +## Actualizaciones al API en C + +* Se han eliminado `rb_newobj` y `rb_newobj_of` (y los respectivos macros + `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`). [[Característica #20265]] +* Se eliminó la función obsoleta `rb_gc_force_recycle`. [[Característica #18290]] + +## Mejoras a la implementación + +* `Array#each` se ha reescrito en Ruby para mejorar desempeño + [[Característica #20182]]. + +## Cambios varios + +* Al pasar un bloque a un método que no usa el bloque pasado ahora presentará + una advertencia en modo verboso (`-w`). + [[Característica #15554]] + +* Al redefinir algunos métodos fundamentales que son optimizados de manera + especial por el interprete y el JIT como `String.freeze` o `Integer#+` + ahora se emite una advertencia de desempeño + (`-W:performance` o `Warning[:performance] = true`). + [[Característica #20429]] + +En la publicación en Github como [Logger](https://github.com/ruby/logger/releases) o en la bitácora de cambios pueden verse detalles de las gemas +predeterminadas y las gemas incluidas. + +Ver más detalles en +[NOTICIAS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +o en [la bitácora de contribuciones](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}). + +Con estos cambios, [{{ release.stats.files_changed }} archivos modificados, +{{ release.stats.insertions }} inserciones(+), +{{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +desde Ruby 3.3.0! + + +## Descargas + +* <{{ 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 }} + +## Lo que es Ruby + +Ruby fue desarrolladoa primero por Matz (Yukihiro Matsumoto) en 1993, +y ahora es desarrollado como Fuentes Abiertas. +Opera en múltiples platformas y es usado en todo el mundo +especialmente para desarrollo web. + +[Característica #13557]: https://bugs.ruby-lang.org/issues/13557 +[Característica #15554]: https://bugs.ruby-lang.org/issues/15554 +[Característica #16495]: https://bugs.ruby-lang.org/issues/16495 +[Característica #18290]: https://bugs.ruby-lang.org/issues/18290 +[Característica #18980]: https://bugs.ruby-lang.org/issues/18980 +[Varios #18984]: https://bugs.ruby-lang.org/issues/18984 +[Característica #19117]: https://bugs.ruby-lang.org/issues/19117 +[Falla #19918]: https://bugs.ruby-lang.org/issues/19918 +[Falla #20064]: https://bugs.ruby-lang.org/issues/20064 +[Característica #20182]: https://bugs.ruby-lang.org/issues/20182 +[Característica #20205]: https://bugs.ruby-lang.org/issues/20205 +[Falla #20218]: https://bugs.ruby-lang.org/issues/20218 +[Característica #20265]: https://bugs.ruby-lang.org/issues/20265 +[Característica #20429]: https://bugs.ruby-lang.org/issues/20429 +[Característica #20564]: https://bugs.ruby-lang.org/issues/20564 +[Falla #20433]: https://bugs.ruby-lang.org/issues/20433 From 9f8b8cc2c4910b09cd3bfe292b9b1938733af1b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Wed, 23 Oct 2024 11:27:12 -0400 Subject: [PATCH 421/607] Improves title and use of Logger (#3398) --- es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md index 6b1b774c29..ec2bf6c721 100644 --- a/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md +++ b/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.4.0 preview2 Released" +title: "Publicado Ruby 3.4.0 preview2" author: "naruse" translator: vtamara date: 2024-10-07 00:00:00 +0000 @@ -108,8 +108,9 @@ Nota: Excluyendo correcciones a fallas. (`-W:performance` o `Warning[:performance] = true`). [[Característica #20429]] -En la publicación en Github como [Logger](https://github.com/ruby/logger/releases) o en la bitácora de cambios pueden verse detalles de las gemas -predeterminadas y las gemas incluidas. +Ver publicaciones de nuevas versiones en Github de +[Logger](https://github.com/ruby/logger/releases) o la bitácora de cambios +para ver detalles de las gemas predeterminadas y las gemas incluidas. Ver más detalles en [NOTICIAS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) From a8c73512484ceeeebcdc875639523087566a348d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Wed, 23 Oct 2024 11:31:00 -0400 Subject: [PATCH 422/607] =?UTF-8?q?Changes=20in=C3=ADciate=20for=20comienz?= =?UTF-8?q?a=20(#3399)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _data/locales/es.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/locales/es.yml b/_data/locales/es.yml index 94995797e3..3459a8b840 100644 --- a/_data/locales/es.yml +++ b/_data/locales/es.yml @@ -27,7 +27,7 @@ search: sidebar: get_started: - text: Iníciate, ¡es fácil! + text: Comienza, ¡es fácil! try_ruby: text: ¡Prueba Ruby! (en tu navegador) url: https://try.ruby-lang.org/ From 8937e6ecaae7d81e4d04d9e705019842f019e28a Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Mon, 28 Oct 2024 11:51:56 +0900 Subject: [PATCH 423/607] es: Fix CI https://github.com/ruby/www.ruby-lang.org/actions/runs/11483155303/job/31957924695#step:6:26 Checking markdown files... es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md trailing whitespace --- es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md b/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md index ec2bf6c721..edfb244bf1 100644 --- a/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md +++ b/es/news/_posts/2024-10-07-ruby-3-4-0-preview2-released.md @@ -108,8 +108,8 @@ Nota: Excluyendo correcciones a fallas. (`-W:performance` o `Warning[:performance] = true`). [[Característica #20429]] -Ver publicaciones de nuevas versiones en Github de -[Logger](https://github.com/ruby/logger/releases) o la bitácora de cambios +Ver publicaciones de nuevas versiones en Github de +[Logger](https://github.com/ruby/logger/releases) o la bitácora de cambios para ver detalles de las gemas predeterminadas y las gemas incluidas. Ver más detalles en From 9862c90c4aa78b7757b0b5bda8a157ede87dc1a0 Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Mon, 28 Oct 2024 11:44:27 +0900 Subject: [PATCH 424/607] Add CVE-2024-49761: ReDoS vulnerability in REXML --- .../2024-10-28-redos-rexml-cve-2024-49761.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 en/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md diff --git a/en/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/en/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md new file mode 100644 index 0000000000..39f181f9a2 --- /dev/null +++ b/en/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-49761: ReDoS vulnerability in REXML" +author: "kou" +translator: +date: 2024-10-28 03:00:00 +0000 +tags: security +lang: en +--- + +There is a ReDoS vulnerability in REXML gem. This vulnerability has been assigned the CVE identifier [CVE-2024-49761](https://www.cve.org/CVERecord?id=CVE-2024-49761). We strongly recommend upgrading the REXML gem. + +This is not happen with Ruby 3.2 or later. Ruby 3.1 is the only affected maintained Ruby. Note that Ruby 3.1 will reach EOL on 2025-03. + +## Details + +When parsing an XML that has many digits between `&#` and `x...;` in a hex numeric character reference (`&#x...;`). + +Please update REXML gem to version 3.3.9 or later. + +## Affected versions + +* REXML gem 3.3.8 or prior with Ruby 3.1 or prior + +## Credits + +Thanks to [manun](https://hackerone.com/manun) for discovering this issue. + +## History + +* Originally published at 2024-10-28 03:00:00 (UTC) From cfccbcd00a2871dc351d851daba9048e565584c1 Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Mon, 28 Oct 2024 12:08:25 +0900 Subject: [PATCH 425/607] Fix a typo Co-authored-by: Yusuke Endoh --- en/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/en/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md index 39f181f9a2..a62f14e4eb 100644 --- a/en/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md +++ b/en/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -10,7 +10,7 @@ lang: en There is a ReDoS vulnerability in REXML gem. This vulnerability has been assigned the CVE identifier [CVE-2024-49761](https://www.cve.org/CVERecord?id=CVE-2024-49761). We strongly recommend upgrading the REXML gem. -This is not happen with Ruby 3.2 or later. Ruby 3.1 is the only affected maintained Ruby. Note that Ruby 3.1 will reach EOL on 2025-03. +This does not happen with Ruby 3.2 or later. Ruby 3.1 is the only affected maintained Ruby. Note that Ruby 3.1 will reach EOL on 2025-03. ## Details From dfefda03c8cff232a1615590aa25f602c0ab016c Mon Sep 17 00:00:00 2001 From: Bear Su Date: Mon, 28 Oct 2024 20:56:33 +0800 Subject: [PATCH 426/607] Translate 2024-10-28 ReDoS Rexml CVE news (zh_tw) --- .../2024-10-28-redos-rexml-cve-2024-49761.md | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 zh_tw/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md diff --git a/zh_tw/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/zh_tw/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md new file mode 100644 index 0000000000..13ae80e452 --- /dev/null +++ b/zh_tw/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -0,0 +1,34 @@ +--- +layout: news_post +title: "CVE-2024-49761: ReDoS vulnerability in REXML" +author: "kou" +translator: "Bear Su" +date: 2024-10-28 03:00:00 +0000 +tags: security +lang: zh_tw +--- + +在 REXML gem 發現了一個 DoS 漏洞。 +該漏洞的 CVE 編號為 [CVE-2024-43398](https://www.cve.org/CVERecord?id=CVE-2024-43398)。 +我們強烈建議您升級 REXML gem。 + +該漏洞不會在 Ruby 3.2 或之後發生。Ruby 3.1 是唯一受到影響的版本。 +注意 Ruby 3.1 將會在 2025-03 結束生命週期。 + +## 風險細節 + +當解析的 XML 裡十六進位數字字元參考 (`&#x...;`) 中的 `&#` 和 `x...;` 之間有許多數字。 + +請更新 REXML gem 至 3.3.9 或更新的版本。 + +## 受影響版本 + +* REXML gem 3.3.8 或 Ruby 3.1 較早的版本或更早的版本。 + +## 致謝 + +感謝 [manun](https://hackerone.com/manun) 發現此問題。 + +## 歷史 + +* 最初發布於 2024-10-28 03:00:00 (UTC) From a459d9825424273f3c9cec42c985dc9d65d3567f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Oct 2024 18:40:34 +0000 Subject: [PATCH 427/607] Bump rexml from 3.3.6 to 3.3.9 Bumps [rexml](https://github.com/ruby/rexml) from 3.3.6 to 3.3.9. - [Release notes](https://github.com/ruby/rexml/releases) - [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md) - [Commits](https://github.com/ruby/rexml/compare/v3.3.6...v3.3.9) --- updated-dependencies: - dependency-name: rexml dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 70b3e4585c..7352f70cbe 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -131,8 +131,7 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rexml (3.3.6) - strscan + rexml (3.3.9) rouge (4.3.0) ruby-rc4 (0.1.5) safe_yaml (1.0.5) @@ -159,7 +158,6 @@ GEM slop (4.10.1) spidr (0.7.1) nokogiri (~> 1.3) - strscan (3.1.0) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) tidy_ffi (1.0.1) From 2672c45aa4c0c8ad5642dafd0ff747e4907b6ae8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Oct 2024 22:47:37 +0000 Subject: [PATCH 428/607] Bump webrick from 1.8.1 to 1.8.2 Bumps [webrick](https://github.com/ruby/webrick) from 1.8.1 to 1.8.2. - [Release notes](https://github.com/ruby/webrick/releases) - [Commits](https://github.com/ruby/webrick/compare/v1.8.1...v1.8.2) --- updated-dependencies: - dependency-name: webrick dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 7352f70cbe..0819310148 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -180,7 +180,7 @@ GEM json (>= 1.8) nokogiri (~> 1.6) rexml (~> 3.2) - webrick (1.8.1) + webrick (1.8.2) yell (2.2.2) zeitwerk (2.6.17) From 9cd603ac5e8ac0391a2472e80c16238b1753a2e5 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 29 Oct 2024 16:16:51 +0900 Subject: [PATCH 429/607] Translate "CVE-2024-49761: ReDoS vulnerability in REXML" (ko) (#3402) * cp {en,ko}/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md * Translate "CVE-2024-49761: ReDoS vulnerability in REXML" (ko) --- .../2024-10-28-redos-rexml-cve-2024-49761.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 ko/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md diff --git a/ko/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/ko/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md new file mode 100644 index 0000000000..9e621d2b99 --- /dev/null +++ b/ko/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-49761: REXML의 ReDoS 취약점" +author: "kou" +translator: "shia" +date: 2024-10-28 03:00:00 +0000 +tags: security +lang: ko +--- + +REXML gem에서 ReDoS 취약점이 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2024-49761](https://www.cve.org/CVERecord?id=CVE-2024-49761)로 등록되었습니다. REXML gem 업그레이드를 강하게 추천합니다. + +Ruby 3.2나 그 이상에서는 이 문제가 발생하지 않습니다. 유지 관리 중인 Ruby 중 유일하게 영향을 받는 버전은 Ruby 3.1입니다. Ruby 3.1은 2025년 3월에 EOL이 예정되어 있습니다. + +## 세부 내용 + +16진수 숫자 문자 참조(`&#x...;`)에서 `&#`과 `x...;` 사이에 많은 숫자가 있는 XML을 파싱할 때 발생합니다. + +REXML gem을 3.3.9나 그 이상으로 업데이트하세요. + +## 해당 버전 + +* Ruby 3.1과 그 이하 버전에서 REXML gem 3.3.8과 그 이하 + +## 도움을 준 사람 + +이 문제를 발견해 준 [manun](https://hackerone.com/manun)에게 감사를 표합니다. + +## 수정 이력 + +* 2024-10-28 03:00:00 (UTC) 최초 공개 From acc5519a2726522ef5d1eb9d2a798e5ec9ef3184 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 29 Oct 2024 18:42:57 +0800 Subject: [PATCH 430/607] Translate DoS REXML CVE Title (zh_tw) --- zh_tw/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md | 2 +- zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md | 2 +- zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md | 2 +- zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md | 2 +- zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md | 2 +- zh_tw/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md | 4 ++-- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/zh_tw/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md b/zh_tw/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md index 79c4133036..18f1afaade 100644 --- a/zh_tw/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md +++ b/zh_tw/news/_posts/2024-05-16-dos-rexml-cve-2024-35176.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-35176: DoS in REXML" +title: "CVE-2024-35176: REXML DoS 漏洞" author: "kou" translator: "Bear Su" date: 2024-05-16 05:00:00 +0000 diff --git a/zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md b/zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md index 343734d255..2fbb84fe4d 100644 --- a/zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md +++ b/zh_tw/news/_posts/2024-07-16-dos-rexml-cve-2024-39908.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-39908 : DoS in REXML" +title: "CVE-2024-39908: REXML DoS 漏洞" author: "watson1978" translator: "Bear Su" date: 2024-07-16 03:00:00 +0000 diff --git a/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md b/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md index 800cd47f56..5812649f1d 100644 --- a/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md +++ b/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41123.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-41123: DoS vulnerabilities in REXML" +title: "CVE-2024-41123: REXML DoS 漏洞" author: "kou" translator: "Bear Su" date: 2024-08-01 03:00:00 +0000 diff --git a/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md b/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md index dc3a4281a1..d95af5701c 100644 --- a/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md +++ b/zh_tw/news/_posts/2024-08-01-dos-rexml-cve-2024-41946.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-41946: DoS vulnerability in REXML" +title: "CVE-2024-41946: REXML DoS 漏洞" author: "kou" translator: "Bear Su" date: 2024-08-01 03:00:00 +0000 diff --git a/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md b/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md index b0d24e2f0d..ba8679272b 100644 --- a/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md +++ b/zh_tw/news/_posts/2024-08-22-dos-rexml-cve-2024-43398.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-43398: DoS vulnerability in REXML" +title: "CVE-2024-43398: REXML DoS 漏洞" author: "kou" translator: "Bear Su" date: 2024-08-22 03:00:00 +0000 diff --git a/zh_tw/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/zh_tw/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md index 13ae80e452..847aad7890 100644 --- a/zh_tw/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md +++ b/zh_tw/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "CVE-2024-49761: ReDoS vulnerability in REXML" +title: "CVE-2024-49761: REXML ReDoS 漏洞" author: "kou" translator: "Bear Su" date: 2024-10-28 03:00:00 +0000 @@ -8,7 +8,7 @@ tags: security lang: zh_tw --- -在 REXML gem 發現了一個 DoS 漏洞。 +在 REXML gem 發現了一個 ReDoS 漏洞。 該漏洞的 CVE 編號為 [CVE-2024-43398](https://www.cve.org/CVERecord?id=CVE-2024-43398)。 我們強烈建議您升級 REXML gem。 From 0a9b57451260e419ea229a7efb97557f0bd1f883 Mon Sep 17 00:00:00 2001 From: nagachika Date: Wed, 30 Oct 2024 19:39:24 +0900 Subject: [PATCH 431/607] Release ruby-3.2.6 --- _data/downloads.yml | 2 +- _data/releases.yml | 24 +++++++++++ .../_posts/2024-10-30-ruby-3-2-6-released.md | 42 +++++++++++++++++++ 3 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2024-10-30-ruby-3-2-6-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index f8bec70dbb..d7d93ae5b2 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -9,7 +9,7 @@ preview: stable: - 3.3.5 - - 3.2.5 + - 3.2.6 # optional security_maintenance: diff --git a/_data/releases.yml b/_data/releases.yml index b43179020c..50e6cba5a2 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -349,6 +349,30 @@ # 3.2 series +- version: 3.2.6 + date: 2024-10-30 + post: /en/news/2024/10/30/ruby-3-2-6-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.6.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.6.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.6.tar.xz + size: + gz: 20521981 + zip: 24653808 + xz: 15126888 + sha1: + gz: bbf265f5e7a3f480056dc2fa6d600a97cba00713 + zip: efbcfc2c2e238a7201366fdefdcf0dc16e4072af + xz: eabbe230df704e7141d53d8221314bb33b5f0dea + sha256: + gz: d9cb65ecdf3f18669639f2638b63379ed6fbb17d93ae4e726d4eb2bf68a48370 + zip: 36ca2292b48d8f6a0281d6c772dc47c358cb838774addc0344e38d4d2735704f + xz: 671134022238c2c4a9d79dc7d1e58c909634197617901d25863642f735a27ecb + sha512: + gz: 26ae9439043cf40e5eddde6b92ae51c9e1fa4e89c8ec6da36732c59c14873b022c683fb3007950d372f35de9b62a4fabbbc3ef1f4ef58cd53058bd56e1552cbe + zip: 8474829ebe13b3357f962571e8114e47634b5ed1f3e2dbfdf4ecb2ece1a3ed354f3506e8526a6768457e980ea4f056d77cd5b547419f2d8f9bea07348f64edc2 + xz: 78f7fc76d47c772b9bc313cbcb57a2c0f1a975e09cfe46a3083f6f603d62b0031bd4c55896c8353c1c343974d45077e06e310111198d870883e06a0cf6fd03ce + - version: 3.2.5 date: 2024-07-26 post: "/en/news/2024/07/26/ruby-3-2-5-released/" diff --git a/en/news/_posts/2024-10-30-ruby-3-2-6-released.md b/en/news/_posts/2024-10-30-ruby-3-2-6-released.md new file mode 100644 index 0000000000..8358698421 --- /dev/null +++ b/en/news/_posts/2024-10-30-ruby-3-2-6-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.6 Released" +author: nagachika +translator: +date: 2024-10-30 19:27:22 +0900 +lang: en +--- + +Ruby 3.2.6 has been released. + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_6) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.2.6" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From a3d51cbeb936259c241b0d8b8e8d7924fcd58d8e Mon Sep 17 00:00:00 2001 From: nagachika Date: Wed, 30 Oct 2024 19:42:07 +0900 Subject: [PATCH 432/607] Fix date header timezone. --- en/news/_posts/2024-10-30-ruby-3-2-6-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-10-30-ruby-3-2-6-released.md b/en/news/_posts/2024-10-30-ruby-3-2-6-released.md index 8358698421..fe1a34e9dd 100644 --- a/en/news/_posts/2024-10-30-ruby-3-2-6-released.md +++ b/en/news/_posts/2024-10-30-ruby-3-2-6-released.md @@ -3,7 +3,7 @@ layout: news_post title: "Ruby 3.2.6 Released" author: nagachika translator: -date: 2024-10-30 19:27:22 +0900 +date: 2024-10-30 10:00:00 +0000 lang: en --- From 5b7219e5d3506fd8edd72b92206c3768974ec87f Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 31 Oct 2024 11:11:40 +0900 Subject: [PATCH 433/607] Rename ruby-yy-mm-dd to yy-mm-dd-ruby --- lib/draft-release.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/draft-release.rb b/lib/draft-release.rb index cc48b529e9..09c411f1cd 100644 --- a/lib/draft-release.rb +++ b/lib/draft-release.rb @@ -3,7 +3,7 @@ template = File.read("lib/release-template.erb") version = ARGV[0] || "3.3.4" -output_path = "en/news/_posts/ruby-#{Time.now.strftime("%Y-%m-%d")}-#{version.gsub(/\./, "-")}-released.md" +output_path = "en/news/_posts/#{Time.now.strftime("%Y-%m-%d")}-ruby-#{version.gsub(/\./, "-")}-released.md" File.open(output_path, "w") do |file| file.write ERB.new(template).result(binding) From 88701069566120275f603b7cff01adffff93d810 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 31 Oct 2024 12:53:10 +0900 Subject: [PATCH 434/607] peter-evans/create-pull-request@v7 is now working with multiple checkouts --- .github/workflows/draft-release.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index b23dd829e4..64424169f3 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -14,13 +14,8 @@ on: jobs: release: runs-on: ubuntu-latest - defaults: - run: - working-directory: www steps: - uses: actions/checkout@v4 - with: - path: www - uses: actions/checkout@v4 with: @@ -40,6 +35,10 @@ jobs: tool/format-release ../www ${{ github.event.client_payload.version || github.event.inputs.version }} . working-directory: ruby + - name: Cleanup ruby directory + run: | + rm -rf ruby + - name: Create Commit run: | git config user.name "GitHub Actions Bot" @@ -58,4 +57,3 @@ jobs: title: "Create release for ${{ github.event.client_payload.version || github.event.inputs.version }}" body: "This is an automated pull request to create a release" draft: true - From a046ff3fb61e0d3d12d768e07d0849922c902b7c Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Thu, 31 Oct 2024 13:09:47 +0900 Subject: [PATCH 435/607] Fixed working directory path --- .github/workflows/draft-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 64424169f3..5557325a66 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -32,7 +32,7 @@ jobs: - name: Update data files run: | - tool/format-release ../www ${{ github.event.client_payload.version || github.event.inputs.version }} . + tool/format-release .. ${{ github.event.client_payload.version || github.event.inputs.version }} . working-directory: ruby - name: Cleanup ruby directory From 2162e1cce87fc8cf81139a19ed393ca99fc6f69b Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 31 Oct 2024 20:09:11 +0900 Subject: [PATCH 436/607] Translate "Ruby 3.2.6 Released" (ko) (#3408) * cp {en,ko}/news/_posts/2024-10-30-ruby-3-2-6-released.md * Translate "Ruby 3.2.6 Released" (ko) * Update ko/news/_posts/2024-10-30-ruby-3-2-6-released.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../_posts/2024-10-30-ruby-3-2-6-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 ko/news/_posts/2024-10-30-ruby-3-2-6-released.md diff --git a/ko/news/_posts/2024-10-30-ruby-3-2-6-released.md b/ko/news/_posts/2024-10-30-ruby-3-2-6-released.md new file mode 100644 index 0000000000..ffa12569d2 --- /dev/null +++ b/ko/news/_posts/2024-10-30-ruby-3-2-6-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.6 릴리스" +author: nagachika +translator: shia +date: 2024-10-30 10:00:00 +0000 +lang: ko +--- + +Ruby 3.2.6이 릴리스되었습니다. + +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_2_6)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.2.6" | first %} + +* <{{ 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 9e332b2b2a8e22441a0c5c14c0cd00db1bef1d46 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 31 Oct 2024 20:56:48 +0800 Subject: [PATCH 437/607] Translate Ruby 3.2.6 Released (zh_tw) --- .../_posts/2024-10-30-ruby-3-2-6-released.md | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 zh_tw/news/_posts/2024-10-30-ruby-3-2-6-released.md diff --git a/zh_tw/news/_posts/2024-10-30-ruby-3-2-6-released.md b/zh_tw/news/_posts/2024-10-30-ruby-3-2-6-released.md new file mode 100644 index 0000000000..5131652d3b --- /dev/null +++ b/zh_tw/news/_posts/2024-10-30-ruby-3-2-6-released.md @@ -0,0 +1,41 @@ +--- +layout: news_post +title: "Ruby 3.2.6 發布" +author: nagachika +translator: "Bear Su" +date: 2024-10-30 10:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.2.6 已經發布了。 + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_2_6)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.2.6" | first %} + +* <{{ 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 13a4b62af01174ff3ef9fd1038ef3b5d9b7092b4 Mon Sep 17 00:00:00 2001 From: Yoshikazu Takata Date: Mon, 4 Nov 2024 17:25:33 +0900 Subject: [PATCH 438/607] Translate 2024-10-28 ReDoS Rexml CVE news (ja) --- .../2024-10-28-redos-rexml-cve-2024-49761.md | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 ja/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md diff --git a/ja/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/ja/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md new file mode 100644 index 0000000000..79fd0880b7 --- /dev/null +++ b/ja/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -0,0 +1,33 @@ +--- +layout: news_post +title: "CVE-2024-49761: REXML の ReDoS 脆弱性" +author: "kou" +translator: "teeta32" +date: 2024-10-28 03:00:00 +0000 +tags: security +lang: ja +--- + +REXML gem に ReDoS 脆弱性が発見されました。この脆弱性は [CVE-2024-49761](https://www.cve.org/CVERecord?id=CVE-2024-49761) として登録されています。REXML gem のアップグレードを強く推奨します。 + +この脆弱性は Ruby 3.2 以降では発生しません。メンテナンスされている Ruby では Ruby 3.1 だけが本脆弱性の影響を受けます。Ruby 3.1 は 2025 年 3 月に EOL となることに注意してください。 + +## 詳細 + +以下のような XML※をパースするときに ReDoS 脆弱性が存在します。 + +※16 進数の数値文字参照 (&#x...;) の &# と x...; の間に多くの数字を含む XML + +REXML gem を 3.3.9 以上にアップデートしてください。 + +## 影響を受けるバージョン + +* Ruby 3.1 以前で REXML gem 3.3.8 以前を利用する場合 + +## クレジット + +* この脆弱性情報は、[manun](https://hackerone.com/manun) 氏によって報告されました。 + +## 更新履歴 + +* 2024-10-28 12:00:00 (JST) 初版 From 1e5bd5512d1a2146de398476ddffb732da6a81e2 Mon Sep 17 00:00:00 2001 From: Yoshikazu Takata Date: Mon, 4 Nov 2024 19:01:25 +0900 Subject: [PATCH 439/607] Translate "Ruby 3.2.6 Released" (ja) --- .../_posts/2024-10-30-ruby-3-2-6-released.md | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 ja/news/_posts/2024-10-30-ruby-3-2-6-released.md diff --git a/ja/news/_posts/2024-10-30-ruby-3-2-6-released.md b/ja/news/_posts/2024-10-30-ruby-3-2-6-released.md new file mode 100644 index 0000000000..b5b38e959b --- /dev/null +++ b/ja/news/_posts/2024-10-30-ruby-3-2-6-released.md @@ -0,0 +1,41 @@ +--- +layout: news_post +title: "Ruby 3.2.6 リリース" +author: nagachika +translator: teeta32 +date: 2024-10-30 10:00:00 +0000 +lang: ja +--- + +Ruby 3.2.6 がリリースされました。 + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_6) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.2.6" | first %} + +* <{{ 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 7303cbcd9f908793ed45ccad84e3a37f38adb3a6 Mon Sep 17 00:00:00 2001 From: matzbot Date: Tue, 5 Nov 2024 13:27:58 +0900 Subject: [PATCH 440/607] Create release for 3.3.6 (#3416) * Create release for 3.3.6 * Update downloads.yml and releases.yml * Write up "Ruby 3.3.6 Released" * Add Release Schedule --------- Co-authored-by: GitHub Actions Bot Co-authored-by: Takashi Kokubun --- _data/downloads.yml | 2 +- _data/releases.yml | 24 +++++++++ .../_posts/2024-11-05-ruby-3-3-6-released.md | 50 +++++++++++++++++++ 3 files changed, 75 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2024-11-05-ruby-3-3-6-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index d7d93ae5b2..1640381631 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -8,7 +8,7 @@ preview: stable: - - 3.3.5 + - 3.3.6 - 3.2.6 # optional diff --git a/_data/releases.yml b/_data/releases.yml index 50e6cba5a2..6dc219c066 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -81,6 +81,30 @@ # 3.3 series +- version: 3.3.6 + date: 2024-11-05 + post: /en/news/2024/11/05/ruby-3-3-6-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.6.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.6.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.6.tar.xz + size: + gz: 22153657 + zip: 27048656 + xz: 16398228 + sha1: + gz: 0106171cd1801fb5663e8e709f3d6c935d683c9b + zip: 88239456249cd80cadd1cbf98a317ae700ccd9df + xz: 25391e9bd8547cd07e09afcfc472777520a3178a + sha256: + gz: 8dc48fffaf270f86f1019053f28e51e4da4cce32a36760a0603a9aee67d7fd8d + zip: a60240a6f9bcc8db6c07d40ad29c7dceb21430debe3ebc39bf339207818132f6 + xz: 540975969d1af42190d26ff629bc93b1c3f4bffff4ab253e245e125085e66266 + sha512: + gz: 4ae22f5c2a1f7ed84aab7587ff04ce4d9933cffe4347deaef0ab88d22c9780f274c1664a4ee1dd8235bc3cc749be828ffa8db7cb5f5002339a59a599acf3c729 + zip: c010c7d3e2b373b41a18bcadfb6dba276afabe479d75624569b5bdc605f3575bced2aff511708e25ceca43c7c918400222329e55e599c54154f203957f119ad2 + xz: c4b86188bf539fa737932e1ba5b746bc295e7c43b2f8cca2668eb7c88aa7228e2ce9032bbcd244a7d558a11bc842445b5fbeac3503ca7d223b63c53e08dba4ab + - version: 3.3.5 date: 2024-09-03 post: /en/news/2024/09/03/3-3-5-released/ diff --git a/en/news/_posts/2024-11-05-ruby-3-3-6-released.md b/en/news/_posts/2024-11-05-ruby-3-3-6-released.md new file mode 100644 index 0000000000..2311dfde64 --- /dev/null +++ b/en/news/_posts/2024-11-05-ruby-3-3-6-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.3.6 Released" +author: k0kubun +translator: +date: 2024-11-05 04:25:00 +0000 +lang: en +--- + +Ruby 3.3.6 has been released. + +This is a routine update that includes minor bug fixes. +It also stops warning missing default gem dependencies that will be bundled gems in Ruby 3.5. +For more details, please refer to [the release notes on GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_6). + +## Release Schedule + +As previously [announced](https://www.ruby-lang.org/en/news/2024/07/09/ruby-3-3-4-released/), we intend to release the latest stable Ruby version (currently Ruby 3.3) every 2 months following a `.1` release. + +We expect to release Ruby 3.3.7 on January 7th. If any significant changes arise that impact a large number of users, we may release a new version earlier than scheduled. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.6" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 1a3fc0c989d12b55494e9f4fdcd4d0cee923534c Mon Sep 17 00:00:00 2001 From: yokomaru Date: Thu, 7 Nov 2024 20:19:50 +0900 Subject: [PATCH 441/607] Translate "Ruby 3.3.6 Released" (ja) --- .../_posts/2024-11-05-ruby-3-3-6-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ja/news/_posts/2024-11-05-ruby-3-3-6-released.md diff --git a/ja/news/_posts/2024-11-05-ruby-3-3-6-released.md b/ja/news/_posts/2024-11-05-ruby-3-3-6-released.md new file mode 100644 index 0000000000..938f254bab --- /dev/null +++ b/ja/news/_posts/2024-11-05-ruby-3-3-6-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.3.6 リリース" +author: k0kubun +translator: yokomaru +date: 2024-11-05 04:25:00 +0000 +lang: ja +--- + +Ruby 3.3.6がリリースされました。 + +これは定期的なアップデートであり、マイナーなバグ修正を含みます。 +また、Ruby 3.5でバンドルされるデフォルトの gem の依存関係の警告が表示されなくなります。 +詳しくは[GitHub release notes](https://github.com/ruby/ruby/releases/tag/v3_3_6)を参照してください。 + +## リリーススケジュール + +以前[お知らせ](https://www.ruby-lang.org/ja/news/2024/07/09/ruby-3-3-4-released/)したとおり、最新の安定版Ruby(現在は Ruby 3.3)を `.1` リリース後の2ヶ月おきにリリースする予定です。 + +Ruby 3.3.7は1月7日にリリースされる予定です。多くのユーザーに影響を与えるような変更があった場合、予定よりも早く新しいバージョンをリリースすることがあります。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.3.6" | first %} + +- <{{ 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 0e3d422a8b8c49045b024017ab5c5b92d2b86b2a Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 8 Nov 2024 07:27:04 +0900 Subject: [PATCH 442/607] Translate "Ruby 3.3.6 Released" (ko) (#3417) * cp {en,ko}/news/_posts/2024-11-05-ruby-3-3-6-released.md * Translate "Ruby 3.3.6 Released" (ko) --- .../_posts/2024-11-05-ruby-3-3-6-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ko/news/_posts/2024-11-05-ruby-3-3-6-released.md diff --git a/ko/news/_posts/2024-11-05-ruby-3-3-6-released.md b/ko/news/_posts/2024-11-05-ruby-3-3-6-released.md new file mode 100644 index 0000000000..941a95b0e5 --- /dev/null +++ b/ko/news/_posts/2024-11-05-ruby-3-3-6-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.3.6 릴리스" +author: k0kubun +translator: shia +date: 2024-11-05 04:25:00 +0000 +lang: ko +--- + +Ruby 3.3.6이 릴리스되었습니다. + +이번 릴리스는 일반적인 업데이트로, 사소한 버그 수정이 포함되어 있습니다. +또한 Ruby 3.5에서 번들된 gem으로 제공될 기본 gem 의존성이 누락되었다는 경고를 중지합니다. +자세한 내용은 [GitHub 릴리스 노트](https://github.com/ruby/ruby/releases/tag/v3_3_6)를 참조하세요. + +## 릴리스 일정 + +이전에 [발표했던 것](https://www.ruby-lang.org/ko/news/2024/07/09/ruby-3-3-4-released/)처럼, 앞으로 최신 안정 버전의 Ruby(현재 Ruby 3.3)를 `.1` 릴리스 이후 2개월마다 릴리스할 계획입니다. + +3.3.7은 1월 7일에 릴리스될 예정입니다. 많은 사람들에게 영향을 미치는 변경 사항이 있을 경우, 예상보다 빨리 새 버전을 릴리스할 수 있습니다. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.3.6" | first %} + +* <{{ 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 0e76663d7355609885b07ac01e62d49ff5b0b9fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Mon, 11 Nov 2024 11:40:52 -0500 Subject: [PATCH 443/607] Translates CVE 2024-49761 (es) (#3421) --- .../2024-10-28-redos-rexml-cve-2024-49761.md | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 es/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md diff --git a/es/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/es/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md new file mode 100644 index 0000000000..e8e5f8d14c --- /dev/null +++ b/es/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -0,0 +1,39 @@ +--- +layout: news_post +title: "CVE-2024-49761: Vulnerabilidad ReDoS en REXML" +author: "kou" +translator: vtamara +date: 2024-10-28 03:00:00 +0000 +tags: security +lang: es +--- + +Hay una vulnerabilidad en la gema REXML. A esta vulnerabilidad se le ha +asignado el identificador CVE +[CVE-2024-49761](https://www.cve.org/CVERecord?id=CVE-2024-49761). +Recomendamos enfáticamente actualizar la gema REXML. + +Esto no ocurre con Ruby 3.2 o posteriores. Ruby 3.1 es el único Ruby +con mantenimiento que resulta afectado. +Note que Ruby 3.1 llegará a su Fin de Vida en 2025-03. + +## Detalles + +Cuando se analiza un XML que tiene mucho dígitos entre +`&#` y `x...;`, en una referencia a caracteres de un numero +hexadecimal (`&#x...;`). + +Por favor actualice la gema REXML a la versión 3.3.9 o posterior. + +## Versiones afectadas + +* Gema REXML 3.3.8 y anteriores con Ruby 3.1 o anteriores. + +## Créditos + +Agradecemos a [manun](https://hackerone.com/manun) por descubrir +este problema. + +## Historia + +* Publicado originalmente el 2024-10-28 03:00:00 (UTC) From 91fc434ae209b1feb9ebfbd230bcc52927d8e5ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Mon, 11 Nov 2024 12:45:03 -0500 Subject: [PATCH 444/607] Translates release of Ruby 3.2.6 (es) (#3422) * Translates release of Ruby 3.2.6 (es) * Remove space at end of line --- .../_posts/2024-10-30-ruby-3-2-6-released.md | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 es/news/_posts/2024-10-30-ruby-3-2-6-released.md diff --git a/es/news/_posts/2024-10-30-ruby-3-2-6-released.md b/es/news/_posts/2024-10-30-ruby-3-2-6-released.md new file mode 100644 index 0000000000..71671811ac --- /dev/null +++ b/es/news/_posts/2024-10-30-ruby-3-2-6-released.md @@ -0,0 +1,44 @@ +--- +layout: news_post +title: "Publicado Ruby 3.2.6" +author: nagachika +translator: vtamara +date: 2024-10-30 10:00:00 +0000 +lang: es +--- + +Ruby 3.2.6 ha sido publicado. + +Por favor vea detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_2_6). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.2.6" | first %} + +* <{{ 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 }} + +## Comentario de la versión + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a producir esta versión. + +Gracias por sus contribuciones. From 40f7849caec281cc9f9ec8db71d1704261efd29f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Mon, 11 Nov 2024 12:45:19 -0500 Subject: [PATCH 445/607] Tranlsation of release 3.3.6 (es) (#3423) * Tranlsation of release 3.3.6 (es) * Remove trailing whitespace --- .../_posts/2024-11-05-ruby-3-3-6-released.md | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 es/news/_posts/2024-11-05-ruby-3-3-6-released.md diff --git a/es/news/_posts/2024-11-05-ruby-3-3-6-released.md b/es/news/_posts/2024-11-05-ruby-3-3-6-released.md new file mode 100644 index 0000000000..285eb9d906 --- /dev/null +++ b/es/news/_posts/2024-11-05-ruby-3-3-6-released.md @@ -0,0 +1,59 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.6" +author: k0kubun +translator: vtamara +date: 2024-11-05 04:25:00 +0000 +lang: es +--- + +Ruby 3.3.6 ha sido publicado. + +Esta es una actualización de rutina que incluye soluciones a fallas menores. +También detiene las advertencias sobre dependencias faltantes de gemas +predeterminadas que serán gemas incluidas en Ruby 3.5. + +Para ver más detalles, por favor refiérase a +[las notas de la publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_6). + +## Calendario de versiones + +Como se [anunció anteriormente](https://www.ruby-lang.org/es/news/2024/07/09/ruby-3-3-4-released/), +queremos publicar la versión de Ruby más estable (Ruby 3.3 al momento de este +escrito) cada 2 meses después de una versión `.1`. + +Esperamos publicar Ruby 3.3.7 en Enero 7. Si ocurre algún cambio significativo +que impacte un gran número de usuario, podríamos publicar una nueva versión +antes de lo programado. + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.3.6" | first %} + +* <{{ 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 }} + +## Comentario de la versión + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a producir esta versión. + +Gracias por sus contribuciones. From ed6d9cf1c6b3d0b87783c29bbf6b3820fc28bbc4 Mon Sep 17 00:00:00 2001 From: Lucian Ghinda <1407869+lucianghinda@users.noreply.github.com> Date: Sun, 25 Aug 2024 18:11:38 +0300 Subject: [PATCH 446/607] Add section about official Ruby Language Documentation The purpose of this commit is to: - Introduce new section highlighting docs.ruby-lang.org as the authoritative source for Ruby language documentation - Clarify that this should be the first reference for learning Ruby or when having the need to understand how Ruby works - Explain that other resources are complementary or present documentation in different styles - Try to help quickly identify for the reader what is the official Ruby language documentation. --- en/documentation/index.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/en/documentation/index.md b/en/documentation/index.md index 30d9be0bf9..b0ded8f30c 100644 --- a/en/documentation/index.md +++ b/en/documentation/index.md @@ -12,6 +12,10 @@ Guides, tutorials, and reference material to help you learn more about Ruby Although you can easily [try Ruby in your browser][1], you can also read the [installation guide](installation/) for help on installing Ruby. +### Ruby Language Documentation + +The authoritative Ruby language documentation at [docs.ruby-lang.org][docs-rlo-en] is the place to start if you want to understand Ruby. It covers all aspects of the language and should be the first place you look when learning or referencing Ruby programming language. Other resources listed below are complementary to the official language documentation or they present Ruby documentation in a different format/style/flavor. + ### Getting Started [Official FAQ](/en/documentation/faq/) @@ -52,7 +56,7 @@ the [installation guide](installation/) for help on installing Ruby. ### Reference Documentation [Official API Documentation][docs-rlo-en] -: The official Ruby API documentation for different versions including +: The official Ruby language documentation for different versions including the currently unreleased (trunk) version. [Ruby C API Reference][extensions] From cf99f41cdd72fc233fdf17cf6a21cfb1cecaa68d Mon Sep 17 00:00:00 2001 From: Stan Lo Date: Wed, 13 Nov 2024 18:22:28 -0600 Subject: [PATCH 447/607] Mention rubyvideo.dev --- en/community/index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/en/community/index.md b/en/community/index.md index 053df6f70b..628ba71616 100644 --- a/en/community/index.md +++ b/en/community/index.md @@ -47,6 +47,8 @@ to start: work-in-progress, discuss the future of Ruby, and welcome newcomers to the Ruby community. + Additionally, you can visit [rubyvideo.dev](https://www.rubyvideo.dev/) to find videos of Ruby conferences and talks. + [Podcasts](podcasts/) : If you prefer to listen to discussions about Ruby rather than read, you can tune into one of these awesome Ruby podcasts. These Rubyists From 4665684a36f119fb8e8723f1dd315a3676358c62 Mon Sep 17 00:00:00 2001 From: Stan Lo Date: Wed, 13 Nov 2024 18:35:40 -0600 Subject: [PATCH 448/607] Add newsletters to community content --- _data/locales/en.yml | 2 +- en/community/index.md | 6 ++---- en/community/weblogs/index.md | 19 +++++++++++-------- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/_data/locales/en.yml b/_data/locales/en.yml index 60dcafc273..f078c09800 100644 --- a/_data/locales/en.yml +++ b/_data/locales/en.yml @@ -65,7 +65,7 @@ sidebar: url: /en/community/user-groups/ description: Get in contact with Rubyists in your area. weblogs: - text: Blogs + text: Blogs and Newsletters url: /en/community/weblogs/ description: Read about what’s happening right now in the Ruby community. ruby_core: diff --git a/en/community/index.md b/en/community/index.md index 628ba71616..a17b293f5f 100644 --- a/en/community/index.md +++ b/en/community/index.md @@ -36,10 +36,8 @@ to start: : Now is a fantastic time to follow Ruby’s development. If you are interested in helping with Ruby, start here. -[Ruby Blogs](weblogs/) -: Very little happens in the Ruby community that is not talked about on - the blogs. We’ve got a nice list of suggestions for you here for - getting plugged in. +[Ruby Blogs and Newsletters](weblogs/) +: Most activities and updates in the Ruby community are discussed through blogs and newsletters. Here’s a curated list to help you stay connected and informed. [Ruby Conferences](conferences/) : Ruby programmers around the world are getting involved in more and diff --git a/en/community/weblogs/index.md b/en/community/weblogs/index.md index 5048495b70..84ffda821d 100644 --- a/en/community/weblogs/index.md +++ b/en/community/weblogs/index.md @@ -1,14 +1,19 @@ --- layout: page -title: "Blogs" +title: "Blogs and Newsletters" lang: en --- -Ruby blogs have exploded over the past years and given sufficient -hunting, you can unearth hundreds of blogs sharing bits of Ruby code, -describing new techniques, or speculating on Ruby’s future. +Ruby blogs and newsletters have exploded over the past years and given +sufficient hunting, you can unearth hundreds of blogs sharing bits of +Ruby code, describing new techniques, or speculating on Ruby’s future. {: .summary} +### Newsletters + +* [**Ruby Weekly**][ruby-weekly]: A newsletter that curates the most interesting Ruby articles and news each week. +* [**Short Ruby Newsletter**][short-ruby-newsletter]: A weekly summary of the articles, discussions, and news from the Ruby community. + ### Mining for Ruby Blogs * [**RubyFlow**][rubyflow], “the Ruby and Rails community linklog”, @@ -22,9 +27,6 @@ describing new techniques, or speculating on Ruby’s future. A few notable blogs stand out for the frequency and immediacy of their updates. -* [**Ruby Weekly**][ruby-weekly]: Although more of a newsletter than a - blog, Ruby Weekly is a distillation of the most interesting Ruby - articles and news each week. * [**DEV Ruby Tag**][dev-ruby-tag] is the collection of all posts tagged Ruby within the DEV Community. DEV is a network of thousands of software developers who blog about and discuss code. @@ -47,6 +49,7 @@ out there, be sure to share! [rubyland]: http://rubyland.news/ [ruby-weekly]: https://rubyweekly.com/ [dev-ruby-tag]: https://dev.to/t/ruby -[riding-rails]: http://weblog.rubyonrails.org/ +[riding-rails]: https://rubyonrails.org/blog/ [reddit]: http://www.reddit.com/r/ruby [hn]: http://news.ycombinator.com/ +[short-ruby-newsletter]: https://newsletter.shortruby.com/ From 8653ec8f554c5e86ca41e02934f0990ac31a6fdb Mon Sep 17 00:00:00 2001 From: Stan Lo Date: Wed, 13 Nov 2024 18:43:02 -0600 Subject: [PATCH 449/607] Remove deadlinks from the community page --- en/community/index.md | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/en/community/index.md b/en/community/index.md index a17b293f5f..d7119954c2 100644 --- a/en/community/index.md +++ b/en/community/index.md @@ -53,14 +53,8 @@ to start: use their podcasts to cover new releases, community news, and interview their fellow Ruby developers. -General Ruby Information -: * [Ruby Central][ruby-central] - * [Ruby at Open Directory Project][ruby-opendir] - * [Rails at Open Directory Project][rails-opendir] - - +[Ruby Central][ruby-central] +: Ruby Central is a non-profit organization dedicated to supporting the worldwide Ruby community. [ruby-central]: http://rubycentral.org/ [ruby-discord]: https://discord.gg/ad2acQFtkh -[ruby-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/ -[rails-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/Software/Frameworks/Rails/ From 21d56e209e5c018bacdd57565e2cf1ec82b9e72e Mon Sep 17 00:00:00 2001 From: Stan Lo Date: Wed, 13 Nov 2024 23:59:59 -0600 Subject: [PATCH 450/607] Update names to Rails blog --- en/community/weblogs/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/community/weblogs/index.md b/en/community/weblogs/index.md index 84ffda821d..ebb5f23ca0 100644 --- a/en/community/weblogs/index.md +++ b/en/community/weblogs/index.md @@ -30,7 +30,7 @@ updates. * [**DEV Ruby Tag**][dev-ruby-tag] is the collection of all posts tagged Ruby within the DEV Community. DEV is a network of thousands of software developers who blog about and discuss code. -* [**Riding Rails**][riding-rails] is the official group blog of the +* [**Ruby on Rails Blog**][ruby-on-rails-blog] is the official group blog of the Ruby on Rails team. If you are running Rails, this blog is essential for notification of security updates and an overall view of the wide Rails community. @@ -49,7 +49,7 @@ out there, be sure to share! [rubyland]: http://rubyland.news/ [ruby-weekly]: https://rubyweekly.com/ [dev-ruby-tag]: https://dev.to/t/ruby -[riding-rails]: https://rubyonrails.org/blog/ +[ruby-on-rails-blog]: https://rubyonrails.org/blog/ [reddit]: http://www.reddit.com/r/ruby [hn]: http://news.ycombinator.com/ [short-ruby-newsletter]: https://newsletter.shortruby.com/ From f697ab7090b747992c16938a084280be2cb9ba20 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Fri, 15 Nov 2024 15:03:51 +0800 Subject: [PATCH 451/607] Translate Ruby 3.3.6 Released (zh_tw) (#3418) * Translate Ruby 3.3.6 Released (zh_tw) * Refine translation --- .../_posts/2024-11-05-ruby-3-3-6-released.md | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 zh_tw/news/_posts/2024-11-05-ruby-3-3-6-released.md diff --git a/zh_tw/news/_posts/2024-11-05-ruby-3-3-6-released.md b/zh_tw/news/_posts/2024-11-05-ruby-3-3-6-released.md new file mode 100644 index 0000000000..b200155d0f --- /dev/null +++ b/zh_tw/news/_posts/2024-11-05-ruby-3-3-6-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.3.6 發布" +author: k0kubun +translator: "Bear Su" +date: 2024-11-05 04:25:00 +0000 +lang: zh_tw +--- + +Ruby 3.3.6 已經發布了。 + +這是包括修復小型錯誤的例行更新。 +此版本也停止有關缺少預設 gem 依賴項目的警告,這些 gems 將在 Ruby 3.5 成為 bundled gems。 +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_3_6)。 + +## 發布時程 + +如同之前[公布](https://www.ruby-lang.org/zh_tw/news/2024/07/09/ruby-3-3-4-released/),我們打算在「.1」版本發布後每 2 個月發布一次最新的穩定 Ruby 版本(目前為 Ruby 3.3)。 + +我們預計 Ruby 3.3.7 於 1 月 7 日發布。如果有任何變更影響到相當多的人,我們可能會比預期更早發佈新版本。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.3.6" | first %} + +* <{{ 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 d3aef6d13e2c2d77f9ba92bf05fc11d004a38052 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matth=C3=A4us=20J=2E=20N=2E=20Beyrle?= <14541962+magynhard@users.noreply.github.com> Date: Sat, 16 Nov 2024 18:24:24 +0100 Subject: [PATCH 452/607] add rvm-windows to installation doc --- en/documentation/installation/index.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/en/documentation/installation/index.md b/en/documentation/installation/index.md index ba63647526..94d07ab4b7 100644 --- a/en/documentation/installation/index.md +++ b/en/documentation/installation/index.md @@ -361,6 +361,15 @@ Ruby on your system. It can also manage different gemsets. It is available for macOS, Linux, or other UNIX-like operating systems. +### RVM 4 Windows +{: #rvm-windows} + +[RVM 4 Windows][rvm-windows] allows you to install and manage multiple +installations of Ruby on Windows. It is a clone of the original RVM and +supports the classic command line as well as Powershell by providing +the same command line interface as the original RVM. + + ### uru {: #uru} @@ -391,6 +400,7 @@ though, because the installed Ruby won't be managed by any tools. [rvm]: http://rvm.io/ +[rvm-windows]: https://github.com/magynhard/rvm-windows#readme [rbenv]: https://github.com/rbenv/rbenv#readme [rbenv-for-windows]: https://github.com/RubyMetric/rbenv-for-windows#readme [ruby-build]: https://github.com/rbenv/ruby-build#readme From 1862c2d75f185c71ef54469dff3740229588b2fc Mon Sep 17 00:00:00 2001 From: Bear Su Date: Wed, 20 Nov 2024 23:29:19 +0800 Subject: [PATCH 453/607] Improve community page (zh_tw) --- _data/locales/zh_tw.yml | 2 +- zh_tw/community/index.md | 18 ++++++++++-------- zh_tw/community/weblogs/index.md | 30 ++++++++++++++++++++++++++++-- 3 files changed, 39 insertions(+), 11 deletions(-) diff --git a/_data/locales/zh_tw.yml b/_data/locales/zh_tw.yml index 719a3e016e..320817ece8 100644 --- a/_data/locales/zh_tw.yml +++ b/_data/locales/zh_tw.yml @@ -63,7 +63,7 @@ sidebar: url: /zh_tw/community/user-groups/ description: 與身旁的 Ruby 使用者接觸 weblogs: - text: 部落格 + text: 部落格與電子報 url: /zh_tw/community/weblogs/ description: 了解 Ruby 社群中的最新消息 ruby_core: diff --git a/zh_tw/community/index.md b/zh_tw/community/index.md index 579cc8b191..d45d0da282 100644 --- a/zh_tw/community/index.md +++ b/zh_tw/community/index.md @@ -21,14 +21,18 @@ lang: zh_tw : Ruby 擁有各種不同主題及語言的郵件論壇。如果你有 Ruby 的問題,透過論壇發問是個不錯的方式。台灣的 Ruby 論壇則有 [RailsFun][railsfun] 以及 [PTT](telnet://ptt.cc) Ruby 版。 +[Ruby Discord 伺服器 (邀請連結)][ruby-discord] +: Ruby 語言 Discord 伺服器是一個你可以與其他 Rubyists 聊天、互助的地方。 + Discord 對於新開發者是一個很好的進入點,而且很容易加入。 + [Ruby 的 IRC (#ruby)](https://web.libera.chat/#ruby) : 您可以在 Ruby 的 IRC 頻道上與其他 Ruby 愛好者聊天。 [Ruby 核心](/zh_tw/community/ruby-core) : 現在正是加入開發 Ruby 行列的好時機。如果您有興趣幫忙,可以從這裡開始。 -[關於 Ruby 的部落格](/zh_tw/community/weblogs/) -: Ruby 社群中有著各式各樣的部落格。這裡是一份推薦清單。 +[關於 Ruby 的部落格與電子報](/zh_tw/community/weblogs/) +: Ruby 社群中的大多數活動和更新都是透過部落格和電子報進行討論。這裡是一份推薦清單可協助你了解最新情況。 [Ruby 研討會](/zh_tw/community/conferences/) : 全世界有越來越多的研討會讓 Ruby 程式設計師可以參與,分享他們的工作經驗、討論 Ruby 的未來,同時也歡迎新成員的加入。台灣的 @@ -38,14 +42,12 @@ lang: zh_tw : 比起閱讀,如果你更喜歡用聆聽的方式接收 Ruby 的資訊,你可以收聽這些 Podcasts。 內容包括 Ruby 或是 gem 的新發佈消息,還有 Ruby 使用者、貢獻者和維護者之間的討論與訪談。 -Ruby 的一般消息 -: * [Ruby Central][ruby-central] - * [Ruby at Open Directory Project][ruby-opendir] - * [Rails at Open Directory Project][rails-opendir] + +[Ruby Central][ruby-central] +: Ruby Central 是一個非營利組織,致力於支持全球 Ruby 社群。 [1]: http://ruby.tw [railsfun]: http://railsfun.tw/index.php [ruby-central]: http://rubycentral.org/ -[ruby-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/ -[rails-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/Software/Frameworks/Rails/ +[ruby-discord]: https://discord.gg/ad2acQFtkh diff --git a/zh_tw/community/weblogs/index.md b/zh_tw/community/weblogs/index.md index 1935fcb279..4d71d146e6 100644 --- a/zh_tw/community/weblogs/index.md +++ b/zh_tw/community/weblogs/index.md @@ -1,7 +1,33 @@ --- layout: page -title: "部落格" +title: "部落格與電子報" lang: zh_tw --- -{% include out-of-date.html %} +Ruby 部落格與電子報在過去幾年成爆炸性成長,你可以在網路上搜索到數百個部落格分享 Ruby 程式碼、描述新技術、或是推測 Ruby 的未來。 + +{: .summary} + +### 電子報 + +* [**Ruby Weekly**][ruby-weekly]: 每週精選最有趣的 Ruby 文章和新聞的電子報。 +* [**Short Ruby Newsletter**][short-ruby-newsletter]: 每週摘要 Ruby 社群的文章、討論、和新聞。 + +### 挖掘 Ruby 部落格 + +* [**RubyFlow**][rubyflow]: Ruby 與 Rails 社群的連結日誌。包含函式庫、部落格文章、教學、和其他 Ruby 資源的新聞網站。 +* [**Rubyland**][rubyland]: 從 RSS 整合關於 Ruby 的新聞與部落格文章。 + +### 著名的部落格 + +一些因為更新頻率與即時性的著名部落格 + +* [**DEV Ruby Tag**][dev-ruby-tag]: 在 DEV 社群中標記為 Ruby 的文章列表。 DEV 有上千名軟體開發人員發布與討論程式碼文章。 +* [**Ruby on Rails Blog**][ruby-on-rails-blog]: Ruby on Rails 團隊的官方部落格。如果你正在使用 Rails,這個部落格可以獲得安全更新通知與 Rails 社群的發展願景。 + +[short-ruby-newsletter]: https://newsletter.shortruby.com/ +[ruby-weekly]: https://rubyweekly.com/ +[rubyflow]: https://rubyflow.com/ +[rubyland]: http://rubyland.news/ +[dev-ruby-tag]: https://dev.to/t/ruby +[ruby-on-rails-blog]: https://rubyonrails.org/blog/ From c1dc87c9241f14b7ef064bd887b6ea1e8cfba78c Mon Sep 17 00:00:00 2001 From: Bear Su Date: Wed, 20 Nov 2024 23:44:34 +0800 Subject: [PATCH 454/607] Update community links --- zh_tw/community/index.md | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/zh_tw/community/index.md b/zh_tw/community/index.md index d45d0da282..f573333160 100644 --- a/zh_tw/community/index.md +++ b/zh_tw/community/index.md @@ -9,7 +9,7 @@ lang: zh_tw 如果你有興趣參與,可以從這幾個地方開始: -[Ruby Taiwan 社群][1] +[Ruby Taiwan Discord 伺服器 (邀請連結)][ruby-tw-discord] : Ruby Taiwan 社群成立於 2008 年 10 月,主要是針對 Ruby 程式語言及軟體開發,進行業界的交流及分享,提昇開發人員的技術深度與廣度。 @@ -18,14 +18,13 @@ lang: zh_tw 使用者群組都是自發性的,通常會有每月的聚會、郵件論壇以及一個社群網站。運氣好的話,也許還會有編程節 (codefests)。 [Ruby 郵件論壇和新聞群組](/zh_tw/community/mailing-lists/) -: Ruby 擁有各種不同主題及語言的郵件論壇。如果你有 Ruby 的問題,透過論壇發問是個不錯的方式。台灣的 Ruby 論壇則有 - [RailsFun][railsfun] 以及 [PTT](telnet://ptt.cc) Ruby 版。 +: Ruby 擁有各種不同主題及語言的郵件論壇。如果你有 Ruby 的問題,透過論壇發問是個不錯的方式。 [Ruby Discord 伺服器 (邀請連結)][ruby-discord] : Ruby 語言 Discord 伺服器是一個你可以與其他 Rubyists 聊天、互助的地方。 Discord 對於新開發者是一個很好的進入點,而且很容易加入。 -[Ruby 的 IRC (#ruby)](https://web.libera.chat/#ruby) +[Ruby 的 IRC (#ruby)][ruby-irc] : 您可以在 Ruby 的 IRC 頻道上與其他 Ruby 愛好者聊天。 [Ruby 核心](/zh_tw/community/ruby-core) @@ -42,12 +41,10 @@ lang: zh_tw : 比起閱讀,如果你更喜歡用聆聽的方式接收 Ruby 的資訊,你可以收聽這些 Podcasts。 內容包括 Ruby 或是 gem 的新發佈消息,還有 Ruby 使用者、貢獻者和維護者之間的討論與訪談。 - [Ruby Central][ruby-central] : Ruby Central 是一個非營利組織,致力於支持全球 Ruby 社群。 -[1]: http://ruby.tw -[railsfun]: http://railsfun.tw/index.php - +[ruby-tw-discord]: https://discord.gg/yaYHWQsmcz +[ruby-irc]: https://web.libera.chat/#ruby [ruby-central]: http://rubycentral.org/ [ruby-discord]: https://discord.gg/ad2acQFtkh From 67ab7a5c4ee168636edf876af6a6566068c85b40 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 21 Nov 2024 00:06:03 +0800 Subject: [PATCH 455/607] Refine wording --- zh_tw/community/weblogs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zh_tw/community/weblogs/index.md b/zh_tw/community/weblogs/index.md index 4d71d146e6..46a774a5b9 100644 --- a/zh_tw/community/weblogs/index.md +++ b/zh_tw/community/weblogs/index.md @@ -20,7 +20,7 @@ Ruby 部落格與電子報在過去幾年成爆炸性成長,你可以在網路 ### 著名的部落格 -一些因為更新頻率與即時性的著名部落格 +時常更新的著名部落格 * [**DEV Ruby Tag**][dev-ruby-tag]: 在 DEV 社群中標記為 Ruby 的文章列表。 DEV 有上千名軟體開發人員發布與討論程式碼文章。 * [**Ruby on Rails Blog**][ruby-on-rails-blog]: Ruby on Rails 團隊的官方部落格。如果你正在使用 Rails,這個部落格可以獲得安全更新通知與 Rails 社群的發展願景。 From 1a2ddb20a8a7ff14ed53b6155c43cffa5ee602bf Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 21 Nov 2024 13:16:31 +0800 Subject: [PATCH 456/607] Add rubyvideo.dev --- zh_tw/community/index.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/zh_tw/community/index.md b/zh_tw/community/index.md index f573333160..00cbbb8392 100644 --- a/zh_tw/community/index.md +++ b/zh_tw/community/index.md @@ -37,6 +37,8 @@ lang: zh_tw : 全世界有越來越多的研討會讓 Ruby 程式設計師可以參與,分享他們的工作經驗、討論 Ruby 的未來,同時也歡迎新成員的加入。台灣的 Ruby 年度研討會為 [RubyConf Taiwan](http://rubyconf.tw)。 + 你也可以在 [rubyvideo.dev][rubyvideo] 找到 Ruby 研討會與演講的影片。 + [Podcasts](/zh_tw/community/podcasts/) : 比起閱讀,如果你更喜歡用聆聽的方式接收 Ruby 的資訊,你可以收聽這些 Podcasts。 內容包括 Ruby 或是 gem 的新發佈消息,還有 Ruby 使用者、貢獻者和維護者之間的討論與訪談。 @@ -48,3 +50,4 @@ lang: zh_tw [ruby-irc]: https://web.libera.chat/#ruby [ruby-central]: http://rubycentral.org/ [ruby-discord]: https://discord.gg/ad2acQFtkh +[rubyvideo]: https://rubyvideo.dev From 5199d3e9da611ccb9585a9d2b7416041b8d4790f Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 21 Nov 2024 15:43:50 +0900 Subject: [PATCH 457/607] Translate "Add section about official Ruby Language Documentation" (ko) (#3428) * Import "Add section about official Ruby Language Documentation" * Translate to ko --- ko/documentation/index.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ko/documentation/index.md b/ko/documentation/index.md index 35d7ae1a59..1e22137ac7 100644 --- a/ko/documentation/index.md +++ b/ko/documentation/index.md @@ -16,6 +16,10 @@ Ruby를 배울 수 있는 매뉴얼과 튜토리얼, 코딩할 때 도움이 되 [Ruby를 브라우저에서 시험해 볼 수도 있지만][1], Ruby를 설치하기 위해서 [설치 설명서](installation/)를 읽어보아도 좋습니다. +### Ruby 언어 문서 + +Ruby를 이해하고 싶다면, [docs.ruby-lang.org][docs-rlo-en]의 권위 있는 Ruby 언어 문서가 출발점입니다. 이 문서는 언어의 모든 측면을 다루며, Ruby 프로그래밍 언어를 배우거나 참조할 때 처음으로 찾아봐야 하는 곳입니다. 아래 나열된 다른 자료들은 공식 언어 문서를 보완하거나 다른 형식/스타일/맛으로 Ruby 문서를 제공합니다. + ### 초보자용 문서 [공식 FAQ](faq/) @@ -60,7 +64,7 @@ Ruby를 배울 수 있는 매뉴얼과 튜토리얼, 코딩할 때 도움이 되 ### 참조 [공식 API 문서][docs-rlo-en] -: 아직 릴리스되지 않은 트렁크를 포함한 여러 Ruby 버전의 공식 API 문서입니다. +: 아직 릴리스되지 않은 트렁크를 포함한 여러 Ruby 버전의 공식 언어 문서입니다. [Ruby C API 레퍼런스][extensions] (영문) : Ruby의 공식 C API 문서입니다. From 73e8c42d3503fc9358ccb06ba1187833c384e987 Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 21 Nov 2024 15:46:32 +0900 Subject: [PATCH 458/607] Translate "Improve community related content" (ko) (#3429) * Import "Improve community related content" * Tranlate to ko * Update ko/community/index.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- _data/locales/ko.yml | 2 +- ko/community/index.md | 15 ++++++--------- ko/community/weblogs/index.md | 23 +++++++++++++---------- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/_data/locales/ko.yml b/_data/locales/ko.yml index 9c88845b75..a8fc93c5ca 100644 --- a/_data/locales/ko.yml +++ b/_data/locales/ko.yml @@ -63,7 +63,7 @@ sidebar: url: /ko/community/user-groups/ description: 근처의 루비스트와 연락하기 weblogs: - text: 웹로그 + text: 블로그와 뉴스레터 url: /ko/community/weblogs/ description: Ruby 커뮤니티에서 지금 무슨 일이 일어나는지 읽기 ruby_core: diff --git a/ko/community/index.md b/ko/community/index.md index 51a59d1b7e..1e3702fe61 100644 --- a/ko/community/index.md +++ b/ko/community/index.md @@ -39,26 +39,23 @@ Ruby의 장점, 특징에 대한 설명에서 빠지지 않고 등장하는 것 : Ruby 개발 과정에 참여하고 싶다면 바로 지금이 최고의 타이밍입니다. Ruby를 도와주는데 관심이 있으시다면 여기서 시작하세요. -[Ruby에 관한 블로그](weblogs/) -: Ruby 커뮤니티에서 블로그에 관한 이야기를 빼놓을 수 없죠. 여기에 - 구독할 만한 추천 블로그 목록이 있습니다. +[Ruby 블로그와 뉴스레터](weblogs/) +: Ruby 커뮤니티의 대부분의 활동과 업데이트는 블로그와 뉴스레터를 통해 논의됩니다. 다음은 연결 상태를 유지하고 정보를 얻는 데 도움이 되는 엄선된 목록입니다. [Ruby 콘퍼런스](conferences/) : 세계의 Ruby 개발자들은 더욱더 활발하게 콘퍼런스에 참여하고 있습니다. 콘퍼런스에서는 Ruby에서 작업 중인 내용의 공유, Ruby의 미래에 대한 토론, Ruby 커뮤니티의 뉴비의 환영 등을 함께합니다. + 또한 [rubyvideo.dev](https://www.rubyvideo.dev/)를 방문하면 Ruby 컨퍼런스 및 강연 동영상을 확인할 수 있습니다. + [팟캐스트](podcasts/) : Ruby에 대해 듣고 싶다면 다음 Ruby 팟캐스트 중 하나를 들어보세요. 루비스트들이 팟캐스트를 통해 새 릴리스, 커뮤니티 소식, 동료 Ruby 개발자와의 인터뷰를 다룹니다. -일반적인 Ruby 정보(영문) -: * [Ruby Central][ruby-central] - * [Ruby at Open Directory Project][ruby-opendir] - * [Rails at Open Directory Project][rails-opendir] +[Ruby Central][ruby-central] +: Ruby Central은 전 세계의 Ruby 커뮤니티를 지원하는 비영리 단체입니다. [ruby-central]: http://rubycentral.org/ [ruby-discord]: https://discord.gg/ad2acQFtkh -[ruby-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/ -[rails-opendir]: https://dmoztools.net/Computers/Programming/Languages/Ruby/Software/Frameworks/Rails/ diff --git a/ko/community/weblogs/index.md b/ko/community/weblogs/index.md index 8f28c6b32a..cfc03ff4bb 100644 --- a/ko/community/weblogs/index.md +++ b/ko/community/weblogs/index.md @@ -1,15 +1,19 @@ --- layout: page -title: "블로그" +title: "블로그와 뉴스레터" lang: ko --- -Ruby 블로그들은 지난 몇 년간 폭발적으로 많아졌고, 풍부한 읽을거리를 +Ruby 블로그와 뉴스레터는 지난 몇 년간 폭발적으로 많아졌고, 풍부한 읽을거리를 제공합니다. 당신은 수백 개의 블로그에서 제공하는 Ruby 코드조각, -새로운 기술에 대한 설명, Ruby의 미래에 대한 추측 등을 발굴할 수 -있습니다. +새로운 기술에 대한 설명, Ruby의 미래에 대한 추측 등을 발굴할 수 있습니다. {: .summary} +### 뉴스레터 + +* [**Ruby Weekly**][ruby-weekly]는 매주 흥미로운 Ruby 기사나 뉴스를 엄선해 제공하는 뉴스레터입니다. +* [**Short Ruby Newsletter**][short-ruby-newsletter]는 Ruby 커뮤니티의 기사, 토론 및 뉴스를 주간 요약입니다. + ### Ruby 블로그 발굴하기 * [**RubyFlow**][rubyflow]는 'Ruby와 Rails 커뮤니티의 링크 목록'으로 @@ -22,14 +26,12 @@ Ruby 블로그들은 지난 몇 년간 폭발적으로 많아졌고, 풍부한 업데이트 빈도나 속도에 주목할 만한 블로그들 -* [**Ruby Weekly**][ruby-weekly]는 블로그라기보다는 뉴스레터에 가까움에도 - 불구하고, Ruby Weekly는 매주 흥미로운 Ruby 기사나 뉴스를 제공합니다. * [**DEV Ruby Tag**][dev-ruby-tag]는 DEV 커뮤니티에서 Ruby 태그가 붙어있는 모든 글의 모음입니다. DEV는 코드에 대해서 글을 쓰거나 토론하는 수천 명의 개발자들의 모임입니다. -* [**Riding Rails**][riding-rails]는 Ruby on Rails 팀의 공식 그룹 블로그입니다. - Rails를 이용하고 있다면, 이 블로그는 보안 업데이트를 받아 보거나 넓은 Rails 커뮤니티를 - 전망하기에 필수입니다. +* [**Ruby on Rails Blog**][ruby-on-rails-blog]는 Ruby on Rails 팀의 공식 그룹 + 블로그입니다. Rails를 이용하고 있다면 이 블로그는 보안 업데이트 알림과 + 광범위한 Rails 커뮤니티에 대한 전반적인 정보를 얻는 데 필수입니다. ### 널리 알리기 @@ -43,6 +45,7 @@ Ruby는 [reddit][reddit], [Hacker News][hn]의 프로그래밍 뉴스에서도 [rubyland]: http://rubyland.news/ [ruby-weekly]: https://rubyweekly.com/ [dev-ruby-tag]: https://dev.to/t/ruby -[riding-rails]: http://weblog.rubyonrails.org/ +[ruby-on-rails-blog]: https://rubyonrails.org/blog/ [reddit]: http://www.reddit.com/r/ruby [hn]: http://news.ycombinator.com/ +[short-ruby-newsletter]: https://newsletter.shortruby.com/ From 0d9a8561b34b3dccfa417aa415ee28e86e228b38 Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 6 Dec 2024 22:39:18 +0900 Subject: [PATCH 459/607] Translate "add rvm-windows to installation doc" (ko) (#3433) * Copy diff from en * Translate "add rvm-windows to installation doc" (ko) --- ko/documentation/installation/index.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/ko/documentation/installation/index.md b/ko/documentation/installation/index.md index ad786cc914..994c51c327 100644 --- a/ko/documentation/installation/index.md +++ b/ko/documentation/installation/index.md @@ -339,6 +339,15 @@ RVM은 다른 gemset도 관리해 줍니다. macOS, Linux나 다른 UNIX-계열 운영체제에서만 사용 가능합니다. +### RVM 4 Windows +{: #rvm-windows} + +[RVM 4 Windows][rvm-windows]는 Windows에서 여러 종류의 Ruby를 설치하고 +관리할 수 있게 해줍니다. 이는 오리지널 RVM의 복제로, 오리지널 RVM과 +동일한 커맨드 라인 인터페이스를 제공하며, 기존 커맨드 라인 인터페이스와 +PowerShell을 모두 지원합니다. + + ### uru {: #uru} @@ -369,6 +378,7 @@ $ sudo make install [rvm]: http://rvm.io/ +[rvm-windows]: https://github.com/magynhard/rvm-windows#readme [rbenv]: https://github.com/rbenv/rbenv#readme [rbenv-for-windows]: https://github.com/RubyMetric/rbenv-for-windows#readme [ruby-build]: https://github.com/rbenv/ruby-build#readme From 113d80e7a49af847a53fe0170c2c50f191cd34a4 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 9 Dec 2024 11:10:34 +0900 Subject: [PATCH 460/607] Use pub/ruby/X.Y directory instead of pub/ruby directly --- de/news/_posts/2002-03-01-167-is-released.md | 2 +- .../2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md | 4 ++-- de/news/_posts/2004-12-26-ruby-182-released.md | 4 ++-- de/news/_posts/2005-09-21-ruby-183-released.md | 2 +- de/news/_posts/2005-12-24-ruby-184-released.md | 4 ++-- de/news/_posts/2006-08-29-ruby-1-8-5-released.md | 4 ++-- .../2009-05-21-ruby-1-9-1-p129-verffentlicht.md | 12 ++++++------ .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- en/news/_posts/2002-03-01-167-is-released.md | 2 +- .../2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md | 4 ++-- en/news/_posts/2004-12-26-ruby-182-released.md | 4 ++-- en/news/_posts/2005-09-21-ruby-183-released.md | 2 +- en/news/_posts/2005-12-24-ruby-184-released.md | 4 ++-- en/news/_posts/2006-08-29-ruby-1-8-5-released.md | 4 ++-- .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- es/news/_posts/2009-05-21-ruby-1-9-1-p129.md | 12 ++++++------ .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- .../_posts/2009-05-14-sortie-de-ruby-1-9-1-p129.md | 12 ++++++------ .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- ja/news/_posts/2002-12-24-20021224.md | 4 ++-- ja/news/_posts/2004-12-25-20041225.md | 4 ++-- ja/news/_posts/2005-09-21-20050921.md | 8 ++++---- ja/news/_posts/2005-12-24-20051224.md | 4 ++-- ja/news/_posts/2006-08-25-ruby-1-8-5.md | 4 ++-- ja/news/_posts/2006-12-05-ruby-1-8-5-p2.md | 4 ++-- ja/news/_posts/2006-12-25-ruby-1-8-5-p12.md | 4 ++-- ja/news/_posts/2008-12-31-ruby-1-9-1-rc1-released.md | 12 ++++++------ .../_posts/2009-05-12-ruby-1-9-1-p129-released.md | 12 ++++++------ .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- ko/news/_posts/2002-03-01-167-is-released.md | 2 +- .../2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md | 4 ++-- ko/news/_posts/2004-12-26-ruby-182-released.md | 4 ++-- ko/news/_posts/2005-09-21-ruby-183-released.md | 2 +- ko/news/_posts/2005-12-24-ruby-184-released.md | 4 ++-- ko/news/_posts/2006-09-17-ruby-1-8-5-released.md | 4 ++-- ko/news/_posts/2007-01-01-ruby-1-8-5-p12.md | 4 ++-- .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- ...5-15-ruby-1-9-1-p129-j-disponvel-para-download.md | 12 ++++++------ .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- .../_posts/2014-08-19-ruby-1-9-2-p330-released.md | 6 +++--- 42 files changed, 114 insertions(+), 114 deletions(-) diff --git a/de/news/_posts/2002-03-01-167-is-released.md b/de/news/_posts/2002-03-01-167-is-released.md index 5e0c47bf55..31dd7cff3d 100644 --- a/de/news/_posts/2002-03-01-167-is-released.md +++ b/de/news/_posts/2002-03-01-167-is-released.md @@ -9,4 +9,4 @@ Die neue stabile Version [1.6.7][1] wurde veröffentlicht. -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.6.7.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.7.tar.gz diff --git a/de/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md b/de/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md index e7ca2ffbb6..966950c084 100644 --- a/de/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md +++ b/de/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md @@ -8,7 +8,7 @@ lang: de I just put the 1.6.8 release package on the ftp. 1.6.8 should be the last release in the 1.6.x series. Check out -* [https://cache.ruby-lang.org/pub/ruby/ruby-1.6.8.tar.gz][1] +* [https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.8.tar.gz][1] I also put the first preview of 1.8.0 at @@ -19,6 +19,6 @@ Merry Christmas! -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.6.8.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.8.tar.gz [2]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.0-preview1.tar.gz [3]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.0-preview1-errata.diff diff --git a/de/news/_posts/2004-12-26-ruby-182-released.md b/de/news/_posts/2004-12-26-ruby-182-released.md index 5bbdf50e53..c2aca111f9 100644 --- a/de/news/_posts/2004-12-26-ruby-182-released.md +++ b/de/news/_posts/2004-12-26-ruby-182-released.md @@ -11,7 +11,7 @@ Matz announced that ruby 1.8.2 was released This is mainly a bug fix release. You can download it at: -* [https://cache.ruby-lang.org/pub/ruby/ruby-1.8.2.tar.gz][1] +* [https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.2.tar.gz][1] md5sum is 8ffc79d96f336b80f2690a17601dea9b @@ -19,4 +19,4 @@ Merry Christmas! -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.2.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.2.tar.gz diff --git a/de/news/_posts/2005-09-21-ruby-183-released.md b/de/news/_posts/2005-09-21-ruby-183-released.md index b8748bbe0c..2fe5808054 100644 --- a/de/news/_posts/2005-09-21-ruby-183-released.md +++ b/de/news/_posts/2005-09-21-ruby-183-released.md @@ -10,4 +10,4 @@ Ruby 1.8.3 has been released. The source is [here][1], and the md5sum is -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.3.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.3.tar.gz diff --git a/de/news/_posts/2005-12-24-ruby-184-released.md b/de/news/_posts/2005-12-24-ruby-184-released.md index d8ea655294..71e8340fc7 100644 --- a/de/news/_posts/2005-12-24-ruby-184-released.md +++ b/de/news/_posts/2005-12-24-ruby-184-released.md @@ -6,9 +6,9 @@ lang: de --- Ruby 1.8.4 has been released. The source is -[https://cache.ruby-lang.org/pub/ruby/ruby-1.8.4.tar.gz][1], the md5sum is +[https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.4.tar.gz][1], the md5sum is bd8c2e593e1fa4b01fd98eaf016329bb, and filesize is 4,312,965 bytes. -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.4.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.4.tar.gz diff --git a/de/news/_posts/2006-08-29-ruby-1-8-5-released.md b/de/news/_posts/2006-08-29-ruby-1-8-5-released.md index 3a38109435..d03a7a8052 100644 --- a/de/news/_posts/2006-08-29-ruby-1-8-5-released.md +++ b/de/news/_posts/2006-08-29-ruby-1-8-5-released.md @@ -7,7 +7,7 @@ lang: de Ruby 1.8.5 has been released. -The source is [https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5.tar.gz][1], +The source is [https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5.tar.gz][1], the md5sum is 3fbb02294a8ca33d4684055adba5ed6f, and filesize is 4,438,603 bytes. @@ -15,5 +15,5 @@ Mauricio Fernandez wrote [a summary of changes][2]. -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5.tar.gz [2]: http://eigenclass.org/hiki.rb?ruby+1.8.5+changelog diff --git a/de/news/_posts/2009-05-21-ruby-1-9-1-p129-verffentlicht.md b/de/news/_posts/2009-05-21-ruby-1-9-1-p129-verffentlicht.md index 6131ead83b..66b3ab12df 100644 --- a/de/news/_posts/2009-05-21-ruby-1-9-1-p129-verffentlicht.md +++ b/de/news/_posts/2009-05-21-ruby-1-9-1-p129-verffentlicht.md @@ -13,19 +13,19 @@ allen 1.9.1 Benutzern auf diese Version umzusteigen. #### Download -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2>][1] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2>][1] Größe: 7183891 bytes MD5: 6fa62b20f72da471195830dec4eb2013 SHA256: cb730f035aec0e3ac104d23d27a79aa9625fdeb115dae2295de65355f449ce27 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz>][2] Größe: 9034947 bytes MD5: c71f413514ee6341c627be2957023a5c SHA256: 27b7a8ace1d17cec237020ae9355230b53f8c3875f8d942de903e7d58d14253b -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip>][3] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip>][3] Größe: 10299369 bytes MD5: 156305e9633758eb60b419fabc33b6e4 @@ -40,6 +40,6 @@ allen 1.9.1 Benutzern auf diese Version umzusteigen. -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz -[3]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip +[1]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2 +[2]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz +[3]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip diff --git a/de/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/de/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 50d6598bb0..2bbb8f1388 100644 --- a/de/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/de/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -32,19 +32,19 @@ Sie können den ursprünglichen Fehlerbericht im Ticketsystem nachlesen: ## Download -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 diff --git a/en/news/_posts/2002-03-01-167-is-released.md b/en/news/_posts/2002-03-01-167-is-released.md index 022939daaa..0e88ff721f 100644 --- a/en/news/_posts/2002-03-01-167-is-released.md +++ b/en/news/_posts/2002-03-01-167-is-released.md @@ -9,4 +9,4 @@ The new stable version [1.6.7][1] is released. -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.6.7.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.7.tar.gz diff --git a/en/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md b/en/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md index c72e99a6d4..846ac5d091 100644 --- a/en/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md +++ b/en/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md @@ -8,7 +8,7 @@ lang: en I just put the 1.6.8 release package on the ftp. 1.6.8 should be the last release in the 1.6.x series. Check out -* [https://cache.ruby-lang.org/pub/ruby/ruby-1.6.8.tar.gz][1] +* [https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.8.tar.gz][1] I also put the first preview of 1.8.0 at @@ -19,6 +19,6 @@ Merry Christmas! -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.6.8.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.8.tar.gz [2]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.0-preview1.tar.gz [3]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.0-preview1-errata.diff diff --git a/en/news/_posts/2004-12-26-ruby-182-released.md b/en/news/_posts/2004-12-26-ruby-182-released.md index 9b81083456..175da8cfc6 100644 --- a/en/news/_posts/2004-12-26-ruby-182-released.md +++ b/en/news/_posts/2004-12-26-ruby-182-released.md @@ -11,7 +11,7 @@ Matz announced that ruby 1.8.2 was released This is mainly a bug fix release. You can download it at: -* [https://cache.ruby-lang.org/pub/ruby/ruby-1.8.2.tar.gz][1] +* [https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.2.tar.gz][1] md5sum is 8ffc79d96f336b80f2690a17601dea9b @@ -19,4 +19,4 @@ Merry Christmas! -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.2.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.2.tar.gz diff --git a/en/news/_posts/2005-09-21-ruby-183-released.md b/en/news/_posts/2005-09-21-ruby-183-released.md index 23158fd514..1efce87220 100644 --- a/en/news/_posts/2005-09-21-ruby-183-released.md +++ b/en/news/_posts/2005-09-21-ruby-183-released.md @@ -10,4 +10,4 @@ Ruby 1.8.3 has been released. The source is [here][1], and the md5sum is -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.3.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.3.tar.gz diff --git a/en/news/_posts/2005-12-24-ruby-184-released.md b/en/news/_posts/2005-12-24-ruby-184-released.md index 1f0de990fb..41be4548e5 100644 --- a/en/news/_posts/2005-12-24-ruby-184-released.md +++ b/en/news/_posts/2005-12-24-ruby-184-released.md @@ -6,9 +6,9 @@ lang: en --- Ruby 1.8.4 has been released. The source is -[https://cache.ruby-lang.org/pub/ruby/ruby-1.8.4.tar.gz][1], the md5sum is +[https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.4.tar.gz][1], the md5sum is bd8c2e593e1fa4b01fd98eaf016329bb, and filesize is 4,312,965 bytes. -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.4.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.4.tar.gz diff --git a/en/news/_posts/2006-08-29-ruby-1-8-5-released.md b/en/news/_posts/2006-08-29-ruby-1-8-5-released.md index 02f0f913db..0032176864 100644 --- a/en/news/_posts/2006-08-29-ruby-1-8-5-released.md +++ b/en/news/_posts/2006-08-29-ruby-1-8-5-released.md @@ -7,7 +7,7 @@ lang: en Ruby 1.8.5 has been released. -The source is [https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5.tar.gz][1], +The source is [https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5.tar.gz][1], the md5sum is 3fbb02294a8ca33d4684055adba5ed6f, and filesize is 4,438,603 bytes. @@ -15,5 +15,5 @@ Mauricio Fernandez wrote [a summary of changes][2]. -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5.tar.gz [2]: http://eigenclass.org/hiki.rb?ruby+1.8.5+changelog diff --git a/en/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/en/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 7b85206fa7..7e52abcdc2 100644 --- a/en/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/en/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -31,19 +31,19 @@ You can read the original report on the bug tracker: ## Download -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 diff --git a/es/news/_posts/2009-05-21-ruby-1-9-1-p129.md b/es/news/_posts/2009-05-21-ruby-1-9-1-p129.md index 9a123705ac..c7d39a5186 100644 --- a/es/news/_posts/2009-05-21-ruby-1-9-1-p129.md +++ b/es/news/_posts/2009-05-21-ruby-1-9-1-p129.md @@ -11,19 +11,19 @@ Ruby 1.9.1 que lo instalen. #### Ubicación -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2>][1] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2>][1] SIZE: 7183891 bytes MD5: 6fa62b20f72da471195830dec4eb2013 SHA256: cb730f035aec0e3ac104d23d27a79aa9625fdeb115dae2295de65355f449ce27 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz>][2] SIZE: 9034947 bytes MD5: c71f413514ee6341c627be2957023a5c SHA256: 27b7a8ace1d17cec237020ae9355230b53f8c3875f8d942de903e7d58d14253b -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip>][3] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip>][3] SIZE: 10299369 bytes MD5: 156305e9633758eb60b419fabc33b6e4 @@ -41,6 +41,6 @@ $SAFE > 0 -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz -[3]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip +[1]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2 +[2]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz +[3]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip diff --git a/es/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/es/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 80f77aa902..5858047414 100644 --- a/es/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/es/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -32,19 +32,19 @@ Puedes leer el reporte original de el problema en el tracker: ## Descarga -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 diff --git a/fr/news/_posts/2009-05-14-sortie-de-ruby-1-9-1-p129.md b/fr/news/_posts/2009-05-14-sortie-de-ruby-1-9-1-p129.md index c36ba10856..511af6d5b8 100644 --- a/fr/news/_posts/2009-05-14-sortie-de-ruby-1-9-1-p129.md +++ b/fr/news/_posts/2009-05-14-sortie-de-ruby-1-9-1-p129.md @@ -13,19 +13,19 @@ d\'installer cette mise-à-jour. #### Téléchargement -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2>][1] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2>][1] SIZE: 7183891 bytes MD5: 6fa62b20f72da471195830dec4eb2013 SHA256: cb730f035aec0e3ac104d23d27a79aa9625fdeb115dae2295de65355f449ce27 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz>][2] SIZE: 9034947 bytes MD5: c71f413514ee6341c627be2957023a5c SHA256: 27b7a8ace1d17cec237020ae9355230b53f8c3875f8d942de903e7d58d14253b -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip>][3] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip>][3] SIZE: 10299369 bytes MD5: 156305e9633758eb60b419fabc33b6e4 @@ -43,6 +43,6 @@ $SAFE > 0 -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz -[3]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip +[1]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2 +[2]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz +[3]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip diff --git a/it/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/it/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 0486dffd8e..b54e3f6515 100644 --- a/it/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/it/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -31,19 +31,19 @@ Potete leggere la segnalazione originale sul bug tracker: ## Download -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 diff --git a/ja/news/_posts/2002-12-24-20021224.md b/ja/news/_posts/2002-12-24-20021224.md index d5a5756b32..1380bdb811 100644 --- a/ja/news/_posts/2002-12-24-20021224.md +++ b/ja/news/_posts/2002-12-24-20021224.md @@ -7,7 +7,7 @@ lang: ja 1\.6.8リリースパッケージがftp上に公開されました。1.6.8は1.6系最後のリリースになる予定です。以下からダウンロードできます。 -* [https://cache.ruby-lang.org/pub/ruby/ruby-1.6.8.tar.gz][1] +* [https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.8.tar.gz][1] また、1.8.0の最初のプレビューも公開されました。 @@ -18,6 +18,6 @@ lang: ja -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.6.8.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.8.tar.gz [2]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.0-preview1.tar.gz [3]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.0-preview1-errata.diff diff --git a/ja/news/_posts/2004-12-25-20041225.md b/ja/news/_posts/2004-12-25-20041225.md index 18682687d1..f510390202 100644 --- a/ja/news/_posts/2004-12-25-20041225.md +++ b/ja/news/_posts/2004-12-25-20041225.md @@ -9,7 +9,7 @@ Ruby安定版の最新版、Ruby 1.8.2がリリースされました( [\[ruby-list:40458\]][1]、[\[ruby-talk:124413\]][2] )。ソースコードは下記URLよりダウンロードできます。 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.8.2.tar.gz>][3] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.2.tar.gz>][3] MD5チェックサムは 8ffc79d96f336b80f2690a17601dea9b です。 @@ -21,4 +21,4 @@ MD5チェックサムは 8ffc79d96f336b80f2690a17601dea9b です。 [1]: https://blade.ruby-lang.org/ruby-list/40458 [2]: https://blade.ruby-lang.org/ruby-talk/124413 -[3]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.2.tar.gz +[3]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.2.tar.gz diff --git a/ja/news/_posts/2005-09-21-20050921.md b/ja/news/_posts/2005-09-21-20050921.md index b3181d2639..76d0b8c68d 100644 --- a/ja/news/_posts/2005-09-21-20050921.md +++ b/ja/news/_posts/2005-09-21-20050921.md @@ -6,7 +6,7 @@ lang: ja --- Ruby 1.8.3がリリースされました。ソースコードは -[https://cache.ruby-lang.org/pub/ruby/ruby-1.8.3.tar.gz][1]から入手できます。md5sumは63d6c2bddd6af86664e338b31f3189a6です。 +[https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.3.tar.gz][1]から入手できます。md5sumは63d6c2bddd6af86664e338b31f3189a6です。 近日中にミラーからも入手可能になると思います。 @@ -15,10 +15,10 @@ Ruby 1.8.3がリリースされました。ソースコードは ミラーサイト * [http://rubyforge.org/frs/?group\_id=426][2] -* [http://www.garbagecollect.jp/ruby/ruby-1.8.3.tar.gz][3] +* [http://www.garbagecollect.jp/ruby/1.8/ruby-1.8.3.tar.gz][3] -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.3.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.3.tar.gz [2]: http://rubyforge.org/frs/?group_id=426 -[3]: http://www.garbagecollect.jp/ruby/ruby-1.8.3.tar.gz +[3]: http://www.garbagecollect.jp/ruby/1.8/ruby-1.8.3.tar.gz diff --git a/ja/news/_posts/2005-12-24-20051224.md b/ja/news/_posts/2005-12-24-20051224.md index 4d45ac89cf..cab1c34ff2 100644 --- a/ja/news/_posts/2005-12-24-20051224.md +++ b/ja/news/_posts/2005-12-24-20051224.md @@ -9,7 +9,7 @@ lang: ja 1\.8.4 のソースコードは以下のURLから入手可能です。 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.8.4.tar.gz>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.4.tar.gz>][2] md5sumは bd8c2e593e1fa4b01fd98eaf016329bb です。 また、サイズは 4312965 バイトです。 @@ -22,5 +22,5 @@ Merry Christmas! そして、Happy Hacking! [1]: https://blade.ruby-lang.org/ruby-list/41728 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.4.tar.gz +[2]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.4.tar.gz [3]: {{ site.url }}/ja/man/?cmd=view;name=ruby+1.8.4+feature diff --git a/ja/news/_posts/2006-08-25-ruby-1-8-5.md b/ja/news/_posts/2006-08-25-ruby-1-8-5.md index e723cf351c..4b1cff7e5e 100644 --- a/ja/news/_posts/2006-08-25-ruby-1-8-5.md +++ b/ja/news/_posts/2006-08-25-ruby-1-8-5.md @@ -9,7 +9,7 @@ lang: ja ソースコードは以下のURLから入手できます。 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5.tar.gz>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5.tar.gz>][2] md5sumは 3fbb02294a8ca33d4684055adba5ed6f です。また、サイズは 4,438,603 バイトです。 @@ -24,5 +24,5 @@ Ruby [1]: https://blade.ruby-lang.org/ruby-list/42751 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5.tar.gz +[2]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5.tar.gz [3]: {{ site.url }}/ja/man/?cmd=view;name=ruby+1.8.5+feature diff --git a/ja/news/_posts/2006-12-05-ruby-1-8-5-p2.md b/ja/news/_posts/2006-12-05-ruby-1-8-5-p2.md index 6260815106..b20cc1c5a1 100644 --- a/ja/news/_posts/2006-12-05-ruby-1-8-5-p2.md +++ b/ja/news/_posts/2006-12-05-ruby-1-8-5-p2.md @@ -9,7 +9,7 @@ Ruby 1.8.5-p2がリリースされました。(リリースについてのアナ ソースコードは以下のURLから入手できます。 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5-p2.tar.gz>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5-p2.tar.gz>][2] md5sumは a3517a224716f79b14196adda3e88057 です。また、サイズは 4,519,151 バイトです。 @@ -33,4 +33,4 @@ Ruby [1]: https://blade.ruby-lang.org/ruby-list/43017 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5-p2.tar.gz +[2]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5-p2.tar.gz diff --git a/ja/news/_posts/2006-12-25-ruby-1-8-5-p12.md b/ja/news/_posts/2006-12-25-ruby-1-8-5-p12.md index 5c277311c8..bc90931495 100644 --- a/ja/news/_posts/2006-12-25-ruby-1-8-5-p12.md +++ b/ja/news/_posts/2006-12-25-ruby-1-8-5-p12.md @@ -9,7 +9,7 @@ ruby 1.8.5-p12がリリースされました。(リリースについてのア ソースコードは以下のURLから入手できます。 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5-p12.tar.gz>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5-p12.tar.gz>][2] md5sumは d7d12dd9124c9b7d55cdbbee313e3931です。また、サイズは 4,526,961 バイトです。 @@ -19,4 +19,4 @@ md5sumは d7d12dd9124c9b7d55cdbbee313e3931です。また、サイズは 4,526,9 [1]: https://blade.ruby-lang.org/ruby-list/43074 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5-p12.tar.gz +[2]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5-p12.tar.gz diff --git a/ja/news/_posts/2008-12-31-ruby-1-9-1-rc1-released.md b/ja/news/_posts/2008-12-31-ruby-1-9-1-rc1-released.md index e875656ed8..20b8e56839 100644 --- a/ja/news/_posts/2008-12-31-ruby-1-9-1-rc1-released.md +++ b/ja/news/_posts/2008-12-31-ruby-1-9-1-rc1-released.md @@ -15,19 +15,19 @@ RC1のリリースのアナウンスがありました。 ソースコードは以下のURLよりダウンロードできます。 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-rc1.tar.bz2>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-rc1.tar.bz2>][2] SIZE: 6181532 bytes MD5: d440c030131903e72a6152149a097af3 SHA256: 35acfb6b8d9dd9159ef308ac763c629092cda2e8c9f41254e72a7b9fa454c27f -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-rc1.tar.gz>][3] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-rc1.tar.gz>][3] SIZE: 7425278 bytes MD5: b145bc39667f27c018b188c812f07ca6 SHA256: a5d41b58bb9a379b3a98713c07a17757c853413104694036d9885559163f5518 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-rc1.zip>][4] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-rc1.zip>][4] SIZE: 8695438 bytes MD5: 91ca7ebd3fe4ad577d08963e81e79c82 @@ -57,9 +57,9 @@ RC1ではまだ対応が行われていない課題は、以下のURLです。 [1]: https://blade.ruby-lang.org/ruby-list/45758 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-rc1.tar.bz2 -[3]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-rc1.tar.gz -[4]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-rc1.zip +[2]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-rc1.tar.bz2 +[3]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-rc1.tar.gz +[4]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-rc1.zip [5]: https://blade.ruby-lang.org/ruby-list/45759 [6]: http://arton.no-ip.info/data/asr/Ruby-1.9.1.msi [7]: https://bugs.ruby-lang.org/projects/ruby-19/issues?query_id=9 diff --git a/ja/news/_posts/2009-05-12-ruby-1-9-1-p129-released.md b/ja/news/_posts/2009-05-12-ruby-1-9-1-p129-released.md index 3cd384cbbb..fcf6e92e46 100644 --- a/ja/news/_posts/2009-05-12-ruby-1-9-1-p129-released.md +++ b/ja/news/_posts/2009-05-12-ruby-1-9-1-p129-released.md @@ -12,19 +12,19 @@ Ruby 1.9.1-p129がリリースされました。 #### 所在 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2>][1] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2>][1] SIZE: 7183891 bytes MD5: 6fa62b20f72da471195830dec4eb2013 SHA256: cb730f035aec0e3ac104d23d27a79aa9625fdeb115dae2295de65355f449ce27 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz>][2] SIZE: 9034947 bytes MD5: c71f413514ee6341c627be2957023a5c SHA256: 27b7a8ace1d17cec237020ae9355230b53f8c3875f8d942de903e7d58d14253b -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip>][3] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip>][3] SIZE: 10299369 bytes MD5: 156305e9633758eb60b419fabc33b6e4 @@ -37,6 +37,6 @@ Ruby 1.9.1-p129がリリースされました。 -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz -[3]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip +[1]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2 +[2]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz +[3]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip diff --git a/ja/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/ja/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 60cd7528d5..8360cefc7b 100644 --- a/ja/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/ja/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -26,19 +26,19 @@ ruby -v -ruri -e'URI.decode_www_form_component "A string that causes catastrophi ## ダウンロード -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 diff --git a/ko/news/_posts/2002-03-01-167-is-released.md b/ko/news/_posts/2002-03-01-167-is-released.md index 878cc3b5b2..eccd3f850e 100644 --- a/ko/news/_posts/2002-03-01-167-is-released.md +++ b/ko/news/_posts/2002-03-01-167-is-released.md @@ -9,4 +9,4 @@ The new stable version [1.6.7][1] is released. -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.6.7.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.7.tar.gz diff --git a/ko/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md b/ko/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md index 9d2579b2b9..1b95b4b2d0 100644 --- a/ko/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md +++ b/ko/news/_posts/2002-12-24-ruby-1-6-8-and-1-8-0-preview-1.md @@ -8,7 +8,7 @@ lang: ko I just put the 1.6.8 release package on the ftp. 1.6.8 should be the last release in the 1.6.x series. Check out -* [https://cache.ruby-lang.org/pub/ruby/ruby-1.6.8.tar.gz][1] +* [https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.8.tar.gz][1] I also put the first preview of 1.8.0 at @@ -19,6 +19,6 @@ Merry Christmas! -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.6.8.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.6/ruby-1.6.8.tar.gz [2]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.0-preview1.tar.gz [3]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.0-preview1-errata.diff diff --git a/ko/news/_posts/2004-12-26-ruby-182-released.md b/ko/news/_posts/2004-12-26-ruby-182-released.md index 56753b5847..ef315a32af 100644 --- a/ko/news/_posts/2004-12-26-ruby-182-released.md +++ b/ko/news/_posts/2004-12-26-ruby-182-released.md @@ -11,7 +11,7 @@ Matz announced that ruby 1.8.2 was released This is mainly a bug fix release. You can download it at: -* [https://cache.ruby-lang.org/pub/ruby/ruby-1.8.2.tar.gz][1] +* [https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.2.tar.gz][1] md5sum is 8ffc79d96f336b80f2690a17601dea9b @@ -19,4 +19,4 @@ Merry Christmas! -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.2.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.2.tar.gz diff --git a/ko/news/_posts/2005-09-21-ruby-183-released.md b/ko/news/_posts/2005-09-21-ruby-183-released.md index e6d638121f..b086ee3c28 100644 --- a/ko/news/_posts/2005-09-21-ruby-183-released.md +++ b/ko/news/_posts/2005-09-21-ruby-183-released.md @@ -10,4 +10,4 @@ Ruby 1.8.3 has been released. The source is [here][1], and the md5sum is -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.3.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.3.tar.gz diff --git a/ko/news/_posts/2005-12-24-ruby-184-released.md b/ko/news/_posts/2005-12-24-ruby-184-released.md index 7e35b0fb8e..ce13c3a2de 100644 --- a/ko/news/_posts/2005-12-24-ruby-184-released.md +++ b/ko/news/_posts/2005-12-24-ruby-184-released.md @@ -6,9 +6,9 @@ lang: ko --- Ruby 1.8.4 has been released. The source is -[https://cache.ruby-lang.org/pub/ruby/ruby-1.8.4.tar.gz][1], the md5sum is +[https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.4.tar.gz][1], the md5sum is bd8c2e593e1fa4b01fd98eaf016329bb, and filesize is 4,312,965 bytes. -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.4.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.4.tar.gz diff --git a/ko/news/_posts/2006-09-17-ruby-1-8-5-released.md b/ko/news/_posts/2006-09-17-ruby-1-8-5-released.md index 7cd55656f3..404f853daa 100644 --- a/ko/news/_posts/2006-09-17-ruby-1-8-5-released.md +++ b/ko/news/_posts/2006-09-17-ruby-1-8-5-released.md @@ -7,7 +7,7 @@ lang: ko 루비 1.8.5 버전이 배포되었습니다. -소스 코드는 [https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5.tar.gz][1]에서 다운로드할 +소스 코드는 [https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5.tar.gz][1]에서 다운로드할 수 있고, md5sum은 3fbb02294a8ca33d4684055adba5ed6f입니다. 용량은 4,438,603 바이트입니다. @@ -15,5 +15,5 @@ lang: ko -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5.tar.gz +[1]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5.tar.gz [2]: http://eigenclass.org/hiki.rb?ruby+1.8.5+changelog diff --git a/ko/news/_posts/2007-01-01-ruby-1-8-5-p12.md b/ko/news/_posts/2007-01-01-ruby-1-8-5-p12.md index 7e880e60cc..b237ed9226 100644 --- a/ko/news/_posts/2007-01-01-ruby-1-8-5-p12.md +++ b/ko/news/_posts/2007-01-01-ruby-1-8-5-p12.md @@ -9,7 +9,7 @@ lang: ko 아래 주소에서 소스 코드를 내려 받을 수 있습니다. -* [https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5-p12.tar.gz][2] +* [https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5-p12.tar.gz][2] md5sum은 d7d12dd9124c9b7d55cdbbee313e3931이고 파일 크기는 4,526,961 바이트입니다. @@ -19,4 +19,4 @@ md5sum은 d7d12dd9124c9b7d55cdbbee313e3931이고 파일 크기는 4,526,961 바 [1]: https://blade.ruby-lang.org/ruby-list/43074 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.8.5-p12.tar.gz +[2]: https://cache.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5-p12.tar.gz diff --git a/ko/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/ko/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index 825e224e6f..0f99458afc 100644 --- a/ko/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/ko/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -29,19 +29,19 @@ ruby -v -ruri -e'URI.decode_www_form_component "A string that causes catastrophi ## 다운로드 -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 diff --git a/pl/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/pl/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index c0e133d565..00a6dcb073 100644 --- a/pl/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/pl/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -31,19 +31,19 @@ Możesz przeczytać oryginalny raport o błędzie: ## Pobieranie -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 diff --git a/pt/news/_posts/2009-05-15-ruby-1-9-1-p129-j-disponvel-para-download.md b/pt/news/_posts/2009-05-15-ruby-1-9-1-p129-j-disponvel-para-download.md index c603e77628..9fcf68303e 100644 --- a/pt/news/_posts/2009-05-15-ruby-1-9-1-p129-j-disponvel-para-download.md +++ b/pt/news/_posts/2009-05-15-ruby-1-9-1-p129-j-disponvel-para-download.md @@ -14,19 +14,19 @@ façam esta actualização. #### Disponível a partir de -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2>][1] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2>][1] SIZE: 7183891 bytes MD5: 6fa62b20f72da471195830dec4eb2013 SHA256: cb730f035aec0e3ac104d23d27a79aa9625fdeb115dae2295de65355f449ce27 -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz>][2] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz>][2] SIZE: 9034947 bytes MD5: c71f413514ee6341c627be2957023a5c SHA256: 27b7a8ace1d17cec237020ae9355230b53f8c3875f8d942de903e7d58d14253b -* [<URL:https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip>][3] +* [<URL:https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip>][3] SIZE: 10299369 bytes MD5: 156305e9633758eb60b419fabc33b6e4 @@ -44,6 +44,6 @@ $SAFE > 0 -[1]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.bz2 -[2]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.tar.gz -[3]: https://cache.ruby-lang.org/pub/ruby/ruby-1.9.1-p129.zip +[1]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.bz2 +[2]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz +[3]: https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.zip diff --git a/vi/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/vi/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index d859aeb9e2..38739670a4 100644 --- a/vi/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/vi/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -32,19 +32,19 @@ Bạn có thể đọc bản báo cáo gốc trên bug tracker: ## Download -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 diff --git a/zh_cn/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/zh_cn/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index b974d6c5c4..624f6b0e85 100644 --- a/zh_cn/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/zh_cn/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -26,19 +26,19 @@ ruby -v -ruri -e'URI.decode_www_form_component "A string that causes catastrophi ## 下载 -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 diff --git a/zh_tw/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md b/zh_tw/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md index e884233201..ec023a2b3b 100644 --- a/zh_tw/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md +++ b/zh_tw/news/_posts/2014-08-19-ruby-1-9-2-p330-released.md @@ -24,19 +24,19 @@ ruby -v -ruri -e'URI.decode_www_form_component "A string that causes catastrophi ## 下載 -* +* SIZE: 9081661 bytes MD5: 8ba4aaf707023e76f80fc8f455c99858 SHA256: 6d3487ea8a86ad0fa78a8535078ff3c7a91ca9f99eff0a6a08e66c6e6bf2040f -* +* SIZE: 11416473 bytes MD5: 4b9330730491f96b402adc4a561e859a SHA256: 23ef45fdaecc5d6c7b4e9e2d51b23817fc6aa8225a20f123f7fa98760e8b5ca9 -* +* SIZE: 12732739 bytes MD5: 42d261b28d1b7e500dd3bdbdbfba7fa5 From 2cc47271a0dd9a6d3a20746342a631360b24d88b Mon Sep 17 00:00:00 2001 From: BrotherShort <129957860+BrotherShort@users.noreply.github.com> Date: Sun, 24 Nov 2024 12:44:21 +0800 Subject: [PATCH 461/607] Remove "E-TextEditor" And "Ruby In Stee"l's broken links. --- bg/documentation/index.md | 4 ---- es/documentation/index.md | 4 ---- id/documentation/index.md | 4 ---- it/documentation/index.md | 4 ---- ja/documentation/index.md | 4 ---- pl/documentation/index.md | 4 ---- pt/documentation/index.md | 4 ---- ru/documentation/index.md | 4 ---- tr/documentation/index.md | 4 ---- vi/documentation/index.md | 4 ---- zh_cn/documentation/index.md | 4 ---- 11 files changed, 44 deletions(-) diff --git a/bg/documentation/index.md b/bg/documentation/index.md index 2cba7b0134..55677a858d 100644 --- a/bg/documentation/index.md +++ b/bg/documentation/index.md @@ -111,8 +111,6 @@ ruby -v * За Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * За macOS: * [TextMate][32] @@ -151,8 +149,6 @@ ruby -v [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org diff --git a/es/documentation/index.md b/es/documentation/index.md index fbc4a8ef72..dfc6ef17e3 100644 --- a/es/documentation/index.md +++ b/es/documentation/index.md @@ -118,8 +118,6 @@ Rubiceros: * En Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * En macOS: * [TextMate][32] @@ -165,8 +163,6 @@ comenzar. [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org diff --git a/id/documentation/index.md b/id/documentation/index.md index 6eb137a7ac..8e059ba9fc 100644 --- a/id/documentation/index.md +++ b/id/documentation/index.md @@ -112,8 +112,6 @@ Berikut adalah daftar kakas populer yang digunakan oleh para pengguna Ruby: * Pada Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * Pada macOS: * [TextMate][32] @@ -156,8 +154,6 @@ adalah tempat yang baik untuk memulai. [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org diff --git a/it/documentation/index.md b/it/documentation/index.md index 19995e888b..e0024b6c67 100644 --- a/it/documentation/index.md +++ b/it/documentation/index.md @@ -107,8 +107,6 @@ Questa è una lista dei tool più comunemente usati dagli sviluppatori Ruby: * Per Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * Per macOS: * [TextMate][32] @@ -149,8 +147,6 @@ iniziare. [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org diff --git a/ja/documentation/index.md b/ja/documentation/index.md index 785f038ad4..8c34614174 100644 --- a/ja/documentation/index.md +++ b/ja/documentation/index.md @@ -96,8 +96,6 @@ Rubyistに人気のあるソフトウェアには次のようなものがあり * Windows * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * macOS * [TextMate][32] @@ -153,8 +151,6 @@ Posted by Shugo Maeda on 26 May 2006 [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [36]: https://netbeans.org/ diff --git a/pl/documentation/index.md b/pl/documentation/index.md index 454d600b8d..f26be3c6c8 100644 --- a/pl/documentation/index.md +++ b/pl/documentation/index.md @@ -111,8 +111,6 @@ Oto lista popularnych narzędzi używanych przez rubistów: * Dla Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * Dla macOS: * [TextMate][32] @@ -153,8 +151,6 @@ Jeśli szukasz pomocy w języku polskim, zajrzyj na [forum][pl-2]. [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org diff --git a/pt/documentation/index.md b/pt/documentation/index.md index d91cb26830..4e1d9d9947 100644 --- a/pt/documentation/index.md +++ b/pt/documentation/index.md @@ -118,8 +118,6 @@ programadores Ruby: * No Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * No macOS: * [TextMate][32] @@ -160,8 +158,6 @@ perguntas sobre Ruby, a [lista de e-mails](/pt/community/mailing-lists/) [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org diff --git a/ru/documentation/index.md b/ru/documentation/index.md index 1f1749e8aa..463192d7db 100644 --- a/ru/documentation/index.md +++ b/ru/documentation/index.md @@ -120,8 +120,6 @@ ruby -v * На Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * На macOS: * [TextMate][32] @@ -161,8 +159,6 @@ ruby -v [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org diff --git a/tr/documentation/index.md b/tr/documentation/index.md index 865ba4c30c..7c826b92fd 100644 --- a/tr/documentation/index.md +++ b/tr/documentation/index.md @@ -119,8 +119,6 @@ bir tümleşik geliştirme ortamı seçmeniz daha iyi olur. * Windows'ta: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * macOS'ta: * [TextMate][32] @@ -163,8 +161,6 @@ olacaktır. [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org diff --git a/vi/documentation/index.md b/vi/documentation/index.md index 8939879124..5a7a50f082 100644 --- a/vi/documentation/index.md +++ b/vi/documentation/index.md @@ -117,8 +117,6 @@ tính năng nâng cao (ví dụ: tự động hoàn thiện, tái cấu trúc, h * Trên Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * Trên macOS: * [TextMate][32] @@ -159,8 +157,6 @@ là một nơi tuyệt vời. [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org diff --git a/zh_cn/documentation/index.md b/zh_cn/documentation/index.md index abb6107be6..c56ce1615e 100644 --- a/zh_cn/documentation/index.md +++ b/zh_cn/documentation/index.md @@ -93,8 +93,6 @@ ruby -v * Windows: * [Notepad++][29] - * [E-TextEditor][30] - * [Ruby In Steel][31] * macOS: * [TextMate][32] @@ -133,8 +131,6 @@ ruby -v [27]: http://www.jetbrains.com/ruby/ [28]: http://www.scintilla.org/SciTE.html [29]: http://notepad-plus-plus.org/ -[30]: http://www.e-texteditor.com/ -[31]: http://www.sapphiresteel.com/ [32]: http://macromates.com/ [33]: https://www.barebones.com/products/bbedit/ [34]: http://ruby-doc.org From 94aa8dbe85492a214c36105862ffa7a815e63310 Mon Sep 17 00:00:00 2001 From: gaojun Date: Thu, 7 Nov 2024 14:14:01 +0800 Subject: [PATCH 462/607] Translate Ruby 3.3.6 Released (zh_cn) --- .../_posts/2024-11-05-ruby-3-3-6-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 zh_cn/news/_posts/2024-11-05-ruby-3-3-6-released.md diff --git a/zh_cn/news/_posts/2024-11-05-ruby-3-3-6-released.md b/zh_cn/news/_posts/2024-11-05-ruby-3-3-6-released.md new file mode 100644 index 0000000000..7f3cee118e --- /dev/null +++ b/zh_cn/news/_posts/2024-11-05-ruby-3-3-6-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.3.6 已发布" +author: k0kubun +translator: "GAO Jun" +date: 2024-11-05 04:25:00 +0000 +lang: zh_cn +--- + +Ruby 3.3.6 已发布。 + +这是包含了一些小补丁的计划更新。 +此版本同时停止了对 Ruby 3.5 中即将作为绑定 gems 的依赖警告。 +更多信息可以参考 [GitHub 发布说明](https://github.com/ruby/ruby/releases/tag/v3_3_6)。 + +## 发布计划 + +正如此前的 [公告](https://www.ruby-lang.org/zh_cn/news/2024/07/09/ruby-3-3-4-released/) 中所规划的,我们打算在 `.1` 版本发布后,每 2 个月发布一次最新的 Ruby 稳定版本(目前是 Ruby 3.3)。 + +我们预期在1月7日发布 Ruby 3.3.7。 如果有影响大量用户的变更,我们可能会提前发布新版本。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.3.6" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From ee08563990009ef079adbc9d6e97d74a6a92589f Mon Sep 17 00:00:00 2001 From: gaojun Date: Mon, 4 Nov 2024 16:53:23 +0800 Subject: [PATCH 463/607] Translate CVE-2024-49761 & Ruby 3.2.6 Released (zh_cn) --- .../2024-10-28-redos-rexml-cve-2024-49761.md | 31 ++++++++++++++ .../_posts/2024-10-30-ruby-3-2-6-released.md | 42 +++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 zh_cn/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md create mode 100644 zh_cn/news/_posts/2024-10-30-ruby-3-2-6-released.md diff --git a/zh_cn/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/zh_cn/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md new file mode 100644 index 0000000000..915fe538a1 --- /dev/null +++ b/zh_cn/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-49761: REXML 中的 ReDoS 漏洞" +author: "kou" +translator: "GAO Jun" +date: 2024-10-28 03:00:00 +0000 +tags: security +lang: zh_cn +--- + +在 REXML gem 中存在 ReDoS 漏洞。此漏洞的 CVE 编号为 [CVE-2024-49761](https://www.cve.org/CVERecord?id=CVE-2024-49761)。我们强烈建议您更新 REXML gem. + +此漏洞不影响 Ruby 3.2 及后续版本。Ruby 3.1 是唯一受影响的维护版本。请注意 Ruby 3.1 将在 2025-03 结束生命周期。 + +## 详情 + +触发场景:当解析 XML 时,如果在十六进制表达式 (`&#x...;`) 的 `&#` 和 `x` 中间存在大量数字时。 + +请更新 REXML gem 至 3.3.9 或更高版本。 + +## 受影响版本 + +* Ruby 3.1 且 REXML gem 是 3.3.8 或更低版本 + +## 致谢 + +感谢 [manun](https://hackerone.com/manun) 发现此问题。 + +## 历史 + +* 最初发布于 2024-10-28 03:00:00 (UTC) diff --git a/zh_cn/news/_posts/2024-10-30-ruby-3-2-6-released.md b/zh_cn/news/_posts/2024-10-30-ruby-3-2-6-released.md new file mode 100644 index 0000000000..ee7c65e675 --- /dev/null +++ b/zh_cn/news/_posts/2024-10-30-ruby-3-2-6-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.6 已发布" +author: nagachika +translator: "GAO Jun" +date: 2024-10-30 10:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.2.6 已发布。 + +您可以通过 [GitHub 发布页](https://github.com/ruby/ruby/releases/tag/v3_2_6) 了解详情。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.2.6" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From cc3df742a6fe965e7025262b28ade21643eb087e Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Thu, 12 Dec 2024 23:09:00 +0900 Subject: [PATCH 464/607] Ruby 3.4.0 RC 1 Released (#3435) --- _data/downloads.yml | 2 +- _data/releases.yml | 29 +++ .../2024-12-12-ruby-3-4-0-rc1-released.md | 195 ++++++++++++++++++ 3 files changed, 225 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index 1640381631..1d4cdf7edd 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,7 +4,7 @@ # optional preview: - - 3.4.0-preview2 + - 3.4.0-rc1 stable: diff --git a/_data/releases.yml b/_data/releases.yml index 6dc219c066..a6eb1d3601 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,35 @@ # 3.4 series +- version: 3.4.0-rc1 + date: 2024-12-12 + post: /en/news/2024/12/12/ruby-3-4-0-rc1-released/ + tag: v3_4_0_rc1 + stats: + files_changed: 4820 + insertions: 196907 + deletions: 253488 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-rc1.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-rc1.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-rc1.tar.xz + size: + gz: 23055998 + zip: 28323595 + xz: 17116016 + sha1: + gz: 216e3085ab8b886b9f74943ee5b62bd2e3d86671 + zip: 4ae8ce4b15ccc3f0c6f42e408c44aa287a1ccc14 + xz: 1424671cdc9c4bfe3778ac159d917c8bfe6107bd + sha256: + gz: 1f3187d3366e90af6d760994f8bfe1fe8999a8ba3553ea4dcfae63e548236e2a + zip: 653162a2db627e8e5feee22a00b20acf215509d88b06ffb281bc8788ed12c74c + xz: 9c54225747f7a786727aa6213503083d5d8ff7097505d4b7456ff60880ee4a17 + sha512: + gz: 0b0420a39c0bf3b38600d4e28805a581c4b5a6cf2abe41be8c8164276a8044a19e676de74eea5dd5b4d7d667d821a6144119795fea510fd4ba6e34865a2ae172 + zip: c6c6b9a0e61308e3f3303cd148613feabb2ee12d8e2fefc1f4aa1403237310f7c9be5e2031248ea89ff01cdc0bca1a66ff60f9f1f19ed9c9fccef3d7a3bbebb8 + xz: 5b92a2b5829ab23735617945839e45df984b319b8932e790a8e0c6f681b9bd74249511a76345516cc216c002ed7887bdd27151501491d5ecedc20acd3fb57cc5 + - version: 3.4.0-preview2 date: 2024-10-07 post: /en/news/2024/10/07/ruby-3-4-0-preview2-released/ diff --git a/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md new file mode 100644 index 0000000000..cef20bbb07 --- /dev/null +++ b/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -0,0 +1,195 @@ +--- +layout: news_post +title: "Ruby 3.4.0 rc1 Released" +author: "naruse" +translator: +date: 2024-12-12 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-rc1" | first %} +We are pleased to announce the release of Ruby {{ release.version }}. +In + +## Prism + +Switch the default parser from parse.y to Prism. [[Feature #20564]] + +## Modular GC + +* Alternative garbage collector (GC) implementations can be loaded dynamically + through the modular garbage collector feature. To enable this feature, + configure Ruby with `--with-modular-gc` at build time. GC libraries can be + loaded at runtime using the environment variable `RUBY_GC_LIBRARY`. + [[Feature #20351]] + +* Ruby's built-in garbage collector has been split into a separate file at + `gc/default/default.c` and interacts with Ruby using an API defined in + `gc/gc_impl.h`. The built-in garbage collector can now also be built as a + library using `make modular-gc MODULAR_GC=default` and enabled using the + environment variable `RUBY_GC_LIBRARY=default`. [[Feature #20470]] + +* An experimental GC library is provided based on [MMTk](https://www.mmtk.io/). + This GC library can be built using `make modular-gc MODULAR_GC=mmtk` and + enabled using the environment variable `RUBY_GC_LIBRARY=mmtk`. This requires + the Rust toolchain on the build machine. [[Feature #20860]] + + +## Language changes + +* String literals in files without a `frozen_string_literal` comment now behave + as if they were frozen. If they are mutated a deprecation warning is emitted. + These warnings can be enabled with `-W:deprecated` or by setting `Warning[:deprecated] = true`. + To disable this change, you can run Ruby with the `--disable-frozen-string-literal` + command line argument. [[Feature #20205]] + +* `it` is added to reference a block parameter. [[Feature #18980]] + +* Keyword splatting `nil` when calling methods is now supported. + `**nil` is treated similarly to `**{}`, passing no keywords, + and not calling any conversion methods. [[Bug #20064]] + +* Block passing is no longer allowed in index. [[Bug #19918]] + +* Keyword arguments are no longer allowed in index. [[Bug #20218]] + +## YJIT + +TL;DR: +* Better performance on most benchmarks on both x86-64 and arm64 platforms. +* Reduced memory usage of compilation metadata +* Multiple bug fixes. YJIT is now even more robust and better tested. + +New features: +* Add unified memory limit via `--yjit-mem-size` command-line option (default 128MiB) + which tracks total YJIT memory usage and is more intuitive than the + old `--yjit-exec-mem-size`. +* More statistics now always available via `RubyVM::YJIT.runtime_stats` +* Add compilation log to track what gets compiled via `--yjit-log` + * Tail of the log also available at run-time via `RubyVM::YJIT.log` +* Add support for shareable consts in multi-ractor mode +* Can now trace counted exits with `--yjit-trace-exits=COUNTER` + +New optimizations: +* Compressed context reduces memory needed to store YJIT metadata +* Improved allocator with ability to allocate registers for local variables +* When YJIT is enabled, use more Core primitives written in Ruby: + * `Array#each`, `Array#select`, `Array#map` rewritten in Ruby for better performance [[Feature #20182]]. +* Ability to inline small/trivial methods such as: + * Empty methods + * Methods returning a constant + * Methods returning `self` + * Methods directly returning an argument +* Specialized codegen for many more runtime methods +* Optimize `String#getbyte`, `String#setbyte` and other string methods +* Optimize bitwise operations to speed up low-level bit/byte manipulation +* Various other incremental optimizations + +## Core classes updates + +Note: We're only listing outstanding class updates. + +* Exception + + * `Exception#set_backtrace` now accepts an array of `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` and `Fiber#raise` also accept this new format. [[Feature #13557]] + +* Range + + * `Range#size` now raises `TypeError` if the range is not iterable. [[Misc #18984]] + + + +## Compatibility issues + +Note: Excluding feature bug fixes. + +* Error messages and backtrace displays have been changed. + * Use a single quote instead of a backtick as a opening quote. [[Feature #16495]] + * Display a class name before a method name (only when the class has a permanent name). [[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location`'s methods, etc. are also changed accordingly. + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +## C API updates + +* `rb_newobj` and `rb_newobj_of` (and corresponding macros `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) have been removed. [[Feature #20265]] +* Removed deprecated function `rb_gc_force_recycle`. [[Feature #18290]] + +## Miscellaneous changes + +* Passing a block to a method which doesn't use the passed block will show + a warning on verbose mode (`-w`). + [[Feature #15554]] + +* Redefining some core methods that are specially optimized by the interpeter + and JIT like `String.freeze` or `Integer#+` now emits a performance class + warning (`-W:performance` or `Warning[:performance] = true`). + [[Feature #20429]] + +See GitHub releases like [Logger](https://github.com/ruby/logger/releases) or +changelog for details of the default gems or bundled gems. + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +since Ruby 3.3.0! + + +## Download + +* <{{ 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 + +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. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 From d17ca1c3d05f6f1ad13a1532014f24335c90275f Mon Sep 17 00:00:00 2001 From: Alan Wu Date: Thu, 12 Dec 2024 14:16:16 -0500 Subject: [PATCH 465/607] Remove stray "in" (#3436) --- en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md | 1 - 1 file changed, 1 deletion(-) diff --git a/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md index cef20bbb07..339f52d1a9 100644 --- a/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md +++ b/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -9,7 +9,6 @@ lang: en {% assign release = site.data.releases | where: "version", "3.4.0-rc1" | first %} We are pleased to announce the release of Ruby {{ release.version }}. -In ## Prism From bd6c300525af1e6d59f17f0e13d92a20bc8e46ab Mon Sep 17 00:00:00 2001 From: Jean Boussier Date: Fri, 13 Dec 2024 09:32:37 +0100 Subject: [PATCH 466/607] Clarify chilled stirng behavior in 3.4.0-rc1 release announcement Identical to the preview2 release: https://github.com/ruby/www.ruby-lang.org/pull/3380 --- en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md index 339f52d1a9..bbbce49821 100644 --- a/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md +++ b/en/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -36,8 +36,8 @@ Switch the default parser from parse.y to Prism. [[Feature #20564]] ## Language changes -* String literals in files without a `frozen_string_literal` comment now behave - as if they were frozen. If they are mutated a deprecation warning is emitted. +* String literals in files without a `frozen_string_literal` comment now emit a deprecation warning + when they are mutated. These warnings can be enabled with `-W:deprecated` or by setting `Warning[:deprecated] = true`. To disable this change, you can run Ruby with the `--disable-frozen-string-literal` command line argument. [[Feature #20205]] From 444a3f134116505d7511f60a64ee405e87a73a1e Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sat, 14 Dec 2024 18:16:30 +0800 Subject: [PATCH 467/607] Translate Ruby 3.4.0 rc1 Released (zh_tw) --- .../2024-12-12-ruby-3-4-0-rc1-released.md | 176 ++++++++++++++++++ 1 file changed, 176 insertions(+) create mode 100644 zh_tw/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md diff --git a/zh_tw/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/zh_tw/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md new file mode 100644 index 0000000000..17583feb5a --- /dev/null +++ b/zh_tw/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -0,0 +1,176 @@ +--- +layout: news_post +title: "Ruby 3.4.0 rc1 發布" +author: "naruse" +translator: "Bear Su" +date: 2024-12-12 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-rc1" | first %} +我們很高興宣布 Ruby {{ release.version }} 發佈了。 + +## Prism + +預設的解析器從 parse.y 切換為 Prism。 [[Feature #20564]] + +## 模組化垃圾收集器 + +* 模組化垃圾收集器功能可以動態載入替代垃圾收集器實作。 + 要啟用該功能,在建置 Ruby 時設定 `--with-modular-gc`。 + 垃圾收集器函式庫可以在運行環境使用環境變數 `RUBY_GC_LIBRARY` 載入。 + [[Feature #20351]] + +* Ruby 內建的垃圾收集器已經切分成不同的檔案 `gc/default/default.c`,並使用在 `gc/gc_impl.h` 定義的 API 與 Ruby 互動。 + 內建的垃圾收集器現在也可以用 `make modular-gc MODULAR_GC=default` 建置為函式庫,並使用環境變數 `RUBY_GC_LIBRARY=default` 啟用。[[Feature #20470]] + +* 基於 [MMTk](https://www.mmtk.io/) 提供了一個實驗性的垃圾收集器函式庫。 + 該垃圾收集器函式庫可以使用 `make modular-gc MODULAR_GC=mmtk` 建置,並使用環境變數 `RUBY_GC_LIBRARY=mmtk` 啟用。 + 建置主機上需要有 Rust 工具鏈。[[Feature #20860]] + +## 語法變更 + +* 沒有 `frozen_string_literal` 註解的檔案中的字串文字,現在行為會跟被凍結一樣。如果它們被修改則會發出棄用警告。 + 這些警告可以透過 `-W:deprecated` 或 `Warning[:deprecated] = true` 啟用。 + 若要停用此變更,您可以在執行 Ruby 時加上參數 `--disable-frozen-string-literal`。 [[Feature #20205]] + +* 新增 `it` 來引用 block 的傳入參數。 [[Feature #18980]] + +* 現在呼叫方法支援使用 Keyword splatting `nil`。 + `**nil` 的處理方式與 `**{}` 類似,不會傳遞 keywords,也不會呼叫任何轉換方法。 [[Bug #20064]] + +* Block passing 不再允許作為索引。 [[Bug #19918]] + +* 不定長度參數不再允許作為索引。 [[Bug #20218]] + +## YJIT + +TL;DR: +* 在 x86-64 與 arn64 平台上的大多數基準測試都有更好的效能 +* 減少編輯後設資料的的記憶體用量 +* 修復多個錯誤。YJIT 現在更加勇健且有更好的測試。 + +新功能: +* 透過 `--yjit-mem-size` 指令選項新增統一記憶體限制 (預設 128MiB),該功能追蹤總 YJIT 記憶體用量,而且比舊的 `--yjit-exec-mem-size` 更為直觀 +* 現在總是可以透過 `RubyVM::YJIT.runtime_stats` 取得更多統計數據 +* 透過 `--yjit-log` 加入編譯紀錄來追蹤哪些被編譯 + * 可以在運行環境透過 `RubyVM::YJIT.log` 取得紀錄結尾 +* 在 multi-ractor 模式中支援分享常數 +* 現在可以使用 `--yjit-trace-exits=COUNTER` 來追蹤已計數的 exits + +新的改善: +* 透過壓縮上下文來減少儲存 YJIT 後設資料所需的記憶體空間 +* 改善後的分配器能為本地變數分配暫存器 +* 當啟用 YJIT 時,使用更多用 Ruby 邊寫的核心程式: + * 使用 Ruby 改寫`Array#each`、`Array#select`、`Array#map` 提高效能 [[Feature #20182]]. +* 能夠內聯小型/簡單的方法,例如: + * 空方法 + * 回傳常數的方法 + * 回傳 `self` 的方法 + * 直接回傳參數的方法 +* 適用於更多執行環境方法的程式碼產生器 +* 改善 `String#getbyte`、`String#setbyte` 和其他字串方法 +* 改善位元計算來加速低階位元/位元組操作 +* 各種其他的增量改善 + +## 核心類別更新 + +注意:我們只列出特別的類別更新。 + +* Exception + + * `Exception#set_backtrace` 現在可接受 `Thread::Backtrace::Location` 陣列。 + `Kernel#raise`、`Thread#raise` 和 `Fiber#raise` 也接受同樣的新格式。 [[Feature #13557]] + +* Range + + * `Range#size` 如果 range 無法迭代的話,現在會拋出 `TypeError`。 [[Misc #18984]] + + + +## 相容性問題 + +注意:不包含功能問題的修正。 + +* 錯誤訊息與 backtrace 的顯示改變。 + * 使用單引號 (`'`) 取代反引號 (`` ` ``) 作為起始引號。 [[Feature #16495]] + * 在方法名稱前顯示類別名稱 (僅當類別有固定名稱時)。 [[Feature #19117]] + * `Kernel#caller`、`Thread::Backtrace::Location` 的方法等等,也做了對應的改變。 + + ``` + 舊: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + 新: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +## 更新的 C API + +* `rb_newobj` 和 `rb_newobj_of` (和相對應的巨集 `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) 已經被移除。 [[Feature #20265]] +* 移除已廢棄的函式 `rb_gc_force_recycle`。 [[Feature #18290]] + +## 其他變更 + +* 將 block 傳遞給不使用傳入 block 的方法,會在 verbose 模式 (`-w`) 下顯示警告。 + [[Feature #15554]] + +* 當重新定義一些由直譯器與 JIT 特別最佳化的核心方法,例如 `String.freeze` 和 `Integer#+`,現在會發出效能類型警告 (`-W:performance` or `Warning[:performance] = true`)。 + [[Feature #20429]] + +請參閱 GitHub 發布如 [Logger](https://github.com/ruby/logger/releases) 和變更紀錄來了解更多關於預設 gems 與 bundled gems 的資訊。 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +來了解更多。 + +自 Ruby 3.3.0 以來,計 [{{ release.stats.files_changed }} 檔案變更,{{ release.stats.insertions }} 行新增(+),{{ release.stats.deletions }} 行刪減(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)。 + + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 From 206659e60e08904ebd688d94ffd3c781298e4aa6 Mon Sep 17 00:00:00 2001 From: Shia Date: Mon, 16 Dec 2024 07:36:31 +0900 Subject: [PATCH 468/607] Translate "Ruby 3.4.0 RC 1 Released" (ko) (#3438) * cp 2024-12-12-ruby-3-4-0-rc1-released.md * Translate "Ruby 3.4.0 RC 1 Released" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../2024-12-12-ruby-3-4-0-rc1-released.md | 193 ++++++++++++++++++ 1 file changed, 193 insertions(+) create mode 100644 ko/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md diff --git a/ko/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/ko/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md new file mode 100644 index 0000000000..5ccbf80507 --- /dev/null +++ b/ko/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -0,0 +1,193 @@ +--- +layout: news_post +title: "Ruby 3.4.0 rc1 릴리스" +author: "naruse" +translator: "shia" +date: 2024-12-12 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-rc1" | first %} +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. + +## Prism + +parse.y에서 Prism으로 기본 파서를 변경했습니다. [[Feature #20564]] + +## 모듈러 GC + +* 다른 가비지 컬렉터(GC) 구현을 모듈러 가비지 컬렉터 기능을 통해 동적으로 로드할 수 있습니다. + 이 기능을 활성화하려면 Ruby 빌드 시에 `--with-modular-gc`를 설정하세요. GC 라이브러리는 + 환경 변수 `RUBY_GC_LIBRARY`를 사용하여 런타임에 로드할 수 있습니다. + [[Feature #20351]] + +* Ruby의 내장 가비지 컬렉터는 `gc/default/default.c`에 분리되어 있으며, + `gc/gc_impl.h`에 정의된 API를 사용하여 Ruby와 상호 작용합니다. + 내장 가비지 컬렉터는 `make modular-gc MODULAR_GC=default`를 사용하여 + 라이브러리로서 빌드하고 환경 변수 `RUBY_GC_LIBRARY=default`를 + 사용하여 활성화할 수 있습니다. [[Feature #20470]] + +* [MMTk](https://www.mmtk.io/)를 기반으로 한 실험적인 GC 라이브러리가 제공됩니다. + 이 GC 라이브러리는 `make modular-gc MODULAR_GC=mmtk`를 사용하여 빌드하고 + 환경 변수 `RUBY_GC_LIBRARY=mmtk`를 사용하여 활성화할 수 있습니다. + 이는 빌드 머신에 Rust 툴체인이 필요합니다. [[Feature #20860]] + + +## 언어 변경 + +* 파일에 `frozen_string_literal` 주석이 없을 때, 문자열 리터럴이 변경되면 + 폐기 예정 경고를 출력합니다. + 이 경고는 `-W:deprecated`나 `Warning[:deprecated] = true` 설정을 통해 활성화할 수 있습니다. + 이 변경을 무효화하고 싶다면 Ruby를 실행할 때 `--disable-frozen-string-literal` 커맨드 라인 인수를 + 사용하세요. [[Feature #20205]] + +* 블록 인자를 가리키는 `it`이 추가됩니다. [[Feature #18980]] + +* 메서드 호출 시에 `nil`에 키워드 스플랫을 지원합니다. + `**nil`은 `**{}`와 비슷하게 동작하며, 키워드를 넘기지 않으며, + 어떤 변환 메서드도 호출하지 않습니다. [[Bug #20064]] + +* 블록을 인덱스로 사용할 수 없게 됩니다. [[Bug #19918]] + +* 키워드 인수를 인덱스로 사용할 수 없게 됩니다. [[Bug #20218]] + +## YJIT + +TL;DR: +* x86-64와 arm64 플랫폼에서 대부분의 벤치마크에서 성능이 향상되었습니다. +* YJIT 메타 데이터 컴파일의 메모리 사용량이 줄었습니다. +* 여러 버그가 수정되었습니다. YJIT는 이제 더 견고하고 잘 테스트되었습니다. + +새 기능: +* `--yjit-mem-size` 커맨드 라인 옵션(기본값 128 MiB)을 통해 + YJIT의 통합 메모리 제한을 추가했습니다. + 이는 이전 `--yjit-exec-mem-size`보다 직관적이며, YJIT의 전체 메모리 사용량을 추적합니다. +* 이제 `RubyVM::YJIT.runtime_stats`를 통해 항상 더 많은 통계가 사용 가능합니다. +* `--yjit-log`를 통해 무엇이 컴파일되었는지 추적하는 컴파일 로그를 추가했습니다. + * 런타임에서도 로그의 마지막 부분을 `RubyVM::YJIT.log`로 확인할 수 있습니다. +* 멀티 Ractor 모드에서 공유 가능한 상수를 지원합니다. +* `--yjit-track-exits=COUNTER`로 종료한 횟수를 추적할 수 있습니다. + +새 최적화: +* YJIT 메타 데이터를 저장하는 데 필요한 메모리를 줄이는 콘텍스트 압축. +* 로컬 변수를 위한 레지스터를 할당할 수 있는 개선된 할당기. +* YJIT을 사용할 때 Ruby로 작성된 더 많은 코어 프리미티브를 사용합니다. + * 성능을 높이기 위해 Ruby로 다시 작성된 `Array#each`, `Array#select`, `Array#map` [[Feature #20182]]. +* 작고 사소한 메서드를 인라인으로 변환하는 능력. + * 빈 메서드 + * 상수를 반환하는 메서드 + * `self`를 반환하는 메서드 + * 인수를 직접 반환하는 메서드 +* 더 많은 런타임 메서드에 대한 특별한 코드 생성 +* `String#getbyte`, `String#setbyte` 및 다른 문자열 메서드를 최적화 +* 저레벨 비트/바이트 조작을 빠르게 하기 위한 비트 연산 최적화 +* 다양한 다른 점진적 최적화 + +## 코어 클래스 변경 + +주의: 눈에 띄는 클래스 변경만을 포함합니다. + +* Exception + + * `Exception#set_backtrace`는 이제 `Thread::Backtrace::Location`의 배열을 입력으로 받을 수 있습니다. + `Kernel#raise`, `Thread#raise`와 `Fiber#raise`도 같은 형식의 입력을 받습니다. [[Feature #13557]] + +* Range + + * `Range#size`는 이제 범위가 순회 가능하지 않다면 `TypeError`를 던집니다. [[Misc #18984]] + + + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + +* 에러 메시지와 백트레이스의 출력 결과가 변경됩니다. + * 여는 따옴표로 백틱 대신 작은따옴표를 사용합니다. [[Feature #16495]] + * 메서드 이름 앞에 클래스 이름을 출력합니다(클래스가 불변하는 이름을 가지고 있는 경우만). [[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location`의 메서드 등도 마찬가지로 변경됩니다. + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +## C API 변경 + +* `rb_newobj`와 `rb_newobj_of`(그리고 대응하는 매크로인 `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`)가 삭제됩니다. [[Feature #20265]] +* 폐기 예정인 `rb_gc_force_recycle` 함수가 삭제됩니다. [[Feature #18290]] + +## 그 이외의 변경 + +* 상세 모드(`-w`)에서 메서드에 넘긴 블록이 사용되지 않았을 때 + 경고를 출력합니다. + [[Feature #15554]] + +* `String.freeze`나 `Integer#+`처럼 인터프리터와 JIT이 특별히 최적화하는 + 몇몇 코어 메서드를 재정의하면 성능 클래스 + 경고(`-W:performance`나 `Warning[:performance] = true`)를 출력합니다. + [[Feature #20429]] + +기본 gem 또는 내장 gem에 대한 자세한 내용은 [Logger](https://github.com/ruby/logger/releases)와 같은 +GitHub 릴리스 또는 변경 로그에서 확인하세요. + +더 자세한 내용은 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.3.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 From 7a73905d0dafe011303f9d248ce4cbf0249dd128 Mon Sep 17 00:00:00 2001 From: Andrias Meisyal Date: Wed, 1 May 2024 16:38:25 +0700 Subject: [PATCH 469/607] Translate Ruby 3.3.0-preview3 released news post (id) --- ...2023-11-12-ruby-3-3-0-preview3-released.md | 308 ++++++++++++++++++ 1 file changed, 308 insertions(+) create mode 100644 id/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md diff --git a/id/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md b/id/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md new file mode 100644 index 0000000000..6c69e4cd83 --- /dev/null +++ b/id/news/_posts/2023-11-12-ruby-3-3-0-preview3-released.md @@ -0,0 +1,308 @@ +--- +layout: news_post +title: "Ruby 3.3.0-preview3 Dirilis" +author: "naruse" +translator: "meisyal" +date: 2023-11-12 00:00:00 +0000 +lang: id +--- + +{% assign release = site.data.releases | where: "version", "3.3.0-preview3" | first %} +Kami dengan senang hati mengumumkan rilis dari Ruby {{ release.version }}. +Ruby 3.3 menambahkan sebuah *parser* baru yang bernama Prism, menggunakan Lrama +sebagai *parser generator*, menambahkan *pure-Ruby* JIT *compiler* baru +yang bernama RJIT, dan memperbaiki performa khususnya YJIT. + +## Prism + +* Memperkenalkan [the Prism parser](https://github.com/ruby/prism) sebagai *default gem* + * Prism adalah sebuah *parser* yang *portable*, *error tolerant*, dan *maintainable recursive descent* untuk Ruby +* Prism siap digunakan di *production* dan aktif dirawat, Anda dapat menggunakannya sebagai pengganti Ripper + * Ada [extensive documentation](https://ruby.github.io/prism/) untuk menggunakan Prism + * Prism adalah sebuah pustaka bahasa C yang digunakan secara internal oleh CRuby dan sebuah Ruby *gem* yang digunakan untuk mem-*parse* kode Ruby + * Beberapa *method* penting pada Prism API: + * `Prism.parse(source)` yang mengembalikan AST sebagai bagian dari ParseResult + * `Prism.dump(source)` yang mengembalikan *serialized* AST sebagai sebuah String + * `Prism.parse_comments(source)` yang mengembalikan komentar pada kode +* Anda dapat membuat *pull request* atau melaporkan isu secara langsung pada [the Prism repository](https://github.com/ruby/prism) jika Anda tertarik untuk berkontribusi + +## Menggunakan Lrama ketimbang Bison + +* Mengganti Bison dengan [Lrama LALR parser generator](https://github.com/yui-knk/lrama) [Feature #19637](https://bugs.ruby-lang.org/issues/19637) + * Jika Anda tertarik, silakan lihat [The future vision of Ruby Parser](https://rubykaigi.org/2023/presentations/spikeolaf.html) + * Internal *parser* dari Lrama digantikan dengan LR yang dihasilkan oleh Racc untuk *maintainability* + * *Parameterizing Rule* `(?, *, +)` didukung, ini akan digunakan di Ruby parse.y + +## RJIT + +* Memperkenalkan sebuah *pure-Ruby* JIT *compiler* dan menggantikan MJIT. + * RJIT hanya mendukung arsitektur x86-64 pada *platform Unix*. + * Berbeda dengan MJIT, RJIT tidak memerlukan sebuah *compiler* C saat *runtime*. +* RJIT ada hanya untuk tujuan eksperimen. + * Anda seharusnya tetap menggunakan YJIT pada *production*. +* Jika Anda tertarik untuk mengembangkan JIT pada Ruby, silakan cek [k0kubun's presentation on Day 3 of RubyKaigi](https://rubykaigi.org/2023/presentations/k0kubun.html#day3). + +## YJIT + +* Peningkatan performa yang signifikan dibanding Ruby 3.2 + * Dukungan *splat* dan *rest argument* telah ditingkatkan. + * *Register* dialokasikan untuk operasi *stack* dari *virtual machine*. + * Pemanggilan dengan *optional argument* dikompilasi. + * *Exception handler* juga dikompilasi. + * *Instant variable* tidak lagi keluar ke *intepreter* dengan *Object Shapes* + yang sangat besar. + * *Call type* yang tidak didukung tidak lagi keluar ke *interpreter*. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` dioptimisasi. + * Sekarang 3x lebih cepat dibanding *interpreter* pada optcarrot! +* Peningkatan penggunakan *memory* secara signifikan + * *Metadata* dari kode yang dikompilasi menggunakan *memory* lebih sedikit. + * Peningkatan *code generation* pada ARM64 +* Kecepatan kompilasi sedikit lebih cepat dibanding Ruby 3.2 +* Menambahkan `RubyVM::YJIT.enable` untuk mengaktifkan YJIT saat *run-time* + * Anda dapat menjalankan YJIT tanpa memodifikasi argumen *command-line* atau *environment variable* + * Ini dapat digunakan untuk mengaktifkan YJIT saat aplikasi Anda selesai *booting*. + `--yjit-disable` dapat digunakan jika Anda tidak ingin mengaktifkan YJIT + ketika aplikasi *booting*. +* Opsi untuk menonaktifkan kode GC dan memperlakukan `--yjit-exec-mem-size` sebagai sebuah batas keras + * Dapat menghasilkan perilaku *copy-on-write* lebih baik pada *server* yang menggunakan unicorn dan *forking* +* `ratio_in_yjit` yang dihasilkan oleh `--yjit-stats` sekarang tersedia pada + rilis *build*, data khusus atau dev *build* tidak lagi diperlukan. +* Opsi *exit tracing* sekarang mendukung *sampling* + * `--trace-exits-sample-rate=N` +* `--yjit-perf` ditambahkan untuk memfasilitasi *profiling* dengan Linux perf. +* Pengujian lebih saksama dan perbaikan beberapa *bug* + +### M:N thread scheduler + +* M:N *thread scheduler* diperkenalkan. [[Feature #19842]](https://bugs.ruby-lang.org/issues/19842) + * M Ruby *thread* diatur oleh N *native thread* (OS *thread*) sehingga pembuatan *thread* dan + manajemen berkurang. + * Ini dapat merusak kompatibilitas dengan C-*extension* sehingga M:N *thread* dinonaktifkan + pada *main* dari Ractor secara *default*. + * *Environment variable* `RUBY_MN_THREADS=1` mengaktifkan M:N *thread* pada *main* dari Ractor. + * M:N *thread* diaktifkan pada selain *main* dari Ractor. + * *Environment variable* `RUBY_MAX_CPU=n` menetapkan jumlah maksimum dari `N` (jumlah maksimum dari *native thread*). Nilai *default* adalah 8. + * Karena hanya ada satu Ruby *thread* untuk setiap Ractor yang dapat berjalan bersamaan, + jumlah *native thread* yang digunakan, yang mana lebih kecil dari jumlah yang dispesifikasikan pada + `RUBY_MAX_CPU` dan jumlah dari Ractor yang sedang berjalan. Sehingga, aplikasi Ractor tunggal (mayoritas aplikasi) + akan menggunakan satu *native thread*. + * Untuk mendukung operasi *blocking*, lebih dari `N` *native thread* dapat digunakan. + +## Fitur Penting Lainnya + + + +### Bahasa + + + +## Perbaikan performa + +* `defined?(@ivar)` dioptimisasi dengan *Object Shapes*. +* *Name resolution* seperti `Socket.getaddrinfo` sekarang dapat diinterupsi (pada *environment* di mana pthread tersedia). [Feature #19965](https://bugs.ruby-lang.org/issues/19965) + * Untuk tujuan ini, sebuah pthread sekarang dibuat setiap kali ada pemanggilan getaddrinfo atau getnameinfo. + Ini menimbulkan *overhead* pada *name resolution* (sekitar 2.5x pada eksperimen kami). + Kami tidak mengharapkan *overhead* menjadi sebuah masalah pada kebanyakan aplikasi, namun jika Anda menemui atau + melihat hasil yang tidak diharapkan karena perubahan tersebut, mohon laporkan. +* *Environment variable* `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` telah ditambahkan. [Feature #19571](https://bugs.ruby-lang.org/issues/19571) +* *Children* dari *object* lama tidak lagi dipromosikan ke generasi lama pada *garbage collector*. [Feature #19678](https://bugs.ruby-lang.org/issues/19678) +* Dukungan untuk *weak reference* telah ditambahkan pada *garbage collector*. [Feature #19783](https://bugs.ruby-lang.org/issues/19783) + +## Perubahan penting lainnya sejak 3.2 + +### IRB + +IRB mendapatkan beberapa peningkatan berikut, namun tidak terbatas pada: + +- Integrasi `irb:rdbg` yang menyediakan pengalaman *deugging* setara dengan `pry-byebug` ([doc](https://github.com/ruby/irb#debugging-with-irb)). +- Dukungan *pager* untuk perintah, seperti `ls`, `show_source`, dan `show_cmds`. +- Menyediakan informasi yang lebih akurat dan membantu dengan perintah `ls` dan `show_source`. +- Eksperimen *autocompletion* menggunakan *type analysis* ([doc](https://github.com/ruby/irb#type-based-completion)). +- Sekarang memungkinkan untuk mengubah warna dan gaya *font* pada *completion dialog* dengan mengenalkan *class* Reline::Face ([doc](https://github.com/ruby/ruby/blob/master/doc/reline/face.md)) + +Sebagai tambahan, IRB telah menjalani *refactoring* yang ekstensif dan menerima +perbaikan *bug* untuk memfasilitasi peningkatan ke depan dengan lebih mudah. + +## Isu kompatibilitas + +Catatan: Tidak termasuk perbaikan *bug* dari fitur. + +### Constant terhapus + +Berikut ini adalah *constant* yang telah dihapus. + + + +### Method terhapus + +Berikut ini adalah *method* yang telah dihapus. + +### Environment variable terhapus + +Berikut adalah *environment variable* yang telah dihapus. + +* *Environment variable* `RUBY_GC_HEAP_INIT_SLOTS` tidak digunakan lagi. Mohon gunakan `RUBY_GC_HEAP_{0,1,2,3,4}_INIT_SLOTS`. [Feature #19785](https://bugs.ruby-lang.org/issues/19785) + +## Isu kompatibilitas Stdlib + +### `ext/readline` dipensiunkan + +* Kami memiliki `reline` yang merupakan implementasi Ruby murni dan kompatibel + dengan `ext/readline` API. Kami bergantung pada `reline` di masa depan. Jika + Anda perlu untuk menggunakan `ext/readline`, Anda dapat memasang `ext/readline` + melalui rubygems.org dengan `gem install readline-ext`. +* Kami tidak lagi memasang pustaka, seperti `libreadline` atau `libedit`. + +## Pembaruan C API + +### C API diperbarui + +Berikut adalah API yang telah diperbarui. + + + +### C API terhapus + +Berikut adalah API yang telah dihapus. + + + +## Pembaruan pustaka standar + +RubyGems dan Bundler memperingatkan jika pengguna membutuhkan *gem* yang dijadwalkan +akan menjadi *bundled gem* pada Ruby versi berikutnya. + +Pustaka yang ditargetkan: + * abbrev + * base64 + * bigdecimal + * csv + * drb + * getoptlong + * mutex_m + * nkf + * observer + * racc + * resolv-replace + * rinda + * syslog + +Berikut adalah *default gem* yang telah ditambahkan. + +* prism 0.15.1 + +Berikut adalah *default gem* yang telah diperbarui. + +* RubyGems 3.5.0.dev +* base64 0.2.0 +* benchmark 0.3.0 +* bigdecimal 3.1.5 +* bundler 2.5.0.dev +* cgi 0.4.0 +* csv 3.2.8 +* date 3.3.4 +* delegate 0.3.1 +* drb 2.2.0 +* english 0.8.0 +* erb 4.0.3 +* etc 1.4.3.dev.1 +* fcntl 1.1.0 +* fiddle 1.1.2 +* fileutils 1.7.2 +* find 0.2.0 +* getoptlong 0.2.1 +* io-console 0.6.1.dev +* irb 1.8.3 +* logger 1.6.0 +* mutex_m 0.2.0 +* net-http 0.4.0 +* net-protocol 0.2.2 +* nkf 0.1.3 +* observer 0.1.2 +* open-uri 0.4.0 +* open3 0.2.0 +* openssl 3.2.0 +* optparse 0.4.0 +* ostruct 0.6.0 +* pathname 0.3.0 +* pp 0.5.0 +* prettyprint 0.2.0 +* pstore 0.1.3 +* psych 5.1.1.1 +* rdoc 6.6.0 +* reline 0.3.9 +* rinda 0.2.0 +* securerandom 0.3.0 +* shellwords 0.2.0 +* singleton 0.2.0 +* stringio 3.0.9 +* strscan 3.0.7 +* syntax_suggest 1.1.0 +* tempfile 0.2.0 +* time 0.3.0 +* timeout 0.4.1 +* tmpdir 0.2.0 +* tsort 0.2.0 +* un 0.3.0 +* uri 0.13.0 +* weakref 0.1.3 +* win32ole 1.8.10 +* yaml 0.3.0 +* zlib 3.1.0 + +Berikut adalah *bundled gem* yang dipromosikan dari *default gem*. + +* racc 1.7.3 + +Berikut adalah *bundled gem* yang telah diperbarui. + +* minitest 5.20.0 +* rake 13.1.0 +* test-unit 3.6.1 +* rexml 3.2.6 +* rss 0.3.0 +* net-imap 0.4.4 +* net-smtp 0.4.0 +* rbs 3.2.2 +* typeprof 0.21.8 +* debug 1.8.0 + +Lihat rilis GitHub, seperti [Logger](https://github.com/ruby/logger/releases) +atau *changelog* untuk detail dari *default gem* atau *bundled gem*. + +Lihat [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +atau [commit logs](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}) +untuk lebih detail. + +Dengan perubahan tersebut, [{{ release.stats.files_changed }} berkas berubah, {{ release.stats.insertions }} sisipan(+), {{ release.stats.deletions }} terhapus(-)](https://github.com/ruby/ruby/compare/v3_2_0...{{ release.tag }}#file_bucket) +sejak Ruby 3.2.0! + +## Unduh + +* <{{ 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 }} + +## Apa itu Ruby + +Ruby pertama kali dikembangkan oleh Matz (Yukihiro Matsumoto) pada 1993 +dan sekarang dikembangkan sebagai *Open Source*. Ruby berjalan pada berbagai +*platform* dan digunakan di seluruh dunia, khususnya pengembangan *web*. From 10e9f1fa181f5556ffa23cbc1d4ca001369145af Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Mon, 16 Dec 2024 23:44:52 +0800 Subject: [PATCH 470/607] Translate Ruby 3.4.0 rc-1 released(zh_cn) (#3440) --- .../2024-12-12-ruby-3-4-0-rc1-released.md | 173 ++++++++++++++++++ 1 file changed, 173 insertions(+) create mode 100644 zh_cn/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md diff --git a/zh_cn/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/zh_cn/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md new file mode 100644 index 0000000000..394e9be043 --- /dev/null +++ b/zh_cn/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -0,0 +1,173 @@ +--- +layout: news_post +title: "Ruby 3.4.0 rc1 已发布" +author: "naruse" +translator: "GAO Jun" +date: 2024-12-12 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-rc1" | first %} +我们很高兴地宣布 Ruby {{ release.version }} 发布。 + +## Prism + +默认解析器由 parse.y 切换到 Prism。 [[Feature #20564]] + +## 模块化垃圾收集器 + +* 通过模块化垃圾收集功能,可以动态加载具体的垃圾收集器(GC)实现。 + 若要启用此功能,可以在构建 Ruby 时,使用 `--with-modular-gc` 参数。 + 运行时可以通过环境变量 `RUBY_GC_LIBRARY` 加载 GC 库。 + [[Feature #20351]] + +* Ruby 内置的垃圾收集器已被拆分到单独的文件 `gc/default/default.c` 并通过 `gc/gc_impl.h` 中定义的 API 与 Ruby 进行交互。 + 现在,内置的垃圾收集器也可以作为库进行构建:通过 `make modular-gc MODULAR_GC=default` 进行构建, + 并通过环境变量 `RUBY_GC_LIBRARY=default` 启用。 [[Feature #20470]] + +* 提供了一个基于 [MMTk](https://www.mmtk.io/) 的实验性 GC 库。此库可以通过 `make modular-gc MODULAR_GC=mmtk` 进行构建, + 并通过环境变量 `RUBY_GC_LIBRARY=mmtk` 启用。构建的计算机需要 Rust 工具链。 [[Feature #20860]] + + +## 语言变化 + +* 在没有 `frozen_string_literal` 注释的文件中,当字符串字面量被修改时会发出警告。 + 这些警告可以使用 `-W:deprecated` 或者通过设置 `Warning[:deprecated] = true` 来启用。 + 如要禁用此变化,您可以在运行 Ruby 时,使用 `--disable-frozen-string-literal` 命令行参数。 [[Feature #20205]] + +* 增加了 `it` 来引用块参数。 [[Feature #18980]] + +* 支持在调用方法时使用 `nil` 作为关键字展开参数。 + `**nil` 类似于 `**{}`,不传递关键字参数,也不调用任何转换方法。 [[Bug #20064]] + +* 索引不再接受块传递。 [[Bug #19918]] + +* 索引不再接受关键字参数。 [[Bug #20218]] + +## YJIT + +摘要: +* 在 x86-64 和 arm64 平台上的大多数基准测试中,都获得了更好的性能表现 +* 减少了编译元数据的内存使用 +* 修复了多个错误。YJIT 现在更健壮了,并被更好地测试 + +新功能: +* 新增命令行选项 `--yjit-mem-size` (默认值为 128 MiB),用于设置统一的内存选项,并跟踪 YJIT 总的内存使用情况, + 这比旧的 `--yjit-exec-mem-size` 更直观 +* 通过 `RubyVM::YJIT.runtime_stats` 可以获取更多的统计信息 +* 通过 `--yjit-log` 可以跟踪编译日志 + * 通过 `RubyVM::YJIT.log` 可以在运行时获取日志尾部信息 +* 在多 reactor 模式下,支持共享常量 +* 通过 `--yjit-trace-exits=COUNTER` 可以跟踪退出计数 + +新优化: +* 通过压缩上下文减少了存储 YJIT 元数据所需的内存 +* 改进分配器功能,允许为局部变量分配寄存器 +* 当 YJIT 启用时,使用更多 Ruby 编写的核心原型类型: + * 使用 Ruby 重写 `Array#each`, `Array#select`, `Array#map` 以提升性能 [[Feature #20182]]. +* 能够内联小型方法,诸如: + * 空方法 + * 返回常量的方法 + * 返回 `self` 的方法 + * 直接返回某个参数的方法 +* 为更多运行时方法生成专用代码 +* 优化 `String#getbyte`, `String#setbyte` 等字符串方法 +* 优化位运算,加速低级 位/字节 操作 +* 各种其他增量优化 + +## 核心类更新 + +注意:我们只列出了重要的类更新。 + +* Exception + + * Exception#set_backtrace 现在接受 `Thread::Backtrace::Location` 数组。 + `Kernel#raise`,`Thread#raise` 和 `Fiber#raise` 也接受这个新格式。 [[Feature #13557]] + +* Range + + * 当 range 不可枚举时,Range#size 将抛出 TypeError。 [[Misc #18984]] + + +## 兼容性问题 + +注意:不包括问题补丁。 + +* 修改了错误信息和错误栈的显示。 + * 使用单引号(`'`)代替反勾号(`` ` ``)作为错误消息的起始引号。 [[Feature #16495]] + * 在方法名前显示类名(仅当类具有永久名称时)。 [[Feature #19117]] + * `Kernel#caller`,`Thread::Backtrace::Location` 等的方法也进行了相应更改。 + + ``` + 此前: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + 现在: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + +## C API 更新 + +* 移除 `rb_newobj` 和 `rb_newobj_of` (以及相关的宏 `RB_NEWOBJ`,`RB_NEWOBJ_OF`,`NEWOBJ`,`NEWOBJ_OF`)。 [[Feature #20265]] +* 移除废除的函数 `rb_gc_force_recycle`。 [[Feature #18290]] + +## 其他变化 + +* 如果传递了一个块给不使用块的方法时,在详细模式(`-w`)中将显示警告。 [[Feature #15554]] + +* Ruby 对一些核心方法通过解释器和 JIT 进行了优化,诸如 `String.freeze`,`Integer#+`。 + 当这些方法被重定义时,解释器将发出性能警告(`-W:performance` 或 `Warning[:performance] = true`)。 [[Feature #20429]] + +有关默认 gems 和 绑定 gems 的细节,可以参考 GitHub 上的发布,例如 [logger gem](https://github.com/ruby/logger/releases) 或相应的变更日志。 +或 [提交日志](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})。 + +自 Ruby 3.3.0 以来,这些变化共导致 [{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+),删除 {{ release.stats.deletions }} 行(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)! + + +## 下载 + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Ruby 是什么 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发,现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是 Web 开发领域。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 From 7fb2fd2fd2a4b91f1c45742c4cf9291907118a73 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Wed, 25 Dec 2024 15:35:01 +0900 Subject: [PATCH 471/607] Ruby 3.4.0 Released (#3442) --- _data/branches.yml | 4 +- _data/downloads.yml | 2 +- _data/releases.yml | 29 ++ .../_posts/2024-12-25-ruby-3-4-0-released.md | 345 ++++++++++++++++++ .../_posts/2024-12-25-ruby-3-4-0-released.md | 314 ++++++++++++++++ 5 files changed, 691 insertions(+), 3 deletions(-) create mode 100644 en/news/_posts/2024-12-25-ruby-3-4-0-released.md create mode 100644 ja/news/_posts/2024-12-25-ruby-3-4-0-released.md diff --git a/_data/branches.yml b/_data/branches.yml index 98aea5868d..864193a135 100644 --- a/_data/branches.yml +++ b/_data/branches.yml @@ -9,8 +9,8 @@ # eol_date: date of EOL (YYYY-MM-DD) - name: 3.4 - status: preview - date: + status: normal maintenance + date: 2024-12-25 eol_date: - name: 3.3 diff --git a/_data/downloads.yml b/_data/downloads.yml index 1d4cdf7edd..509c63fdf1 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,10 +4,10 @@ # optional preview: - - 3.4.0-rc1 stable: + - 3.4.0 - 3.3.6 - 3.2.6 diff --git a/_data/releases.yml b/_data/releases.yml index a6eb1d3601..cfa94406fb 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,35 @@ # 3.4 series +- version: 3.4.0 + date: 2024-12-25 + post: /en/news/2024/12/25/ruby-3-4-0-released/ + tag: v3_4_0 + stats: + files_changed: 4942 + insertions: 202244 + deletions: 255528 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0.tar.xz + size: + gz: 23153022 + zip: 28310193 + xz: 17215572 + sha1: + gz: 8ccb561848a7c460ae08e1a120a47c4a88a79335 + zip: 26254ca5d3decc28a4e5faec255995265e5270b5 + xz: eb25447cc404e8d2e177c62550d0224ebd410e68 + sha256: + gz: 068c8523442174bd3400e786f4a6952352c82b1b9f6210fd17fb4823086d3379 + zip: c120228038af04554f6363e716b0a32cbf53cf63c6adf9f2c22a24f43dc8b555 + xz: 0081930db22121eb997207f56c0e22720d4f5d21264b5907693f516c32f233ca + sha512: + gz: bc70ecba27d1cdea00879f03487cad137a7d9ab2ad376cfb7a65780ad14da637fa3944eeeede2c04ab31eeafb970c64ccfeeb854c99c1093937ecc1165731562 + zip: 4d535ed10db76a6aa74f8a025df319deb28483a7a781c24045906ee7663f1cff9d9f9e71dbc993c9e050113a34b37c7fa2143c355a0a6e1e1029bf2c92213ecc + xz: 776a2cf3e9ccc77c27500240f168aa3e996b0c7c1ee1ef5a7afc291a06c118444016fde38b5b139c0b800496b8eb1b5456562d833f0edc0658917164763b1af7 + - version: 3.4.0-rc1 date: 2024-12-12 post: /en/news/2024/12/12/ruby-3-4-0-rc1-released/ diff --git a/en/news/_posts/2024-12-25-ruby-3-4-0-released.md b/en/news/_posts/2024-12-25-ruby-3-4-0-released.md new file mode 100644 index 0000000000..a92cf18257 --- /dev/null +++ b/en/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -0,0 +1,345 @@ +--- +layout: news_post +title: "Ruby 3.4.0 Released" +author: "naruse" +translator: +date: 2024-12-25 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.4.0" | first %} +We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.4 adds `it` block parameter reference, +change Prism as default parser, adds Happy Eyeballs Version 2 support to socket library, improves YJIT, +adds Modular GC, and so on. + +## `it` is introduced + +`it` is added to reference a block parameter with no variable name. [[Feature #18980]] + +```ruby +ary = ["foo", "bar", "baz"] + +p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"] +``` + +`it` very much behaves the same as `_1`. When the intention is to only use `_1` in a block, the potential for other numbered parameters such as `_2` to also appear imposes an extra cognitive load onto readers. So `it` was introduced as a handy alias. Use `it` in simple cases where `it` speaks for itself, such as in one-line blocks. + +## Prism is now the default parser + +Switch the default parser from parse.y to Prism. [[Feature #20564]] + +This is an internal improvement and there should be little change visible to the user. If you notice any compatibility issues, please report them to us. + +To use the conventional parser, use the command-line argument `--parser=parse.y`. + +## The socket library now features Happy Eyeballs Version 2 (RFC 8305) + +The socket library now features [Happy Eyeballs Version 2 (RFC 8305)](https://datatracker.ietf.org/doc/html/rfc8305), the latest standardized version of a widely adopted approach for better connectivity in many programming languages, in `TCPSocket.new` (`TCPSocket.open`) and `Socket.tcp`. +This improvement enables Ruby to provide efficient and reliable network connections, adapted to modern internet environments. + +Until Ruby 3.3, these methods performed name resolution and connection attempts serially. With this algorithm, they now operate as follows: + +1. Performs IPv6 and IPv4 name resolution concurrently +2. Attempt connections to the resolved IP addresses, prioritizing IPv6, with parallel attempts staggered at 250ms intervals +3. Return the first successful connection while canceling any others + +This ensures minimized connection delays, even if a specific protocol or IP address is delayed or unavailable. +This feature is enabled by default, so additional configuration is not required to use it. To disable it globally, set the environment variable `RUBY_TCP_NO_FAST_FALLBACK=1` or call `Socket.tcp_fast_fallback=false`. Or to disable it on a per-method basis, use the keyword argument `fast_fallback: false`. + +## YJIT + +### TL;DR + +* Better performance across most benchmarks on both x86-64 and arm64 platforms. +* Reduced memory usage through compressed metadata and a unified memory limit. +* Various bug fixes: YJIT is now more robust and thoroughly tested. + +### New features + +* Command-line options + * `--yjit-mem-size` introduces a unified memory limit (default 128MiB) to track total YJIT memory usage, + providing a more intuitive alternative to the old `--yjit-exec-mem-size` option. + * `--yjit-log` enables a compilation log to track what gets compiled. +* Ruby API + * `RubyVM::YJIT.log` provides access to the tail of the compilation log at run-time. +* YJIT stats + * `RubyVM::YJIT.runtime_stats` now always provides additional statistics on + invalidation, inlining, and metadata encoding. + +### New optimizations + +* Compressed context reduces memory needed to store YJIT metadata +* Allocate registers for local variables and Ruby method arguments +* When YJIT is enabled, use more Core primitives written in Ruby: + * `Array#each`, `Array#select`, `Array#map` rewritten in Ruby for better performance [[Feature #20182]]. +* Ability to inline small/trivial methods such as: + * Empty methods + * Methods returning a constant + * Methods returning `self` + * Methods directly returning an argument +* Specialized codegen for many more runtime methods +* Optimize `String#getbyte`, `String#setbyte` and other string methods +* Optimize bitwise operations to speed up low-level bit/byte manipulation +* Support shareable constants in multi-ractor mode +* Various other incremental optimizations + +## Modular GC + +* Alternative garbage collector (GC) implementations can be loaded dynamically + through the modular garbage collector feature. To enable this feature, + configure Ruby with `--with-modular-gc` at build time. GC libraries can be + loaded at runtime using the environment variable `RUBY_GC_LIBRARY`. + [[Feature #20351]] + +* Ruby's built-in garbage collector has been split into a separate file at + `gc/default/default.c` and interacts with Ruby using an API defined in + `gc/gc_impl.h`. The built-in garbage collector can now also be built as a + library using `make modular-gc MODULAR_GC=default` and enabled using the + environment variable `RUBY_GC_LIBRARY=default`. [[Feature #20470]] + +* An experimental GC library is provided based on [MMTk](https://www.mmtk.io/). + This GC library can be built using `make modular-gc MODULAR_GC=mmtk` and + enabled using the environment variable `RUBY_GC_LIBRARY=mmtk`. This requires + the Rust toolchain on the build machine. [[Feature #20860]] + +## Language changes + +* String literals in files without a `frozen_string_literal` comment now emit a deprecation warning + when they are mutated. + These warnings can be enabled with `-W:deprecated` or by setting `Warning[:deprecated] = true`. + To disable this change, you can run Ruby with the `--disable-frozen-string-literal` + command line argument. [[Feature #20205]] + +* Keyword splatting `nil` when calling methods is now supported. + `**nil` is treated similarly to `**{}`, passing no keywords, + and not calling any conversion methods. [[Bug #20064]] + +* Block passing is no longer allowed in index. [[Bug #19918]] + +* Keyword arguments are no longer allowed in index. [[Bug #20218]] + +* The toplevel name `::Ruby` is reserved now, and the definition will be warned when `Warning[:deprecated]`. [[Feature #20884]] + +## Core classes updates + +Note: We're only listing notable updates of Core class. + +* Exception + + * `Exception#set_backtrace` now accepts an array of `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` and `Fiber#raise` also accept this new format. [[Feature #13557]] + +* GC + + * `GC.config` added to allow setting configuration variables on the Garbage + Collector. [[Feature #20443]] + + * GC configuration parameter `rgengc_allow_full_mark` introduced. When `false` + GC will only mark young objects. Default is `true`. [[Feature #20443]] + +* Ractor + + * `require` in Ractor is allowed. The requiring process will be run on + the main Ractor. + `Ractor._require(feature)` is added to run requiring process on the + main Ractor. + [[Feature #20627]] + + * `Ractor.main?` is added. [[Feature #20627]] + + * `Ractor.[]` and `Ractor.[]=` are added to access the ractor local storage + of the current Ractor. [[Feature #20715]] + + * `Ractor.store_if_absent(key){ init }` is added to initialize ractor local + variables in thread-safty. [[Feature #20875]] + +* Range + + * `Range#size` now raises `TypeError` if the range is not iterable. [[Misc #18984]] + + +## Standard Library updates + +Note: We're only listing notable updates of Standard librarires. + +* RubyGems + * Add `--attestation` option to gem push. It enabled to store signature to [sigstore.dev] + +* Bundler + * Add a `lockfile_checksums` configuration to include checksums in fresh lockfiles + * Add bundle lock `--add-checksums` to add checksums to an existing lockfile + +* JSON + + * Performance improvements of `JSON.parse` about 1.5 times faster than json-2.7.x. + +* Tempfile + + * The keyword argument `anonymous: true` is implemented for Tempfile.create. + `Tempfile.create(anonymous: true)` removes the created temporary file immediately. + So applications don't need to remove the file. + [[Feature #20497]] + +* win32/sspi.rb + + * This library is now extracted from the Ruby repository to [ruby/net-http-sspi]. + [[Feature #20775]] + +## Compatibility issues + +Note: Excluding feature bug fixes. + +* Error messages and backtrace displays have been changed. + * Use a single quote instead of a backtick as a opening quote. [[Feature #16495]] + * Display a class name before a method name (only when the class has a permanent name). [[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location`'s methods, etc. are also changed accordingly. + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +* Hash#inspect rendering have been changed. [[Bug #20433]] + + * Symbol keys are displayed using the modern symbol key syntax: `"{user: 1}"` + * Other keys now have spaces around `=>`: `'{"user" => 1}'`, while previously they didn't: `'{"user"=>1}'` + +* Kernel#Float() now accepts a decimal string with decimal part omitted. [[Feature #20705]] + + ```rb + Float("1.") #=> 1.0 (previously, an ArgumentError was raised) + Float("1.E-1") #=> 0.1 (previously, an ArgumentError was raised) + ``` + +* String#to_f now accepts a decimal string with decimal part omitted. Note that the result changes when an exponent is specified. [[Feature #20705]] + + ```rb + "1.".to_f #=> 1.0 + "1.E-1".to_f #=> 0.1 (previously, 1.0 was returned) + ``` + +* Refinement#refined_class has been removed. [[Feature #19714]] + +## Standard library compatibility issues + +* DidYouMean + + * `DidYouMean::SPELL_CHECKERS[]=` and `DidYouMean::SPELL_CHECKERS.merge!` are removed. + +* Net::HTTP + + * Removed the following deprecated constants: + * `Net::HTTP::ProxyMod` + * `Net::NetPrivate::HTTPRequest` + * `Net::HTTPInformationCode` + * `Net::HTTPSuccessCode` + * `Net::HTTPRedirectionCode` + * `Net::HTTPRetriableCode` + * `Net::HTTPClientErrorCode` + * `Net::HTTPFatalErrorCode` + * `Net::HTTPServerErrorCode` + * `Net::HTTPResponseReceiver` + * `Net::HTTPResponceReceiver` + + These constants were deprecated from 2012. + +* Timeout + + * Reject negative values for Timeout.timeout. [[Bug #20795]] + +* URI + + * Switched default parser to RFC 3986 compliant from RFC 2396 compliant. + [[Bug #19266]] + +## C API updates + +* `rb_newobj` and `rb_newobj_of` (and corresponding macros `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) have been removed. [[Feature #20265]] +* Removed deprecated function `rb_gc_force_recycle`. [[Feature #18290]] + +## Miscellaneous changes + +* Passing a block to a method which doesn't use the passed block will show + a warning on verbose mode (`-w`). + [[Feature #15554]] + +* Redefining some core methods that are specially optimized by the interpeter + and JIT like `String.freeze` or `Integer#+` now emits a performance class + warning (`-W:performance` or `Warning[:performance] = true`). + [[Feature #20429]] + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +since Ruby 3.3.0! + +Merry Christmas, Happy Holidays, and enjoy programming with Ruby 3.4! + +## Download + +* <{{ 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 + +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. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19266]: https://bugs.ruby-lang.org/issues/19266 +[Feature #19714]: https://bugs.ruby-lang.org/issues/19714 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20443]: https://bugs.ruby-lang.org/issues/20443 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20497]: https://bugs.ruby-lang.org/issues/20497 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20620]: https://bugs.ruby-lang.org/issues/20620 +[Feature #20627]: https://bugs.ruby-lang.org/issues/20627 +[Feature #20705]: https://bugs.ruby-lang.org/issues/20705 +[Feature #20715]: https://bugs.ruby-lang.org/issues/20715 +[Feature #20775]: https://bugs.ruby-lang.org/issues/20775 +[Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 +[Feature #20875]: https://bugs.ruby-lang.org/issues/20875 +[Feature #20884]: https://bugs.ruby-lang.org/issues/20884 +[sigstore.dev]: sigstore.dev +[ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi diff --git a/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md b/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md new file mode 100644 index 0000000000..32f50a690c --- /dev/null +++ b/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -0,0 +1,314 @@ +--- +layout: news_post +title: "Ruby 3.4.0 リリース" +author: "naruse" +translator: +date: 2024-12-25 00:00:00 +0000 +lang: ja +--- + +{% assign release = site.data.releases | where: "version", "3.4.0" | first %} +Ruby {{ release.version }} が公開されました。Ruby 3.4では、ブロックパラメータ参照の `it` の追加、 +デフォルトパーサーのPrismへの変更、Socket ライブラリの Happy Eyeballs Version 2 (RFC 8305) 対応、YJITの改善、 +Modular GCの導入など様々な改善が行われています。 + +## `it` の追加 + +ブロックパラメータに名前をつけずに参照する `it` が追加されました。 [[Feature #18980]] + +```ruby +ary = ["foo", "bar", "baz"] + +p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"] +``` + +`it` は `_1` とほとんど同じように動作します。ブロック内で `_1` のみを使用する意図がある場合に `_1` を使うと、`_2` や `_3` などの他の番号付きパラメータが現れる可能性が示唆され、認知的負荷が高い問題がありました。そのため、`it` は便利なエイリアスとして導入されました。一行ブロックなど、`it`の意味が一目でわかる簡単なケースにご利用ください。 + +## デフォルトのパーサをPrismに変更 + +デフォルトで使用するパーサーを parse.y から生成するパーサーから Prism へと変更しました。 [[Feature #20564]] + +これは内部的な改善であり、ユーザーにはほとんど変化が見られないはずです。互換性の問題にお気づきの場合は、ご報告ください。 + +従来のパーサーを使用するにはコマンドライン引数 `--parser=parse.y` を使用してください。 + +## Socket ライブラリの Happy Eyeballs Version 2 (RFC 8305) 対応 + +Socket ライブラリの `TCPSocket.new` (`TCPSocket.open`) と `Socket.tcp` が多数のプログラミング言語で、より良いネットワーク接続の方法として広く標準採用されている [Happy Eyeballs Version 2 (RFC 8305)](https://datatracker.ietf.org/doc/html/rfc8305) に対応しました。この改善により、Ruby は IPv6 と IPv4 が混在するような最新のインターネット環境においても、効率的で信頼性の高いネットワーク接続が可能となりました。 + +Ruby 3.3 までは上記の2つのメソッドは名前解決と接続試行をシリアルに実行していました。Happy Eyeballs Version 2 のアルゴリズムでは以下のように実行します。 + +1. IPv6とIPv4の名前解決を同時実行する。 +2. 解決されたIPアドレスへの接続を、IPv6を優先して、250ミリ秒間隔で並行して試みる。 +3. 最初に成功した接続を返し、他の接続はキャンセルする。 + +このアルゴリズムによって、特定のプロトコルや IP アドレスが遅延したり利用できない場合でも、接続遅延を最小限に抑えることが可能となります。 + +この機能は標準で有効になるため、追加の設定は必要ありません。Ruby 全体で無効にしたい場合は環境変数として `RUBY_TCP_NO_FAST_FALLBACK=1` を設定するか、`Socket.tcp_fast_fallback=false` を Ruby プログラムの中で呼び出してください。またはメソッド単位で無効化する場合、`TCPSocket.new` (`TCPSocket.open`) と `Socket.tcp` のキーワード引数として `fast_fallback: false` を利用してください。 + +## YJIT + +### TL;DR + +* x86-64 と arm64 の両方のプラットフォームにおいて、ほとんどのベンチマークのパフォーマンスが向上しました。 +* メタデータの圧縮と統一的なメモリ使用量制限によりメモリ使用量を削減しました。 +* 様々な不具合修正: YJIT はより堅牢になり、より多くの環境でテストされました。 + +### 新機能 + +* コマンドラインオプション + * `--yjit-mem-size` による統一的なメモリ制限が指定可能になりました(デフォルトは 128MiB)。 + このオプションはすべての YJIT のメモリ使用量を監視し、従来の `--yjit-exec-mem-size` オプションよりも直感的に使用できます。 + * `--yjit-log` オプションを用いて、コンパイルログを監視できるようになりました。 +* Ruby API + * `RubyVM::YJIT.log` を用いてコンパイルログの末尾を取得することができるようになりました。 +* YJIT の統計情報 + * `RubyVM::YJIT.runtime_stats` からインバリデーション、インライン化、メタデータエンコーディングに関する追加の統計情報をいつでも取得できるようになりました。 + +### 新しい最適化 + +* コンテキストの圧縮化により YJIT のメタデータ保管に必要なメモリを削減しました。 +* ローカル変数やRubyのメソッドの引数のためにレジスタを割り当てるようになりました。 +* YJIT が有効な場合に Ruby で実装されたコアクラスを使うようになりました。 + * Ruby で書き直された `Array#each`, `Array#select`, `Array#map` はより良いパフォーマンスを提供します。 [[Feature #20182]]. +* 以下のような小さいメソッドをインライン化できるようになりました: + * 空メソッド + * 定数を返すメソッド + * `self` を返すメソッド + * 引数を直接返すメソッド +* 組み込みメソッドに特化したコード生成の対象を広げました +* `String#getbyte`, `String#setbyte` など、String のメソッドの最適化を行いました。 +* 低レベルの bit/byte 操作を高速化するためにビット演算を最適化しました +* マルチ Ractor モードにおける定数共有をサポートしました。 +* その他、様々な段階的な最適化を行いました。 + +## Modular GC + +* Modular GC 機能により Ruby 標準とは異なる ガベージ・コレクタ (GC) の実装を動的にロードすることができるようになりました。この機能を使うには Ruby をビルドする時に `--with-modular-gc` を指定してください。GC ライブラリは環境変数 `RUBY_GC_LIBRARY` を用いて Ruby のランタイムにロードすることができます。[[Feature #20351]] + +* Ruby 組み込みのガベージ・コレクタは `gc/default/default.c` ファイルに分割され、 Ruby ランタイムとのやりとりは `gc/gc_impl.h` に定義される API を用いて行われます。組み込みのガベージコレクタは `make modular-gc MODULAR_GC=default` というコマンドを用いてライブラリとしてもビルドすることができ、環境変数として `RUBY_GC_LIBRARY=default` を定義することで有効にすることができます。 [[Feature #20470]] + +* [MMTk](https://www.mmtk.io/) をベースとした実験的な GC ライブラリが提供されました。このライブラリは`make modular-gc MODULAR_GC=mmtk` コマンドによってビルドし、環境変数 `RUBY_GC_LIBRARY=mmtk` によって有効化します。この機能を使うにはビルドを行うマシンに Rust のビルドツールを必要とします。 [[Feature #20860]] + +## 言語機能の変更 + +* マジックコメント `frozen_string_literal` のないファイル中の文字列リテラルは、freeze されているかのように振る舞うようになり、破壊的な変更時に警告を表示するようになりました。これらの警告はコマンドラインオプション `-W:deprecated` か Ruby プログラムで `Warning[:deprecated] = true` を指定すると表示されます。 +これら無効にするにはコマンドラインオプション `--disable-frozen-string-literal` を追加して Ruby を実行してください。 [[Feature #20205]] + +* メソッド呼び出し時の `nil` 展開キーワードがサポートされました。 + `**nil` は `**{}` と同様に扱われ、キーワードは渡せません。 + また、あらゆる変換のためのメソッドも呼ばれません。[[Bug #20064]] + +* インデックスにブロックを渡せなくなりました。[[Bug #19918]] + +* インデックスにキーワード引数を渡せなくなりました。[[Bug #20218]] + +* トップレベルに `::Ruby` を予約しました。 + `Warning[:deprecated]` が有効な場合、既に定義済みの場合は警告されます。[[Feature #20884]] + +## コアクラスのアップデート + +注: 複数のアップデートの中から注目すべきアップデートのみを掲載しています。 + +* Exception + + * `Exception#set_backtrace` は `Thread::Backtrace::Location` の配列を受け取れる様になりました。. + `Kernel#raise`, `Thread#raise` や `Fiber#raise` も同じ配列を受け取れます。[[Feature #13557]] + +* GC + + * `GC.config` がガベージ・コレクタの設定変更を可能とするために追加されました。[[Feature #20443]] + + * GC の設定用のパラメータとして `rgengc_allow_full_mark` が追加されました。このパラメータを `false` + とすると、GC は young オブジェクトのみを GC 用にマークします。デフォルト値は `true` です。 + [[Feature #20443]] + +* Ractor + + * Ractor の中で `require` が可能となりました。この `require` の処理はメインの Ractor で行われます。 + また、メインの Ractor には `require` 処理のために `Ractor._require(feature)` が追加されました。 + [[Feature #20627]] + + * `Ractor.main?` が追加されました。[[Feature #20627]] + + * 現在実行中の Ractor の Ractor ローカルストレージにアクセスするためのメソッドとして `Ractor.[]` and `Ractor.[]=` が追加されました。 [[Feature #20715]] + + * スレッドセーフに Ractor ローカル変数を初期化するためのメソッド `Ractor.store_if_absent(key){ init }` が追加されました。 [[Feature #20875]] + +* Range + + * `Range#size` は範囲オブジェクトが反復可能ではない場合は `TypeError` 例外を出すようになりました。[[Misc #18984]] + + +## 標準ライブラリのアップデート + +注: 複数のアップデートの中から注目すべき標準ライブラリのアップデートのみを掲載しています。 + +* RubyGems + * `gem push` コマンドに `--attestation` オプションが追加されました。このオプションをつけると [sigstore](https://www.sigstore.dev/) に gem の署名情報が保存されます。 + +* Bundler + * ロックファイルの新規作成時に gem の checksum を保存する `lockfile_checksums` オプションが `bundle config` に設定可能になりました。 + * 既存のロックファイルに使用している gem の checksum を付与するためのコマンドとして `bundle lock --add-checksums` が追加されました。 + +* JSON + + * `JSON.parse` が Ruby 3.3 シリーズに添付されている json-2.7.x と比較して 1.5 倍程度高速になりました。 + +* Tempfile + + * `Tempfile.create` に `anonymous: true` キーワードが追加されました。is implemented for . + `Tempfile.create(anonymous: true)` は作成した一時ファイルを即座に削除します。この機能を用いることで、アプリケーションは独自にファイル削除を行う必要がなくなります。 [[Feature #20497]] + +* win32/sspi.rb + + * Windows で SSPI 機能を提供するライブラリは Ruby のリポジトリから [ruby/net-http-sspi] に移動しました。 [[Feature #20775]] + +## 互換性に関する変更 + +注: 不具合修正を除きます。 + +* エラーメッセージとして表示するバックトレースを変更しました。 + * 開始の引用符は backtick の代わりにシングルクォートを用いるようになりました。[[Feature #16495]] + * クラス名が変更しないような場合、メソッド名の前にクラス名を表示するようになりました。[[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location` などのメソッドはそれらに応じて変更されました。 + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +* `Hash#inspect` の表示が変わりました。[[Bug #20433]] + + * Symbol キーはコロンを用いたモダンな表示になりました: `"{user: 1}"` + * 他のキーは従来の `'{"user"=>1}'` とは異なり、 `=>` の前後にスペースを含む表示になりました: `'{"user" => 1}'`。 + +* `Kernel#Float()` は 10 進表記の小数部がなくても受け付けるようになりました。 [[Feature #20705]] + + ```rb + Float("1.") #=> 1.0 (previously, an ArgumentError was raised) + Float("1.E-1") #=> 0.1 (previously, an ArgumentError was raised) + ``` + +* `String#to_f` は 10 進表記の小数部がなくても受け付けるようになりました。指数を指定すると従来とは結果が変わることに注意してください。 [[Feature #20705]] + + ```rb + "1.".to_f #=> 1.0 + "1.E-1".to_f #=> 0.1 (previously, 1.0 was returned) + ``` + +* `Refinement#refined_class` は削除されました。[[Feature #19714]] + +## 標準ライブラリの互換性の変更 + +* DidYouMean + + * `DidYouMean::SPELL_CHECKERS[]=` と `DidYouMean::SPELL_CHECKERS.merge!` は削除されました。 + +* Net::HTTP + + * 2012 年から非推奨とされている以下の定数が削除されました。 + * `Net::HTTP::ProxyMod` + * `Net::NetPrivate::HTTPRequest` + * `Net::HTTPInformationCode` + * `Net::HTTPSuccessCode` + * `Net::HTTPRedirectionCode` + * `Net::HTTPRetriableCode` + * `Net::HTTPClientErrorCode` + * `Net::HTTPFatalErrorCode` + * `Net::HTTPServerErrorCode` + * `Net::HTTPResponseReceiver` + * `Net::HTTPResponceReceiver` + +* Timeout + + * `Timeout.timeout` が負の値を受け付けなくなりました。[[Bug #20795]] + +* URI + + * デフォルトのパーサーが RFC 2396 準拠のものから RFC 3986 準拠のものに変わりました。 [[Bug #19266]] + +## C API のアップデート + +* `rb_newobj` と `rb_newobj_of` (と対応するマクロの `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) は削除されました。 [[Feature #20265]] +* 非推奨とされていた `rb_gc_force_recycle` は削除されました。 [[Feature #18290]] + +## その他の変更点 + +* 渡されたブロックを使用しないメソッドにブロックを渡すと、verboseモード(`-w`) で警告が表示されるようになりました。[[Feature #15554]] + +* `String.freeze` や `Integer#+` のような JIT とインタプリタによって特別に最適化されたメソッドを再定義すると、performance 警告(`-W:performance` または`Warning[:performance] = true` で有効化)が表示されるようになりました。 [[Feature #20429]] + +より詳細な情報は [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +か [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) を参照してください。 + + +これらの変更により、Ruby 3.3.0から [{{ release.stats.files_changed }} ファイルが変更され、 {{ release.stats.insertions }} 行が追加され、 {{ release.stats.deletions }} 行が削除されました!deletions(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) + +メリークリスマス、Ruby 3.4 とともによいお年をお迎えください! + +## Download + +* <{{ 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 + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 + + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19266]: https://bugs.ruby-lang.org/issues/19266 +[Feature #19714]: https://bugs.ruby-lang.org/issues/19714 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20443]: https://bugs.ruby-lang.org/issues/20443 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20497]: https://bugs.ruby-lang.org/issues/20497 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20620]: https://bugs.ruby-lang.org/issues/20620 +[Feature #20627]: https://bugs.ruby-lang.org/issues/20627 +[Feature #20705]: https://bugs.ruby-lang.org/issues/20705 +[Feature #20715]: https://bugs.ruby-lang.org/issues/20715 +[Feature #20775]: https://bugs.ruby-lang.org/issues/20775 +[Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 +[Feature #20875]: https://bugs.ruby-lang.org/issues/20875 +[Feature #20884]: https://bugs.ruby-lang.org/issues/20884 +[sigstore.dev]: sigstore.dev +[ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi From 4c09528e52e66a91bf11b1bdc6547ffb41f5a268 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Wed, 25 Dec 2024 17:29:07 +0900 Subject: [PATCH 472/607] Ruby 3.4.1 Released (#3445) --- _data/downloads.yml | 2 +- _data/releases.yml | 24 ++++++++++++ .../_posts/2024-12-25-ruby-3-4-1-released.md | 39 +++++++++++++++++++ .../_posts/2024-12-25-ruby-3-4-1-released.md | 39 +++++++++++++++++++ 4 files changed, 103 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2024-12-25-ruby-3-4-1-released.md create mode 100644 ja/news/_posts/2024-12-25-ruby-3-4-1-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index 509c63fdf1..090681cb2f 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -7,7 +7,7 @@ preview: stable: - - 3.4.0 + - 3.4.1 - 3.3.6 - 3.2.6 diff --git a/_data/releases.yml b/_data/releases.yml index cfa94406fb..5dccb4a35a 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,30 @@ # 3.4 series +- version: 3.4.1 + date: 2024-12-25 + post: /en/news/2024/12/25/ruby-3-4-1-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.1.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.1.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.1.tar.xz + size: + gz: 23152739 + zip: 28310267 + xz: 17222800 + sha1: + gz: dc42fe22bcdfbd30f63cd93296d893c53b1dadcc + zip: a7145041a0178f2423dbad5d1dd67ba0862b9ee7 + xz: 61783f85c57da9f05201e491029889d71742a83f + sha256: + gz: 3d385e5d22d368b064c817a13ed8e3cc3f71a7705d7ed1bae78013c33aa7c87f + zip: a0c62089fb75c47e392bc96778dd76bd7ad1baa40a7ed040372c805de20bccc8 + xz: 018d59ffb52be3c0a6d847e22d3fd7a2c52d0ddfee249d3517a0c8c6dbfa70af + sha512: + gz: 93acc262e3b7cf86aeddebdad5b8938c187b9c44a73b0c252b6f873745964001459ae45ece7376745916e317c24895596a42b4544e836670fc6e90058e6f0de4 + zip: 4f96c56b0a26c0d4d554cf47764f4acdc2e59545da0b85fe4d5235a17d26ac47f0c609af66099173056e3405849a9f847c32e7aaaa3a057c7d46007968aa4c73 + xz: 8d2e34117696f9debf463ae1eed288fdbb5c1a12e32800e901b69218e3b7302a0066052077e2ebca851e3a635296199bd5a10437eea1d6f787f69a77bb865680 + - version: 3.4.0 date: 2024-12-25 post: /en/news/2024/12/25/ruby-3-4-0-released/ diff --git a/en/news/_posts/2024-12-25-ruby-3-4-1-released.md b/en/news/_posts/2024-12-25-ruby-3-4-1-released.md new file mode 100644 index 0000000000..c14a009f57 --- /dev/null +++ b/en/news/_posts/2024-12-25-ruby-3-4-1-released.md @@ -0,0 +1,39 @@ +--- +layout: news_post +title: "Ruby 3.4.1 Released" +author: "naruse" +translator: +date: 2024-12-25 10:00:00 +0000 +lang: en +--- + +Ruby 3.4.1 has been released. + +This fixes the version description. + +See the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_4_1) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.4.1" | first %} + +* <{{ 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/ja/news/_posts/2024-12-25-ruby-3-4-1-released.md b/ja/news/_posts/2024-12-25-ruby-3-4-1-released.md new file mode 100644 index 0000000000..2ec93cbb89 --- /dev/null +++ b/ja/news/_posts/2024-12-25-ruby-3-4-1-released.md @@ -0,0 +1,39 @@ +--- +layout: news_post +title: "Ruby 3.4.1 リリース" +author: "naruse" +translator: +date: 2024-12-25 00:00:00 +0000 +lang: ja +--- + +Ruby 3.4.1 がリリースされました。 + +このリリースではバージョン表記を修正しています。 + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_4_1) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.4.1" | first %} + +* <{{ 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 ced8733207718d383eacb62fabddc2a8c448a32b Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Wed, 25 Dec 2024 17:35:51 +0900 Subject: [PATCH 473/607] fix date --- en/news/_posts/2024-12-25-ruby-3-4-1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-12-25-ruby-3-4-1-released.md b/en/news/_posts/2024-12-25-ruby-3-4-1-released.md index c14a009f57..92b6f4a18c 100644 --- a/en/news/_posts/2024-12-25-ruby-3-4-1-released.md +++ b/en/news/_posts/2024-12-25-ruby-3-4-1-released.md @@ -3,7 +3,7 @@ layout: news_post title: "Ruby 3.4.1 Released" author: "naruse" translator: -date: 2024-12-25 10:00:00 +0000 +date: 2024-12-25 00:00:00 +0000 lang: en --- From 88a606e9d22e5ff51c55a07f3cd9ac2eaacdc323 Mon Sep 17 00:00:00 2001 From: mitsubosh Date: Wed, 25 Dec 2024 20:59:01 +0900 Subject: [PATCH 474/607] Remove needless english words from Tempfile explanation in ja --- ja/news/_posts/2024-12-25-ruby-3-4-0-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md b/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md index 32f50a690c..4513284779 100644 --- a/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md +++ b/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -157,7 +157,7 @@ Ruby 3.3 までは上記の2つのメソッドは名前解決と接続試行を * Tempfile - * `Tempfile.create` に `anonymous: true` キーワードが追加されました。is implemented for . + * `Tempfile.create` に `anonymous: true` キーワードが追加されました。 `Tempfile.create(anonymous: true)` は作成した一時ファイルを即座に削除します。この機能を用いることで、アプリケーションは独自にファイル削除を行う必要がなくなります。 [[Feature #20497]] * win32/sspi.rb From bf45cf0719888c58f8b2305a259e024a84116f85 Mon Sep 17 00:00:00 2001 From: Stan Lo Date: Thu, 26 Dec 2024 10:49:13 +0000 Subject: [PATCH 475/607] Use docs.ruby-lang.org for 3.4 release news --- en/news/_posts/2024-12-25-ruby-3-4-0-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2024-12-25-ruby-3-4-0-released.md b/en/news/_posts/2024-12-25-ruby-3-4-0-released.md index a92cf18257..2961df95c9 100644 --- a/en/news/_posts/2024-12-25-ruby-3-4-0-released.md +++ b/en/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -273,7 +273,7 @@ Note: Excluding feature bug fixes. warning (`-W:performance` or `Warning[:performance] = true`). [[Feature #20429]] -See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +See [NEWS](https://docs.ruby-lang.org/en/3.4/NEWS_md.html) or [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) for more details. From e6e39bc5495a930a953083430bc48ef7df55e7ea Mon Sep 17 00:00:00 2001 From: Kazuhiro NISHIYAMA Date: Wed, 25 Dec 2024 18:36:26 +0900 Subject: [PATCH 476/607] Add snapshot-ruby_3_4 --- _data/downloads.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/_data/downloads.yml b/_data/downloads.yml index 090681cb2f..6e8ceeeef2 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -23,6 +23,13 @@ eol: stable_snapshots: + - branch: ruby_3_4 + url: + gz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_4.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_4.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_4.zip + version: '3.4' + - branch: ruby_3_3 url: gz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_3.tar.gz @@ -50,4 +57,4 @@ nightly_snapshot: gz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-master.tar.gz xz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-master.tar.xz zip: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-master.zip - version: '3.4' + version: '3.5' From 610045acf7bf4df1aed58dde4e14ab6704e05cd3 Mon Sep 17 00:00:00 2001 From: Lorenzo Zabot Date: Fri, 27 Dec 2024 10:24:59 +0100 Subject: [PATCH 477/607] Fix typos on English Ruby 3.4.0 release notes --- en/news/_posts/2024-12-25-ruby-3-4-0-released.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/en/news/_posts/2024-12-25-ruby-3-4-0-released.md b/en/news/_posts/2024-12-25-ruby-3-4-0-released.md index 2961df95c9..1a057f439f 100644 --- a/en/news/_posts/2024-12-25-ruby-3-4-0-released.md +++ b/en/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -9,7 +9,7 @@ lang: en {% assign release = site.data.releases | where: "version", "3.4.0" | first %} We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.4 adds `it` block parameter reference, -change Prism as default parser, adds Happy Eyeballs Version 2 support to socket library, improves YJIT, +changes Prism as default parser, adds Happy Eyeballs Version 2 support to socket library, improves YJIT, adds Modular GC, and so on. ## `it` is introduced @@ -160,7 +160,7 @@ Note: We're only listing notable updates of Core class. ## Standard Library updates -Note: We're only listing notable updates of Standard librarires. +Note: We're only listing notable updates of Standard libraries. * RubyGems * Add `--attestation` option to gem push. It enabled to store signature to [sigstore.dev] @@ -268,7 +268,7 @@ Note: Excluding feature bug fixes. a warning on verbose mode (`-w`). [[Feature #15554]] -* Redefining some core methods that are specially optimized by the interpeter +* Redefining some core methods that are specially optimized by the interpreter and JIT like `String.freeze` or `Integer#+` now emits a performance class warning (`-W:performance` or `Warning[:performance] = true`). [[Feature #20429]] From c425ba338aa923c1bd3dd7f1cf1caaf277e34a13 Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 27 Dec 2024 20:15:55 +0900 Subject: [PATCH 478/607] Translate "Ruby 3.4.0 released" (ko) (#3443) Co-authored-by: Chayoung You --- .../_posts/2024-12-25-ruby-3-4-0-released.md | 344 ++++++++++++++++++ 1 file changed, 344 insertions(+) create mode 100644 ko/news/_posts/2024-12-25-ruby-3-4-0-released.md diff --git a/ko/news/_posts/2024-12-25-ruby-3-4-0-released.md b/ko/news/_posts/2024-12-25-ruby-3-4-0-released.md new file mode 100644 index 0000000000..b1125bdfc9 --- /dev/null +++ b/ko/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -0,0 +1,344 @@ +--- +layout: news_post +title: "Ruby 3.4.0 릴리스" +author: "naruse" +translator: "shia" +date: 2024-12-25 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.4.0" | first %} +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. +Ruby 3.4는 `it` 블록 파라미터 참조, Prism을 기본 파서로 변경, 소켓 라이브러리에 +Happy Eyeballs Version 2 지원 추가, YJIT 개선, 모듈러 GC 추가 등을 포함하고 있습니다. + +## `it` 추가 + +`it`은 변수 이름 없이 블록 파라미터를 참조하기 위해 추가되었습니다. [[Feature #18980]] + +```ruby +ary = ["foo", "bar", "baz"] + +p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"] +``` + +`it`은 `_1`과 거의 동일하게 동작합니다. 블록에서 `_1`만 사용할 때 다른 번호 파라미터인 `_2` 등이 나타날 가능성이 읽는 사람에게 추가적인 인지 부담을 주게 됩니다. 따라서 `it`은 편리한 별칭으로 추가되었습니다. `it`은 `it` 자체로 충분히 명확한 경우에 사용하세요. 예를 들어, 한 줄짜리 블록에서 사용하세요. + +## 기본 파서를 Prism으로 변경 + +parse.y에서 Prism으로 기본 파서를 변경했습니다. [[Feature #20564]] + +이는 내부적인 개선이며 사용자에게는 거의 변화가 없어야 합니다. 호환성 문제가 발생하면 보고해 주세요. + +기존 파서를 사용하려면 `--parser=parse.y` 커맨드 라인 인수를 사용하세요. + +## 소켓 라이브러리가 Happy Eyeballs Version 2 (RFC 8305) 대응 + +소켓 라이브러리는 이제 [Happy Eyeballs Version 2(RFC 8305)](https://datatracker.ietf.org/doc/html/rfc8305)를 지원합니다. 이는 `TCPSocket.new`(`TCPSocket.open`)와 `Socket.tcp`에서 네트워크 연결을 효율적이고 안정적으로 제공하기 위해 많은 언어에서 널리 사용되는 방법의 최신 표준화 버전입니다. +이 개선 사항은 Ruby가 현대적인 인터넷 환경에 적응된 효율적이고 신뢰할 수 있는 네트워크 연결을 제공할 수 있도록 합니다. + +Ruby 3.3까지 이러한 메서드는 이름 해석과 연결 시도를 직렬로 수행했습니다. 해당 알고리즘 도입으로 이제 다음과 같이 작동합니다. + +1. IPv6와 IPv4 이름 해석을 동시에 수행 +2. IPv6를 우선하며 병렬로 연결을 시도하되 250ms 간격으로 떨어뜨려 시도 +3. 성공한 연결을 반환하고 다른 연결을 취소 + +이는 특정 프로토콜이나 IP 주소가 지연되거나 사용할 수 없는 경우에도 연결 지연을 최소화합니다. +이 기능은 기본적으로 활성화되어 있으므로 추가 구성은 필요하지 않습니다. 전역으로 비활성화하려면 환경 변수 `RUBY_TCP_NO_FAST_FALLBACK=1`을 설정하거나 `Socket.tcp_fast_fallback=false`를 호출하세요. 또는 메서드별로 비활성화하려면 키워드 인수 `fast_fallback: false`를 사용하세요. + +## YJIT + +### TL;DR + +* x86-64와 arm64 플랫폼에서 대부분의 벤치마크에서 성능이 향상되었습니다. +* 메타 데이터 압축과 통합 메모리 제한을 통해 메모리 사용량이 줄었습니다. +* 여러 버그가 수정되었습니다. YJIT는 이제 더 견고하고 잘 테스트되었습니다. + +### 새 기능 + +* 커맨드 라인 옵션 + * `--yjit-mem-size` 커맨드 라인 옵션(기본값 128MiB)을 통해 YJIT의 통합 메모리 제한을 추가했습니다. + 이는 이전 `--yjit-exec-mem-size`보다 직관적이며, YJIT의 전체 메모리 사용량을 추적합니다. + * `--yjit-log`를 통해 무엇이 컴파일되었는지 추적하는 컴파일 로그를 추가했습니다. +* Ruby API + * `RubyVM::YJIT.log`로 런타임에서 컴파일 로그의 마지막 부분을 확인할 수 있습니다. +* YJIT 통계 정보 + * `RubyVM::YJIT.runtime_stats`는 이제 언제나 무효화, 인라인, 메타 정보 인코딩에 대한 + 추가 통계 정보를 제공합니다. + +### 새 최적화 + +* YJIT 메타 데이터를 저장하는 데 필요한 메모리를 줄이는 콘텍스트 압축 +* 로컬 변수와 Ruby 메서드 인수를 위한 레지스터를 할당합니다. +* YJIT을 사용할 때 Ruby로 작성된 더 많은 코어 프리미티브를 사용합니다. + * 성능을 높이기 위해 Ruby로 다시 작성된 `Array#each`, `Array#select`, `Array#map` [[Feature #20182]] +* 작고 사소한 메서드를 인라인으로 변환하는 능력 + * 빈 메서드 + * 상수를 반환하는 메서드 + * `self`를 반환하는 메서드 + * 인수를 직접 반환하는 메서드 +* 더 많은 런타임 메서드에 대한 특별한 코드 생성 +* `String#getbyte`, `String#setbyte` 및 다른 문자열 메서드를 최적화 +* 저레벨 비트/바이트 조작을 빠르게 하기 위한 비트 연산 최적화 +* 멀티 Ractor 모드에서 공유 가능한 상수 지원 +* 다양한 다른 점진적 최적화 + +## 모듈러 GC + +* 다른 가비지 컬렉터(GC) 구현을 모듈러 가비지 컬렉터 기능을 통해 동적으로 + 로드할 수 있습니다. 이 기능을 활성화하려면 Ruby 빌드 시에 + `--with-modular-gc`를 설정하세요. GC 라이브러리는 환경 변수 `RUBY_GC_LIBRARY`를 + 사용하여 런타임에 로드할 수 있습니다. + [[Feature #20351]] + +* Ruby의 내장 가비지 컬렉터는 `gc/default/default.c`에 분리되어 있으며, + `gc/gc_impl.h`에 정의된 API를 사용하여 Ruby와 상호 작용합니다. + 내장 가비지 컬렉터는 `make modular-gc MODULAR_GC=default`를 사용하여 + 라이브러리로서 빌드하고 환경 변수 `RUBY_GC_LIBRARY=default`를 + 사용하여 활성화할 수 있습니다. [[Feature #20470]] + +* [MMTk](https://www.mmtk.io/)를 기반으로 한 실험적인 GC 라이브러리가 제공됩니다. + 이 GC 라이브러리는 `make modular-gc MODULAR_GC=mmtk`를 사용하여 빌드하고 + 환경 변수 `RUBY_GC_LIBRARY=mmtk`를 사용하여 활성화할 수 있습니다. + 이는 빌드 머신에 Rust 툴체인이 필요합니다. [[Feature #20860]] + +## 언어 변경 + +* 파일에 `frozen_string_literal` 주석이 없을 때, 문자열 리터럴이 변경되면 + 폐기 예정 경고를 출력합니다. + 이 경고는 `-W:deprecated`나 `Warning[:deprecated] = true` 설정을 통해 활성화할 수 있습니다. + 이 변경을 무효화하고 싶다면 Ruby를 실행할 때 `--disable-frozen-string-literal` + 커맨드 라인 인수를 사용하세요. [[Feature #20205]] + +* 메서드 호출 시에 `nil`에 키워드 스플랫을 지원합니다. + `**nil`은 `**{}`와 비슷하게 동작하며, 키워드를 넘기지 않으며, + 어떤 변환 메서드도 호출하지 않습니다. [[Bug #20064]] + +* 블록을 인덱스로 사용할 수 없게 됩니다. [[Bug #19918]] + +* 키워드 인수를 인덱스로 사용할 수 없게 됩니다. [[Bug #20218]] + +* 최상위 이름 `::Ruby`은 예약되었으며, 이를 정의할 경우 `Warning[:deprecated]`가 발생합니다. [[Feature #20884]] + +## 코어 클래스 변경 + +주의: 눈에 띄는 코어 클래스 변경만을 포함합니다. + +* Exception + + * `Exception#set_backtrace`는 이제 `Thread::Backtrace::Location`의 배열을 입력으로 받을 수 있습니다. + `Kernel#raise`, `Thread#raise`와 `Fiber#raise`도 같은 형식의 입력을 받습니다. [[Feature #13557]] + +* GC + + * `GC.config`가 추가되어 가비지 컬렉터(GC)의 설정을 변경할 수 있습니다. + [[Feature #20443]] + + * GC 설정 파라미터 `rgengc_allow_full_mark`가 추가되었습니다. `false`일 때 + GC는 젊은 객체만 마킹합니다. 기본값은 `true`입니다. [[Feature #20443]] + +* Ractor + + * Ractor 내부에서 `require`가 허용됩니다. 해당 처리는 주 Ractor에서 + 실행됩니다. 불러오는 처리를 주 Ractor에서 실행하는 + `Ractor._require(feature)`가 추가되었습니다. + [[Feature #20627]] + + * `Ractor.main?`이 추가되었습니다. [[Feature #20627]] + + * 현재 Ractor의 Ractor 로컬 저장소에 접근하는 `Ractor.[]`와 `Ractor.[]=`가 추가되었습니다. + [[Feature #20715]] + + * Ractor 로컬 변수를 스레드 안전하게 초기화하는 `Ractor.store_if_absent(key){ init }`가 + 추가되었습니다. [[Feature #20875]] + +* Range + + * `Range#size`는 이제 범위가 순회 가능하지 않다면 `TypeError`를 던집니다. [[Misc #18984]] + + +## 표준 라이브러리 변경 + +주의: 눈에 띄는 표준 라이브러리 변경만을 포함합니다. + +* RubyGems + * `--attestation` 옵션을 gem push에 추가했습니다. [sigstore.dev]에 서명을 저장할 수 있습니다. + +* Bundler + * 새 lockfile 생성 시에 체크섬을 포함하는 `lockfile_checksums` 설정을 추가합니다. + * 기존 lockfile에 체크섬을 추가하는 `--add-checksums`를 추가합니다. + +* JSON + + * `JSON.parse`의 성능이 json-2.7.x보다 약 1.5배 빨라졌습니다. + +* Tempfile + + * `Tempfile.create`에 `anonymous: true` 키워드 인수가 구현되었습니다. + `Tempfile.create(anonymous: true)`는 즉시 생성된 임시 파일을 제거합니다. + 따라서 애플리케이션에서 파일을 제거할 필요가 없습니다. + [[Feature #20497]] + +* win32/sspi.rb + + * 이 라이브러리는 이제 Ruby 저장소에서 [ruby/net-http-sspi]로 추출되었습니다. + [[Feature #20775]] + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + +* 에러 메시지와 백트레이스의 출력 결과가 변경됩니다. + * 여는 따옴표로 백틱 대신 작은따옴표를 사용합니다. [[Feature #16495]] + * 메서드 이름 앞에 클래스 이름을 출력합니다(클래스가 불변하는 이름을 가지고 있는 경우만). [[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location`의 메서드 등도 마찬가지로 변경됩니다. + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +* `Hash#inspect` 렌더링이 변경되었습니다. [[Bug #20433]] + + * 심볼 키는 최신 심볼 키 구문을 사용하여 표시됩니다. 예시: `"{user: 1}"` + * 다른 키는 `=>` 주변에 공백이 표시됩니다. 예시: `'{"user" => 1}'`. 이전에는 없었습니다. 예시: `'{"user"=>1}'` + +* `Kernel#Float()`는 이제 소수 부분이 생략된 소수 문자열을 허용합니다. [[Feature #20705]] + + ```rb + Float("1.") #=> 1.0 (이전에는 ArgumentError가 발생했습니다) + Float("1.E-1") #=> 0.1 (이전에는 ArgumentError가 발생했습니다) + ``` + +* `String#to_f`는 이제 소수 부분이 생략된 소수 문자열을 허용합니다. 지수가 지정된 경우 결과가 변경됩니다. [[Feature #20705]] + + ```rb + "1.".to_f #=> 1.0 + "1.E-1".to_f #=> 0.1 (이전에는 1.0이 반환되었습니다) + ``` + +* `Refinement#refined_class`가 삭제되었습니다. [[Feature #19714]] + +## 표준 라이브러리 호환성 문제 + +* DidYouMean + + * `DidYouMean::SPELL_CHECKERS[]=`과 `DidYouMean::SPELL_CHECKERS.merge!`가 삭제됩니다. + +* Net::HTTP + + * 폐기 예정이었던 상수가 삭제됩니다. + * `Net::HTTP::ProxyMod` + * `Net::NetPrivate::HTTPRequest` + * `Net::HTTPInformationCode` + * `Net::HTTPSuccessCode` + * `Net::HTTPRedirectionCode` + * `Net::HTTPRetriableCode` + * `Net::HTTPClientErrorCode` + * `Net::HTTPFatalErrorCode` + * `Net::HTTPServerErrorCode` + * `Net::HTTPResponseReceiver` + * `Net::HTTPResponceReceiver` + + 이 상수들은 2012년부터 폐기 예정이었습니다. + +* Timeout + + * `Timeout.timeout`은 음수 값을 거부합니다. [[Bug #20795]] + +* URI + + * 기본 파서를 RFC 2396 호환에서 RFC 3986 호환으로 변경했습니다. + [[Bug #19266]] + +## C API 변경 + +* `rb_newobj`와 `rb_newobj_of`(그리고 대응하는 매크로인 `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`)가 삭제됩니다. [[Feature #20265]] +* 폐기 예정이던 `rb_gc_force_recycle` 함수를 삭제했습니다. [[Feature #18290]] + +## 그 이외의 변경 + +* 상세 모드(`-w`)에서 메서드에 넘긴 블록이 사용되지 않았을 때 + 경고를 출력합니다. + [[Feature #15554]] + +* `String.freeze`나 `Integer#+`처럼 인터프리터와 JIT이 특별히 최적화하는 + 몇몇 코어 메서드를 재정의하면 성능 클래스 + 경고(`-W:performance`나 `Warning[:performance] = true`)를 출력합니다. + [[Feature #20429]] + +더 자세한 내용은 [NEWS](https://docs.ruby-lang.org/en/3.4/NEWS_md.html)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.3.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + +메리 크리스마스, 해피 홀리데이, 그리고 Ruby 3.4와 함께 프로그래밍을 즐겨보세요! + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19266]: https://bugs.ruby-lang.org/issues/19266 +[Feature #19714]: https://bugs.ruby-lang.org/issues/19714 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20443]: https://bugs.ruby-lang.org/issues/20443 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20497]: https://bugs.ruby-lang.org/issues/20497 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20620]: https://bugs.ruby-lang.org/issues/20620 +[Feature #20627]: https://bugs.ruby-lang.org/issues/20627 +[Feature #20705]: https://bugs.ruby-lang.org/issues/20705 +[Feature #20715]: https://bugs.ruby-lang.org/issues/20715 +[Feature #20775]: https://bugs.ruby-lang.org/issues/20775 +[Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 +[Feature #20875]: https://bugs.ruby-lang.org/issues/20875 +[Feature #20884]: https://bugs.ruby-lang.org/issues/20884 +[sigstore.dev]: sigstore.dev +[ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi From 359a6a952fd98ca595c1824033408dabd98a908b Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 27 Dec 2024 20:16:18 +0900 Subject: [PATCH 479/607] Translate "Ruby 3.4.1 released" (ko) (#3446) Co-authored-by: Chayoung You --- .../_posts/2024-12-25-ruby-3-4-1-released.md | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 ko/news/_posts/2024-12-25-ruby-3-4-1-released.md diff --git a/ko/news/_posts/2024-12-25-ruby-3-4-1-released.md b/ko/news/_posts/2024-12-25-ruby-3-4-1-released.md new file mode 100644 index 0000000000..80b09d4ae1 --- /dev/null +++ b/ko/news/_posts/2024-12-25-ruby-3-4-1-released.md @@ -0,0 +1,39 @@ +--- +layout: news_post +title: "Ruby 3.4.1 릴리스" +author: "naruse" +translator: "shia" +date: 2024-12-25 00:00:00 +0000 +lang: ko +--- + +Ruby 3.4.1이 릴리스되었습니다. + +이번 릴리스는 버전 설명을 수정합니다. + +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_4_1)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.4.1" | first %} + +* <{{ 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 2c177eeb972025f00bc45a7203f908f97b2aa3ce Mon Sep 17 00:00:00 2001 From: Thomas Ritter Date: Fri, 27 Dec 2024 13:35:57 +0100 Subject: [PATCH 480/607] Add German version of Ruby 3.4 release announcement --- .../_posts/2024-12-25-ruby-3-4-0-released.md | 318 ++++++++++++++++++ 1 file changed, 318 insertions(+) create mode 100644 de/news/_posts/2024-12-25-ruby-3-4-0-released.md diff --git a/de/news/_posts/2024-12-25-ruby-3-4-0-released.md b/de/news/_posts/2024-12-25-ruby-3-4-0-released.md new file mode 100644 index 0000000000..ad10c2f8e1 --- /dev/null +++ b/de/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -0,0 +1,318 @@ +--- +layout: news_post +title: "Ruby 3.4.0 veröffentlicht" +author: "naruse" +translator: "Thomas Ritter" +date: 2024-12-25 00:00:00 +0000 +lang: de +--- + +{% assign release = site.data.releases | where: "version", "3.4.0" | first %} +Wir freuen uns, die Veröffentlichung von Ruby {{ release.version }} bekannt zu geben. Ruby 3.4 führt den `it`-Blockparameter ein, ändert Prism zum Standardparser, bietet Happy Eyeballs Version 2-Unterstützung in der Socket-Bibliothek, verbessert YJIT, integriert Modular GC und mehr. + +## `it` wird eingeführt + +`it` wurde hinzugefügt, um auf einen Blockparameter ohne Variablennamen zu verweisen. [[Feature #18980]] + +```ruby +ary = ["foo", "bar", "baz"] + +p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"] +``` + +`it` verhält sich weitgehend wie `_1`. Wenn die Absicht besteht, nur `_1` in einem Block zu verwenden, sind andere nummerierte Parameter wie `_2` eine zusätzliche kognitive Belastung für Leser. Daher wurde `it` als praktische Alternative eingeführt. Verwenden Sie `it` in einfachen Fällen, in denen es sich von selbst erklärt, z. B. in Einzeilern. + +## Prism ist jetzt der Standardparser + +Der Standardparser wurde von parse.y auf Prism umgestellt. [[Feature #20564]] + +Dies ist eine interne Verbesserung, und für den Benutzer sollte es kaum sichtbare Änderungen geben. Wenn Sie Kompatibilitätsprobleme bemerken, melden Sie diese bitte. + +Um den konventionellen Parser zu verwenden, nutzen Sie das Kommandozeilenargument `--parser=parse.y`. + +## Die Socket-Bibliothek unterstützt jetzt Happy Eyeballs Version 2 (RFC 8305) + +Die Socket-Bibliothek unterstützt jetzt [Happy Eyeballs Version 2 (RFC 8305)](https://datatracker.ietf.org/doc/html/rfc8305), die neueste standardisierte Version eines weit verbreiteten Ansatzes für bessere Konnektivität in vielen Programmiersprachen, in `TCPSocket.new` (`TCPSocket.open`) und `Socket.tcp`. + +Diese Verbesserung ermöglicht Ruby, effiziente und zuverlässige Netzwerkverbindungen anzubieten, die an moderne Internetumgebungen angepasst sind. + +Bis Ruby 3.3 wurden Namensauflösung und Verbindungsversuche seriell durchgeführt. Mit diesem Algorithmus funktionieren sie nun wie folgt: + +1. Gleichzeitige Ausführung von IPv6- und IPv4-Namensauflösung +2. Verbindungsversuche mit den aufgelösten IP-Adressen, wobei IPv6 priorisiert wird, mit parallelen Versuchen im Abstand von 250ms +3. Rückgabe der ersten erfolgreichen Verbindung, während alle anderen abgebrochen werden + +Dies minimiert Verbindungsverzögerungen, selbst wenn ein bestimmtes Protokoll oder eine bestimmte IP-Adresse verzögert oder nicht verfügbar ist. + +Diese Funktion ist standardmäßig aktiviert, sodass keine zusätzliche Konfiguration erforderlich ist. Um sie global zu deaktivieren, setzen Sie die Umgebungsvariable `RUBY_TCP_NO_FAST_FALLBACK=1` oder rufen Sie `Socket.tcp_fast_fallback=false` auf. Um sie auf Methodenebene zu deaktivieren, verwenden Sie das Schlüsselwortargument `fast_fallback: false`. + +## YJIT + +### TL;DR + +- Bessere Leistung bei den meisten Benchmarks auf den Plattformen x86-64 und arm64. +- Reduzierter Speicherverbrauch durch komprimierte Metadaten und ein einheitliches Speicherlimit. +- Verschiedene Fehlerbehebungen: YJIT ist jetzt robuster und gründlicher getestet. + +### Neue Funktionen + +- Kommandozeilenoptionen + - `--yjit-mem-size` führt ein einheitliches Speicherlimit ein (Standard 128 MiB), um die gesamte YJIT-Speichernutzung zu verfolgen, und bietet eine intuitivere Alternative zur alten Option `--yjit-exec-mem-size`. + - `--yjit-log` aktiviert ein Kompilierungsprotokoll, um nachzuverfolgen, was kompiliert wird. +- Ruby-API + - `RubyVM::YJIT.log` bietet Zugriff auf das Ende des Kompilierungsprotokolls zur Laufzeit. +- YJIT-Statistiken + - `RubyVM::YJIT.runtime_stats` liefert jetzt immer zusätzliche Statistiken zu Invalidierung, Inline-Verarbeitung und Metadaten-Codierung. + +### Neue Optimierungen + +- Komprimierter Kontext reduziert den Speicherbedarf für die Speicherung von YJIT-Metadaten +- Register für lokale Variablen und Ruby-Methodenargumente zuweisen +- Wenn YJIT aktiviert ist, werden mehr in Ruby geschriebene Kernprimitive verwendet: + - `Array#each`, `Array#select`, `Array#map` wurden in Ruby neu geschrieben, um die Leistung zu verbessern [[Feature #20182]]. +- Möglichkeit, kleine/triviale Methoden zu inlinen, wie z. B.: + - Leere Methoden + - Methoden, die eine Konstante zurückgeben + - Methoden, die `self` zurückgeben + - Methoden, die direkt ein Argument zurückgeben +- Spezialisiertes Codegen für viele weitere Laufzeitmethoden +- Optimierung von `String#getbyte`, `String#setbyte` und anderen String-Methoden +- Optimierung von bitweisen Operationen zur Beschleunigung der Low-Level-Bit/Byte-Manipulation +- Unterstützung von teilbaren Konstanten im Multi-Ractor-Modus +- Verschiedene andere inkrementelle Optimierungen + +## Modularer GC + +- Alternative Implementierungen für den Garbage Collector (GC) können durch die modulare Garbage-Collector-Funktion dynamisch geladen werden. Um diese Funktion zu aktivieren, konfigurieren Sie Ruby zur Build-Zeit mit `--with-modular-gc`. GC-Bibliotheken können zur Laufzeit mithilfe der Umgebungsvariable `RUBY_GC_LIBRARY` geladen werden. [[Feature #20351]] + +- Der eingebaute Garbage Collector von Ruby wurde in eine separate Datei unter `gc/default/default.c` ausgelagert und interagiert über eine in `gc/gc_impl.h` definierte API mit Ruby. Der eingebaute Garbage Collector kann jetzt auch als Bibliothek gebaut werden, indem `make modular-gc MODULAR_GC=default` verwendet wird, und kann mit der Umgebungsvariable `RUBY_GC_LIBRARY=default` aktiviert werden. [[Feature #20470]] + +- Eine experimentelle GC-Bibliothek basierend auf [MMTk](https://www.mmtk.io/) wird bereitgestellt. Diese GC-Bibliothek kann mit `make modular-gc MODULAR_GC=mmtk` gebaut und mit der Umgebungsvariable `RUBY_GC_LIBRARY=mmtk` aktiviert werden. Dies erfordert die Rust-Toolchain auf der Build-Maschine. [[Feature #20860]] + +## Sprachänderungen + +- String-Literale in Dateien ohne einen `frozen_string_literal`-Kommentar geben jetzt eine Deprecation-Warnung aus, wenn sie mutiert werden. Diese Warnungen können mit `-W:deprecated` oder durch Setzen von `Warning[:deprecated] = true` aktiviert werden. Um diese Änderung zu deaktivieren, können Sie Ruby mit dem Kommandozeilenargument `--disable-frozen-string-literal` ausführen. [[Feature #20205]] + +- Keyword-Splatting von `nil` beim Aufrufen von Methoden wird jetzt unterstützt. `**nil` wird ähnlich wie `**{}` behandelt, übergibt keine Schlüsselwörter und ruft keine Konvertierungsmethoden auf. [[Bug #20064]] + +- Die Blockübergabe ist im Index nicht mehr erlaubt. [[Bug #19918]] + +- Keyword-Argumente sind im Index nicht mehr erlaubt. [[Bug #20218]] + +- Der Toplevel-Name `::Ruby` ist jetzt reserviert, und die Definition wird vewarnt, wenn `Warning[:deprecated]` aktiviert ist. [[Feature #20884]] + +## Updates für Kernklassen + +Hinweis: Es werden nur bemerkenswerte Updates der Kernklassen aufgeführt. + +- Exception + + - `Exception#set_backtrace` akzeptiert jetzt ein Array von `Thread::Backtrace::Location`. + Auch `Kernel#raise`, `Thread#raise` und `Fiber#raise` akzeptieren dieses neue Format. [[Feature #13557]] + +- GC + + - `GC.config` hinzugefügt, um Konfigurationsvariablen für den Garbage Collector zu setzen. [[Feature #20443]] + + - Der GC-Konfigurationsparameter `rgengc_allow_full_mark` wird eingeführt. Wenn `false`, markiert GC nur junge Objekte. Standardwert ist `true`. [[Feature #20443]] + +- Ractor + + - `require` in einem Ractor ist erlaubt. Der Ladeprozess wird im Haupt-Ractor ausgeführt. + `Ractor._require(feature)` wurde hinzugefügt, um den Ladeprozess im Haupt-Ractor auszuführen. [[Feature #20627]] + + - `Ractor.main?` wurde hinzugefügt. [[Feature #20627]] + + - `Ractor.[]` und `Ractor.[]=` wurden hinzugefügt, um auf den ractor-lokalen Speicher des aktuellen Ractors zuzugreifen. [[Feature #20715]] + + - `Ractor.store_if_absent(key){ init }` wurde hinzugefügt, um ractor-lokale Variablen threadsicher zu initialisieren. [[Feature #20875]] + +- Range + + - `Range#size` löst jetzt `TypeError` aus, wenn der Bereich nicht iterierbar ist. [[Misc #18984]] + +## Updates der Standardbibliothek + +Hinweis: Es werden nur erwähnenswerte Updates der Standardbibliotheken aufgeführt. + +- RubyGems + + - Option `--attestation` zu `gem push` hinzugefügt. Sie ermöglicht das Speichern von Signaturen bei [sigstore.dev]. + +- Bundler + + - Eine `lockfile_checksums`-Konfiguration wurde hinzugefügt, um Prüfsummen in neue Lockfiles einzuschließen. + - `bundle lock --add-checksums` wurde hinzugefügt, um Prüfsummen zu einem bestehenden Lockfile hinzuzufügen. + +- JSON + + - Leistungsverbesserungen von `JSON.parse`, etwa 1,5-mal schneller als json in Version 2.7.x. + +- Tempfile + + - Das Schlüsselwortargument `anonymous: true` wurde für `Tempfile.create` implementiert. + `Tempfile.create(anonymous: true)` entfernt die erstellte temporäre Datei sofort. + Anwendungen müssen die Datei daher nicht mehr entfernen. [[Feature #20497]] + +- win32/sspi.rb + + - Diese Bibliothek wurde aus dem Ruby-Repository nach [ruby/net-http-sspi] extrahiert. [[Feature #20775]] + +## Kompatibilitätsprobleme + +Hinweis: Ausgenommen Fehlerbehebungen bei Funktionen. + +- Fehlermeldungen und Backtrace-Anzeigen wurden geändert. + + - Ein einfacher Anführungsstrich wird anstelle eines Backticks als öffnendes Anführungszeichen verwendet. [[Feature #16495]] + - Ein Klassenname wird vor einem Methodennamen angezeigt (nur wenn die Klasse einen permanenten Namen hat). [[Feature #19117]] + - Methoden von `Kernel#caller`, `Thread::Backtrace::Location` usw. wurden entsprechend geändert. + + ``` + Alt: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + Neu: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +- Die Darstellung von Hash#inspect wurde geändert. [[Bug #20433]] + + - Symbolschlüssel werden im modernen Symbolschlüssel-Syntax angezeigt: `"{user: 1}"` + - Andere Schlüssel haben jetzt Leerzeichen um `=>`: `'{"user" => 1}'`, während vorher keine da waren: `'{"user"=>1}'` + +- Kernel#Float() akzeptiert jetzt Dezimalzeichenketten ohne Dezimalteil. [[Feature #20705]] + + ```rb + Float("1.") #=> 1.0 (zuvor wurde ein ArgumentError ausgelöst) + Float("1.E-1") #=> 0.1 (zuvor wurde ein ArgumentError ausgelöst) + ``` + +- String#to_f akzeptiert jetzt Dezimalzeichenketten ohne Dezimalteil. Beachten Sie, dass sich das Ergebnis ändert, wenn ein Exponent angegeben wird. [[Feature #20705]] + + ```rb + "1.".to_f #=> 1.0 + "1.E-1".to_f #=> 0.1 (zuvor wurde 1.0 zurückgegeben) + ``` + +- Refinement#refined_class wurde entfernt. [[Feature #19714]] + +## Kompatibilitätsprobleme in der Standardbibliothek + +- DidYouMean + + - `DidYouMean::SPELL_CHECKERS[]=` und `DidYouMean::SPELL_CHECKERS.merge!` wurden entfernt. + +- Net::HTTP + + - Die folgenden veralteten Konstanten wurden entfernt: + + - `Net::HTTP::ProxyMod` + - `Net::NetPrivate::HTTPRequest` + - `Net::HTTPInformationCode` + - `Net::HTTPSuccessCode` + - `Net::HTTPRedirectionCode` + - `Net::HTTPRetriableCode` + - `Net::HTTPClientErrorCode` + - `Net::HTTPFatalErrorCode` + - `Net::HTTPServerErrorCode` + - `Net::HTTPResponseReceiver` + - `Net::HTTPResponceReceiver` + + Diese Konstanten wurden seit 2012 als veraltet markiert. + +- Timeout + + - Negative Werte für Timeout.timeout werden abgelehnt. [[Bug #20795]] + +- URI + + - Standardparser wurde von RFC 2396-konform auf RFC 3986-konform umgestellt. + [[Bug #19266]] + +## C-API-Updates + +- `rb_newobj` und `rb_newobj_of` (sowie die entsprechenden Makros `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) wurden entfernt. [[Feature #20265]] +- Die veraltete Funktion `rb_gc_force_recycle` wurde entfernt. [[Feature #18290]] + +## Sonstige Änderungen + +- Wenn ein Block an eine Methode übergeben wird, die den Block nicht nutzt, wird im verbosen Modus (`-w`) eine Warnung angezeigt. + [[Feature #15554]] + +- Die Neudefinition einiger Kernmethoden, die speziell durch den Interpreter + und JIT optimiert wurden, wie `String.freeze` oder `Integer#+`, gibt jetzt eine Performance-Warnung aus (`-W:performance` oder `Warning[:performance] = true`). + [[Feature #20429]] + +Siehe [NEWS](https://docs.ruby-lang.org/en/3.4/NEWS_md.html) +oder [Commit-Logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +für weitere Details. + +Mit diesen Änderungen wurden [{{ release.stats.files_changed }} Dateien geändert, {{ release.stats.insertions }} Einfügungen(+), {{ release.stats.deletions }} Löschungen(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +seit Ruby 3.3.0! + +Frohe Weihnachten, schöne Feiertage und viel Spaß beim Programmieren mit Ruby 3.4! + +## Download + +- <{{ 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 + +Ruby wurde erstmals 1993 von Matz (Yukihiro Matsumoto) entwickelt +und wird jetzt als Open Source entwickelt. Es läuft auf mehreren Plattformen +und wird weltweit vor allem für die Webentwicklung verwendet. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19266]: https://bugs.ruby-lang.org/issues/19266 +[Feature #19714]: https://bugs.ruby-lang.org/issues/19714 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20443]: https://bugs.ruby-lang.org/issues/20443 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20497]: https://bugs.ruby-lang.org/issues/20497 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20620]: https://bugs.ruby-lang.org/issues/20620 +[Feature #20627]: https://bugs.ruby-lang.org/issues/20627 +[Feature #20705]: https://bugs.ruby-lang.org/issues/20705 +[Feature #20715]: https://bugs.ruby-lang.org/issues/20715 +[Feature #20775]: https://bugs.ruby-lang.org/issues/20775 +[Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 +[Feature #20875]: https://bugs.ruby-lang.org/issues/20875 +[Feature #20884]: https://bugs.ruby-lang.org/issues/20884 +[sigstore.dev]: sigstore.dev +[ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi From 4a1346abf55b1f68e997f46b327561b2b2ac6d6f Mon Sep 17 00:00:00 2001 From: Thomas Ritter Date: Sun, 29 Dec 2024 22:47:34 +0100 Subject: [PATCH 481/607] Review --- de/news/_posts/2024-12-25-ruby-3-4-0-released.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/de/news/_posts/2024-12-25-ruby-3-4-0-released.md b/de/news/_posts/2024-12-25-ruby-3-4-0-released.md index ad10c2f8e1..e1abbff391 100644 --- a/de/news/_posts/2024-12-25-ruby-3-4-0-released.md +++ b/de/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -99,7 +99,7 @@ Diese Funktion ist standardmäßig aktiviert, sodass keine zusätzliche Konfigur - Keyword-Argumente sind im Index nicht mehr erlaubt. [[Bug #20218]] -- Der Toplevel-Name `::Ruby` ist jetzt reserviert, und die Definition wird vewarnt, wenn `Warning[:deprecated]` aktiviert ist. [[Feature #20884]] +- Der Toplevel-Name `::Ruby` ist jetzt reserviert, und die Definition wird verwarnt, wenn `Warning[:deprecated]` aktiviert ist. [[Feature #20884]] ## Updates für Kernklassen @@ -129,7 +129,7 @@ Hinweis: Es werden nur bemerkenswerte Updates der Kernklassen aufgeführt. - Range - - `Range#size` löst jetzt `TypeError` aus, wenn der Bereich nicht iterierbar ist. [[Misc #18984]] + - `Range#size` löst jetzt einen `TypeError` aus, wenn der Bereich nicht iterierbar ist. [[Misc #18984]] ## Updates der Standardbibliothek @@ -180,7 +180,7 @@ Hinweis: Ausgenommen Fehlerbehebungen bei Funktionen. - Die Darstellung von Hash#inspect wurde geändert. [[Bug #20433]] - - Symbolschlüssel werden im modernen Symbolschlüssel-Syntax angezeigt: `"{user: 1}"` + - Symbolschlüssel werden in der modernen Symbolschlüssel-Syntax angezeigt: `"{user: 1}"` - Andere Schlüssel haben jetzt Leerzeichen um `=>`: `'{"user" => 1}'`, während vorher keine da waren: `'{"user"=>1}'` - Kernel#Float() akzeptiert jetzt Dezimalzeichenketten ohne Dezimalteil. [[Feature #20705]] @@ -255,7 +255,7 @@ seit Ruby 3.3.0! Frohe Weihnachten, schöne Feiertage und viel Spaß beim Programmieren mit Ruby 3.4! -## Download +## Herunterladen - <{{ release.url.gz }}> @@ -278,7 +278,7 @@ Frohe Weihnachten, schöne Feiertage und viel Spaß beim Programmieren mit Ruby SHA256: {{ release.sha256.zip }} SHA512: {{ release.sha512.zip }} -## What is Ruby +## Was ist Ruby Ruby wurde erstmals 1993 von Matz (Yukihiro Matsumoto) entwickelt und wird jetzt als Open Source entwickelt. Es läuft auf mehreren Plattformen From a17c89bff1e821457dbf1a8a23f32d0d46b7d432 Mon Sep 17 00:00:00 2001 From: Ryan Davis Date: Tue, 19 Nov 2024 20:17:15 -0800 Subject: [PATCH 482/607] Updated en/documentation/index.md LOTS of bitrot on this page. Most has been removed but some have been moved down to an "older" section. Added new sections: Manuals / Books, Style Guides, Tools, and revamped the editors section. --- en/documentation/index.md | 264 ++++++++++++++++++++++++++------------ 1 file changed, 181 insertions(+), 83 deletions(-) diff --git a/en/documentation/index.md b/en/documentation/index.md index b0ded8f30c..9a400be6d9 100644 --- a/en/documentation/index.md +++ b/en/documentation/index.md @@ -18,48 +18,56 @@ The authoritative Ruby language documentation at [docs.ruby-lang.org][docs-rlo-e ### Getting Started -[Official FAQ](/en/documentation/faq/) -: The official frequently asked questions. - -[Ruby Koans][2] -: The Koans walk you along the path to enlightenment in order to learn - Ruby. The goal is to learn the Ruby language, syntax, structure, and - some common functions and libraries. We also teach you culture. - -[Why’s (Poignant) Guide to Ruby][5] -: An unconventional but interesting book that will teach you Ruby - through stories, wit, and comics. Originally created by *why the lucky - stiff*, this guide remains a classic for Ruby learners. - -[Ruby Essentials][7] -: A free on-line book designed to provide a concise - and easy to follow guide to learning Ruby. +[Try Ruby][1] +: You can try Ruby right in your browser. [Learn to Program][8] : A wonderful little tutorial by Chris Pine for programming newbies. If you don’t know how to program, start here. -[Learn Ruby the Hard Way][38] -: A very good set of exercises with explanations that guide you from - the absolute basics of Ruby all the way to OOP and web development. +[Ruby in Twenty Minutes][rubyin20] +: A small Ruby tutorial that should take no more than 20 minutes to + complete. -### Manuals +[The Odin Project][odin] +: An open source full stack curriculum -[Programming Ruby][9] -: The seminal work on Ruby in English, this first edition of the - [Pragmatic Programmers’ book][10] is available for free online. +[excercism][exercism] +: 120 exercises with automatic analysis and personal mentoring. -[The Ruby Programming Wikibook][12] -: A free online manual with beginner and intermediate content plus a - thorough language reference. +[Codecademy][codecademy] +: Online code bootcamp with a variety of topics. Freeish. + +### Manuals / Books + +#### Beginner + +[Programming Ruby 3.3][pickaxe] +: The seminal work on Ruby in English. Recently updated to Ruby 3.3. + +[The Well-Grounded Rubyist][grounded] +: A tutorial that begins with your first Ruby program and takes you all the way to sophisticated topics like reflection, threading, and recursion. + +#### Intermediate + +[Practical OOD in Ruby (POODR)][poodr] +: A programmer's tale about how to write object-oriented code. + +#### Expert + +[Metaprogramming][meta] +: Explains metaprogramming in a down-to-earth style. + +[Ruby Under a Microscope (RUM)][microscope] +: An illustrated guide to Ruby internals. ### Reference Documentation -[Official API Documentation][docs-rlo-en] +[Official API Documentation][docs-rlo-en] [(JP)][docs-rlo-jp] : The official Ruby language documentation for different versions including the currently unreleased (trunk) version. -[Ruby C API Reference][extensions] +[Ruby C API Reference][extensions] [(JP)][extensions-jp] : The official introduction to Ruby's C API. Great if you want to write C extensions or contribute to Ruby’s development. @@ -71,6 +79,61 @@ The authoritative Ruby language documentation at [docs.ruby-lang.org][docs-rlo-e [RubyAPI.org][rubyapi-org] : Easily find and browse Ruby classes, modules, and methods. +[ruby-doc.org][39] +: Online API documentation + +[DevDocs.io][40] +: Online API documentation + +[Ruby QuickRef][42] +: The Ruby quick reference + +[rubyreferences][43] +: A full language reference + detailed language changelog. Fantastic. + +### Style Guides + +[rubystyle.guide][44] +: RuboCop's Ruby style guide + +[RuboCop][45] +: Automated enforcement of their style guide. + +[Shopify][46] +: Shopify's Ruby style guide + +[GitLab][47] +: Gitlab's Ruby style guide + +[Airbnb][48] +: Airbnb's Ruby style guide + +[w3resource][49] +: W3's Ruby style guide + +# Tools + +[IRB][50] +: The interactive Ruby Read-Eval-Print-Loop (REPL) + +[Pry][51] +: An alternative Ruby REPL + +[Rake][52] +: A make-like build utility for Ruby. + +[RI][53] +: (Ruby Information) is the Ruby command-line utility that gives fast and easy on-line access to Ruby documentation. + +[RBS][54] +: Type Signature for Ruby + +[TypeProf][55] +: An experimental type-level Ruby interpreter for testing and understanding Ruby code. + +[Steep][56] +: Static type checker for Ruby. + ### Editors and IDEs For coding in Ruby, you can use the default editor of your operating @@ -79,71 +142,106 @@ syntax-highlighting, file browsing) or an integrated development environment with advanced features (e.g. code completion, refactoring, testing support). -Here is a list of popular tools used by Rubyists: - -* Linux and cross-platform tools: - * [Aptana Studio][19] - * [Atom][atom] - * [Emacs][20] with [Ruby mode][21] and [Rsense][22] - * [Eric][eric] - * [Geany][23] - * [gedit][24] - * [Kate][kate] - * [KDevelop][kdevelop] - * [NetBeans][36] - * [RubyMine][27] - * [SciTe][28] - * [Sublime Text][37] - * [Vim][25] with [vim-ruby][26] plugin and [Rsense][22] +Here is a list of popular editors used by Rubyists, broken up by +learning curve: + +* Days + * [Sublime Text][37] (paid) * [Visual Studio Code][vscode] + * [Zed][zed] +* Months + * [RubyMine][27] (paid) +* "Years" (as in, you'll spend years still learning things about it) + * [Emacs][20] with [Ruby mode][21] or [Enhanced Ruby mode][enh-ruby-mode] + * [Vim][25] with [vim-ruby][26] plugin + * [NeoVim][neovim] + +All of these editors support the Language Server Protocol (LSP), +either by default or through their LSP plugins. Shopify's +[ruby-lsp][ruby-lsp] is one of the most popular language servers for +Ruby and [supports all of the above editors][shopify_lsp]. + +### Older Reading / Resources + +These links were more prominent but haven't been updated in ages. + +[Ruby Koans][2] +: The Koans walk you along the path to enlightenment in order to learn + Ruby. The goal is to learn the Ruby language, syntax, structure, and + some common functions and libraries. We also teach you culture. + +[Ruby Essentials][7] +: A free on-line book designed to provide a concise + and easy to follow guide to learning Ruby. -* On Windows: - * [Notepad++][29] +[Why’s (Poignant) Guide to Ruby][5] +: An unconventional but interesting book that will teach you Ruby + through stories, wit, and comics. Originally created by *why the lucky + stiff*, this guide remains a classic for Ruby learners. -* On macOS: - * [TextMate][32] - * [BBEdit][33] - * [Dash][39] (documentation browser) +[Learn Ruby the Hard Way][38] +: A very good set of exercises with explanations that guide you from + the absolute basics of Ruby all the way to OOP and web development. -### Further Reading +[Programming Ruby][9] +: The seminal work on Ruby in English, this first edition of the + [Pragmatic Programmers’ book][10] is available for free online. -[Ruby-doc.org][34] maintains a comprehensive list of English -documentation sources. -If you have questions about Ruby the -[mailing list](/en/community/mailing-lists/) is a great place to start. +[The Ruby Programming Wikibook][12] +: A free online manual with beginner and intermediate content plus a + thorough language reference. [1]: https://try.ruby-lang.org/ [2]: https://rubykoans.com/ [5]: https://poignant.guide -[7]: http://www.techotopia.com/index.php/Ruby_Essentials -[8]: http://pine.fm/LearnToProgram/ -[9]: http://www.ruby-doc.org/docs/ProgrammingRuby/ +[7]: https://www.techotopia.com/index.php/Ruby_Essentials +[8]: https://pine.fm/LearnToProgram/ +[9]: https://www.ruby-doc.org/docs/ProgrammingRuby/ [10]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ -[12]: http://en.wikibooks.org/wiki/Ruby_programming_language -[extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html -[16]: http://www.rubydoc.info/ -[rubyapi-org]: https://rubyapi.org/ -[19]: http://www.aptana.com/ -[20]: http://www.gnu.org/software/emacs/ -[21]: http://www.emacswiki.org/emacs/RubyMode -[22]: http://rsense.github.io/ -[23]: http://www.geany.org/ -[24]: http://projects.gnome.org/gedit/screenshots.html -[25]: http://www.vim.org/ +[12]: https://en.wikibooks.org/wiki/Ruby_programming_language +[16]: https://www.rubydoc.info/ +[20]: https://www.gnu.org/software/emacs/ +[21]: https://www.emacswiki.org/emacs/RubyMode +[25]: https://www.vim.org/ [26]: https://github.com/vim-ruby/vim-ruby -[27]: http://www.jetbrains.com/ruby/ -[28]: http://www.scintilla.org/SciTE.html -[29]: http://notepad-plus-plus.org/ -[32]: http://macromates.com/ -[33]: https://www.barebones.com/products/bbedit/ -[34]: http://ruby-doc.org -[36]: https://netbeans.org/ -[37]: http://www.sublimetext.com/ +[27]: https://www.jetbrains.com/ruby/ +[34]: https://ruby-doc.org/ +[37]: https://www.sublimetext.com/ [38]: https://learncodethehardway.org/ruby/ -[39]: http://kapeli.com/dash -[docs-rlo-en]: https://docs.ruby-lang.org/en/ -[atom]: https://atom.io/ +[39]: https://www.ruby-doc.org/ +[40]: https://devdocs.io/ruby/ +[42]: https://www.zenspider.com/ruby/quickref.html +[43]: https://rubyreferences.github.io/ +[44]: https://rubystyle.guide/ +[45]: https://github.com/rubocop/ruby-style-guide +[46]: https://ruby-style-guide.shopify.dev/ +[47]: https://docs.gitlab.com/ee/development/backend/ruby_style_guide.html +[48]: https://github.com/airbnb/ruby +[49]: https://www.w3resource.com/ruby/ruby-style-guide.php +[50]: https://github.com/ruby/irb +[51]: https://github.com/pry/pry +[52]: https://github.com/ruby/rake +[53]: https://ruby.github.io/rdoc/RI_md.html +[54]: https://github.com/ruby/rbs +[55]: https://github.com/ruby/typeprof +[56]: https://github.com/soutaro/steep +[codecademy]: https://www.codecademy.com/learn/learn-ruby +[docs-rlo-en]: https://docs.ruby-lang.org/en/latest +[docs-rlo-jp]: https://docs.ruby-lang.org/ja/latest +[enh-ruby-mode]: https://github.com/zenspider/enhanced-ruby-mode/ +[exercism]: https://exercism.org/tracks/ruby +[extensions-jp]: https://docs.ruby-lang.org/jp/master/extension_rdoc.html +[extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html +[grounded]: https://www.manning.com/books/the-well-grounded-rubyist-third-edition +[meta]: https://pragprog.com/titles/ppmetr2/metaprogramming-ruby-2/ +[microscope]: https://patshaughnessy.net/ruby-under-a-microscope +[neovim]: https://neovim.io/ +[odin]: https://www.theodinproject.com/paths/full-stack-ruby-on-rails/courses/ruby +[pickaxe]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ +[poodr]: https://www.poodr.com/ +[ruby-lsp]: https://github.com/Shopify/ruby-lsp +[rubyapi-org]: https://rubyapi.org/ +[rubyin20]: https://www.ruby-lang.org/en/documentation/quickstart/ +[shopify_lsp]: https://shopify.github.io/ruby-lsp/editors.html) [vscode]: https://code.visualstudio.com/docs/languages/ruby -[eric]: https://eric-ide.python-projects.org/ -[kdevelop]: https://www.kdevelop.org/ -[kate]: https://kate-editor.org/ +[zed]: https://zed.dev/ From 8269e75f6c25e714a9b009e394b6547ecfd39539 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 26 Dec 2024 23:17:41 +0800 Subject: [PATCH 483/607] Translate Ruby 3.4.0 and 3.4.1 Released (zh_tw) --- .../_posts/2024-12-25-ruby-3-4-0-released.md | 323 ++++++++++++++++++ .../_posts/2024-12-25-ruby-3-4-1-released.md | 39 +++ 2 files changed, 362 insertions(+) create mode 100644 zh_tw/news/_posts/2024-12-25-ruby-3-4-0-released.md create mode 100644 zh_tw/news/_posts/2024-12-25-ruby-3-4-1-released.md diff --git a/zh_tw/news/_posts/2024-12-25-ruby-3-4-0-released.md b/zh_tw/news/_posts/2024-12-25-ruby-3-4-0-released.md new file mode 100644 index 0000000000..5ce56cbe79 --- /dev/null +++ b/zh_tw/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -0,0 +1,323 @@ +--- +layout: news_post +title: "Ruby 3.4.0 發布" +author: "naruse" +translator: "Bear Su" +date: 2024-12-25 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.4.0" | first %} +我們很高興宣布 Ruby {{ release.version }} 發佈了。 Ruby 3.4 加入了 `it` 區塊參數參考變數, +將 Prism 作為預設的解析氣,為 socket 函式庫加入 Happy Eyeballs Version 2 支援,改進 YJIT,加入 Modular GC,與其他更多. + +## 導入 `it` + +加入 `it` 參考沒有變數名稱的區塊參數。 [[Feature #18980]] + +```ruby +ary = ["foo", "bar", "baz"] + +p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"] +``` + +`it` 行為與 `_1` 類似。當意圖在區塊中只想使用 `_1` 時,其他編號的參數例如 `_2` 也可能會出現,這會對讀者造成額外的認知負擔。因此 `it` 被導入作為一個方便的別名。在使用 `it` 能表示自身的簡單情境下使用 `it`,例如在單行區塊中。 + +## Prism 先在是預設解析器 + +預設的解析器從 parse.y 切換為 Prism。 [[Feature #20564]] + +這是一項內部改進,使用者應該看不到什麼變化。如果您發現任何相容性問題,請向我們回報。 + +若要使用傳統的解析器,請使用指令列參數 `--parser=parse.y`。 + +## socket 函式庫新功能 Happy Eyeballs Version 2 (RFC 8305) + +socket 函式庫引入新功能[Happy Eyeballs 版本2 (RFC 8305)](https://datatracker.ietf.org/doc/html/rfc8305),這是在許多程式語言廣泛採用實現更好連接的最新標準化版本,在 `TCPSocket.new`(`TCPSocket.open`)和 `Socket.tcp`。 +這項改進使 Ruby 能夠提供高效、可靠的網路連接,適應現代網路環境。 + +在 Ruby 3.3 之前,這些方法會連續執行名稱解析和連接。透過該演算法,它們現在的運作方式如下: + +1. 同時執行 IPv6 和 IPv4 名稱解析 +2. 嘗試連接已解析的 IP 位址,優先考慮 IPv6,並以 250 毫秒間隔錯開平行連線嘗試。 +3. 回傳第一個成功的連接,同時取消任何其他連接 + +這樣可確保即使特定協定或 IP 位址發生延遲或不可用,也能將連線延遲降至最低。 + +此功能預設為啟用,因此無需額外設定即可使用。若要全域停用此功能,請設定環境變數 `RUBY_TCP_NO_FAST_FALLBACK=1` 或呼叫 `Socket.tcp_fast_fallback=false`。或者,若要針對單一方法停用此功能,請使用關鍵字引數 `fast_fallback: false`。 + +## YJIT + +### TL;DR + +* 在 x86-64 與 arn64 平台上的大多數基準測試都有更好的效能 +* 減少編輯後設資料的的記憶體用量 +* 修復多個錯誤。YJIT 現在更加勇健且有更好的測試。 + +### 新功能 + +* 指令列選項 + * 透過 `--yjit-mem-size` 指令選項新增統一記憶體限制 (預設 128MiB),該功能追蹤總 YJIT 記憶體用量,而且比舊的 `--yjit-exec-mem-size` 更為直觀 + * 透過 `--yjit-log` 加入編譯紀錄來追蹤哪些被編譯 +* Ruby API + * 可以在運行環境透過 `RubyVM::YJIT.log` 取得紀錄結尾 +* YJIT stats + * 現在總是可以透過 `RubyVM::YJIT.runtime_stats` 取得更多統計數據: + invalidation、inlining、和 metadata encoding。 + +### 新的改善 + +* 透過壓縮上下文來減少儲存 YJIT 後設資料所需的記憶體空間 +* 改善後的分配器能為本地變數分配暫存器 +* 當啟用 YJIT 時,使用更多用 Ruby 邊寫的核心程式: + * 使用 Ruby 改寫`Array#each`、`Array#select`、`Array#map` 提高效能 [[Feature #20182]]. +* 能夠內聯小型/簡單的方法,例如: + * 空方法 + * 回傳常數的方法 + * 回傳 `self` 的方法 + * 直接回傳參數的方法 +* 適用於更多執行環境方法的程式碼產生器 +* 改善 `String#getbyte`、`String#setbyte` 和其他字串方法 +* 改善位元計算來加速低階位元/位元組操作 +* 各種其他的增量改善 + +## 模組化垃圾收集器 + +* 模組化垃圾收集器功能可以動態載入替代垃圾收集器實作。 + 要啟用該功能,在建置 Ruby 時設定 `--with-modular-gc`。 + 垃圾收集器函式庫可以在運行環境使用環境變數 `RUBY_GC_LIBRARY` 載入。 + [[Feature #20351]] + +* Ruby 內建的垃圾收集器已經切分成不同的檔案 `gc/default/default.c`,並使用在 `gc/gc_impl.h` 定義的 API 與 Ruby 互動。 + 內建的垃圾收集器現在也可以用 `make modular-gc MODULAR_GC=default` 建置為函式庫,並使用環境變數 `RUBY_GC_LIBRARY=default` 啟用。[[Feature #20470]] + +* 基於 [MMTk](https://www.mmtk.io/) 提供了一個實驗性的垃圾收集器函式庫。 + 該垃圾收集器函式庫可以使用 `make modular-gc MODULAR_GC=mmtk` 建置,並使用環境變數 `RUBY_GC_LIBRARY=mmtk` 啟用。 + 建置主機上需要有 Rust 工具鏈。[[Feature #20860]] + +## 語法變更 + +* 沒有 `frozen_string_literal` 註解的檔案中的字串文字,現在行為會跟被凍結一樣。如果它們被修改則會發出棄用警告。 + 這些警告可以透過 `-W:deprecated` 或 `Warning[:deprecated] = true` 啟用。 + 若要停用此變更,您可以在執行 Ruby 時加上參數 `--disable-frozen-string-literal`。 [[Feature #20205]] + +* 現在呼叫方法支援使用 Keyword splatting `nil`。 + `**nil` 的處理方式與 `**{}` 類似,不會傳遞 keywords,也不會呼叫任何轉換方法。 [[Bug #20064]] + +* Block passing 不再允許作為索引。 [[Bug #19918]] + +* 不定長度參數不再允許作為索引。 [[Bug #20218]] + +* 頂級名稱 `::Ruby` 現在被保留,且會在 `Warning[:deprecated]` 時警告。 [[Feature #20884]] + +## 核心類別更新 + +注意:我們只列出特別的類別更新。 + +* Exception + + * `Exception#set_backtrace` 現在可接受 `Thread::Backtrace::Location` 陣列。 + `Kernel#raise`、`Thread#raise` 和 `Fiber#raise` 也接受同樣的新格式。 [[Feature #13557]] + +* GC + + * 加入 `GC.config` 允許在垃圾收集器中指定設定變數。[[Feature #20443]] + + * 引入 GC 設定參數 `rgengc_allow_full_mark`。當 `false` GC 只會標記年輕的物件。預設為 `true`。[[Feature #20443]] + +* Ractor + + * 在 Ractor 中允許使用 `require`。該 requiring 程序會在主要 Ractor 執行。 + 加入 `Ractor._require(feature)` 在主要 Ractor 執行 requiring 程序。[[Feature #20627]] + + * 加入 `Ractor.main?`。 [[Feature #20627]] + + * 加入 `Ractor.[]` 和 `Ractor.[]=` 存取目前 Ractor 的 ractor local storage。[[Feature #20715]] + + * 加入 `Ractor.store_if_absent(key){ init }` 在執行緒安全下初始化 ractor 本地變數。[[Feature #20875]] + +* Range + + * `Range#size` 如果 range 無法迭代的話,現在會拋出 `TypeError`。 [[Misc #18984]] + + +## 標準函式庫更新 + +注意:我們只列出特別的標準函式庫更新。 + +* RubyGems + * gem push 新增 `--attestation` 選項。它允許將簽章儲存到 [sigstore.dev] + +* Bundler + * 新增 `lockfile_checksums` 設定,可以在新的 lockfiles 包含 checksums。 + * bundle lock 新增 `--add-checksums` 選項將 checksums 加入到現有的 lockfile + +* JSON + + * `JSON.parse` 比 json-2.7.x 相比效能提升約 1.5 倍。 + +* Tempfile + + * Tempfile.create 實作了關鍵字參數 `anonymous: true`。 + `Tempfile.create(anonymous: true)` 會立即刪除該建立的暫存檔案。 + 因此應用程式不需要自行刪除該檔案。 + [[Feature #20497]] + +* win32/sspi.rb + + * 這個函式庫已從 Ruby 儲存庫分離至 [ruby/net-http-sspi]。 + [[Feature #20775]] + +## 相容性問題 + +注意:不包含功能問題的修正。 + +* 錯誤訊息與 backtrace 的顯示改變。 + * 使用單引號 (`'`) 取代反引號 (`` ` ``) 作為起始引號。 [[Feature #16495]] + * 在方法名稱前顯示類別名稱 (僅當類別有固定名稱時)。 [[Feature #19117]] + * `Kernel#caller`、`Thread::Backtrace::Location` 的方法等等,也做了對應的改變。 + + ``` + 舊: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + 新: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +* Hash#inspect 渲染變更。 [[Bug #20433]] + + * 符號鍵將會以現代符號鍵語法顯示: `"{user: 1}"` + * 其他鍵現在會在 `=>` 周圍加上空白:`'{"user" => 1}'`,之前沒有將上空白:`'{"user"=>1}'` + +* Kernel#Float() 現在接受忽略小數位數的數值字串。 [[Feature #20705]] + + ```rb + Float("1.") #=> 1.0 (之前,拋出 ArgumentError) + Float("1.E-1") #=> 0.1 (之前,拋出 ArgumentError) + ``` + +* String#to_f 現在接受忽略小數位數的數值字串。注意指定指數後結果將會改變。[[Feature #20705]] + + ```rb + "1.".to_f #=> 1.0 + "1.E-1".to_f #=> 0.1 (之前,回傳 1.0) + ``` + +* Refinement#refined_class 已被移除。 [[Feature #19714]] + +## 標準函式庫相容性問題 + +* DidYouMean + + * `DidYouMean::SPELL_CHECKERS[]=` 和 `DidYouMean::SPELL_CHECKERS.merge!` 已被移除。 + +* Net::HTTP + + * 移除以下已廢棄的常數: + * `Net::HTTP::ProxyMod` + * `Net::NetPrivate::HTTPRequest` + * `Net::HTTPInformationCode` + * `Net::HTTPSuccessCode` + * `Net::HTTPRedirectionCode` + * `Net::HTTPRetriableCode` + * `Net::HTTPClientErrorCode` + * `Net::HTTPFatalErrorCode` + * `Net::HTTPServerErrorCode` + * `Net::HTTPResponseReceiver` + * `Net::HTTPResponceReceiver` + + 這些常數在 2012 年被廢棄。 + +* Timeout + + * Timeout.timeout 拒絕負數值。 [[Bug #20795]] + +* URI + + * 將預設解析器從 RFC 2396 標準改成 RFC 3986 標準。 + [[Bug #19266]] + +## 更新的 C API + +* `rb_newobj` 和 `rb_newobj_of` (和相對應的巨集 `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) 已經被移除。 [[Feature #20265]] +* 移除已廢棄的函式 `rb_gc_force_recycle`。 [[Feature #18290]] + +## 其他變更 + +* 將 block 傳遞給不使用傳入 block 的方法,會在 verbose 模式 (`-w`) 下顯示警告。 + [[Feature #15554]] + +* 當重新定義一些由直譯器與 JIT 特別最佳化的核心方法,例如 `String.freeze` 和 `Integer#+`,現在會發出效能類型警告 (`-W:performance` or `Warning[:performance] = true`)。 + [[Feature #20429]] + +參見 [NEWS](https://docs.ruby-lang.org/en/3.4/NEWS_md.html) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +來了解更多。 + +自 Ruby 3.3.0 以來,計 [{{ release.stats.files_changed }} 檔案變更,{{ release.stats.insertions }} 行新增(+),{{ release.stats.deletions }} 行刪減(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)。 + +耶誕快樂、佳節愉快,享受與 Ruby 3.4 一起寫程式的時光! + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19266]: https://bugs.ruby-lang.org/issues/19266 +[Feature #19714]: https://bugs.ruby-lang.org/issues/19714 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20443]: https://bugs.ruby-lang.org/issues/20443 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20497]: https://bugs.ruby-lang.org/issues/20497 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20620]: https://bugs.ruby-lang.org/issues/20620 +[Feature #20627]: https://bugs.ruby-lang.org/issues/20627 +[Feature #20705]: https://bugs.ruby-lang.org/issues/20705 +[Feature #20715]: https://bugs.ruby-lang.org/issues/20715 +[Feature #20775]: https://bugs.ruby-lang.org/issues/20775 +[Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 +[Feature #20875]: https://bugs.ruby-lang.org/issues/20875 +[Feature #20884]: https://bugs.ruby-lang.org/issues/20884 +[sigstore.dev]: https://www.sigstore.dev +[ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi diff --git a/zh_tw/news/_posts/2024-12-25-ruby-3-4-1-released.md b/zh_tw/news/_posts/2024-12-25-ruby-3-4-1-released.md new file mode 100644 index 0000000000..541c09fd16 --- /dev/null +++ b/zh_tw/news/_posts/2024-12-25-ruby-3-4-1-released.md @@ -0,0 +1,39 @@ +--- +layout: news_post +title: "Ruby 3.4.1 發布" +author: "naruse" +translator: "Bear Su" +date: 2024-12-25 00:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.4.1 已經發布了。 + +修復了版本描述。 + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_4_1)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.4.1" | first %} + +* <{{ 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 58e4e3f8b79061d6e416e110365525d9f3c685aa Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 31 Dec 2024 09:56:04 +0800 Subject: [PATCH 484/607] Fix typo --- zh_tw/news/_posts/2024-12-25-ruby-3-4-0-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zh_tw/news/_posts/2024-12-25-ruby-3-4-0-released.md b/zh_tw/news/_posts/2024-12-25-ruby-3-4-0-released.md index 5ce56cbe79..cc3d72b5e5 100644 --- a/zh_tw/news/_posts/2024-12-25-ruby-3-4-0-released.md +++ b/zh_tw/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -9,7 +9,7 @@ lang: zh_tw {% assign release = site.data.releases | where: "version", "3.4.0" | first %} 我們很高興宣布 Ruby {{ release.version }} 發佈了。 Ruby 3.4 加入了 `it` 區塊參數參考變數, -將 Prism 作為預設的解析氣,為 socket 函式庫加入 Happy Eyeballs Version 2 支援,改進 YJIT,加入 Modular GC,與其他更多. +將 Prism 作為預設的解析器,為 socket 函式庫加入 Happy Eyeballs Version 2 支援,改進 YJIT,加入 Modular GC,與其他更多。 ## 導入 `it` From c8d18b9bad775f718752ccda7a51fa99966b9a1c Mon Sep 17 00:00:00 2001 From: Vinicius Stock Date: Tue, 26 Nov 2024 16:28:12 -0500 Subject: [PATCH 485/607] Add Rails at scale to the list of blogs Co-authored-by: Stan Lo --- en/community/weblogs/index.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/en/community/weblogs/index.md b/en/community/weblogs/index.md index ebb5f23ca0..b38a7cb94c 100644 --- a/en/community/weblogs/index.md +++ b/en/community/weblogs/index.md @@ -34,6 +34,8 @@ updates. Ruby on Rails team. If you are running Rails, this blog is essential for notification of security updates and an overall view of the wide Rails community. +* [**Rails at Scale**][rails-at-scale] contains posts discussing much + of the recent work being done to advance both Ruby and Rails. ### Spreading the Word @@ -53,3 +55,4 @@ out there, be sure to share! [reddit]: http://www.reddit.com/r/ruby [hn]: http://news.ycombinator.com/ [short-ruby-newsletter]: https://newsletter.shortruby.com/ +[rails-at-scale]: https://railsatscale.com/ From 4717aa8d54e57032979ba2dfcb11869085868c9d Mon Sep 17 00:00:00 2001 From: Stan Lo Date: Wed, 1 Jan 2025 10:40:41 +0800 Subject: [PATCH 486/607] Improve documentation page * Remove unnecessary adjectives * Rework EN documentation section 1. Since ruby-lang.org supports internationalization and has an actively maintained `/ja` version, we don't need to list JA documentation. 2. All official documentation links should be placed in the same section. 3. Fix broken links. Co-authored-by: Jeremy Evans --- en/documentation/index.md | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/en/documentation/index.md b/en/documentation/index.md index 9a400be6d9..0ac929e5db 100644 --- a/en/documentation/index.md +++ b/en/documentation/index.md @@ -12,9 +12,15 @@ Guides, tutorials, and reference material to help you learn more about Ruby Although you can easily [try Ruby in your browser][1], you can also read the [installation guide](installation/) for help on installing Ruby. -### Ruby Language Documentation +### Official Ruby Documentation -The authoritative Ruby language documentation at [docs.ruby-lang.org][docs-rlo-en] is the place to start if you want to understand Ruby. It covers all aspects of the language and should be the first place you look when learning or referencing Ruby programming language. Other resources listed below are complementary to the official language documentation or they present Ruby documentation in a different format/style/flavor. +[docs.ruby-lang.org/en][docs-rlo]: List of documentation for all Ruby versions released after 2.1. + +[docs.ruby-lang.org/en/3.4][docs-rlo-3.4]: Documentation for Ruby 3.4. + +[docs.ruby-lang.org/en/master][docs-rlo-master]: Documentation for Ruby's master branch. + +[C Extension Guide][docs-rlo-extension]: In-depth guide for creating C extensions for Ruby. ### Getting Started @@ -36,7 +42,7 @@ The authoritative Ruby language documentation at [docs.ruby-lang.org][docs-rlo-e : 120 exercises with automatic analysis and personal mentoring. [Codecademy][codecademy] -: Online code bootcamp with a variety of topics. Freeish. +: Online code bootcamp with a variety of topics. ### Manuals / Books @@ -61,16 +67,9 @@ The authoritative Ruby language documentation at [docs.ruby-lang.org][docs-rlo-e [Ruby Under a Microscope (RUM)][microscope] : An illustrated guide to Ruby internals. -### Reference Documentation - -[Official API Documentation][docs-rlo-en] [(JP)][docs-rlo-jp] -: The official Ruby language documentation for different versions including - the currently unreleased (trunk) version. +### Community Documentation -[Ruby C API Reference][extensions] [(JP)][extensions-jp] -: The official introduction to Ruby's C API. - Great if you want to write C extensions - or contribute to Ruby’s development. +These documentation sites are maintained by the Ruby community. [RubyDoc.info][16] : The one-stop web site for reference documentation about Ruby gems and @@ -89,7 +88,7 @@ The authoritative Ruby language documentation at [docs.ruby-lang.org][docs-rlo-e : The Ruby quick reference [rubyreferences][43] -: A full language reference + detailed language changelog. Fantastic. +: A full language reference + detailed language changelog. ### Style Guides @@ -226,12 +225,12 @@ These links were more prominent but haven't been updated in ages. [55]: https://github.com/ruby/typeprof [56]: https://github.com/soutaro/steep [codecademy]: https://www.codecademy.com/learn/learn-ruby -[docs-rlo-en]: https://docs.ruby-lang.org/en/latest -[docs-rlo-jp]: https://docs.ruby-lang.org/ja/latest +[docs-rlo]: https://docs.ruby-lang.org/en +[docs-rlo-3.4]: https://docs.ruby-lang.org/en/3.4 +[docs-rlo-master]: https://docs.ruby-lang.org/en/master +[docs-rlo-extension]: https://docs.ruby-lang.org/en/master/extension_rdoc.html [enh-ruby-mode]: https://github.com/zenspider/enhanced-ruby-mode/ [exercism]: https://exercism.org/tracks/ruby -[extensions-jp]: https://docs.ruby-lang.org/jp/master/extension_rdoc.html -[extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html [grounded]: https://www.manning.com/books/the-well-grounded-rubyist-third-edition [meta]: https://pragprog.com/titles/ppmetr2/metaprogramming-ruby-2/ [microscope]: https://patshaughnessy.net/ruby-under-a-microscope From d9ec129edc8cb40bb1375cc80f4eee2350878cae Mon Sep 17 00:00:00 2001 From: Petr Sabanov Date: Wed, 1 Jan 2025 22:37:05 +0300 Subject: [PATCH 487/607] Updated code blocks and Russian text to match newer versions of Ruby. (#3312) Also made stylistic and punctuation corrections for the Russian translation. --- bg/documentation/quickstart/3/index.md | 2 +- de/documentation/quickstart/3/index.md | 2 +- en/documentation/quickstart/3/index.md | 2 +- es/documentation/quickstart/3/index.md | 2 +- fr/documentation/quickstart/3/index.md | 2 +- id/documentation/quickstart/3/index.md | 2 +- it/documentation/quickstart/3/index.md | 2 +- ja/documentation/quickstart/3/index.md | 2 +- ko/documentation/quickstart/3/index.md | 2 +- pl/documentation/quickstart/3/index.md | 2 +- pt/documentation/quickstart/3/index.md | 2 +- ru/documentation/quickstart/2/index.md | 35 +++++++------ ru/documentation/quickstart/3/index.md | 29 +++++----- ru/documentation/quickstart/4/index.md | 64 +++++++++++------------ tr/documentation/quickstart/3/index.md | 2 +- vi/documentation/quickstart/3/index.md | 2 +- zh_cn/documentation/quickstart/3/index.md | 2 +- zh_tw/documentation/quickstart/3/index.md | 2 +- 18 files changed, 80 insertions(+), 78 deletions(-) diff --git a/bg/documentation/quickstart/3/index.md b/bg/documentation/quickstart/3/index.md index e141e02c46..8db142707a 100644 --- a/bg/documentation/quickstart/3/index.md +++ b/bg/documentation/quickstart/3/index.md @@ -97,7 +97,7 @@ irb(main):043:0> g.respond_to?("to_s") irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} В Ruby лесно може да отворим класа отново за модификация. Промените ще diff --git a/de/documentation/quickstart/3/index.md b/de/documentation/quickstart/3/index.md index 436f2fbedd..57c328b987 100644 --- a/de/documentation/quickstart/3/index.md +++ b/de/documentation/quickstart/3/index.md @@ -104,7 +104,7 @@ die Variablen eines Objekts zu gewähren. irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} In Ruby kann man eine Klasse jederzeit verändern. Die Änderungen werden diff --git a/en/documentation/quickstart/3/index.md b/en/documentation/quickstart/3/index.md index 9cdd7a0396..0460376fcb 100644 --- a/en/documentation/quickstart/3/index.md +++ b/en/documentation/quickstart/3/index.md @@ -102,7 +102,7 @@ provides an easy way of providing access to an object’s variables. irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} In Ruby, you can reopen a class and modify it. The changes will diff --git a/es/documentation/quickstart/3/index.md b/es/documentation/quickstart/3/index.md index 550e84b49d..6f0dbbdd80 100644 --- a/es/documentation/quickstart/3/index.md +++ b/es/documentation/quickstart/3/index.md @@ -104,7 +104,7 @@ una forma fácil para permitir acceder a las variables de un objeto. irb(main):044:0> class Anfitrion irb(main):045:1> attr_accessor :nombre irb(main):046:1> end -=> nil +=> [:nombre, :nombre=] {% endhighlight %} En Ruby, puedes volver a abrir una clase y modificarla. Eso no cambia diff --git a/fr/documentation/quickstart/3/index.md b/fr/documentation/quickstart/3/index.md index b9d2d5a791..9c4c3f68dc 100644 --- a/fr/documentation/quickstart/3/index.md +++ b/fr/documentation/quickstart/3/index.md @@ -111,7 +111,7 @@ pour accéder aux variables d’instances : irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} Il semblerait que nous ayons défini une seconde fois la classe diff --git a/id/documentation/quickstart/3/index.md b/id/documentation/quickstart/3/index.md index 6d671adca3..45720828e4 100644 --- a/id/documentation/quickstart/3/index.md +++ b/id/documentation/quickstart/3/index.md @@ -106,7 +106,7 @@ Ruby menyediakan cara yang mudah untuk mengakses variabel objek. irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} Di Ruby, Anda dapat membuka lagi sebuah kelas dan memodifikasi kelas tersebut. diff --git a/it/documentation/quickstart/3/index.md b/it/documentation/quickstart/3/index.md index ce29706244..3f7b14d29d 100644 --- a/it/documentation/quickstart/3/index.md +++ b/it/documentation/quickstart/3/index.md @@ -101,7 +101,7 @@ per permetterci di accedere alle variabili di un oggetto. irb(main):044:0> class PersonaCordiale irb(main):045:1> attr_accessor :nome irb(main):046:1> end -=> nil +=> [:nome, :nome=] {% endhighlight %} In Ruby, puoi aprire una classe e modificarla. I cambiamenti vengono diff --git a/ja/documentation/quickstart/3/index.md b/ja/documentation/quickstart/3/index.md index 127310bf60..00a8b6088a 100644 --- a/ja/documentation/quickstart/3/index.md +++ b/ja/documentation/quickstart/3/index.md @@ -104,7 +104,7 @@ Rubyはオブジェクトの変数にアクセスできる簡単な方法を用 irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} Rubyでは、定義されたクラスをさらに変更できます。 diff --git a/ko/documentation/quickstart/3/index.md b/ko/documentation/quickstart/3/index.md index 0b63154ba3..2c25561c55 100644 --- a/ko/documentation/quickstart/3/index.md +++ b/ko/documentation/quickstart/3/index.md @@ -94,7 +94,7 @@ Ruby는 객체 변수를 접근하게 해주는 편리한 방법을 제공하고 irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} Ruby에서는 클래스를 언제나 열어서 정의를 변경할 수 있습니다. diff --git a/pl/documentation/quickstart/3/index.md b/pl/documentation/quickstart/3/index.md index 78f03b2b72..2cc18c953a 100644 --- a/pl/documentation/quickstart/3/index.md +++ b/pl/documentation/quickstart/3/index.md @@ -101,7 +101,7 @@ nam łatwy dostępn do zmiennych obiektu. irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} W Rubim możesz ponownie otworzyć klasę i zmodyfikować ją. To nie zmienia diff --git a/pt/documentation/quickstart/3/index.md b/pt/documentation/quickstart/3/index.md index dda2230763..bf68c804fc 100644 --- a/pt/documentation/quickstart/3/index.md +++ b/pt/documentation/quickstart/3/index.md @@ -105,7 +105,7 @@ de fornecer acesso às variáveis de um objeto. irb(main):044:0> class Anfitriao irb(main):045:1> attr_accessor :nome irb(main):046:1> end -=> nil +=> [:nome, :nome=] {% endhighlight %} Em Ruby, podemos abrir uma classe novamente e alterá-la. As mudanças estarão diff --git a/ru/documentation/quickstart/2/index.md b/ru/documentation/quickstart/2/index.md index 3607052698..851d7f00a7 100644 --- a/ru/documentation/quickstart/2/index.md +++ b/ru/documentation/quickstart/2/index.md @@ -21,28 +21,29 @@ header: | создать метод! {% highlight irb %} -irb(main):010:0> def h +irb(main):010:0> def hi irb(main):011:1> puts "Hello World!" irb(main):012:1> end -=> nil +=> :hi {% endhighlight %} -Код `def h` означает начало объявление метода. Он говорит Ruby, что мы -определяем метод, имя которого `h`. Следующая строка – тело метода, та +Код `def hi` означает начало объявление метода. Он говорит Ruby, что мы +определяем метод, имя которого `hi`. Следующая строка – тело метода, та же строка, что мы видели раньше: `puts "Hello World"`. И, наконец, последняя строка, `end`, говорит Ruby, что мы завершили объявление -метода. Ответ от Ruby, `=> nil`, говорит нам, что он понял, что мы -завершили объявление метода. +метода. Ответ от Ruby, `=> :hi`, говорит нам, что он понял, что мы +завершили объявление метода. Ответ может быть таким: `=> nil`, в Ruby +версии 2.0 и ниже, но это здесь не важно, поэтому двинемся дальше. ## Кратко о повторяющихся жизнях метода Теперь давайте попробуем вызвать метод несколько раз: {% highlight irb %} -irb(main):013:0> h +irb(main):013:0> hi Hello World! => nil -irb(main):014:0> h() +irb(main):014:0> hi() Hello World! => nil {% endhighlight %} @@ -53,14 +54,14 @@ Hello World! нравится, но это не обязательно. Что если мы хотим сказать hello одному человеку, а не всему миру? -Просто переопределим метод `h`, чтобы он принимал имя как параметр. +Просто переопределим метод `hi`, чтобы он принимал имя как параметр. {% highlight irb %} -irb(main):015:0> def h(name) +irb(main):015:0> def hi(name) irb(main):016:1> puts "Hello #{name}!" irb(main):017:1> end -=> nil -irb(main):018:0> h("Matz") +=> :hi +irb(main):018:0> hi("Matz") Hello Matz! => nil {% endhighlight %} @@ -77,14 +78,14 @@ Hello Matz! большой буквы: {% highlight irb %} -irb(main):019:0> def h(name = "World") +irb(main):019:0> def hi(name = "World") irb(main):020:1> puts "Hello #{name.capitalize}!" irb(main):021:1> end -=> nil -irb(main):022:0> h "chris" +=> :hi +irb(main):022:0> hi "chris" Hello Chris! => nil -irb(main):023:0> h +irb(main):023:0> hi Hello World! => nil {% endhighlight %} @@ -114,7 +115,7 @@ irb(main):031:1> def say_bye irb(main):032:2> puts "Bye #{@name}, come back soon." irb(main):033:2> end irb(main):034:1> end -=> nil +=> :say_bye {% endhighlight %} Новое ключевое слово здесь - `class`. Оно служит для объявления нового diff --git a/ru/documentation/quickstart/3/index.md b/ru/documentation/quickstart/3/index.md index 6bddccc79e..3c741c549f 100644 --- a/ru/documentation/quickstart/3/index.md +++ b/ru/documentation/quickstart/3/index.md @@ -35,9 +35,7 @@ Bye Pat, come back soon. {% highlight irb %} irb(main):038:0> g.@name -SyntaxError: compile error -(irb):52: syntax error - from (irb):52 +SyntaxError: (irb):38: syntax error, unexpected tIVAR, expecting '(' {% endhighlight %} Неа, не можем этого сделать. @@ -53,16 +51,19 @@ SyntaxError: compile error {% highlight irb %} irb(main):039:0> Greeter.instance_methods -=> ["method", "send", "object_id", "singleton_methods", - "__send__", "equal?", "taint", "frozen?", - "instance_variable_get", "kind_of?", "to_a", - "instance_eval", "type", "protected_methods", "extend", - "eql?", "display", "instance_variable_set", "hash", - "is_a?", "to_s", "class", "tainted?", "private_methods", - "untaint", "say_hi", "id", "inspect", "==", "===", - "clone", "public_methods", "respond_to?", "freeze", - "say_bye", "__id__", "=~", "methods", "nil?", "dup", - "instance_variables", "instance_of?"] +=> [:say_hi, :say_bye, :instance_of?, :public_send, + :instance_variable_get, :instance_variable_set, + :instance_variable_defined?, :remove_instance_variable, + :private_methods, :kind_of?, :instance_variables, :tap, + :is_a?, :extend, :define_singleton_method, :to_enum, + :enum_for, :<=>, :===, :=~, :!~, :eql?, :respond_to?, + :freeze, :inspect, :display, :send, :object_id, :to_s, + :method, :public_method, :singleton_method, :nil?, :hash, + :class, :singleton_class, :clone, :dup, :itself, :taint, + :tainted?, :untaint, :untrust, :trust, :untrusted?, :methods, + :protected_methods, :frozen?, :public_methods, + :singleton_methods, :!, :==, :!=, :__send__, :equal?, + :instance_eval, :instance_exec, :__id__] {% endhighlight %} Ого! Это куча методов. А мы объявили всего два. Что здесь происходит? @@ -102,7 +103,7 @@ irb(main):043:0> g.respond_to?("to_s") irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} В Ruby вы можете открыть класс снова и изменить его. Изменения будут diff --git a/ru/documentation/quickstart/4/index.md b/ru/documentation/quickstart/4/index.md index 64cef847e8..8a3bd40ad5 100644 --- a/ru/documentation/quickstart/4/index.md +++ b/ru/documentation/quickstart/4/index.md @@ -47,13 +47,13 @@ end ее значение nil, он просто печатает три точки. Нет смысла приветствовать несуществующее, верно? -## Циклы и повторы – так же известные как итерации +## Циклы и повторы – также известные как итерации -Если объект, записанный в переменной `@names` откликается на метод -`each`, значит он является объектом на котором вы можете итерировать. И -итерируя по нему вы можете приветствовать каждого человека за раз. И -наконец, если `@names` является чем-то совсем другим, просто превратим -ее в строку автоматически и поприветствуем. +Если объект, записанный в переменной `@names`, откликается на метод +`each`, значит он является объектом, на котором вы можете итерировать. +И, итерируя по нему, вы можете приветствовать каждого человека за раз. +И, наконец, если переменная `@names` является чем-то совсем другим, +просто превратим её в строку автоматически и поприветствуем. Давайте взглянем на итератор повнимательнее: @@ -64,14 +64,14 @@ end {% endhighlight %} `each` – это метод, который принимает блок кода и запускает этот блок -кода для каждого элемента в списке. И в примере выше, код между `do` и -`end`, это просто некий блок. Блок это что-то вроде анонимной функции +кода для каждого элемента в списке. И в примере выше код между `do` и +`end` – это просто некий блок. Блок – это что-то вроде анонимной функции или `лямбды`. Переменная между знаками (|) – это параметр для данного блока, как раз тот самый элемент списка, на которым будет производится действие в блоке кода. -Что происходит здесь, это то, что каждая запись в списке, `name`, -привязана к элементу в списке, и таким образом выражение `puts "Hello +Что происходит здесь, это то, что каждая запись в списке – `name` – +привязана к элементу в списке, и, таким образом, выражение `puts "Hello #{name}!"` будет выполнено с этим элементом. Большинство других языков программирования поддерживают прохождение по @@ -86,17 +86,17 @@ for (i=0; i class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} Ruby’de bir sınıfı açıp değiştirebilirsiniz. Yapılan değişiklikler diff --git a/vi/documentation/quickstart/3/index.md b/vi/documentation/quickstart/3/index.md index a1758b39ee..72daba846b 100644 --- a/vi/documentation/quickstart/3/index.md +++ b/vi/documentation/quickstart/3/index.md @@ -101,7 +101,7 @@ truy xuất dữ liệu tới các biến của một đối tượng. irb(main):044:0> class ChàoMừng irb(main):045:1> attr_accessor :tên irb(main):046:1> end -=> nil +=> [:tên, :tên=] {% endhighlight %} Trong Ruby, bạn có thể mở một lớp ở phía trên và sửa nó. Sự thay đổi sẽ xuất diff --git a/zh_cn/documentation/quickstart/3/index.md b/zh_cn/documentation/quickstart/3/index.md index 02f0b446e0..2ab127eb63 100644 --- a/zh_cn/documentation/quickstart/3/index.md +++ b/zh_cn/documentation/quickstart/3/index.md @@ -92,7 +92,7 @@ irb(main):043:0> g.respond_to?("to_s") irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} 在 Ruby 里,您可以把一个类打开然后改变它。这些改变会对以后生成的甚至是已经生成的对象产生即时效果。 下面我们来建一个新的 Greeter diff --git a/zh_tw/documentation/quickstart/3/index.md b/zh_tw/documentation/quickstart/3/index.md index 76715bfe28..55260f7df3 100644 --- a/zh_tw/documentation/quickstart/3/index.md +++ b/zh_tw/documentation/quickstart/3/index.md @@ -92,7 +92,7 @@ irb(main):043:0> g.respond_to?("to_s") irb(main):044:0> class Greeter irb(main):045:1> attr_accessor :name irb(main):046:1> end -=> nil +=> [:name, :name=] {% endhighlight %} 在 Ruby From 5dfae1c611e4c15fa143b8c6ded992d2d0c11162 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Wed, 1 Jan 2025 15:10:13 -0500 Subject: [PATCH 488/607] Translate Ruby 3.4.0 rc1 Released (es) (#3457) --- .../2024-12-12-ruby-3-4-0-rc1-released.md | 224 ++++++++++++++++++ 1 file changed, 224 insertions(+) create mode 100644 es/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md diff --git a/es/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/es/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md new file mode 100644 index 0000000000..5500d098a4 --- /dev/null +++ b/es/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -0,0 +1,224 @@ +--- +layout: news_post +title: "Publicado Ruby 3.4.0 rc1" +author: "naruse" +translator: vtamara +date: 2024-12-12 00:00:00 +0000 +lang: es +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-rc" | first %} +Nos complace anunciar la publicación de Ruby {{ release.version }}. + +## Prism + +Cambia el analizador sintáctico predeterminado de parse.y a Prism. +[[Característica #20564]] + +## Recolector de basura modular + +* Pueden cargarse dinámicamente implementaciones alternativas del recolector + de basura (__Garbage Collector__ o __GC__) mediante la característica + recolector de basura modular. Para habilitar esta característica + configure Ruby con `--with-modular-gc` durante la compilación. + Las librerías del GC pueden cargarse en tiempo de ejecución con la + variable de ambiente `RUBY_GC_LIBRARY`. [[Característica #20351]] + +* El recolector de basura incorporado en Ruby se ha dividido en un archivo + `gc/default/default.c` que interacuta con Ruby usando la API definida en + `gc/gc_impl.h`. El recolector de basura incorporado ahora puede ser compilado + como librería usando `make modular-gc MODULAR_GC=default` y se habilita + con la variable de ambiente `RUBY_GC_LIBRARY=default`. [[Característica#20470]] + +* Se provee una librería de GC experimental en [MMTk](https://www.mmtk.io/). + Esta librería de GC puede compilarse usando `make modular-gc MODULAR_GC=mmtk` + y se habiita usando la variable de ambiente `RUBY_GC_LIBRARY=mmtk`. + Esto requiere las herramientas de Rust en el computador donde se compila. + [[Característica#20860]] + + +## Cambios en el lenguaje + +* Las cadenas literales en archivos sin el comentario `frozen_string_literal` + ahora emiten una advertencia de deprecación cuando se mutan. + Estas advertencia pueden ser habilitadas con `-W:deprecated` + o estableciendo `Warning[:deprecated] = true`. + Para deshabilitar este cambio, puede ejecutar Ruby con el argumento + `--disable-frozen-string-literal` desde la línea de ordenes. + [[Característica #20205]] + +* `it` se agrega para referenciar un parámetro de bloque. + [[Característica #18980]] + +* Ahora se soporta hacer splat de palabras clave con `nil` cuando se + llaman métodos. + `**nil` se trata de manera similar a `**{}`, no pasar palabras clave, + y no llamar método de conversión alguno. [[Falla #20064]] + +* Ya no se permite pasar bloques como índices. [[Falla #19918]] + +* Ya no se permiten argumentos de palabra clave como índices. [[Falla #20218]] + +## YJIT + +TL;DR: +* Mejor resultado en la mayoría de pruebas de desempeño tanto en plataformas + x86-64 como en arm64. +* Uso de memoria reducido en los meta-datos de compilación. +* Se corrigen diversas fallas. YJIT es ahora más robusto y mejor probado. + +Nuevas características: +* Agrega un límite de memoria unificado mediante la opción en la línea + de ordenes `--yjit-mem-size` (128MiB de manera predeterminada) + que hace seguimiento al uso total de memoria de YJIT y que es más + intuitivo que el anterior `--yjit-exec-mem-size`. +* Ahora hay más estadísticas disponible con `RubyVM::YJIT.runtime_stats` +* Añade a la bitácora de compilación seguimiento de lo que + se ha compilado con `--yjit-log` +* La cola de la bitácora también está disponible en tiempo de ejecución + con `RubyVM::YJIT.log` +* Añade soporte para constantes compartidas en modo multi-ractor. +* Ahora puede hacer seguimiento a la cuenta de salidas con `--yjit-trace-exits=COUNTER` + +Nuevas optimizaciones: +* El contexto comprimido reduce la memoria requerida para almacenar los + metadatos de YJIT. +* Localizador mejorado con la habilidad de localizar registros para + variables locales. +* Cuando YJIT está habilitado, usa más primitivas fundamentales escritas + en Ruby: + * `Array#each`, `Array#select`, `Array#map` reescritas en Ruby para dar + mejor desempeño [[Caracteristica #20182]]. +* Habilidad de ejecutar en línea métodos pequeños/triviales tales como: + * Métodos vacios. + * Métodos que retornan una constante. + * Métodos que retornan self. + * Métodos que retornan directamente un argumento. +* codegen especializado para muchos más métodos en tiempo de ejecución. +* Optimiza `String#getbyte`, `String#setbyte` y otros métodos de string. +* Optimiza operaciones entre bits para hacer más rápidas las manipulaciones de + bits/bytes a bajo nivel. +* Otra optimizaciones incrementales diversas. + +## Clases fundamentales actualizadas + +Nota: Listamos sólo actualizaciones mayores de clases. + +* Exception + + * `Exception#set_backtrace` ahora acepta arreglos de + `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` y `Fiber#raise` también aceptan + este nuevo formato. [[Característica #13557]] + +* Range + + * `Range#size` ahora lanza `TypeError` si el rango no es iterable. + [[Varios #18984]] + + + +## Problemas de compatibilidad + +Nota: Excluyendo correcciones a problemas en características. + +* Los mensajes de error y la presentación de trazas han sido cambiadas. + * Se usa un sólo apóstrofe en lugar de un apostrofe invertido para + iniciar una cita. [[Característica #16495]] + * Se presenta un nombre de clase antes del nombre de un método + (sólo cuando la clase tiene un nombre permanente). [[Característica #19117]] + * También se cambiaron de la manera análoga los métodos `Kernel#caller`, + `Thread::Backtrace::Location`, etc. + + ``` + Antes: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + Ahora: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + + +## Actualizaciones del API en C + +* Se han eliminado `rb_newobj` y `rb_newobj_of` (y los respectivos macros + `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`). + [[Característica #20265]] +* Se eliminó la función despreciada `rb_gc_force_recycle`. + [[Característica #18290]] + +## Cambios diversos + +* Al pasar un bloque a un método que no use el bloque recibido se + presentará una advertencia en modo verboso (`-w`). + [[Característica #15554]] + +* Al redefinir algunos métodos fundamentales que se han optimizado + de manera especial por el interprete y por JIT como `String.freeze` o + `Integer#+` ahora produce una advertencia en la clase de + desempeño (`-W:performance` o `Warning[:performance] = true`). + [[Característica #20429]] + +Vea notas de publicación como las de +[Logger](https://github.com/ruby/logger/releases) o +archivos de cambios (changelog) con detalles de las gemas +predeterminadas y las gemas incluidas. + +Ver más detalles en +[NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +o en la [bitácora de contribuciones](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}). + +Con estas novedades, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +desde Ruby 3.3.0! + + +## Descargas + +* <{{ 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 }} + +## Qué es Ruby + +Ruby fu desarrollado inicialmente por Matz (Yukihiro Matsumoto) en 1993, +y ahora se desarrolla como Fuentes Abiertas. Corre en múltiples +plataformas y se usa en todo el mundo especialmente para +de desarrollo de aplicaciones web. + +[Característica #13557]: https://bugs.ruby-lang.org/issues/13557 +[Característica #15554]: https://bugs.ruby-lang.org/issues/15554 +[Característica #16495]: https://bugs.ruby-lang.org/issues/16495 +[Característica #18290]: https://bugs.ruby-lang.org/issues/18290 +[Característica #18980]: https://bugs.ruby-lang.org/issues/18980 +[Varios #18984]: https://bugs.ruby-lang.org/issues/18984 +[Característica #19117]: https://bugs.ruby-lang.org/issues/19117 +[Falla #19918]: https://bugs.ruby-lang.org/issues/19918 +[Falla #20064]: https://bugs.ruby-lang.org/issues/20064 +[Característica #20182]: https://bugs.ruby-lang.org/issues/20182 +[Característica #20205]: https://bugs.ruby-lang.org/issues/20205 +[Falla #20218]: https://bugs.ruby-lang.org/issues/20218 +[Característica #20265]: https://bugs.ruby-lang.org/issues/20265 +[Característica #20351]: https://bugs.ruby-lang.org/issues/20351 +[Característica #20429]: https://bugs.ruby-lang.org/issues/20429 +[Característica #20470]: https://bugs.ruby-lang.org/issues/20470 +[Característica #20564]: https://bugs.ruby-lang.org/issues/20564 +[Característica #20860]: https://bugs.ruby-lang.org/issues/20860 From 5feee001a7f0d1169d10d05635f3fd600bedd0fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Wed, 1 Jan 2025 15:13:31 -0500 Subject: [PATCH 489/607] release (#3458) --- es/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/es/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/es/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md index 5500d098a4..e7112448bf 100644 --- a/es/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md +++ b/es/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -7,7 +7,7 @@ date: 2024-12-12 00:00:00 +0000 lang: es --- -{% assign release = site.data.releases | where: "version", "3.4.0-rc" | first %} +{% assign release = site.data.releases | where: "version", "3.4.0-rc1" | first %} Nos complace anunciar la publicación de Ruby {{ release.version }}. ## Prism From 0cb2dd796b79e9640bf893e60c290226ec26a558 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Wed, 1 Jan 2025 16:44:51 -0500 Subject: [PATCH 490/607] Translate Ruby 3.4.0 Released (es) (#3459) --- .../_posts/2024-12-25-ruby-3-4-0-released.md | 427 ++++++++++++++++++ 1 file changed, 427 insertions(+) create mode 100644 es/news/_posts/2024-12-25-ruby-3-4-0-released.md diff --git a/es/news/_posts/2024-12-25-ruby-3-4-0-released.md b/es/news/_posts/2024-12-25-ruby-3-4-0-released.md new file mode 100644 index 0000000000..c995dacd83 --- /dev/null +++ b/es/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -0,0 +1,427 @@ +--- +layout: news_post +title: "Publicado Ruby 3.4.0" +author: "naruse" +translator: vtamara +date: 2024-12-25 00:00:00 +0000 +lang: es +--- + +{% assign release = site.data.releases | where: "version", "3.4.0" | first %} +Nos complace anunciar la publicación de Ruby {{ release.version }}. +Ruby 3.4 añade la referencia a parámetros de bloque `it`, cambia Prism +como analizador sintáctico predeterminado, agrega soporte para +Happy Eyeballs Version 2 a la librería de zócales, mejora YJIT, +agrega recolector de basura modular, y otros cambios. + +## Se introduce `it` + +`it` se agrega para referenciar un parámetro de bloque sin un nombre de +variable. [[Característica #18980]] + +```ruby +ary = ["foo", "bar", "baz"] + +p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"] +``` + +`it` se comporta de manera muy similar a `_1`. Cuando la intención es usar +sólo `_1` en un bloque, el potencial de otros parámetros numerados tales +como `_2` aparece para imponer una carga cognitiva extra para los lectores. +Así que `it` se introdujo como un sobrenombre práctico. Use `it` en casos +simples donde `it` hable por si mismo, tales como bloques de una sola linea. + +## Prism es ahora el analizador sintáctico predeterminado + +Cambia el analizador sintáctico predeterminado de parse.y a Prism. +[[Característica #20564]] + +Esta es una mejora interna y debería corresponder a un cambio mínimo +visible al usuario. Si nota algún problema de compatibilidad, por favor +reportelo. + +Para usar el analizador convencional, use el argumento para la línea de +ordenes `--parser=parse.y`. + +## La librería de sockets ahora incluye la característica Happy Eyeballs Version 2 (RFC 8305) + +La librería de sockets ahora incluye [Happy Eyeballs Version 2 (RFC 8305)](https://datatracker.ietf.org/doc/html/rfc8305), +la última versión estandarizada de una aproximación ampliamente adoptada para +mejorar la conectividad en muchos lenguajes de programación, en +`TCPSocket.new` (`TCPSocket.open`) y `Socket.tcp`. +Esta mejora le permite a Ruby proveer conexiones de red eficientes y robustas, +adaptadas a los ambientes de internet modernos. + +Hasta Ruby 3.3, estos métodos efectuaban resolución den nombres e intentos de +conexión de manera serial. Con este algoritmo, estos ahora operan así: + +1. Efectuar la resolución de nombres IPv6 e IPv4 concurrentemente +2. Intentar la conexión con las direcciones IP resueltas, priorizando IPv6, + con intentos en paralelo escalonados en intervalos de 250ms +3. Retornar la primera conexión exitosa mientras cancela cualquier otra + +Esto asegura que se minimizan demoras en la conexión, aún si el protocolo +especificado o la dirección IP se demoran o no están disponible. +Esta característica esta habilita de manera predeterminada, así que no +se requiere configuración adicional para usarla. Para deshabilitarla, +establezca la variable de ambiente `RUBY_TCP_NO_FAST_FALLBACK=1` o llame +`Socket.tcp_fast_fallback=false`. +O deshabilitarlas por método, usando el argumento de palabra clave +`fast_fallback: false`. + +## YJIT + +### TL;DR + +* Mejor resultado en la mayoría de pruebas de desempeño tanto en plataformas + x86-64 como en arm64. +* Uso de memoria reducido mediante meta-datos comprimidos y un límite + de memoria unificado. +* Se corrigen diversas fallas: YJIT es ahora más robusto y mejor probado. + +### Nuevas características + +* Opciones en la línea de ordenes + * `--yjit-mem-size` introudce un límite de memoria unificado + (128MiB predeterminado) para hacer seguimiento al uso total de + memoria de YJIT, siendo una alternativa más intuitiva respecto + a la opción anterior `--yjit-exec-mem-size`. + * `--yjit-log` permite que la bitácora de compilación haga seguimiento + a lo que se compila. +* API de Ruby + * `RubyVM::YJIT.log` da acceso a la cola de la bitácora de compilación + en tiempo de ejecución. +* Estadísticas YJIT + * `RubyVM::YJIT.runtime_stats` ahora da estadísticas adicionales de + invalidación, compilación en línea y codificación de meta-datos. + +### Nuevas optimizaciones + +* Añade soporte para constantes compartidas en modo multi-ractor. +* Ahora puede hacer seguimiento a la cuenta de salidas con + `--yjit-trace-exits=COUNTER` + +### Nuevas optimizaciones: +* El contexto comprimido reduce la memoria requerida para almacenar los + metadatos de YJIT. +* Localiza registros para variables locales y para argumentos de métodos. +* Cuando YJIT está habilitado, usa más primitivas fundamentales escritas + en Ruby: + * `Array#each`, `Array#select`, `Array#map` reescritas en Ruby para dar + mejor desempeño [[Caracteristica #20182]]. +* Habilidad de ejecutar en línea métodos pequeños/triviales tales como: + * Métodos vacios. + * Métodos que retornan una constante. + * Métodos que retornan self. + * Métodos que retornan directamente un argumento. +* Codegen especializado para muchos más métodos en tiempo de ejecución. +* Optimiza `String#getbyte`, `String#setbyte` y otros métodos de string. +* Optimiza operaciones entre bits para acelerar las manipulaciones de + bits/bytes a bajo nivel. +* Otra optimizaciones incrementales diversas. + + +## Recolector de basura modular + +* Pueden cargarse dinámicamente implementaciones alternativas del recolector + de basura (__Garbage Collector__ o __GC__) mediante la característica + recolector de basura modular. Para habilitar esta característica + configure Ruby con `--with-modular-gc` durante la compilación. + Las librerías del GC pueden cargarse en tiempo de ejecución con la + variable de ambiente `RUBY_GC_LIBRARY`. [[Característica #20351]] + +* El recolector de basura incorporado en Ruby se ha dividido en un archivo + `gc/default/default.c` que interacuta con Ruby usando la API definida en + `gc/gc_impl.h`. El recolector de basura incorporado ahora puede ser compilado + como librería usando `make modular-gc MODULAR_GC=default` y se habilita + con la variable de ambiente `RUBY_GC_LIBRARY=default`. [[Característica#20470]] + +* Se provee una librería de GC experimental en [MMTk](https://www.mmtk.io/). + Esta librería de GC puede compilarse usando `make modular-gc MODULAR_GC=mmtk` + y se habiita usando la variable de ambiente `RUBY_GC_LIBRARY=mmtk`. + Esto requiere las herramientas de Rust en el computador donde se compila. + [[Característica#20860]] + + +## Cambios en el lenguaje + +* Las cadenas literales en archivos sin el comentario `frozen_string_literal` + ahora emiten una advertencia de deprecación cuando se mutan. + Estas advertencia pueden ser habilitadas con `-W:deprecated` + o estableciendo `Warning[:deprecated] = true`. + Para deshabilitar este cambio, puede ejecutar Ruby con el argumento + `--disable-frozen-string-literal` desde la línea de ordenes. + [[Característica #20205]] + +* Ahora se soporta hacer splat de palabras clave con `nil` cuando se + llaman métodos. + `**nil` se trata de manera similar a `**{}`, no pasar palabras clave, + y no llamar método de conversión alguno. [[Falla #20064]] + +* Ya no se permite pasar bloques como índices. [[Falla #19918]] + +* Ya no se permiten argumentos de palabra clave como índices. [[Falla #20218]] + +* El nombre de nivel superior `::Ruby` ahora es reservao, y su definición + producirá una adverencia `Warning[:deprecated]`. [[Característica #20884]] + +## Clases fundamentales actualizadas + +Nota: Listamos sólo actualizaciones notables a las clases fundamentales. + +* Exception + + * `Exception#set_backtrace` ahora acepta arreglos de + `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` y `Fiber#raise` también aceptan + este nuevo formato. [[Característica #13557]] + +* GC + + * `GC.config` agregado para establecer variables de configuración del + recolector de basura. [[Característica #20443]] + + * Se introdujo el parámetro de configuración del GC + `rgengc_allow_full_mark`. Cuando es `false` + el GC sólo marcará objetos jóvenes. + De manera predeterminada es `true`. [[Característica #20443]] + +* Ractor + + * Se permite `require` en un Ractor. El proceso requerido se ejecutará + en el Ractor principal. + Se añade `Ractor._require(feature)` para ejecutar procesos requeridos + en el Ractor principal. [[Característica #20627]] + + * Se agrega `Ractor.main?`. [[Característica #20627]] + + * `Ractor.[]` y `Ractor.[]=` se agregan para acceder al almacenamiento + local del Ractor acutual. [[Característica #20715]] + + * `Ractor.store_if_absent(key){ init }` se añade para inicializar las + variables locales del ractor de manera segura entre hilos. + [[Característica #20875]] + +* Range + + * `Range#size` ahora lanza `TypeError` si el rango no es iterable. + [[Varios #18984]] + + +## Actualizaciones a la librería estándar + +Nota: Listamos sólo actualizaciones notables a las librerías estándar. + +* RubyGems + * Se agrega la opción `--attestation` a gem push. + Permite almacenar la firma a [sigstore.dev] + +* Bundler + * Se añade la configuración `lockfile_checksums` para incluir sumas de + chequeo en archivos de bloqueo frescos + * Se añade bundle lock `--add-checksums` para agregar sumas de chequeo + a archivos de bloqueo existentes. + +* JSON + + * Mejoras de desempeño a `JSON.parse` que resulta 1.5 veces más rápido + que json-2.7.x. + +* Tempfile + + * El argumento de palabra clave `anonymous: true` se implementa en + `Tempfile.create`. + `Tempfile.create(anonymous: true)` elimina inmediatamente el archivo + temporal creado. + Así que las aplicaciones no necesitan eliminarlo. + [[Característica #20497]] + +* win32/sspi.rb + + * Se extrajo esta librería del repositorio Ruby a [ruby/net-http-sspi]. + [[Característica #20775]] + +## Problemas de compatibilidad + +Nota: Excluyendo correcciones a problemas en características. + +* Los mensajes de error y la presentación de trazas han sido cambiadas. + * Se usa un sólo apóstrofe en lugar de un apostrofe invertido para + iniciar una cita. [[Característica #16495]] + * Se presenta un nombre de clase antes del nombre de un método + (sólo cuando la clase tiene un nombre permanente). [[Característica #19117]] + * También se cambiaron de la manera análoga los métodos `Kernel#caller`, + `Thread::Backtrace::Location`, etc. + + ``` + Antes: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + Ahora: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +* Hash#inspect ha cambiado la forma de presentar información. [[Falla #20433]] + + * Las llaves símbolo se presentan usando la sintaxis moderna para + llaves símbolo: `"{usuario: 1}"` + * Otras llaves ahora tienen espacio alrededor de `=>`: + `'{"usuario" => 1}'`, aunque antes no lo tenían: `'{"usuario"=>1}'` + +* Kernel#Float() ahora acepta una cadena en decimal omitiendo la parte decimal. [[Característica #20705]] + + ```rb + Float("1.") #=> 1.0 (antes lanzaba ArgumentError) + Float("1.E-1") #=> 0.1 (antes lanzaba ArgumentError) + ``` + +* String#to_f ahora acepta una cadena decimal que omite la parte decimal. + Note que el resultado cambia cuando se especifica un exponente. + [[Característica #20705]] + + ```rb + "1.".to_f #=> 1.0 + "1.E-1".to_f #=> 0.1 (antes retornaba 1.0) + ``` + +* Refinement#refined_class ha sido eliminada. [[Característica #19714]] + +## Problemas de compatibilidad de la Librería Estándar + +* DidYouMean + + * `DidYouMean::SPELL_CHECKERS[]=` y `DidYouMean::SPELL_CHECKERS.merge!` + eliminadas. + +* Net::HTTP + + * Se eliminaron las siguientes contantes despreciadas: + * `Net::HTTP::ProxyMod` + * `Net::NetPrivate::HTTPRequest` + * `Net::HTTPInformationCode` + * `Net::HTTPSuccessCode` + * `Net::HTTPRedirectionCode` + * `Net::HTTPRetriableCode` + * `Net::HTTPClientErrorCode` + * `Net::HTTPFatalErrorCode` + * `Net::HTTPServerErrorCode` + * `Net::HTTPResponseReceiver` + * `Net::HTTPResponceReceiver` + + Estas constantes fueron despreciadas desde el 2012. + +* Timeout + + * Rechaza valores negativos para Timeout.timeout. [[Falla #20795]] + +* URI + + * Se cambió el analizador predeterminado compatible con el RFC 3986 por + otro compatible con le con el RFC 2396. [[Falla #19266]] + + +## Actualizaciones del API en C + +* Se han eliminado `rb_newobj` y `rb_newobj_of` (y los respectivos macros + `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`). + [[Característica #20265]] +* Se eliminó la función despreciada `rb_gc_force_recycle`. + [[Característica #18290]] + +## Cambios diversos + +* Al pasar un bloque a un método que no use el bloque recibido se + presentará una advertencia en modo verboso (`-w`). + [[Característica #15554]] + +* Al redefinir algunos métodos fundamentales que se han optimizado + de manera especial por el interprete y por JIT como `String.freeze` o + `Integer#+` ahora produce una advertencia en la clase de + desempeño (`-W:performance` o `Warning[:performance] = true`). + [[Característica #20429]] + + +Ver más detalles en +[NEWS]([NEWS](https://docs.ruby-lang.org/en/3.4/NEWS_md.html) +o en la [bitácora de contribuciones](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}). + +Con estas novedades, [{{ release.stats.files_changed }} archivos cambiados, {{ release.stats.insertions }} inserciones(+), {{ release.stats.deletions }} eliminaciones(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +desde Ruby 3.3.0! + +¡Feliz navidad, felices fiestas, y disfrute programando con Ruby 3.4! + +## Descargas + +* <{{ 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 }} + +## Qué es Ruby + +Ruby fu desarrollado inicialmente por Matz (Yukihiro Matsumoto) en 1993, +y ahora se desarrolla como Fuentes Abiertas. Corre en múltiples +plataformas y se usa en todo el mundo especialmente para +de desarrollo de aplicaciones web. + +[Característica #13557]: https://bugs.ruby-lang.org/issues/13557 +[Característica #15554]: https://bugs.ruby-lang.org/issues/15554 +[Característica #16495]: https://bugs.ruby-lang.org/issues/16495 +[Característica #18290]: https://bugs.ruby-lang.org/issues/18290 +[Característica #18980]: https://bugs.ruby-lang.org/issues/18980 +[Varios #18984]: https://bugs.ruby-lang.org/issues/18984 +[Característica #19117]: https://bugs.ruby-lang.org/issues/19117 +[Falla #19918]: https://bugs.ruby-lang.org/issues/19918 +[Falla #20064]: https://bugs.ruby-lang.org/issues/20064 +[Característica #20182]: https://bugs.ruby-lang.org/issues/20182 +[Característica #20205]: https://bugs.ruby-lang.org/issues/20205 +[Falla #20218]: https://bugs.ruby-lang.org/issues/20218 +[Característica #20265]: https://bugs.ruby-lang.org/issues/20265 +[Característica #20351]: https://bugs.ruby-lang.org/issues/20351 +[Característica #20429]: https://bugs.ruby-lang.org/issues/20429 +[Característica #20470]: https://bugs.ruby-lang.org/issues/20470 +[Característica #20564]: https://bugs.ruby-lang.org/issues/20564 +[Característica #20860]: https://bugs.ruby-lang.org/issues/20860 +[Falla #19266]: https://bugs.ruby-lang.org/issues/19266 +[Característica #19714]: https://bugs.ruby-lang.org/issues/19714 +[Falla #19918]: https://bugs.ruby-lang.org/issues/19918 +[Falla #20064]: https://bugs.ruby-lang.org/issues/20064 +[Característica #20182]: https://bugs.ruby-lang.org/issues/20182 +[Característica #20205]: https://bugs.ruby-lang.org/issues/20205 +[Falla #20218]: https://bugs.ruby-lang.org/issues/20218 +[Característica #20265]: https://bugs.ruby-lang.org/issues/20265 +[Característica #20351]: https://bugs.ruby-lang.org/issues/20351 +[Característica #20429]: https://bugs.ruby-lang.org/issues/20429 +[Característica #20443]: https://bugs.ruby-lang.org/issues/20443 +[Característica #20470]: https://bugs.ruby-lang.org/issues/20470 +[Característica #20497]: https://bugs.ruby-lang.org/issues/20497 +[Característica #20564]: https://bugs.ruby-lang.org/issues/20564 +[Falla #20620]: https://bugs.ruby-lang.org/issues/20620 +[Característica #20627]: https://bugs.ruby-lang.org/issues/20627 +[Característica #20705]: https://bugs.ruby-lang.org/issues/20705 +[Característica #20715]: https://bugs.ruby-lang.org/issues/20715 +[Característica #20775]: https://bugs.ruby-lang.org/issues/20775 +[Falla #20795]: https://bugs.ruby-lang.org/issues/20795 +[Característica #20860]: https://bugs.ruby-lang.org/issues/20860 +[Característica #20875]: https://bugs.ruby-lang.org/issues/20875 +[Característica #20884]: https://bugs.ruby-lang.org/issues/20884 +[sigstore.dev]: sigstore.dev +[ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi From 02011282dc3b14768a1fb095eb23cbdab38cb775 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Wed, 1 Jan 2025 17:10:50 -0500 Subject: [PATCH 491/607] Translate Ruby 3.4.1 Released (es) (#3460) --- .../_posts/2024-12-25-ruby-3-4-1-released.md | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 es/news/_posts/2024-12-25-ruby-3-4-1-released.md diff --git a/es/news/_posts/2024-12-25-ruby-3-4-1-released.md b/es/news/_posts/2024-12-25-ruby-3-4-1-released.md new file mode 100644 index 0000000000..eebebe8a17 --- /dev/null +++ b/es/news/_posts/2024-12-25-ruby-3-4-1-released.md @@ -0,0 +1,39 @@ +--- +layout: news_post +title: "Publicado Ruby 3.4.1" +author: "naruse" +translator: vtamara +date: 2024-12-25 00:00:00 +0000 +lang: es +--- + +Se ha publicado Ruby 3.4.1. + +Este corrige la descripción de la versión. + +Ver más detalles en la [publicación de GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_1). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.4.1" | first %} + +* <{{ 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 0b0569424289734bff4e925363d0480cb5225cbc Mon Sep 17 00:00:00 2001 From: Daniel Bovensiepen Li Date: Thu, 2 Jan 2025 12:23:02 +0000 Subject: [PATCH 492/607] doc(de): improve documentation --- de/documentation/quickstart/2/index.md | 32 +++++++++++++------------- de/documentation/quickstart/3/index.md | 29 ++++++++++++----------- 2 files changed, 32 insertions(+), 29 deletions(-) diff --git a/de/documentation/quickstart/2/index.md b/de/documentation/quickstart/2/index.md index 529ed1a156..e3b6a82992 100644 --- a/de/documentation/quickstart/2/index.md +++ b/de/documentation/quickstart/2/index.md @@ -21,18 +21,18 @@ Was machen wir, wenn wir ganz oft “Hallo” sagen wollen, ohne uns die Finger wund zu tippen? Wir definieren eine Methode! {% highlight irb %} -irb(main):010:0> def h +irb(main):010:0> def hi irb(main):011:1> puts "Hallo, Welt!" irb(main):012:1> end -=> nil +=> :hi {% endhighlight %} -Mit dem Code `def h` beginnt man die Methodendefinition. Er teilt Ruby -mit, dass wir eine Methode definieren, deren Name `h` ist. Die nächste +Mit dem Code `def hi` beginnt man die Methodendefinition. Er teilt Ruby +mit, dass wir eine Methode definieren, deren Name `hi` ist. Die nächste Zeile nennt man Rumpf (“Body”) der Methode. Sie ist identisch zu der Zeile, die wir schon von vorhin kennen: `puts "Hallo, Welt!"`. Und schließlich teilt die letzte Zeile `end` Ruby mit, dass wir fertig mit -der Methodendefinition sind. Rubys Antwort `=> nil` sagt uns, dass Ruby +der Methodendefinition sind. Rubys Antwort `=> :hi` sagt uns, dass Ruby das nun weiß. ## Die kurzen, immer wiederkehrenden Lebenszyklen einer Methode @@ -40,10 +40,10 @@ das nun weiß. Rufen wir nun die Methode ein paar Mal auf: {% highlight irb %} -irb(main):013:0> h +irb(main):013:0> hi Hallo, Welt! => nil -irb(main):014:0> h() +irb(main):014:0> hi() Hallo, Welt! => nil {% endhighlight %} @@ -55,15 +55,15 @@ Klammer-Paar ans Ende des Methodennamens setzen, aber das ist nicht notwendig. Was, wenn wir nun Hallo zu einer ganz bestimmten Person statt zur ganzen -Welt sagen möchten? Dann definieren wir `h` einfach neu, so dass ein +Welt sagen möchten? Dann definieren wir `hi` einfach neu, so dass ein Name als Parameter akzeptiert wird: {% highlight irb %} -irb(main):015:0> def h(name) +irb(main):015:0> def hi(name) irb(main):016:1> puts "Hallo, #{name}!" irb(main):017:1> end -=> nil -irb(main):018:0> h("Matz") +=> :hi +irb(main):018:0> hi("Matz") Hallo, Matz! => nil {% endhighlight %} @@ -81,14 +81,14 @@ man auch dazu benutzen, um sicherzugehen, dass der Name einer Person mit einem Großbuchstaben anfängt: {% highlight irb %} -irb(main):019:0> def h(name = "Welt") +irb(main):019:0> def hi(name = "Welt") irb(main):020:1> puts "Hallo, #{name.capitalize}!" irb(main):021:1> end -=> nil -irb(main):022:0> h "chris" +=> :hi +irb(main):022:0> hi "chris" Hallo, Chris! => nil -irb(main):023:0> h +irb(main):023:0> hi Hallo, Welt! => nil {% endhighlight %} @@ -119,7 +119,7 @@ irb(main):031:1> def sag_tschuess irb(main):032:2> puts "Tschuess, #{@name}, bis bald!" irb(main):033:2> end irb(main):034:1> end -=> nil +=> :sag_tschuess {% endhighlight %} Das neue Schlüsselwort hier ist `class`. Damit definieren wir eine neue diff --git a/de/documentation/quickstart/3/index.md b/de/documentation/quickstart/3/index.md index 57c328b987..f0ff49b252 100644 --- a/de/documentation/quickstart/3/index.md +++ b/de/documentation/quickstart/3/index.md @@ -35,9 +35,7 @@ Hmm, und wenn wir direkt auf den Namen im Objekt zugreifen wollen? {% highlight irb %} irb(main):038:0> g.@name -SyntaxError: compile error -(irb):52: syntax error - from (irb):52 +:187:in `loop': (irb):52: syntax error, unexpected instance variable (SyntaxError) {% endhighlight %} Nö, das geht offensichtlich nicht. @@ -53,16 +51,21 @@ Welche Methoden existieren nun für Greeter-Objekte? {% highlight irb %} irb(main):039:0> Greeter.instance_methods -=> ["method", "send", "object_id", "singleton_methods", - "__send__", "equal?", "taint", "frozen?", - "instance_variable_get", "kind_of?", "to_a", - "instance_eval", "type", "protected_methods", "extend", - "eql?", "display", "instance_variable_set", "hash", - "is_a?", "to_s", "class", "tainted?", "private_methods", - "untaint", "sag_hallo", "id", "inspect", "==", "===", - "clone", "public_methods", "respond_to?", "freeze", - "sag_tschuess", "__id__", "=~", "methods", "nil?", "dup", - "instance_variables", "instance_of?"] +=> +[:sag_hallo, :sag_tschuess, :to_yaml, :to_json, + :pretty_print, :pretty_print_inspect, :pretty_print_cycle, + :pretty_print_instance_variables, :Namespace, + :singleton_class, :dup, :itself, :methods, + :singleton_methods, :protected_methods, :private_methods, + :public_methods, :instance_variables, :instance_variable_get, + :instance_variable_set, :instance_variable_defined?, + :remove_instance_variable, :instance_of?, :kind_of?, :is_a?, + :display, :TypeName, :public_send, :extend, :clone, :<=>, + :===, :class, :!~, :tap, :frozen?, :yield_self, :then, :nil?, + :eql?, :respond_to?, :method, :public_method, :singleton_method, + :define_singleton_method, :hash, :freeze, :inspect, :object_id, + :send, :to_s, :pretty_inspect, :to_enum, :enum_for, :equal?, :!, + :__send__, :==, :!=, :instance_eval, :instance_exec, :__id__] {% endhighlight %} Hoppla, das sind aber ganz schön viele! Wir haben doch nur zwei Methoden From 6f821c4659dc21cc8d225675f28ef3b338f046dc Mon Sep 17 00:00:00 2001 From: Shia Date: Sun, 5 Jan 2025 14:07:20 +0900 Subject: [PATCH 493/607] Translate "Add Rails at scale to the list of blogs" (ko) (#3462) * Translate "Add Rails at scale to the list of blogs" (ko) * Update ko/community/weblogs/index.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ko/community/weblogs/index.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ko/community/weblogs/index.md b/ko/community/weblogs/index.md index cfc03ff4bb..c2b88ca4f8 100644 --- a/ko/community/weblogs/index.md +++ b/ko/community/weblogs/index.md @@ -32,6 +32,8 @@ Ruby 블로그와 뉴스레터는 지난 몇 년간 폭발적으로 많아졌고 * [**Ruby on Rails Blog**][ruby-on-rails-blog]는 Ruby on Rails 팀의 공식 그룹 블로그입니다. Rails를 이용하고 있다면 이 블로그는 보안 업데이트 알림과 광범위한 Rails 커뮤니티에 대한 전반적인 정보를 얻는 데 필수입니다. +* [**Rails at Scale**][rails-at-scale]에는 Ruby와 Rails의 발전을 위해 + 이루어진 최근 작업에 대해 논의한 게시물이 있습니다. ### 널리 알리기 @@ -49,3 +51,4 @@ Ruby는 [reddit][reddit], [Hacker News][hn]의 프로그래밍 뉴스에서도 [reddit]: http://www.reddit.com/r/ruby [hn]: http://news.ycombinator.com/ [short-ruby-newsletter]: https://newsletter.shortruby.com/ +[rails-at-scale]: https://railsatscale.com/ From cac8903c5970ba64a9b7e747233311e10d18dc67 Mon Sep 17 00:00:00 2001 From: gaojun Date: Fri, 27 Dec 2024 15:36:21 +0800 Subject: [PATCH 494/607] Fix broken link of 3.4.0 release news 1. Add missing [Bug #20433] link 2. Fix sigstore.dev link. Previous link points to a relative link --- en/news/_posts/2024-12-25-ruby-3-4-0-released.md | 3 ++- ja/news/_posts/2024-12-25-ruby-3-4-0-released.md | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/en/news/_posts/2024-12-25-ruby-3-4-0-released.md b/en/news/_posts/2024-12-25-ruby-3-4-0-released.md index 2961df95c9..5a8d734455 100644 --- a/en/news/_posts/2024-12-25-ruby-3-4-0-released.md +++ b/en/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -338,8 +338,9 @@ and is used all over the world especially for web development. [Feature #20715]: https://bugs.ruby-lang.org/issues/20715 [Feature #20775]: https://bugs.ruby-lang.org/issues/20775 [Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 [Feature #20860]: https://bugs.ruby-lang.org/issues/20860 [Feature #20875]: https://bugs.ruby-lang.org/issues/20875 [Feature #20884]: https://bugs.ruby-lang.org/issues/20884 -[sigstore.dev]: sigstore.dev +[sigstore.dev]: https://www.sigstore.dev [ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi diff --git a/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md b/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md index 4513284779..07bd85c495 100644 --- a/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md +++ b/ja/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -307,6 +307,7 @@ Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始めら [Feature #20715]: https://bugs.ruby-lang.org/issues/20715 [Feature #20775]: https://bugs.ruby-lang.org/issues/20775 [Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 [Feature #20860]: https://bugs.ruby-lang.org/issues/20860 [Feature #20875]: https://bugs.ruby-lang.org/issues/20875 [Feature #20884]: https://bugs.ruby-lang.org/issues/20884 From 913ce68eaf7ded4fb7d26880919efa4fd23ef686 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 7 Jan 2025 09:44:46 +0900 Subject: [PATCH 495/607] Fix broken link of 3.4.0 release news (ko) --- ko/news/_posts/2024-12-25-ruby-3-4-0-released.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ko/news/_posts/2024-12-25-ruby-3-4-0-released.md b/ko/news/_posts/2024-12-25-ruby-3-4-0-released.md index b1125bdfc9..5c9f8b0d78 100644 --- a/ko/news/_posts/2024-12-25-ruby-3-4-0-released.md +++ b/ko/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -337,8 +337,9 @@ Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, [Feature #20715]: https://bugs.ruby-lang.org/issues/20715 [Feature #20775]: https://bugs.ruby-lang.org/issues/20775 [Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 [Feature #20860]: https://bugs.ruby-lang.org/issues/20860 [Feature #20875]: https://bugs.ruby-lang.org/issues/20875 [Feature #20884]: https://bugs.ruby-lang.org/issues/20884 -[sigstore.dev]: sigstore.dev +[sigstore.dev]: https://www.sigstore.dev [ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi From add9baa10bed308b0bc057f3dbf4b815ed59dce8 Mon Sep 17 00:00:00 2001 From: Daniel Bovensiepen Li Date: Tue, 7 Jan 2025 11:48:12 +0000 Subject: [PATCH 496/607] doc(de): fix links --- de/news/_posts/2024-12-25-ruby-3-4-0-released.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/de/news/_posts/2024-12-25-ruby-3-4-0-released.md b/de/news/_posts/2024-12-25-ruby-3-4-0-released.md index e1abbff391..a30d6c7e7d 100644 --- a/de/news/_posts/2024-12-25-ruby-3-4-0-released.md +++ b/de/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -311,8 +311,9 @@ und wird weltweit vor allem für die Webentwicklung verwendet. [Feature #20715]: https://bugs.ruby-lang.org/issues/20715 [Feature #20775]: https://bugs.ruby-lang.org/issues/20775 [Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 [Feature #20860]: https://bugs.ruby-lang.org/issues/20860 [Feature #20875]: https://bugs.ruby-lang.org/issues/20875 [Feature #20884]: https://bugs.ruby-lang.org/issues/20884 -[sigstore.dev]: sigstore.dev +[sigstore.dev]: https://www.sigstore.dev [ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi From f6302b91afce0351d2cf0f5645c03e6bc0d1d60d Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sun, 12 Jan 2025 20:34:44 +0800 Subject: [PATCH 497/607] Update document index page (zh_tw) --- zh_tw/documentation/index.md | 214 +++++++++++++++++++++++++++-------- 1 file changed, 167 insertions(+), 47 deletions(-) diff --git a/zh_tw/documentation/index.md b/zh_tw/documentation/index.md index f25d180b11..664e710769 100644 --- a/zh_tw/documentation/index.md +++ b/zh_tw/documentation/index.md @@ -11,62 +11,127 @@ lang: zh_tw 儘管可以輕鬆的[在瀏覽器試玩 Ruby ][1],你還是可以閱讀[安裝指南](installation/)來幫助你安裝 Ruby。 +### 官方 Ruby 文件 + +[docs.ruby-lang.org/en][docs-rlo]: 包含所有 Ruby 2.1 版本之後的文件。 + +[docs.ruby-lang.org/en/3.4][docs-rlo-3.4]: Ruby 3.4 版本文件。 + +[docs.ruby-lang.org/en/master][docs-rlo-master]: Ruby master 分支版本文件。 + +[C Extension Guide][docs-rlo-extension]: 為 Ruby 建立 C 延伸套件的深度指南。 + ### 入門 [官方 FAQ](/en/documentation/faq/) : 官方常見問題與解答。 -[Ruby Koans][2] -: Ruby Koans 導引你走上學習 Ruby 的啟蒙之路。可以學到 Ruby 語言、語法、結構、常用函數與函式庫。 - 當然也少不了 Ruby 的文化。 - -[Why’s (Poignant) Guide to Ruby][5] -: 非比尋常但玩味無窮的書,透過故事、幽默與漫畫來教會你 Ruby。由 *why the lucky - stiff* 創作,本書是學習 Ruby 的經典大作。 - -[Ruby Essentials][7] -: 免費的線上電子書,讓你可以一步步地學習 Ruby。 +[Try Ruby][1] +: 您可以在您的瀏覽器上體驗 Ruby。 [Learn to Program][8] : 由 Chris Pine 撰寫的程式語言入門。適合完全沒有程式設計經驗的朋友。 -[Learn Ruby the Hard Way][38] -: 一系列說明完善的練習,導引你從完全零基礎一直介紹到物件導向程式設計與 Web 開發, +[Ruby in Twenty Minutes][rubyin20] +: 少於 20 分鐘就能完成的Ruby 小型教學。 -### 學習手冊 +[The Odin Project][odin] +: 開源的全端課程。 -[Programming Ruby][9] -: 這是 Ruby 的第一本英文書,第一版開放線上免費閱讀 [Pragmatic Programmers' book][10] 。 +[excercism][exercism] +: 包含 120 個題目、自動分析與個人指導。 -[The Ruby Programming Wikibook][12] -: 給初學者到中等程度的線上手冊以及語言參考。 +[Codecademy][codecademy] +: 包含多種主題的線上教學網站。 -### 參考文件 +### 手冊 / 書籍 -[Official API Documentation][docs-rlo-en] -: 各種版本的 Ruby 官方 API 文件,包含當前未釋出的版本(trunk)。 +#### 初學者 -[Ruby Core Reference][13] -: 直接從原始碼拉出來的 [RDoc][14] 文件,包括所有的核心類別和模組(例如 String、Array、Symbol 等)。 +[Programming Ruby 3.3][pickaxe] +: 這是 Ruby 的第一本英文書,最近更新到了 Ruby 3.3 。 -[Ruby Standard Library Reference][15] -: 也是從從原始碼拉出來的 RDoc 文件,記載了 Ruby 的標準函式庫。 +[The Well-Grounded Rubyist][grounded] +: 本教學從您的第一個 Ruby 程式開始,並帶您逐步了解反射、執行緒和遞迴等複雜主題。 -[Ruby C API Reference][extensions] -: 官方 Ruby 的 C API 介紹文件,有助於你撰寫 C 擴充程式或是貢獻到 Ruby 的開發。 +#### 進階者 -[RubyDoc.info][16] -: 一站式站點,擁有 RubyGems 與 GitHub 上托管的 Ruby 專案的文件。 +[Practical OOD in Ruby (POODR)][poodr] +: 關於一個程式設計師如何撰寫物件導向程式碼的故事。 -[Ruby & Rails Searchable API Docs][17] -: 可以聰明搜索 Ruby 與 Rails 的文件。 +#### 專家 -[APIdock][18] -: Ruby、Rails 與 RSpec 的文件,具有使用者的評論。 +[Metaprogramming][meta] +: 用簡單易懂的方式解釋 metaprogramming。 + +[Ruby Under a Microscope (RUM)][microscope] +: Ruby 內部結構的圖解指南。 + +### 社群文件 + +這些文件網站由 Ruby 社群維護。 + +[RubyDoc.info][16] +: 一站式站點,擁有 RubyGems 與 GitHub 上托管的 Ruby 專案的文件。 [RubyAPI.org][rubyapi-org] : 簡單搜尋瀏覽 Ruby 類別、模組及方法。 +[ruby-doc.org][39] +: 線上 API 文件。 + +[DevDocs.io][40] +: 線上 API 文件。 + +[Ruby QuickRef][42] +: Ruby 快速參考文件。 + +[rubyreferences][43] +: 參考文件 + 版本變更細節。 + +### 程式碼風格指南 + +[rubystyle.guide][44] +: RuboCop 的 Ruby 程式碼風格指南。 + +[RuboCop][45] +: 自動化檢查與執行程式碼風格指南。 + +[Shopify][46] +: Shopify 的 Ruby 程式碼風格指南。 + +[GitLab][47] +: GitLab 的 Ruby 程式碼風格指南。 + +[Airbnb][48] +: Airbnb 的 Ruby 程式碼風格指南。 + +[w3resource][49] +: W3 的 Ruby 程式碼風格指南。 + +# 工具 + +[IRB][50] +: 互動式 Ruby Read-Eval-Print-Loop (REPL)。 + +[Pry][51] +: Ruby REPL 的替代方案。 + +[Rake][52] +: make-like 的 Ruby 建置工具。 + +[RI][53] +: (Ruby Information) 是 Ruby 命令列工具,可以快速、輕鬆地線上存取 Ruby 文件。 + +[RBS][54] +: Ruby 的類型簽名。 + +[TypeProf][55] +: 一種實驗性的類型級 Ruby 解釋器,用於測試和理解 Ruby 程式碼。 + +[Steep][56] +: Ruby 靜態類型檢查器。 + ### 編輯器與整合開發環境 您可以用操作系統內建的編輯器來撰寫 Ruby。為了更有效的寫程式,值得選個 Ruby 基本特性支援良好的編輯器(如:語法高亮、檔案瀏覽)或是有更進階功能的整合開發環境(如:程式碼補全、重構、支持測試等。) @@ -75,16 +140,17 @@ lang: zh_tw * Linux 與跨平台: * [Aptana Studio][19] - * [Emacs][20] 用 [Ruby mode][21] 配 [Rsense][22] + * [Emacs][20] 用 [Ruby mode][21] 或 [Enhanced Ruby mode][enh-ruby-mode] * [Geany][23] * [gedit][24] - * [Vim][25] 用 [vim-ruby][26] 插件與 [Rsense][22] + * [Vim][25] 用 [vim-ruby][26] 插件 + * [NeoVim][neovim] * [RubyMine][27] * [SciTe][28] * [NetBeans][36] * [Sublime Text][37] - * [Atom][atom] * [Visual Studio Code][vscode] + * [Zed][zed] * Windows 作業系統: * [Notepad++][29] @@ -92,20 +158,44 @@ lang: zh_tw * macOS 作業系統: * [TextMate][32] * [BBEdit][33] - * [Dash][39] (瀏覽文件用) + * [Dash][dash] (瀏覽文件用) + +部分編輯器支援 Language Server Protocol (LSP),Shopify 的 [ruby-lsp][ruby-lsp] 是最受歡的的 Ruby LSP 之一。 ### 進階閱讀 [Ruby-Doc.org][34] 維護了一份簡單易懂的英文文件列表。如有任何 Ruby 相關的問題,[郵件論壇](/en/community/mailing-lists/)是個問問題的好地方。 +### 較舊的閱讀資源 +這些連結內容也很突出,但已經很久沒有更新了。 + +[Ruby Koans][2] +: Ruby Koans 導引你走上學習 Ruby 的啟蒙之路。可以學到 Ruby 語言、語法、結構、常用函數與函式庫。 + 當然也少不了 Ruby 的文化。 + +[Ruby Essentials][7] +: 免費的線上電子書,讓你可以一步步地學習 Ruby。 + +[Why’s (Poignant) Guide to Ruby][5] +: 非比尋常但玩味無窮的書,透過故事、幽默與漫畫來教會你 Ruby。由 *why the lucky + stiff* 創作,本書是學習 Ruby 的經典大作。 + +[Learn Ruby the Hard Way][38] +: 一系列說明完善的練習,導引你從完全零基礎一直介紹到物件導向程式設計與 Web 開發, + +[Programming Ruby][9] +: 這是 Ruby 的第一本英文書,第一版開放線上免費閱讀 [Pragmatic Programmers' book][10] 。 + +[The Ruby Programming Wikibook][12] +: 給初學者到中等程度的線上手冊以及語言參考。 [1]: https://try.ruby-lang.org/ [2]: https://rubykoans.com/ [5]: https://poignant.guide [7]: http://www.techotopia.com/index.php/Ruby_Essentials [8]: http://pine.fm/LearnToProgram/ -[9]: http://www.ruby-doc.org/docs/ProgrammingRuby/ +[9]: https://www.ruby-doc.org/docs/ProgrammingRuby/ [10]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ [12]: http://en.wikibooks.org/wiki/Ruby_programming_language [13]: http://www.ruby-doc.org/core @@ -113,15 +203,12 @@ lang: zh_tw [15]: http://www.ruby-doc.org/stdlib [extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html [16]: http://www.rubydoc.info/ -[17]: http://rubydocs.org/ -[18]: http://apidock.com/ [rubyapi-org]: https://rubyapi.org/ [19]: http://www.aptana.com/ [20]: http://www.gnu.org/software/emacs/ [21]: http://www.emacswiki.org/emacs/RubyMode -[22]: http://rsense.github.io/ [23]: http://www.geany.org/ -[24]: http://projects.gnome.org/gedit/screenshots.html +[24]: https://gedit-text-editor.org/ [25]: http://www.vim.org/ [26]: https://github.com/vim-ruby/vim-ruby [27]: http://www.jetbrains.com/ruby/ @@ -133,10 +220,43 @@ lang: zh_tw [36]: https://netbeans.org/ [37]: http://www.sublimetext.com/ [38]: https://learncodethehardway.org/ruby/ -[39]: http://kapeli.com/dash -[docs-rlo-en]: https://docs.ruby-lang.org/en/ -[atom]: https://atom.io/ +[39]: https://www.ruby-doc.org/ +[40]: https://devdocs.io/ruby/ +[42]: https://www.zenspider.com/ruby/quickref.html +[43]: https://rubyreferences.github.io/ +[44]: https://rubystyle.guide/ +[45]: https://github.com/rubocop/ruby-style-guide +[46]: https://ruby-style-guide.shopify.dev/ +[47]: https://docs.gitlab.com/ee/development/backend/ruby_style_guide.html +[48]: https://github.com/airbnb/ruby +[49]: https://www.w3resource.com/ruby/ruby-style-guide.php +[50]: https://github.com/ruby/irb +[51]: https://github.com/pry/pry +[52]: https://github.com/ruby/rake +[53]: https://ruby.github.io/rdoc/RI_md.html +[54]: https://github.com/ruby/rbs +[55]: https://github.com/ruby/typeprof +[56]: https://github.com/soutaro/steep + +[docs-rlo]: https://docs.ruby-lang.org/en/ +[docs-rlo-3.4]: https://docs.ruby-lang.org/en/3.4 +[docs-rlo-master]: https://docs.ruby-lang.org/en/master +[docs-rlo-extension]: https://docs.ruby-lang.org/en/master/extension_rdoc.html + +[rubyin20]: https://www.ruby-lang.org/en/documentation/quickstart/ +[odin]: https://www.theodinproject.com/paths/full-stack-ruby-on-rails/courses/ruby +[exercism]: https://exercism.org/tracks/ruby +[codecademy]: https://www.codecademy.com/learn/learn-ruby + +[pickaxe]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ +[grounded]: https://www.manning.com/books/the-well-grounded-rubyist-third-edition +[poodr]: https://www.poodr.com/ +[meta]: https://pragprog.com/titles/ppmetr2/metaprogramming-ruby-2/ +[microscope]: https://patshaughnessy.net/ruby-under-a-microscope + +[enh-ruby-mode]: https://github.com/zenspider/enhanced-ruby-mode/ +[neovim]: https://neovim.io/ [vscode]: https://code.visualstudio.com/ - -[rubytw]: http://ruby.tw -[ruby-user-guide-zh_tw]: http://guides.ruby.tw/ruby/ +[zed]: https://zed.dev/ +[dash]: http://kapeli.com/dash +[ruby-lsp]: https://github.com/Shopify/ruby-lsp From 5d974178d81837454852090dcf76c7b1b95b2890 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 14 Jan 2025 10:00:58 +0800 Subject: [PATCH 498/607] Refine wording (zh_tw) --- zh_tw/documentation/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zh_tw/documentation/index.md b/zh_tw/documentation/index.md index 664e710769..7300b3df55 100644 --- a/zh_tw/documentation/index.md +++ b/zh_tw/documentation/index.md @@ -33,7 +33,7 @@ lang: zh_tw : 由 Chris Pine 撰寫的程式語言入門。適合完全沒有程式設計經驗的朋友。 [Ruby in Twenty Minutes][rubyin20] -: 少於 20 分鐘就能完成的Ruby 小型教學。 +: 少於 20 分鐘就能完成的 Ruby 小型教學。 [The Odin Project][odin] : 開源的全端課程。 @@ -134,7 +134,7 @@ lang: zh_tw ### 編輯器與整合開發環境 -您可以用操作系統內建的編輯器來撰寫 Ruby。為了更有效的寫程式,值得選個 Ruby 基本特性支援良好的編輯器(如:語法高亮、檔案瀏覽)或是有更進階功能的整合開發環境(如:程式碼補全、重構、支持測試等。) +您可以用作業系統內建的編輯器來撰寫 Ruby。為了更有效的寫程式,值得選個 Ruby 基本特性支援良好的編輯器(如:語法高亮、檔案瀏覽)或是有更進階功能的整合開發環境(如:程式碼補齊、重構、支持測試等。) 以下是 Ruby 程式設計師(Rubyist)間流行使用的開發工具清單: From ca198e44ce9e3b0d67f484bd6f2f5b03a65612d0 Mon Sep 17 00:00:00 2001 From: matzbot Date: Wed, 15 Jan 2025 17:23:59 +0900 Subject: [PATCH 499/607] Create release for 3.3.7 (#3471) * Create release for 3.3.7 * Fill out release notes --------- Co-authored-by: GitHub Actions Bot Co-authored-by: Takashi Kokubun --- .../_posts/2025-01-15-ruby-3-3-7-released.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 en/news/_posts/2025-01-15-ruby-3-3-7-released.md diff --git a/en/news/_posts/2025-01-15-ruby-3-3-7-released.md b/en/news/_posts/2025-01-15-ruby-3-3-7-released.md new file mode 100644 index 0000000000..1a57e67d7a --- /dev/null +++ b/en/news/_posts/2025-01-15-ruby-3-3-7-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.7 Released" +author: k0kubun +translator: +date: 2025-01-15 07:51:59 +0000 +lang: en +--- + +Ruby 3.3.7 has been released. + +This is a routine update that includes minor bug fixes. +Please refer to [the release notes on GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_7) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.7" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From dc679db42039415ce30e93952501b93884c326f8 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Wed, 15 Jan 2025 00:27:49 -0800 Subject: [PATCH 500/607] Update _data for Ruby 3.3.7 (#3472) --- _data/downloads.yml | 2 +- _data/releases.yml | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/_data/downloads.yml b/_data/downloads.yml index 6e8ceeeef2..87a5ad0fd9 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -8,7 +8,7 @@ preview: stable: - 3.4.1 - - 3.3.6 + - 3.3.7 - 3.2.6 # optional diff --git a/_data/releases.yml b/_data/releases.yml index 5dccb4a35a..b13a98f070 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -163,6 +163,30 @@ # 3.3 series +- version: 3.3.7 + date: 2025-01-15 + post: /en/news/2025/01/15/ruby-3-3-7-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.7.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.7.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.7.tar.xz + size: + gz: 22163173 + zip: 27589557 + xz: 16379504 + sha1: + gz: aaa94abd1a5676dd24e927876935597a505e2a4d + zip: afe9800b8711aba57df5e11005a1710b48c9377e + xz: b5498e7174328fe0af0d93ee9667d39dda36621b + sha256: + gz: 9c37c3b12288c7aec20ca121ce76845be5bb5d77662a24919651aaf1d12c8628 + zip: 9c6b1d13a03d8423391e070e324b1380a597d3ac9eb5d8ea40bc4fd5226556a5 + xz: 5dbcbc605e0ed4b09c52703241577eb7edc3a2dc747e184c72b5285719b6ad72 + sha512: + gz: 9b48be05d1210e9194c8a6d77dfc3227599bff2b55fc9bb2049b11547927deef530ece9a2a505600cdc492c8517b1bef7ab5f2520ebd79ffcf76f0a734fa763d + zip: 20f0ad9e80528c5c5d42c0be8e85cf3f120a20a973a7d8303785f4201263d7896c9a7462d8b862330c2d4039ab8d47616fa13ef487a2ed05490ca4e731c97ef2 + xz: 4082a7684c1b0d53a0ce493f79568e851d37a864f59c58b2e0c273b2659e0ca75318ddff939fdf5e9d0a3eeba1b6d8f03bf88afb49a5ffd77714f1c8a7dfdd55 + - version: 3.3.6 date: 2024-11-05 post: /en/news/2024/11/05/ruby-3-3-6-released/ From 4ca03e53e890265559563c260e5daa365f194bf3 Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 15 Jan 2025 18:51:33 +0900 Subject: [PATCH 501/607] Translate "Ruby 3.3.7 Released" (ko) (#3473) * cp {en,ko}/news/_posts/2025-01-15-ruby-3-3-7-released.md * Translate "Ruby 3.3.7 Released" (ko) --- .../_posts/2025-01-15-ruby-3-3-7-released.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 ko/news/_posts/2025-01-15-ruby-3-3-7-released.md diff --git a/ko/news/_posts/2025-01-15-ruby-3-3-7-released.md b/ko/news/_posts/2025-01-15-ruby-3-3-7-released.md new file mode 100644 index 0000000000..1a501ed3a9 --- /dev/null +++ b/ko/news/_posts/2025-01-15-ruby-3-3-7-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.7 릴리스" +author: k0kubun +translator: shia +date: 2025-01-15 07:51:59 +0000 +lang: ko +--- + +Ruby 3.3.7이 릴리스되었습니다. + +이번 릴리스는 일반적인 업데이트로, 사소한 버그 수정이 포함되어 있습니다. +자세한 내용은 [GitHub 릴리스 노트](https://github.com/ruby/ruby/releases/tag/v3_3_7)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.3.7" | first %} + +* <{{ 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 d3e0f0f392645587bc987dcada72a2fe0adea056 Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 17 Jan 2025 01:45:50 +0900 Subject: [PATCH 502/607] Fix ruby-lsp url on documentation index --- en/documentation/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/documentation/index.md b/en/documentation/index.md index 0ac929e5db..504958458c 100644 --- a/en/documentation/index.md +++ b/en/documentation/index.md @@ -158,7 +158,7 @@ learning curve: All of these editors support the Language Server Protocol (LSP), either by default or through their LSP plugins. Shopify's [ruby-lsp][ruby-lsp] is one of the most popular language servers for -Ruby and [supports all of the above editors][shopify_lsp]. +Ruby and [supports all of the above editors][ruby-lsp-supported-editors]. ### Older Reading / Resources @@ -239,8 +239,8 @@ These links were more prominent but haven't been updated in ages. [pickaxe]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ [poodr]: https://www.poodr.com/ [ruby-lsp]: https://github.com/Shopify/ruby-lsp +[ruby-lsp-supported-editors]: https://shopify.github.io/ruby-lsp/editors.html [rubyapi-org]: https://rubyapi.org/ [rubyin20]: https://www.ruby-lang.org/en/documentation/quickstart/ -[shopify_lsp]: https://shopify.github.io/ruby-lsp/editors.html) [vscode]: https://code.visualstudio.com/docs/languages/ruby [zed]: https://zed.dev/ From 59ca2c7d686ccab2fdc7c3d2ef603e5c45fe734f Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 17 Jan 2025 09:25:25 +0900 Subject: [PATCH 503/607] Translate "First pass at updating en/documentation/index.md" (ko) (#3464) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add diff from a17c89bff1e821457dbf1a8a23f32d0d46b7d432 Ref: https://github.com/ruby/www.ruby-lang.org/pull/3427 * Translate "First pass at updating en/documentation/index.md" (ko) * Restore first section * Remove old "Learn Ruby the Hard Way" which is moved to "오래된 문서" * Apply suggestions from code review Co-authored-by: Chayoung You * Update ko/documentation/index.md Co-authored-by: Chayoung You * Remove all "(영문)" * Small update about ruby lsp supported editor link --------- Co-authored-by: Chayoung You --- ko/documentation/index.md | 268 +++++++++++++++++++++++++------------- 1 file changed, 181 insertions(+), 87 deletions(-) diff --git a/ko/documentation/index.md b/ko/documentation/index.md index 1e22137ac7..c8e3b95394 100644 --- a/ko/documentation/index.md +++ b/ko/documentation/index.md @@ -22,29 +22,24 @@ Ruby를 이해하고 싶다면, [docs.ruby-lang.org][docs-rlo-en]의 권위 있 ### 초보자용 문서 -[공식 FAQ](faq/) -: 자주 묻는 질문들을 모았습니다. +[Try Ruby][1] +: 브라우저에서 Ruby를 시험해 볼 수 있습니다. -[Ruby Koans][2] (영문) -: Koans는 Ruby를 배우는 깨달음의 길로 여러분을 안내합니다. Koans의 목표는 - Ruby 언어, 문법, 구조, 일반적인 함수들과 라이브러리를 배우는 것입니다. - Koans에서는 문화도 가르칩니다. +[Learn to Program][8] +: Chris Pine 님이 작성한 초보자를 위한 작고 멋진 튜토리얼입니다. + 프로그래밍을 모르신다면 여기서 시작하세요. -[Why’s (Poignant) Guide to Ruby][5] (영문) -: 이야기, 재치, 만화를 통해 Ruby를 가르쳐주는 틀에 얽매이지 않는 재미있는 - 책입니다. *Why the Lucky Stiff*의 저작물로 Ruby를 배우는 사람을 위한 - 고전입니다. +[Ruby in Twenty Minutes][rubyin20] +: 20분 이내에 끝낼 수 있는 작은 Ruby 튜토리얼입니다. -[Ruby Essentials][7] (영문) -: 간결하고 따라 하기 쉬운 Ruby 가이드를 제공하는 무료 온라인 책입니다. +[The Odin Project][odin] +: 오픈소스 풀스택 커리큘럼입니다. -[Learn to Program][8] (영문) -: Chris Pine 님이 작성한 초보자를 위한 작고 멋진 튜토리얼입니다. - 프로그래밍을 모르신다면 여기서 시작하세요. +[excercism][exercism] +: 자동 분석과 개인 멘토링이 포함된 120개의 연습문제가 제공됩니다. -[Learn Ruby the Hard Way][38] (영문) -: 아주 기초적인 내용부터 OOP에서 웹 개발까지 다루는 매우 좋은 설명이 - 달린 예제들입니다. +[Codecademy][codecademy] +: 다양한 주제를 다루는 온라인 코드 부트캠프입니다. 무료입니다. [Ruby For Impatient Nuby][ko-1] : 서민구 님이 작성하신 Ruby 초보자를 위한 튜토리얼입니다. @@ -52,31 +47,100 @@ Ruby를 이해하고 싶다면, [docs.ruby-lang.org][docs-rlo-en]의 권위 있 [루비 프로그래밍 언어 FAQ][ko-2] : 황대산 님이 정리하신 FAQ입니다. -### 매뉴얼 +### 매뉴얼 / 책 -[Programming Ruby][9] (영문) -: 영어로 된 독창적인 Ruby 책입니다. [Pragmatic Programmers의 책][10] - 1판이 무료로 온라인에 공개되어 있습니다. +#### 초보자 -[The Ruby Programming Wikibook][12] (영문) -: 초보자와 중급자를 위한 무료 온라인 매뉴얼과 전 언어 레퍼런스입니다. +[Programming Ruby 3.3][pickaxe] +: 영어로 된 독창적인 Ruby 책입니다. 최근에 Ruby 3.3으로 업데이트되었습니다. + +[The Well-Grounded Rubyist][grounded] +: 첫 Ruby 프로그램부터 리플렉션, 스레딩, 재귀 등과 같은 고급 주제까지 다루는 튜토리얼입니다. + +#### 중급자 + +[Practical OOD in Ruby (POODR)][poodr] +: 객체지향 코드를 작성하는 방법에 대한 프로그래머의 이야기입니다. + +#### 전문가 + +[Metaprogramming][meta] +: 메타 프로그래밍을 실용적인 방식으로 설명합니다. + +[Ruby Under a Microscope (RUM)][microscope] +: Ruby 내부를 설명하는 그림이 포함된 가이드입니다. ### 참조 -[공식 API 문서][docs-rlo-en] +[공식 API 문서][docs-rlo-en] [(JP)][docs-rlo-jp] : 아직 릴리스되지 않은 트렁크를 포함한 여러 Ruby 버전의 공식 언어 문서입니다. -[Ruby C API 레퍼런스][extensions] (영문) +[Ruby C API 레퍼런스][extensions] [(JP)][extensions-jp] : Ruby의 공식 C API 문서입니다. Ruby 개발에 참여하거나, C 확장을 개발할 때 도움이 될 것입니다. -[RubyDoc.info][16] (영문) +[RubyDoc.info][16] : Ruby gem과 GitHub에서 호스팅 되는 Ruby 프로젝트의 레퍼런스 문서들을 모아놓은 사이트입니다. -[Ruby API][40] (영문) +[Ruby API][40] : Ruby 클래스, 모듈, 메서드를 편하게 찾고 탐색하세요. +[ruby-doc.org][39] +: 온라인 API 문서입니다. + +[DevDocs.io][40] +: 온라인 API 문서입니다. + +[Ruby QuickRef][42] +: 빠른 Ruby 참조 문서입니다. + +[rubyreferences][43] +: 완전한 언어 레퍼런스와 상세한 언어 변경 로그입니다. 훌륭합니다. + +### 스타일 가이드 + +[rubystyle.guide][44] +: RuboCop의 Ruby 스타일 가이드 + +[RuboCop][45] +: RuboCop의 스타일 가이드를 자동으로 적용합니다. + +[Shopify][46] +: Shopify의 Ruby 스타일 가이드 + +[GitLab][47] +: GitLab의 Ruby 스타일 가이드 + +[Airbnb][48] +: Airbnb의 Ruby 스타일 가이드 + +[w3resource][49] +: W3의 Ruby 스타일 가이드 + +# 도구 + +[IRB][50] +: 대화형 Ruby 셸(Read-Eval-Print-Loop, REPL)입니다. + +[Pry][51] +: 또 다른 Ruby REPL입니다. + +[Rake][52] +: Ruby의 make와 비슷한 빌드 유틸리티입니다. + +[RI][53] +: RI(Ruby Information)는 Ruby의 명령줄 유틸리티로 Ruby 문서에 빠르고 쉽게 접근할 수 있습니다. + +[RBS][54] +: Ruby의 타입 시그니처입니다. + +[TypeProf][55] +: Ruby 코드를 테스트하고 이해하기 위한 실험적인 타입 수준의 Ruby 인터프리터입니다. + +[Steep][56] +: Ruby의 정적 타입 검사기입니다. + ### 편집기와 IDE Ruby를 코딩할 때 운영체제의 기본 편집기를 사용할 수 있습니다. 하지만, @@ -84,78 +148,108 @@ Ruby를 코딩할 때 운영체제의 기본 편집기를 사용할 수 있습 파일 브라우징 등등) 편집기나 고급 기능(자동완성, 리팩토링, 테스트 지원 등등)이 있는 통합 개발 환경도 생각해 볼 만합니다. -루비스트들이 주로 사용하는 도구들의 목록입니다. - -* Linux, 크로스 플랫폼 - * [Aptana Studio][19] - * [Atom][atom] - * [Emacs][20], [Ruby mode][21], [Rsense][22] - * [Eric][eric] - * [Geany][23] - * [gedit][24] - * [Kate][kate] - * [KDevelop][kdevelop] - * [NetBeans][36] - * [RubyMine][27] - * [SciTe][28] - * [Sublime Text][37] - * [Vim][25], [vim-ruby][26] 플러그인, [Rsense][22] +루비스트가 사용하는 인기 있는 편집기 목록을 +학습 곡선에 따라 나누어 놓았습니다. +* 며칠 안에 익힐 수 있는 편집기 + * [Sublime Text][37] (유료) * [Visual Studio Code][vscode] + * [Zed][zed] +* 몇 개월 정도 걸리는 편집기 + * [RubyMine][27] (유료) +* "몇 년" (즉, 몇 년 동안 새로운 것을 계속 배울 수 있는 에디터) + * [Ruby 모드][21]나 [향상된 Ruby 모드][enh-ruby-mode]를 사용하는 [Emacs][20] + * [vim-ruby][26] 플러그인을 사용하는 [Vim][25] + * [NeoVim][neovim] + +위에서 언급한 모든 편집기는 기본으로 또는 LSP 플러그인을 통해 +언어 서버 프로토콜(LSP)을 지원합니다. Shopify의 [ruby-lsp][ruby-lsp]는 +Ruby를 위한 가장 인기 있는 언어 서버 중 하나이며, +[위에서 언급한 모든 편집기를 지원합니다][ruby-lsp-supported-editors]. + +### 오래된 문서 / 리소스 + +다음 링크들은 한때 더 주목받았지만 오랫동안 업데이트되지 않았습니다. -* Windows - * [Notepad++][29] +[Ruby Koans][2] +: Koans는 Ruby를 배우는 깨달음의 길로 여러분을 안내합니다. Koans의 목표는 + Ruby 언어, 문법, 구조, 일반적인 함수들과 라이브러리를 배우는 것입니다. + Koans에서는 문화도 가르칩니다. + +[Ruby Essentials][7] +: 간결하고 따라 하기 쉬운 Ruby 가이드를 제공하는 + 무료 온라인 책입니다. + +[Why’s (Poignant) Guide to Ruby][5] +: 이야기, 재치, 만화를 통해 Ruby를 가르쳐주는 틀에 얽매이지 않는 재미있는 + 책입니다. *Why the Lucky Stiff*의 저작물로 Ruby를 배우는 사람을 위한 + 고전입니다. -* macOS - * [TextMate][32] - * [BBEdit][33] - * [Dash][39] (문서 브라우저) +[Learn Ruby the Hard Way][38] +: 아주 기초적인 내용부터 OOP에서 웹 개발까지 다루는 매우 좋은 설명이 + 달린 예제들입니다. -### 더 읽을거리 +[Programming Ruby][9] +: 영어로 된 독창적인 Ruby 책입니다. [Pragmatic Programmers의 책][10] + 1판이 무료로 온라인에 공개되어 있습니다. -[Ruby-Doc.org][34]는 Ruby 영문 문서를 포괄적으로 관리하는 사이트입니다. Ruby -[책들][ko-5]도 출판되어 있습니다. Ruby에 -관한 질문이 있다면, [유저 그룹][ko-3]이나 [페이스북 그룹][ko-4]에서 하실 수 있고 -영어가 되신다면 [메일링 리스트](/ko/community/mailing-lists/)를 사용하실 수도 -있습니다. +[The Ruby Programming Wikibook][12] +: 초보자와 중급자를 위한 무료 온라인 매뉴얼과 + 언어 전체 레퍼런스입니다. [1]: https://try.ruby-lang.org/ [2]: https://rubykoans.com/ [5]: https://poignant.guide -[7]: http://www.techotopia.com/index.php/Ruby_Essentials -[8]: http://pine.fm/LearnToProgram/ -[9]: http://www.ruby-doc.org/docs/ProgrammingRuby/ +[7]: https://www.techotopia.com/index.php/Ruby_Essentials +[8]: https://pine.fm/LearnToProgram/ +[9]: https://www.ruby-doc.org/docs/ProgrammingRuby/ [10]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ -[12]: http://en.wikibooks.org/wiki/Ruby_programming_language -[extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html -[16]: http://www.rubydoc.info/ -[19]: http://www.aptana.com/ -[20]: http://www.gnu.org/software/emacs/ -[21]: http://www.emacswiki.org/emacs/RubyMode -[22]: http://rsense.github.io/ -[23]: http://www.geany.org/ -[24]: http://projects.gnome.org/gedit/screenshots.html -[25]: http://www.vim.org/ +[12]: https://en.wikibooks.org/wiki/Ruby_programming_language +[16]: https://www.rubydoc.info/ +[20]: https://www.gnu.org/software/emacs/ +[21]: https://www.emacswiki.org/emacs/RubyMode +[25]: https://www.vim.org/ [26]: https://github.com/vim-ruby/vim-ruby -[27]: http://www.jetbrains.com/ruby/ -[28]: http://www.scintilla.org/SciTE.html -[29]: http://notepad-plus-plus.org/ -[32]: http://macromates.com/ -[33]: https://www.barebones.com/products/bbedit/ -[34]: http://ruby-doc.org -[36]: https://netbeans.org/ -[37]: http://www.sublimetext.com/ +[27]: https://www.jetbrains.com/ruby/ +[34]: https://ruby-doc.org/ +[37]: https://www.sublimetext.com/ [38]: https://learncodethehardway.org/ruby/ -[39]: http://kapeli.com/dash -[40]: https://rubyapi.org/ -[docs-rlo-en]: https://docs.ruby-lang.org/en/ -[atom]: https://atom.io/ +[39]: https://www.ruby-doc.org/ +[40]: https://devdocs.io/ruby/ +[42]: https://www.zenspider.com/ruby/quickref.html +[43]: https://rubyreferences.github.io/ +[44]: https://rubystyle.guide/ +[45]: https://github.com/rubocop/ruby-style-guide +[46]: https://ruby-style-guide.shopify.dev/ +[47]: https://docs.gitlab.com/ee/development/backend/ruby_style_guide.html +[48]: https://github.com/airbnb/ruby +[49]: https://www.w3resource.com/ruby/ruby-style-guide.php +[50]: https://github.com/ruby/irb +[51]: https://github.com/pry/pry +[52]: https://github.com/ruby/rake +[53]: https://ruby.github.io/rdoc/RI_md.html +[54]: https://github.com/ruby/rbs +[55]: https://github.com/ruby/typeprof +[56]: https://github.com/soutaro/steep +[codecademy]: https://www.codecademy.com/learn/learn-ruby +[docs-rlo-en]: https://docs.ruby-lang.org/en/latest +[docs-rlo-jp]: https://docs.ruby-lang.org/ja/latest +[enh-ruby-mode]: https://github.com/zenspider/enhanced-ruby-mode/ +[exercism]: https://exercism.org/tracks/ruby +[extensions-jp]: https://docs.ruby-lang.org/jp/master/extension_rdoc.html +[extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html +[grounded]: https://www.manning.com/books/the-well-grounded-rubyist-third-edition +[meta]: https://pragprog.com/titles/ppmetr2/metaprogramming-ruby-2/ +[microscope]: https://patshaughnessy.net/ruby-under-a-microscope +[neovim]: https://neovim.io/ +[odin]: https://www.theodinproject.com/paths/full-stack-ruby-on-rails/courses/ruby +[pickaxe]: https://pragprog.com/titles/ruby5/programming-ruby-3-3-5th-edition/ +[poodr]: https://www.poodr.com/ +[ruby-lsp]: https://github.com/Shopify/ruby-lsp +[ruby-lsp-supported-editors]: https://shopify.github.io/ruby-lsp/editors.html +[rubyapi-org]: https://rubyapi.org/ +[rubyin20]: https://www.ruby-lang.org/ko/documentation/quickstart/ [vscode]: https://code.visualstudio.com/docs/languages/ruby -[eric]: https://eric-ide.python-projects.org/ -[kdevelop]: https://www.kdevelop.org/ -[kate]: https://kate-editor.org/ +[zed]: https://zed.dev/ [ko-1]: https://docs.google.com/document/d/15yEpi2ZMB2Lld5lA1TANt13SJ_cKygP314cqyKhELwQ/preview [ko-2]: https://web.archive.org/web/20190521035426/http://beyond.daesan.com/pages/ruby-faq -[ko-3]: https://groups.google.com/forum/#!forum/rubykr -[ko-4]: https://www.facebook.com/groups/rubykr/ -[ko-5]: http://ruby-korea.github.io/#book From 6900a5a3e5b10c8429c18f192fdb666f080d7199 Mon Sep 17 00:00:00 2001 From: Yoshikazu Takata Date: Sat, 18 Jan 2025 16:05:36 +0900 Subject: [PATCH 504/607] Translate "Ruby 3.3.7 Released" (ja) --- .../_posts/2025-01-15-ruby-3-3-7-released.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 ja/news/_posts/2025-01-15-ruby-3-3-7-released.md diff --git a/ja/news/_posts/2025-01-15-ruby-3-3-7-released.md b/ja/news/_posts/2025-01-15-ruby-3-3-7-released.md new file mode 100644 index 0000000000..c2fc2f7647 --- /dev/null +++ b/ja/news/_posts/2025-01-15-ruby-3-3-7-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.7 リリース" +author: k0kubun +translator: teeta32 +date: 2025-01-15 07:51:59 +0000 +lang: ja +--- + +Ruby 3.3.7 がリリースされました。 + +本リリースはマイナーなバグ修正を含む定期的なアップデートです。 + +詳しくは [GitHub release notes](https://github.com/ruby/ruby/releases/tag/v3_3_7) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.3.7" | first %} + +* <{{ 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 5f582faf6dd4c5bdde13f79584744a7175afff27 Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sat, 18 Jan 2025 16:05:42 +0800 Subject: [PATCH 505/607] Translate Ruby 3.3.7 Released (zh_tw) --- .../_posts/2025-01-15-ruby-3-3-7-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 zh_tw/news/_posts/2025-01-15-ruby-3-3-7-released.md diff --git a/zh_tw/news/_posts/2025-01-15-ruby-3-3-7-released.md b/zh_tw/news/_posts/2025-01-15-ruby-3-3-7-released.md new file mode 100644 index 0000000000..5124edc500 --- /dev/null +++ b/zh_tw/news/_posts/2025-01-15-ruby-3-3-7-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.3.7 發布" +author: k0kubun +translator: "Bear Su" +date: 2025-01-15 07:51:59 +0000 +lang: zh_tw +--- + +Ruby 3.3.7 已經發布了。 + +這是包括修復小型錯誤的例行更新。 +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_3_7)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.3.7" | first %} + +* <{{ 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 c9892d7d4ad44cec7f3728a8b7f1b54b57bb3197 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Sat, 18 Jan 2025 19:23:16 -0500 Subject: [PATCH 506/607] Translation of release of ruby 3.3.7 (es) (#3479) --- .../_posts/2025-01-15-ruby-3-3-7-released.md | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 es/news/_posts/2025-01-15-ruby-3-3-7-released.md diff --git a/es/news/_posts/2025-01-15-ruby-3-3-7-released.md b/es/news/_posts/2025-01-15-ruby-3-3-7-released.md new file mode 100644 index 0000000000..1fe6a4f205 --- /dev/null +++ b/es/news/_posts/2025-01-15-ruby-3-3-7-released.md @@ -0,0 +1,44 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.7" +author: k0kubun +translator: vtamara +date: 2025-01-15 07:51:59 +0000 +lang: es +--- + +Ruby 3.3.7 ha sido publicado. + +Esta es una actualización de rutina que incluye corrección a fallas menores. +Por favor revise más detalles en las +[notas de publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_7). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.3.7" | first %} + +* <{{ 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 }} + +## Comentario de la versión + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 07e5abd8b811918d9435bff261211923ed0ee6ca Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 21 Jan 2025 15:25:54 +0900 Subject: [PATCH 507/607] Translate "Improve documentation page" (ko) (#3474) * Import changes of #3456 * Translate "Improve documentation page" (ko) * Update ko/documentation/index.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ko/documentation/index.md | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/ko/documentation/index.md b/ko/documentation/index.md index c8e3b95394..eb7345463a 100644 --- a/ko/documentation/index.md +++ b/ko/documentation/index.md @@ -16,9 +16,15 @@ Ruby를 배울 수 있는 매뉴얼과 튜토리얼, 코딩할 때 도움이 되 [Ruby를 브라우저에서 시험해 볼 수도 있지만][1], Ruby를 설치하기 위해서 [설치 설명서](installation/)를 읽어보아도 좋습니다. -### Ruby 언어 문서 +### 공식 Ruby 문서 -Ruby를 이해하고 싶다면, [docs.ruby-lang.org][docs-rlo-en]의 권위 있는 Ruby 언어 문서가 출발점입니다. 이 문서는 언어의 모든 측면을 다루며, Ruby 프로그래밍 언어를 배우거나 참조할 때 처음으로 찾아봐야 하는 곳입니다. 아래 나열된 다른 자료들은 공식 언어 문서를 보완하거나 다른 형식/스타일/맛으로 Ruby 문서를 제공합니다. +[docs.ruby-lang.org/en][docs-rlo]: Ruby 2.1 이후의 모든 버전에 대한 문서 목록입니다. + +[docs.ruby-lang.org/en/3.4][docs-rlo-3.4]: Ruby 3.4 버전에 대한 문서입니다. + +[docs.ruby-lang.org/en/master][docs-rlo-master]: Ruby의 master 브랜치의 문서입니다. + +[C Extension Guide][docs-rlo-extension]: Ruby의 C 확장을 만드는 방법에 대한 상세 가이드입니다. ### 초보자용 문서 @@ -39,7 +45,7 @@ Ruby를 이해하고 싶다면, [docs.ruby-lang.org][docs-rlo-en]의 권위 있 : 자동 분석과 개인 멘토링이 포함된 120개의 연습문제가 제공됩니다. [Codecademy][codecademy] -: 다양한 주제를 다루는 온라인 코드 부트캠프입니다. 무료입니다. +: 다양한 주제를 다루는 온라인 코드 부트캠프입니다. [Ruby For Impatient Nuby][ko-1] : 서민구 님이 작성하신 Ruby 초보자를 위한 튜토리얼입니다. @@ -70,14 +76,9 @@ Ruby를 이해하고 싶다면, [docs.ruby-lang.org][docs-rlo-en]의 권위 있 [Ruby Under a Microscope (RUM)][microscope] : Ruby 내부를 설명하는 그림이 포함된 가이드입니다. -### 참조 - -[공식 API 문서][docs-rlo-en] [(JP)][docs-rlo-jp] -: 아직 릴리스되지 않은 트렁크를 포함한 여러 Ruby 버전의 공식 언어 문서입니다. +### 커뮤니티 문서 -[Ruby C API 레퍼런스][extensions] [(JP)][extensions-jp] -: Ruby의 공식 C API 문서입니다. - Ruby 개발에 참여하거나, C 확장을 개발할 때 도움이 될 것입니다. +다음은 Ruby 커뮤니티에 의해 유지되고 있는 문서입니다. [RubyDoc.info][16] : Ruby gem과 GitHub에서 호스팅 되는 Ruby 프로젝트의 레퍼런스 문서들을 @@ -96,7 +97,7 @@ Ruby를 이해하고 싶다면, [docs.ruby-lang.org][docs-rlo-en]의 권위 있 : 빠른 Ruby 참조 문서입니다. [rubyreferences][43] -: 완전한 언어 레퍼런스와 상세한 언어 변경 로그입니다. 훌륭합니다. +: 완전한 언어 레퍼런스와 상세한 언어 변경 로그입니다. ### 스타일 가이드 @@ -231,12 +232,12 @@ Ruby를 위한 가장 인기 있는 언어 서버 중 하나이며, [55]: https://github.com/ruby/typeprof [56]: https://github.com/soutaro/steep [codecademy]: https://www.codecademy.com/learn/learn-ruby -[docs-rlo-en]: https://docs.ruby-lang.org/en/latest -[docs-rlo-jp]: https://docs.ruby-lang.org/ja/latest +[docs-rlo]: https://docs.ruby-lang.org/en +[docs-rlo-3.4]: https://docs.ruby-lang.org/en/3.4 +[docs-rlo-master]: https://docs.ruby-lang.org/en/master +[docs-rlo-extension]: https://docs.ruby-lang.org/en/master/extension_rdoc.html [enh-ruby-mode]: https://github.com/zenspider/enhanced-ruby-mode/ [exercism]: https://exercism.org/tracks/ruby -[extensions-jp]: https://docs.ruby-lang.org/jp/master/extension_rdoc.html -[extensions]: https://docs.ruby-lang.org/en/master/extension_rdoc.html [grounded]: https://www.manning.com/books/the-well-grounded-rubyist-third-edition [meta]: https://pragprog.com/titles/ppmetr2/metaprogramming-ruby-2/ [microscope]: https://patshaughnessy.net/ruby-under-a-microscope From c6900a313bb167800df6ebe7ad16da2ee1ff9891 Mon Sep 17 00:00:00 2001 From: npakk Date: Thu, 23 Jan 2025 21:16:36 +0900 Subject: [PATCH 508/607] translate-3.4.0-rc1-released-ja --- .../2024-12-12-ruby-3-4-0-rc1-released.md | 168 ++++++++++++++++++ 1 file changed, 168 insertions(+) create mode 100644 ja/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md diff --git a/ja/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/ja/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md new file mode 100644 index 0000000000..33a1598180 --- /dev/null +++ b/ja/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -0,0 +1,168 @@ +--- +layout: news_post +title: "Ruby 3.4.0-rc1 リリース" +author: "naruse" +translator: "npakk" +date: 2024-12-12 00:00:00 +0000 +lang: ja +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-rc1" | first %} +Ruby {{ release.version }} が公開されました。 + +## デフォルトのパーサをPrismに変更 + +デフォルトで使用するパーサーを parse.y から生成するパーサーから Prism へと変更しました。 [[Feature #20564]] + +## Modular GC + +* Modular GC 機能により Ruby 標準とは異なる ガベージ・コレクタ (GC) の実装を動的にロードすることができるようになりました。この機能を使うには Ruby をビルドする時に `--with-modular-gc` を指定してください。GC ライブラリは環境変数 `RUBY_GC_LIBRARY` を用いて Ruby のランタイムにロードすることができます。[[Feature #20351]] + +* Ruby 組み込みのガベージ・コレクタは `gc/default/default.c` ファイルに分割され、 Ruby ランタイムとのやりとりは `gc/gc_impl.h` に定義される API を用いて行われます。組み込みのガベージコレクタは `make modular-gc MODULAR_GC=default` というコマンドを用いてライブラリとしてもビルドすることができ、環境変数として `RUBY_GC_LIBRARY=default` を定義することで有効にすることができます。 [[Feature #20470]] + +* [MMTk](https://www.mmtk.io/) をベースとした実験的な GC ライブラリが提供されました。このライブラリは`make modular-gc MODULAR_GC=mmtk` コマンドによってビルドし、環境変数 `RUBY_GC_LIBRARY=mmtk` によって有効化します。この機能を使うにはビルドを行うマシンに Rust のビルドツールを必要とします。 [[Feature #20860]] + +## 言語機能の変更 + +* マジックコメント `frozen_string_literal` のないファイル中の文字列リテラルは、freeze されているかのように振る舞うようになり、破壊的な変更時に警告を表示するようになりました。これらの警告はコマンドラインオプション `-W:deprecated` か Ruby プログラムで `Warning[:deprecated] = true` を指定すると表示されます。 +これら無効にするにはコマンドラインオプション `--disable-frozen-string-literal` を追加して Ruby を実行してください。 [[Feature #20205]] + +* ブロックパラメータに名前をつけずに参照する `it` が追加されました。 [[Feature #18980]] + +* メソッド呼び出し時の `nil` 展開キーワードがサポートされました。 + `**nil` は `**{}` と同様に扱われ、キーワードは渡せません。 + また、あらゆる変換のためのメソッドも呼ばれません。[[Bug #20064]] + +* インデックスにブロックを渡せなくなりました。[[Bug #19918]] + +* インデックスにキーワード引数を渡せなくなりました。[[Bug #20218]] + +## YJIT + +### TL;DR + +* x86-64 と arm64 の両方のプラットフォームにおいて、ほとんどのベンチマークのパフォーマンスが向上しました。 +* コンパイルメタデータのメモリ使用量を削減しました。 +* 様々な不具合修正: YJIT はより堅牢になり、より多くの環境でテストされました。 + +### 新機能 + +* `--yjit-mem-size` による統一的なメモリ制限が指定可能になりました(デフォルトは 128MiB)。 + このオプションはすべての YJIT のメモリ使用量を監視し、従来の `--yjit-exec-mem-size` オプションよりも直感的に使用できます。 +* `RubyVM::YJIT.runtime_stats` からより多くの統計情報を取得できるようになりました。 +* `--yjit-log` オプションを用いて、コンパイルログを監視できるようになりました。 + * `RubyVM::YJIT.log` を用いてコンパイルログの末尾を取得することができるようになりました。 +* マルチ Ractor モードにおける定数共有をサポートしました。 +* `--yjit-trace-exits=COUNTER`オプションを用いて、カウントされたexitを監視できるようになりました。 + +### 新しい最適化 + +* コンテキストの圧縮化により YJIT のメタデータ保管に必要なメモリを削減しました。 +* ローカル変数やRubyのメソッドの引数のためにレジスタを割り当てるようになりました。 +* YJIT が有効な場合に Ruby で実装されたコアクラスを使うようになりました。 + * Ruby で書き直された `Array#each`, `Array#select`, `Array#map` はより良いパフォーマンスを提供します。 [[Feature #20182]]. +* 以下のような小さいメソッドをインライン化できるようになりました: + * 空メソッド + * 定数を返すメソッド + * `self` を返すメソッド + * 引数を直接返すメソッド +* 組み込みメソッドに特化したコード生成の対象を広げました +* `String#getbyte`, `String#setbyte` など、String のメソッドの最適化を行いました。 +* 低レベルの bit/byte 操作を高速化するためにビット演算を最適化しました +* その他、様々な段階的な最適化を行いました。 + +## コアクラスのアップデート + +注: 複数のアップデートの中から注目すべきアップデートのみを掲載しています。 + +* Exception + + * `Exception#set_backtrace` は `Thread::Backtrace::Location` の配列を受け取れる様になりました。. + `Kernel#raise`, `Thread#raise` や `Fiber#raise` も同じ配列を受け取れます。[[Feature #13557]] + +* Range + + * `Range#size` は範囲オブジェクトが反復可能ではない場合は `TypeError` 例外を出すようになりました。[[Misc #18984]] + +## 互換性に関する変更 + +注: 不具合修正を除きます。 + +* エラーメッセージとして表示するバックトレースを変更しました。 + * 開始の引用符は backtick の代わりにシングルクォートを用いるようになりました。[[Feature #16495]] + * クラス名が変更しないような場合、メソッド名の前にクラス名を表示するようになりました。[[Feature #19117]] + * `Kernel#caller`, `Thread::Backtrace::Location` などのメソッドはそれらに応じて変更されました。 + + ``` + Old: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + New: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +## C API のアップデート + +* `rb_newobj` と `rb_newobj_of` (と対応するマクロの `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) は削除されました。 [[Feature #20265]] +* 非推奨とされていた `rb_gc_force_recycle` は削除されました。 [[Feature #18290]] + +## その他の変更 + +* 渡されたブロックを使用しないメソッドにブロックを渡すと、verboseモード(`-w`) で警告が表示されるようになりました。[[Feature #15554]] + +* `String.freeze` や `Integer#+` のような JIT とインタプリタによって特別に最適化されたメソッドを再定義すると、performance 警告(`-W:performance` または`Warning[:performance] = true` で有効化)が表示されるようになりました。 [[Feature #20429]] + +default gemsやbundled gemsの詳細については[Logger](https://github.com/ruby/logger/releases)などのChangeLogを参照してください。 + +より詳細な情報は [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +か [commit logs](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) を参照してください。 + +これらの変更により、Ruby 3.3.0から [{{ release.stats.files_changed }} ファイルが変更され、 {{ release.stats.insertions }} 行が追加され、 {{ release.stats.deletions }} 行が削除されました!](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) + +## ダウンロード + +* <{{ 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 とは + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 From e10103bb9b6e1a6c8d547462f983acf47d13287d Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Thu, 30 Jan 2025 08:37:17 +0800 Subject: [PATCH 509/607] Translate Ruby 3.4.[01] released(zh_cn) (#3451) --- .../_posts/2024-12-25-ruby-3-4-0-released.md | 323 ++++++++++++++++++ .../_posts/2024-12-25-ruby-3-4-1-released.md | 39 +++ 2 files changed, 362 insertions(+) create mode 100644 zh_cn/news/_posts/2024-12-25-ruby-3-4-0-released.md create mode 100644 zh_cn/news/_posts/2024-12-25-ruby-3-4-1-released.md diff --git a/zh_cn/news/_posts/2024-12-25-ruby-3-4-0-released.md b/zh_cn/news/_posts/2024-12-25-ruby-3-4-0-released.md new file mode 100644 index 0000000000..5a9c123d34 --- /dev/null +++ b/zh_cn/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -0,0 +1,323 @@ +--- +layout: news_post +title: "Ruby 3.4.0 已发布" +author: "naruse" +translator: "GAO Jun" +date: 2024-12-25 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.4.0" | first %} +我们很高兴地宣布 Ruby {{ release.version }} 发布。 +Ruby 3.4 增加了块参数引用变量 `it`,使用 Prism 作为默认解析器,为 socket 库提供了 Happy Eyeballs Version 2 支持, +改进了 YJIT,添加了模块化垃圾回收功能,及其他改进。 + +## 块中的 `it` 引用 + +当没有定义块参数名时,可以使用 `it` 引用块参数. [[Feature #18980]] + +```ruby +ary = ["foo", "bar", "baz"] + +p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"] +``` + +`it` 与 `_1` 的功能类似。在块中使用 `_1` 时,读者可能会以为其他编号参数(`_2` 等)也会出现,这会给读者带来额外的阅读负担。 +因此,我们引入 `it` 作为一个便捷的别名。在简单的情况下(例如单行块),使用 `it` 可以显著提升可读性。 + +## Prism 现在是默认解析器 + +默认解析器从 parse.y 切换到 Prism。 [[Feature #20564]] + +这是一项内部改进,用户应该不会注意到任何变化。如果您发现了任何兼容性问题,请报告给我们。 + +如果需要使用原来的解析器,可以使用命令行参数 `--parser=parse.y`。 + +## socket 库现在支持 Happy Eyeballs Version 2 (RFC 8305) + +socket 库现在支持 [Happy Eyeballs Version 2 (RFC 8305)](https://datatracker.ietf.org/doc/html/rfc8305),许多编程语言都提供这个最新版本的支持来优化网络连接。 +socket 库在 `TCPSocket.new` (`TCPSocket.open`) 和 `Socket.tcp` 中添加了支持。 +此项改进使得 Ruby 能够提供更高效可靠的网络连接,更适应现代互联网环境。 + +直至 Ruby 3.3,上述的方法会依次执行域名解析和尝试连接。通过现在的算法,将按下面的方式执行: + +1. 并行执行 IPv6 和 IPv4 域名解析 +2. 尝试连接解析到的 IP 地址(IPv6 优先),以 250ms 的间隔进行并行尝试 +3. 返回第一个成功的连接,并取消其他连接 + +这样就保证了最小化网络延迟,即使特定的 IP 协议地址延迟或不可用。 +此功能默认启用,不需要额外的配置。如果要全局禁用此功能,可以设置环境变量 `RUBY_TCP_NO_FAST_FALLBACK=1` +或者调用 `Socket.tcp_fast_fallback=false`。如果要在特定连接中禁用此功能,可以使用关键字参数 `fast_fallback: false`。 + +## YJIT + +### 摘要 + +* 在 x86-64 和 arm64 平台上的大多数基准测试中,都获得了更好的性能表现。 +* 减少了编译元数据的内存使用并提供了统一的内存限制。 +* 修复了多个错误。YJIT 现在更健壮了,并被更好地测试。 + +### 新功能 + +* 命令行参数 + * `--yjit-mem-size` (默认值为 128 MiB),用于设置统一的内存限制选项,并跟踪 YJIT 总的内存使用情况, + 这比旧的 `--yjit-exec-mem-size` 更直观。 + * `--yjit-log` 可以启用编译日志来跟踪被编译的内容。 +* Ruby API + * `RubyVM::YJIT.log` 可以在运行时获取编译日志的尾部信息。 +* YJIT 统计信息 + * `RubyVM::YJIT.runtime_stats` 现在总是能在无效化、内联和元数据编码时提供额外的统计信息。 + +### 新优化 + +* 通过压缩上下文减少了存储 YJIT 元数据所需的内存 +* 为局部变量和方法参数分配寄存器 +* 当 YJIT 启用时,使用更多 Ruby 编写的核心原型类型: + * 使用 Ruby 重写 `Array#each`, `Array#select`, `Array#map` 以提升性能 [[Feature #20182]]。 +* 能够内联小型方法,诸如: + * 空方法 + * 返回常量的方法 + * 返回 `self` 的方法 + * 直接返回某个参数的方法 +* 为更多运行时方法生成专用代码 +* 优化 `String#getbyte`, `String#setbyte` 等字符串方法 +* 优化位运算,加速低级 位/字节 操作 +* 在 multi-ractor 模式中,支持共享常量 +* 各种其他增量优化 + +## 模块化垃圾收集器 + +* 通过模块化垃圾收集功能,可以动态加载具体的垃圾收集器(GC)实现。 + 若要启用此功能,可以在构建 Ruby 时,使用 `--with-modular-gc` 参数。 + 运行时可以通过环境变量 `RUBY_GC_LIBRARY` 加载 GC 库。 + [[Feature #20351]] + +* Ruby 内置的垃圾收集器已被拆分到单独的文件 `gc/default/default.c` 并通过 `gc/gc_impl.h` 中定义的 API 与 Ruby 进行交互。 + 现在,内置的垃圾收集器也可以作为库进行构建:通过 `make modular-gc MODULAR_GC=default` 进行构建, + 并通过环境变量 `RUBY_GC_LIBRARY=default` 启用。 [[Feature #20470]] + +* 提供了一个基于 [MMTk](https://www.mmtk.io/) 的实验性 GC 库。此库可以通过 `make modular-gc MODULAR_GC=mmtk` 进行构建, + 并通过环境变量 `RUBY_GC_LIBRARY=mmtk` 启用。构建的计算机需要 Rust 工具链。 [[Feature #20860]] + +## 语言变化 + +* 在没有 `frozen_string_literal` 注释的文件中,当字符串字面量被修改时会发出警告。 + 这些警告可以使用 `-W:deprecated` 或者通过设置 `Warning[:deprecated] = true` 来启用。 + 如要禁用此变化,您可以在运行 Ruby 时,使用 `--disable-frozen-string-literal` 命令行参数。 [[Feature #20205]] + +* 支持在调用方法时使用 `nil` 作为关键字展开参数。 + `**nil` 类似于 `**{}`,不传递关键字参数,也不调用任何转换方法。 [[Bug #20064]] + +* 索引不再接受块传递。 [[Bug #19918]] + +* 索引不再接受关键字参数。 [[Bug #20218]] + +* 顶级名 `::Ruby` 现在是保留的,当启用 `Warning[:deprecated]` 时,如果对其进行定义将会被警告。 [[Feature #20884]] + +## 核心类更新 + +注意:我们仅列出了核心类中值得注意的更新。 + +* Exception + + * `Exception#set_backtrace` 现在接受 `Thread::Backtrace::Location` 数组。 + `Kernel#raise`,`Thread#raise` 和 `Fiber#raise` 也接受这个新格式。 [[Feature #13557]] + +* GC + + * 新增 `GC.config`,可以为垃圾收集器设置配置变量。 [[Feature #20443]] + + * 新增 GC 配置参数 `rgengc_allow_full_mark` 。如果值为 `false`,GC 仅标记年轻对象。默认值为 `true`。 [[Feature #20443]] + +* Ractor + + * 允许在 Ractor 中使用 `require`。引入过程将在主 Ractor 中执行。 + 可以通过 `Ractor._require(feature)` 在主 Ractor 中执行引入过程。 [[Feature #20627]] + + * 新增 `Ractor.main?`。 [[Feature #20627]] + + * 新增 `Ractor.[]` 和 `Ractor.[]=` 来访问当前 Ractor 关联存储的内容。 [[Feature #20715]] + + * 新增 `Ractor.store_if_absent(key){ init }`,可以在进程安全的环境下初始化 ractor 关联的本地变量。 [[Feature #20875]] + +* Range + + * 当 range 不可枚举时,`Range#size` 将抛出 `TypeError`。 [[Misc #18984]] + + +## 标准库更新 + +注意:我们仅列出了标准库中值得注意的更新。 + +* RubyGems + * gem push 增加 `--attestation` 参数。此参数允许保存签名到 [sigstore.dev] + +* Bundler + * 新增 `lockfile_checksums` 参数,将校验和包含到新的 lockfiles 中 + * 新增 `--add-checksums` 向既有 lockfile 中增加校验和 + +* JSON + + * 性能改进,`JSON.parse` 现在比 json-2.7.x 快约 1.5 倍。 + +* Tempfile + + * `Tempfile.create` 新增关键字参数 `anonymous: true`。 + `Tempfile.create(anonymous: true)` 会立即移除创建的临时文件。应用程序无需显式地移除临时文件。 + [[Feature #20497]] + +* win32/sspi.rb + + * 此库现在从 Ruby 代码仓库抽取到独立的代码仓库 [ruby/net-http-sspi]。[[Feature #20775]] + +## 兼容性问题 + +注意:不包括问题补丁。 + +* 修改了错误信息和错误栈的显示。 + * 使用单引号(`'`)代替反勾号(`` ` ``)作为错误消息的起始引号。 [[Feature #16495]] + * 在方法名前显示类名(仅当类具有永久名称时)。 [[Feature #19117]] + * `Kernel#caller`,`Thread::Backtrace::Location` 等处也进行了相应更改。 + + ``` + 此前: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + 现在: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in `
' + ``` + +* Hash#inspect 的展示形式发生变化。 [[Bug #20433]] + + * 键是 Symbol 时,使用现代的语法形式: `"{user: 1}"` + * 其他类型的键值对在显示时,在 `=>` 前后加入空格:`'{"user" => 1}'`,此前显示时没有空格: `'{"user"=>1}'` + +* Kernel#Float() 现在接受省略小数部分的数字字符串。 [[Feature #20705]] + + ```rb + Float("1.") #=> 1.0 (此前会导致 ArgumentError) + Float("1.E-1") #=> 0.1 (此前会导致 ArgumentError) + ``` + +* String#to_f 现在接受省略小数部分的数字字符串。注意,当指定指数时,返回结果与此前不同。 [[Feature #20705]] + + ```rb + "1.".to_f #=> 1.0 + "1.E-1".to_f #=> 0.1 (此前会返回 1.0) + ``` + +* 移除 `Refinement#refined_class`。 [[Feature #19714]] + +## 标准库兼容性问题 + +* DidYouMean + + * 移除 `DidYouMean::SPELL_CHECKERS[]=` 和 `DidYouMean::SPELL_CHECKERS.merge!`。 + +* Net::HTTP + + * 移除下列已废弃常量: + * `Net::HTTP::ProxyMod` + * `Net::NetPrivate::HTTPRequest` + * `Net::HTTPInformationCode` + * `Net::HTTPSuccessCode` + * `Net::HTTPRedirectionCode` + * `Net::HTTPRetriableCode` + * `Net::HTTPClientErrorCode` + * `Net::HTTPFatalErrorCode` + * `Net::HTTPServerErrorCode` + * `Net::HTTPResponseReceiver` + * `Net::HTTPResponceReceiver` + + 这些变量从 2012 年起已废弃。 + +* Timeout + + * `Timeout.timeout` 的参数不允许负值。 [[Bug #20795]] + +* URI + + * 默认解析器从 RFC 2396 兼容切换到 RFC 3986 兼容。 [[Bug #19266]] + +## C API 更新 + +* 移除 `rb_newobj` 和 `rb_newobj_of` (以及相关的宏 `RB_NEWOBJ`,`RB_NEWOBJ_OF`,`NEWOBJ`,`NEWOBJ_OF`)。 [[Feature #20265]] +* 移除已废弃的函数 `rb_gc_force_recycle`。 [[Feature #18290]] + +## 其他变化 + +* 如果传递了一个块给不使用块的方法时,在详细模式(`-w`)中将显示警告。 [[Feature #15554]] + +* Ruby 对一些核心方法通过解释器和 JIT 进行了优化,诸如 `String.freeze`,`Integer#+`。 + 当这些方法被重定义时,解释器将发出性能警告(`-W:performance` 或 `Warning[:performance] = true`)。 [[Feature #20429]] + +更多详情,可参见 [NEWS](https://docs.ruby-lang.org/en/3.4/NEWS_md.html) +或 [提交日志](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})。 + +自 Ruby 3.3.0 以来,这些变化共导致 [{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+),删除 {{ release.stats.deletions }} 行(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)! + +圣诞快乐,节日快乐,享受 Ruby 3.4 的编程乐趣! + +## 下载 + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Ruby 是什么 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发, +现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是 Web 开发领域。 + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19266]: https://bugs.ruby-lang.org/issues/19266 +[Feature #19714]: https://bugs.ruby-lang.org/issues/19714 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20443]: https://bugs.ruby-lang.org/issues/20443 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20497]: https://bugs.ruby-lang.org/issues/20497 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20620]: https://bugs.ruby-lang.org/issues/20620 +[Feature #20627]: https://bugs.ruby-lang.org/issues/20627 +[Feature #20705]: https://bugs.ruby-lang.org/issues/20705 +[Feature #20715]: https://bugs.ruby-lang.org/issues/20715 +[Feature #20775]: https://bugs.ruby-lang.org/issues/20775 +[Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 +[Feature #20875]: https://bugs.ruby-lang.org/issues/20875 +[Feature #20884]: https://bugs.ruby-lang.org/issues/20884 +[sigstore.dev]: https://www.sigstore.dev/ +[ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi diff --git a/zh_cn/news/_posts/2024-12-25-ruby-3-4-1-released.md b/zh_cn/news/_posts/2024-12-25-ruby-3-4-1-released.md new file mode 100644 index 0000000000..ab82e2a565 --- /dev/null +++ b/zh_cn/news/_posts/2024-12-25-ruby-3-4-1-released.md @@ -0,0 +1,39 @@ +--- +layout: news_post +title: "Ruby 3.4.1 已发布" +author: "naruse" +translator: "GAO Jun" +date: 2024-12-25 00:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.4.1 已发布。 + +此版本修正了版本的描述。 + +更多信息可以参考 [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_4_1)。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.4.1" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} From fc250d15ce3214438d2fe6f2c585aeecee276b69 Mon Sep 17 00:00:00 2001 From: Gao Jun Date: Thu, 30 Jan 2025 08:41:47 +0800 Subject: [PATCH 510/607] Translate Ruby 3.3.7 released(zh_cn) (#3476) --- .../_posts/2025-01-15-ruby-3-3-7-released.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 zh_cn/news/_posts/2025-01-15-ruby-3-3-7-released.md diff --git a/zh_cn/news/_posts/2025-01-15-ruby-3-3-7-released.md b/zh_cn/news/_posts/2025-01-15-ruby-3-3-7-released.md new file mode 100644 index 0000000000..3ad19507df --- /dev/null +++ b/zh_cn/news/_posts/2025-01-15-ruby-3-3-7-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.7 已发布" +author: k0kubun +translator: "GAO Jun" +date: 2025-01-15 07:51:59 +0000 +lang: zh_cn +--- + +Ruby 3.3.7 已发布。 + +这是例行更新,修正了一些较小的程序问题。 +更多信息可以参考 [GitHub 发布说明](https://github.com/ruby/ruby/releases/tag/v3_3_7)。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.3.7" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 52a0eacbd3111f38122f5d46ca3c730a50ce2776 Mon Sep 17 00:00:00 2001 From: Eduardo Bohrer Date: Sun, 2 Feb 2025 19:43:26 -0300 Subject: [PATCH 511/607] Add some missing news translations to pt website --- .../2024-10-28-redos-rexml-cve-2024-49761.md | 31 ++ .../_posts/2024-10-30-ruby-3-2-6-released.md | 42 +++ .../_posts/2024-11-05-ruby-3-3-6-released.md | 50 +++ .../2024-12-12-ruby-3-4-0-rc1-released.md | 189 ++++++++++ .../_posts/2024-12-25-ruby-3-4-0-released.md | 343 ++++++++++++++++++ .../_posts/2024-12-25-ruby-3-4-1-released.md | 39 ++ .../_posts/2025-01-15-ruby-3-3-7-released.md | 43 +++ 7 files changed, 737 insertions(+) create mode 100644 pt/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md create mode 100644 pt/news/_posts/2024-10-30-ruby-3-2-6-released.md create mode 100644 pt/news/_posts/2024-11-05-ruby-3-3-6-released.md create mode 100644 pt/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md create mode 100644 pt/news/_posts/2024-12-25-ruby-3-4-0-released.md create mode 100644 pt/news/_posts/2024-12-25-ruby-3-4-1-released.md create mode 100644 pt/news/_posts/2025-01-15-ruby-3-3-7-released.md diff --git a/pt/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/pt/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md new file mode 100644 index 0000000000..373a37d5fb --- /dev/null +++ b/pt/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -0,0 +1,31 @@ +--- +layout: news_post +title: "CVE-2024-49761: Vulnerabilidade ReDoS na REXML" +author: "kou" +translator: nbluis +date: 2024-10-28 03:00:00 +0000 +tags: security +lang: pt +--- + +Existe uma vulnerabilidade ReDoS na gem REXML. Esta vulnerabilidade foi atribuída ao identificador CVE [CVE-2024-49761](https://www.cve.org/CVERecord?id=CVE-2024-49761). Recomendamos fortemente a atualização da gem REXML. + +Isso não acontece com Ruby 3.2 ou posterior. Ruby 3.1 é a única versão mantida afetada. Note que Ruby 3.1 atingirá EOL em 2025-03. + +## Detalhes + +Ao analisar um XML que possui muitos dígitos entre `&#` e `x...;` em uma referência de caractere numérico hexadecimal (`&#x...;`). + +Por favor, atualize a gem REXML para a versão 3.3.9 ou posterior. + +## Versões afetadas + +* Gem REXML 3.3.8 ou anterior com Ruby 3.1 ou anterior + +## Créditos + +Agradecimentos a [manun](https://hackerone.com/manun) por descobrir este problema. + +## Histórico + +* Publicado originalmente em 2024-10-28 03:00:00 (UTC) \ No newline at end of file diff --git a/pt/news/_posts/2024-10-30-ruby-3-2-6-released.md b/pt/news/_posts/2024-10-30-ruby-3-2-6-released.md new file mode 100644 index 0000000000..b2b14c644d --- /dev/null +++ b/pt/news/_posts/2024-10-30-ruby-3-2-6-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.6 Lançado" +author: nagachika +translator: nbluis +date: 2024-10-30 10:00:00 +0000 +lang: pt +--- + +Ruby 3.2.6 foi lançado. + +Por favor, consulte os [lançamentos no GitHub](https://github.com/ruby/ruby/releases/tag/v3_2_6) para mais detalhes. + +## Download + +{% assign release = site.data.releases | where: "version", "3.2.6" | first %} + +* <{{ release.url.gz }}> + + TAMANHO: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + TAMANHO: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + TAMANHO: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Comentário do Lançamento + +Muitos committers, desenvolvedores e usuários que forneceram relatórios de bugs nos ajudaram a fazer este lançamento. +Obrigado pelas suas contribuições. \ No newline at end of file diff --git a/pt/news/_posts/2024-11-05-ruby-3-3-6-released.md b/pt/news/_posts/2024-11-05-ruby-3-3-6-released.md new file mode 100644 index 0000000000..ee224d4719 --- /dev/null +++ b/pt/news/_posts/2024-11-05-ruby-3-3-6-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.3.6 Lançado" +author: k0kubun +translator: nbluis +date: 2024-11-05 04:25:00 +0000 +lang: pt +--- + +Ruby 3.3.6 foi lançado. + +Esta é uma atualização de rotina que inclui correções de bugs menores. +Esta versão também para de notificar sobre a ausência de dependências de gems padrões que serão incorporadas no Ruby 3.5. +Para mais detalhes, por favor, consulte [as notas de lançamento no GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_6). + +## Cronograma de Lançamento + +Conforme [anunciado](https://www.ruby-lang.org/en/news/2024/07/09/ruby-3-3-4-released/) anteriormente, pretendemos lançar a versão estável mais recente do Ruby (atualmente Ruby 3.3) a cada 2 meses após um lançamento `.1`. + +Esperamos lançar o Ruby 3.3.7 em 7 de janeiro. Se surgirem mudanças significativas que impactem um grande número de usuários, podemos lançar uma nova versão antes do previsto. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.6" | first %} + +* <{{ release.url.gz }}> + + TAMANHO: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + TAMANHO: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + TAMANHO: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Comentário sobre o Lançamento + +Muitos committers, desenvolvedores e usuários que forneceram relatórios de bugs nos ajudaram a fazer este lançamento. +Obrigado pelas suas contribuições. \ No newline at end of file diff --git a/pt/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md b/pt/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md new file mode 100644 index 0000000000..45c8277a4e --- /dev/null +++ b/pt/news/_posts/2024-12-12-ruby-3-4-0-rc1-released.md @@ -0,0 +1,189 @@ +--- +layout: news_post +title: "Ruby 3.4.0 rc1 Lançado" +author: "naruse" +translator: nbluis +date: 2024-12-12 00:00:00 +0000 +lang: pt +--- + +{% assign release = site.data.releases | where: "version", "3.4.0-rc1" | first %} +Estamos felizes em anunciar o lançamento do Ruby {{ release.version }}. + +## Prism + +Alterado o parser padrão de parse.y para Prism. [[Feature #20564]] + +## GC Modular + +* Implementações alternativas de garbage collector (GC) podem ser carregadas dinamicamente + através do recurso de garbage collector modular. Para habilitar este recurso, + configure o Ruby com `--with-modular-gc` no momento da compilação. Bibliotecas de GC podem ser + carregadas em tempo de execução usando a variável de ambiente `RUBY_GC_LIBRARY`. + [[Feature #20351]] + +* O garbage collector embutido do Ruby foi dividido em um arquivo separado em + `gc/default/default.c` e interage com o Ruby usando uma API definida em + `gc/gc_impl.h`. O garbage collector embutido agora também pode ser compilado como uma + biblioteca usando `make modular-gc MODULAR_GC=default` e habilitado usando a + variável de ambiente `RUBY_GC_LIBRARY=default`. [[Feature #20470]] + +* Uma biblioteca experimental de GC é fornecida com base no [MMTk](https://www.mmtk.io/). + Esta biblioteca de GC pode ser compilada usando `make modular-gc MODULAR_GC=mmtk` e + habilitada usando a variável de ambiente `RUBY_GC_LIBRARY=mmtk`. Isso requer + a ferramenta Rust na máquina de compilação. [[Feature #20860]] + +## Mudanças na linguagem + +* Literais de string em arquivos sem um comentário `frozen_string_literal` agora emitem um aviso de descontinuação + quando são mutados. + Esses avisos podem ser habilitados com `-W:deprecated` ou configurando `Warning[:deprecated] = true`. + Para desativar essa mudança, você pode executar o Ruby com o argumento de linha de comando `--disable-frozen-string-literal`. [[Feature #20205]] + +* `it` foi adicionado para referenciar um parâmetro de bloco. [[Feature #18980]] + +* O splatting de palavra-chave `nil` ao chamar métodos agora é suportado. + `**nil` é tratado de maneira semelhante a `**{}`, não passando palavras-chave, + e não chamando nenhum método de conversão. [[Bug #20064]] + +* Passagem de bloco não é mais permitida em índice. [[Bug #19918]] + +* Argumentos de palavra-chave não são mais permitidos em índice. [[Bug #20218]] + +## YJIT + +TL;DR: +* Melhor desempenho na maioria dos benchmarks em plataformas x86-64 e arm64. +* Uso reduzido de memória de metadados de compilação +* Várias correções de bugs. YJIT agora é ainda mais robusto e melhor testado. + +Novos recursos: +* Adiciona limite de memória unificado via opção de linha de comando `--yjit-mem-size` (padrão 128MiB) + que rastreia o uso total de memória do YJIT e é mais intuitivo do que o + antigo `--yjit-exec-mem-size`. +* Mais estatísticas agora sempre disponíveis via `RubyVM::YJIT.runtime_stats` +* Adiciona log de compilação para rastrear o que é compilado via `--yjit-log` + * Final do log também disponível em tempo de execução via `RubyVM::YJIT.log` +* Adiciona suporte para constantes compartilháveis em modo multi-ractor +* Agora pode rastrear saídas contadas com `--yjit-trace-exits=COUNTER` + +Novas otimizações: +* Contexto comprimido reduz a memória necessária para armazenar metadados do YJIT +* Alocador aprimorado com capacidade de alocar registradores para variáveis locais +* Quando o YJIT está habilitado, use mais primitivas Core escritas em Ruby: + * `Array#each`, `Array#select`, `Array#map` reescritos em Ruby para melhor desempenho [[Feature #20182]]. +* Capacidade de inline de métodos pequenos/triviais, como: + * Métodos vazios + * Métodos que retornam uma constante + * Métodos que retornam `self` + * Métodos que retornam diretamente um argumento +* Geração de código especializada para muitos mais métodos em tempo de execução +* Otimiza `String#getbyte`, `String#setbyte` e outros métodos de string +* Otimiza operações bitwise para acelerar a manipulação de bits/bytes de baixo nível +* Várias outras otimizações incrementais + +## Atualizações das classes principais + +Nota: Estamos listando apenas atualizações notáveis das classes principais. + +* Exception + + * `Exception#set_backtrace` agora aceita um array de `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` e `Fiber#raise` também aceitam este novo formato. [[Feature #13557]] + +* Range + + * `Range#size` agora levanta `TypeError` se o intervalo não for iterável. [[Misc #18984]] + +## Problemas de compatibilidade + +Nota: Excluindo correções de bugs. + +* As mensagens de erro e exibições de backtrace foram alteradas. + * Usa uma aspa simples em vez de um acento grave como uma aspa de abertura. [[Feature #16495]] + * Exibe o nome de classe antes de um nome de método (somente quando a classe tiver um nome permanente). [[Feature #19117]] + * `Kernel#caller`, métodos de `Thread::Backtrace::Location`, etc. também foram alterados de acordo. + + ``` + Antes: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + Agora: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +## Atualizações da C API + +* `rb_newobj` e `rb_newobj_of` (e macros correspondentes `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) foram removidos. [[Feature #20265]] +* Removida a função obsoleta `rb_gc_force_recycle`. [[Feature #18290]] + +## Mudanças diversas + +* Passar um bloco para um método que não usa o bloco passado mostrará + um aviso no modo verbose (`-w`). + [[Feature #15554]] + +* Redefinir alguns métodos principais que são especialmente otimizados pelo interpretador + e JIT como `String.freeze` ou `Integer#+` agora emite um aviso de classe de desempenho + (`-W:performance` ou `Warning[:performance] = true`). + [[Feature #20429]] + +Veja lançamentos no GitHub como [Logger](https://github.com/ruby/logger/releases) ou +changelog para detalhes das gems padrão ou gems incluídas. + +Veja [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +ou [logs de commits](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +para mais detalhes. + +Com essas mudanças, [{{ release.stats.files_changed }} arquivos alterados, {{ release.stats.insertions }} inserções(+), {{ release.stats.deletions }} deleções(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +desde Ruby 3.3.0! + +## Download + +* <{{ release.url.gz }}> + + TAMANHO: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + TAMANHO: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + TAMANHO: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## O que é Ruby + +Ruby foi desenvolvido pela primeira vez por Matz (Yukihiro Matsumoto) em 1993, +e agora é desenvolvido como Open Source. Ele roda em várias plataformas +e é usado em todo o mundo, especialmente para desenvolvimento web. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 diff --git a/pt/news/_posts/2024-12-25-ruby-3-4-0-released.md b/pt/news/_posts/2024-12-25-ruby-3-4-0-released.md new file mode 100644 index 0000000000..4baff89108 --- /dev/null +++ b/pt/news/_posts/2024-12-25-ruby-3-4-0-released.md @@ -0,0 +1,343 @@ +--- +layout: news_post +title: "Ruby 3.4.0 Lançado" +author: "naruse" +translator: nbluis +date: 2024-12-25 00:00:00 +0000 +lang: pt +--- + +{% assign release = site.data.releases | where: "version", "3.4.0" | first %} +Estamos felizes em anunciar o lançamento do Ruby {{ release.version }}. Ruby 3.4 adiciona a referência de parâmetro de bloco `it`, +altera o Prism como parser padrão, adiciona suporte ao Happy Eyeballs Versão 2 na biblioteca de socket, melhora o YJIT, +adiciona GC Modular, e muito mais. + +## `it` é introduzido + +`it` foi adicionado para referenciar um parâmetro de bloco sem nome de variável. [[Feature #18980]] + +```ruby +ary = ["foo", "bar", "baz"] + +p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"] +``` + +`it` se comporta de maneira muito semelhante a `_1`. Quando a intenção é usar apenas `_1` em um bloco, a possibilidade de outros parâmetros numerados como `_2` aparecer impõe uma carga cognitiva extra aos leitores. Então `it` foi introduzido como um alias prático. Use `it` em casos simples onde `it` representa itself, como em blocos de uma linha. + +## Prism agora é o parser padrão + +Alteração do parser padrão de parse.y para Prism. [[Feature #20564]] + +Esta é uma melhoria interna e deve haver pouca mudança visível para o usuário. Se você notar algum problema de compatibilidade, por favor, reporte para nós. + +Para usar o parser convencional, use o argumento de linha de comando `--parser=parse.y`. + +## A biblioteca de socket agora possui Happy Eyeballs Versão 2 (RFC 8305) + +A biblioteca de socket agora possui [Happy Eyeballs Version 2 (RFC 8305)](https://datatracker.ietf.org/doc/html/rfc8305), a versão padronizada mais recente de uma abordagem amplamente adotada para melhor conectividade em muitas linguagens de programação, em `TCPSocket.new` (`TCPSocket.open`) e `Socket.tcp`. +Esta melhoria permite que o Ruby forneça conexões de rede eficientes e confiáveis, adaptadas aos ambientes modernos da internet. + +Até o Ruby 3.3, esses métodos realizavam a resolução de nomes e tentativas de conexão de forma serial. Com este algoritmo, eles agora operam da seguinte forma: + +1. Realiza a resolução de nomes IPv6 e IPv4 simultaneamente +2. Tenta conexões com os endereços IP resolvidos, priorizando IPv6, com tentativas paralelas escalonadas em intervalos de 250ms +3. Retorna a primeira conexão bem-sucedida enquanto cancela quaisquer outras + +Isso garante atrasos mínimos de conexão, mesmo se um protocolo específico ou endereço IP estiver atrasado ou indisponível. +Este recurso é habilitado por padrão, portanto, configuração adicional não é necessária para usá-lo. Para desativá-lo globalmente, defina a variável de ambiente `RUBY_TCP_NO_FAST_FALLBACK=1` ou chame `Socket.tcp_fast_fallback=false`. Ou para desativá-lo em um método específico, use o argumento `fast_fallback: false`. + +## YJIT + +### TL;DR + +* Melhor desempenho na maioria dos benchmarks em plataformas x86-64 e arm64. +* Uso reduzido de memória através de metadados comprimidos e um limite de memória unificado. +* Várias correções de bugs: YJIT agora é mais robusto e testado exaustivamente. + +### Novos recursos + +* Opções de linha de comando + * `--yjit-mem-size` introduz um limite de memória unificado (padrão 128MiB) para rastrear o uso total de memória do YJIT, + fornecendo uma alternativa mais intuitiva à antiga opção `--yjit-exec-mem-size`. + * `--yjit-log` habilita um log de compilação para rastrear o que é compilado. +* API Ruby + * `RubyVM::YJIT.log` fornece acesso ao final do log de compilação em tempo de execução. +* Estatísticas do YJIT + * `RubyVM::YJIT.runtime_stats` agora sempre fornece estatísticas adicionais sobre + invalidação, inlining e codificação de metadados. + +### Novas otimizações + +* Contexto comprimido reduz a memória necessária para armazenar metadados do YJIT +* Alocar registradores para variáveis locais e argumentos de métodos Ruby +* Quando o YJIT está habilitado, usa mais primitivas Core escritas em Ruby: + * `Array#each`, `Array#select`, `Array#map` reescritos em Ruby para melhor desempenho [[Feature #20182]]. +* Capacidade de inline de métodos pequenos/triviais, como: + * Métodos vazios + * Métodos que retornam uma constante + * Métodos que retornam `self` + * Métodos que retornam diretamente um argumento +* Geração de código especializada para muitos mais métodos em tempo de execução +* Otimiza `String#getbyte`, `String#setbyte` e outros métodos de string +* Otimiza operações bitwise para acelerar a manipulação de bits/bytes de baixo nível +* Suporte a constantes compartilháveis em modo multi-ractor +* Várias outras otimizações incrementais + +## Modular GC + +* Implementações alternativas de garbage collector (GC) podem ser carregadas dinamicamente + através do recurso de garbage collector modular. Para habilitar este recurso, + configure o Ruby com `--with-modular-gc` no momento da compilação. Bibliotecas de GC podem ser + carregadas em tempo de execução usando a variável de ambiente `RUBY_GC_LIBRARY`. + [[Feature #20351]] + +* O garbage collector embutido do Ruby foi dividido em um arquivo separado em + `gc/default/default.c` e interage com o Ruby usando uma API definida em + `gc/gc_impl.h`. O garbage collector embutido agora também pode ser compilado como uma + biblioteca usando `make modular-gc MODULAR_GC=default` e habilitado usando a + variável de ambiente `RUBY_GC_LIBRARY=default`. [[Feature #20470]] + +* Uma biblioteca experimental de GC é fornecida com base no [MMTk](https://www.mmtk.io/). + Esta biblioteca de GC pode ser compilada usando `make modular-gc MODULAR_GC=mmtk` e + habilitada usando a variável de ambiente `RUBY_GC_LIBRARY=mmtk`. Isso requer + a ferramenta Rust na máquina de compilação. [[Feature #20860]] + +## Mudanças na linguagem + +* Literais de string em arquivos sem um comentário `frozen_string_literal` agora emitem um aviso de descontinuação + quando são mutados. + Esses avisos podem ser habilitados com `-W:deprecated` ou configurando `Warning[:deprecated] = true`. + Para desativar essa mudança, você pode executar o Ruby com o argumento de linha de comando `--disable-frozen-string-literal`. [[Feature #20205]] + +* O splatting de palavra-chave `nil` ao chamar métodos agora é suportado. + `**nil` é tratado de maneira semelhante a `**{}`, não passando palavras-chave, + e não chamando nenhum método de conversão. [[Bug #20064]] + +* Passagem de bloco não é mais permitida em índice. [[Bug #19918]] + +* Argumentos de palavra-chave não são mais permitidos em índice. [[Bug #20218]] + +* O nome de nível superior `::Ruby` agora está reservado, e a definição será avisada quando `Warning[:deprecated]`. [[Feature #20884]] + +## Atualizações de classes principais + +Nota: Estamos listando apenas atualizações notáveis das classes principais. + +* Exception + + * `Exception#set_backtrace` agora aceita um array de `Thread::Backtrace::Location`. + `Kernel#raise`, `Thread#raise` e `Fiber#raise` também aceitam este novo formato. [[Feature #13557]] + +* GC + + * `GC.config` adicionado para permitir a configuração de variáveis no Garbage + Collector. [[Feature #20443]] + + * Parâmetro de configuração do GC `rgengc_allow_full_mark` introduzido. Quando `false` + o GC marcará apenas objetos jovens. O padrão é `true`. [[Feature #20443]] + +* Ractor + + * `require` em Ractor é permitido. O processo de requisição será executado no + Ractor principal. + `Ractor._require(feature)` é adicionado para executar o processo de requisição no + Ractor principal. [[Feature #20627]] + + * `Ractor.main?` é adicionado. [[Feature #20627]] + + * `Ractor.[]` e `Ractor.[]=` são adicionados para acessar o armazenamento local + do Ractor atual. [[Feature #20715]] + + * `Ractor.store_if_absent(key){ init }` é adicionado para inicializar variáveis locais do ractor + de forma segura para threads. [[Feature #20875]] + +* Range + + * `Range#size` agora levanta `TypeError` se o intervalo não for iterável. [[Misc #18984]] + +## Atualizações da Biblioteca Padrão + +Nota: Estamos listando apenas atualizações notáveis das bibliotecas padrão. + +* RubyGems + * Adicionada a opção `--attestation` ao gem push. Ela permite armazenar a assinatura no [sigstore.dev] + +* Bundler + * Adicionada uma configuração `lockfile_checksums` para incluir checksums em novos arquivos lockfile. + * Adicionado bundle lock `--add-checksums` para adicionar checksums a um arquivo lockfile existente + +* JSON + + * Melhorias de desempenho do `JSON.parse` cerca de 1,5 vezes mais rápido que json-2.7.x. + +* Tempfile + + * O argumento de palavra-chave `anonymous: true` foi implementado para Tempfile.create. + `Tempfile.create(anonymous: true)` remove o arquivo temporário criado imediatamente. + Assim, as aplicações não precisam remover o arquivo. + [[Feature #20497]] + +* win32/sspi.rb + + * Esta biblioteca agora foi extraída do repositório Ruby para [ruby/net-http-sspi]. + [[Feature #20775]] + +## Problemas de compatibilidade + +Nota: Excluindo correções de bugs. + +* As mensagens de erro e exibições de backtrace foram alteradas. + * Usa uma aspa simples em vez de um acento grave como uma aspa de abertura. [[Feature #16495]] + * Exibe o nome de classe antes de um nome de método (somente quando a classe tiver um nome permanente). [[Feature #19117]] + * `Kernel#caller`, métodos de `Thread::Backtrace::Location`, etc. também foram alterados de acordo. + + ``` + Antes: + test.rb:1:in `foo': undefined method `time' for an instance of Integer + from test.rb:2:in `
' + + Agora: + test.rb:1:in 'Object#foo': undefined method 'time' for an instance of Integer + from test.rb:2:in '
' + ``` + +* A renderização de Hash#inspect foi alterada. [[Bug #20433]] + + * Chaves de símbolo são exibidas usando a sintaxe moderna de chave de símbolo: `"{user: 1}"` + * Outras chaves agora têm espaços ao redor de `=>`: `'{"user" => 1}'`, enquanto anteriormente não tinham: `'{"user"=>1}'` + +* Kernel#Float() agora aceita uma string decimal com a parte decimal omitida. [[Feature #20705]] + + ```rb + Float("1.") #=> 1.0 (anteriormente, um ArgumentError era levantado) + Float("1.E-1") #=> 0.1 (anteriormente, um ArgumentError era levantado) + ``` + +* String#to_f agora aceita uma string decimal com a parte decimal omitida. Note que o resultado muda quando um expoente é especificado. [[Feature #20705]] + + ```rb + "1.".to_f #=> 1.0 + "1.E-1".to_f #=> 0.1 (anteriormente, 1.0 era retornado) + ``` + +* Refinement#refined_class foi removido. [[Feature #19714]] + +## Problemas de compatibilidade da biblioteca padrão + +* DidYouMean + + * `DidYouMean::SPELL_CHECKERS[]=` e `DidYouMean::SPELL_CHECKERS.merge!` foram removidos. + +* Net::HTTP + + * Removidas as seguintes constantes obsoletas: + * `Net::HTTP::ProxyMod` + * `Net::NetPrivate::HTTPRequest` + * `Net::HTTPInformationCode` + * `Net::HTTPSuccessCode` + * `Net::HTTPRedirectionCode` + * `Net::HTTPRetriableCode` + * `Net::HTTPClientErrorCode` + * `Net::HTTPFatalErrorCode` + * `Net::HTTPServerErrorCode` + * `Net::HTTPResponseReceiver` + * `Net::HTTPResponceReceiver` + + Essas constantes foram obsoletas desde 2012. + +* Timeout + + * Rejeita valores negativos para Timeout.timeout. [[Bug #20795]] + +* URI + + * Alterado o parser padrão para compatível com RFC 3986 em vez de RFC 2396. + [[Bug #19266]] + +## Atualizações da C API + +* `rb_newobj` e `rb_newobj_of` (e macros correspondentes `RB_NEWOBJ`, `RB_NEWOBJ_OF`, `NEWOBJ`, `NEWOBJ_OF`) foram removidos. [[Feature #20265]] +* Removida a função obsoleta `rb_gc_force_recycle`. [[Feature #18290]] + +## Mudanças diversas + +* Passar um bloco para um método que não usa o bloco passado mostrará + um aviso no modo verbose (`-w`). + [[Feature #15554]] + +* Redefinir alguns métodos principais que são especialmente otimizados pelo interpretador + e JIT como `String.freeze` ou `Integer#+` agora emite um aviso de classe de desempenho + (`-W:performance` ou `Warning[:performance] = true`). + [[Feature #20429]] + +Veja [NEWS](https://docs.ruby-lang.org/en/3.4/NEWS_md.html) +ou [logs de commits](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}) +para mais detalhes. + +Com essas mudanças, [{{ release.stats.files_changed }} arquivos alterados, {{ release.stats.insertions }} inserções(+), {{ release.stats.deletions }} deleções(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +desde Ruby 3.3.0! + +Feliz Natal, Boas Festas e aproveite a programação com Ruby 3.4! + +## Download + +* <{{ release.url.gz }}> + + TAMANHO: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + TAMANHO: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + TAMANHO: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## O que é Ruby + +Ruby foi desenvolvido pela primeira vez por Matz (Yukihiro Matsumoto) em 1993, +e agora é desenvolvido como Open Source. Ele roda em várias plataformas +e é usado em todo o mundo, especialmente para desenvolvimento web. + +[Feature #13557]: https://bugs.ruby-lang.org/issues/13557 +[Feature #15554]: https://bugs.ruby-lang.org/issues/15554 +[Feature #16495]: https://bugs.ruby-lang.org/issues/16495 +[Feature #18290]: https://bugs.ruby-lang.org/issues/18290 +[Feature #18980]: https://bugs.ruby-lang.org/issues/18980 +[Misc #18984]: https://bugs.ruby-lang.org/issues/18984 +[Feature #19117]: https://bugs.ruby-lang.org/issues/19117 +[Bug #19266]: https://bugs.ruby-lang.org/issues/19266 +[Feature #19714]: https://bugs.ruby-lang.org/issues/19714 +[Bug #19918]: https://bugs.ruby-lang.org/issues/19918 +[Bug #20064]: https://bugs.ruby-lang.org/issues/20064 +[Feature #20182]: https://bugs.ruby-lang.org/issues/20182 +[Feature #20205]: https://bugs.ruby-lang.org/issues/20205 +[Bug #20218]: https://bugs.ruby-lang.org/issues/20218 +[Feature #20265]: https://bugs.ruby-lang.org/issues/20265 +[Feature #20351]: https://bugs.ruby-lang.org/issues/20351 +[Feature #20429]: https://bugs.ruby-lang.org/issues/20429 +[Feature #20443]: https://bugs.ruby-lang.org/issues/20443 +[Feature #20470]: https://bugs.ruby-lang.org/issues/20470 +[Feature #20497]: https://bugs.ruby-lang.org/issues/20497 +[Feature #20564]: https://bugs.ruby-lang.org/issues/20564 +[Bug #20620]: https://bugs.ruby-lang.org/issues/20620 +[Feature #20627]: https://bugs.ruby-lang.org/issues/20627 +[Feature #20705]: https://bugs.ruby-lang.org/issues/20705 +[Feature #20715]: https://bugs.ruby-lang.org/issues/20715 +[Feature #20775]: https://bugs.ruby-lang.org/issues/20775 +[Bug #20795]: https://bugs.ruby-lang.org/issues/20795 +[Bug #20433]: https://bugs.ruby-lang.org/issues/20433 +[Feature #20860]: https://bugs.ruby-lang.org/issues/20860 +[Feature #20875]: https://bugs.ruby-lang.org/issues/20875 +[Feature #20884]: https://bugs.ruby-lang.org/issues/20884 +[sigstore.dev]: https://www.sigstore.dev +[ruby/net-http-sspi]: https://github.com/ruby/net-http-sspi diff --git a/pt/news/_posts/2024-12-25-ruby-3-4-1-released.md b/pt/news/_posts/2024-12-25-ruby-3-4-1-released.md new file mode 100644 index 0000000000..1ef49837b7 --- /dev/null +++ b/pt/news/_posts/2024-12-25-ruby-3-4-1-released.md @@ -0,0 +1,39 @@ +--- +layout: news_post +title: "Ruby 3.4.1 Lançado" +author: "naruse" +translator: nbluis +date: 2024-12-25 00:00:00 +0000 +lang: pt +--- + +Ruby 3.4.1 foi lançado. + +Isso corrige a descrição da versão. + +Veja os [lançamentos no GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_1) para mais detalhes. + +## Download + +{% assign release = site.data.releases | where: "version", "3.4.1" | first %} + +* <{{ release.url.gz }}> + + TAMANHO: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + TAMANHO: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + TAMANHO: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} diff --git a/pt/news/_posts/2025-01-15-ruby-3-3-7-released.md b/pt/news/_posts/2025-01-15-ruby-3-3-7-released.md new file mode 100644 index 0000000000..8d450c94fd --- /dev/null +++ b/pt/news/_posts/2025-01-15-ruby-3-3-7-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.7 Lançado" +author: k0kubun +translator: nbluis +date: 2025-01-15 07:51:59 +0000 +lang: pt +--- + +Ruby 3.3.7 foi lançado. + +Esta é uma atualização de rotina que inclui correções de bugs menores. +Por favor, consulte [as notas de lançamento no GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_7) para mais detalhes. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.7" | first %} + +* <{{ release.url.gz }}> + + TAMANHO: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + TAMANHO: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + TAMANHO: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Comentário sobre o Lançamento + +Muitos committers, desenvolvedores e usuários que forneceram relatórios de bugs nos ajudaram a fazer este lançamento. +Obrigado pelas suas contribuições. From 1ee0f08f94f04a6b2705cf8fa140ffa48ef2c8e2 Mon Sep 17 00:00:00 2001 From: Eduardo Bohrer Date: Sun, 2 Feb 2025 19:55:35 -0300 Subject: [PATCH 512/607] Add missing newline to the end of news articles --- pt/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md | 2 +- pt/news/_posts/2024-10-30-ruby-3-2-6-released.md | 2 +- pt/news/_posts/2024-11-05-ruby-3-3-6-released.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pt/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md b/pt/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md index 373a37d5fb..34cfce30b4 100644 --- a/pt/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md +++ b/pt/news/_posts/2024-10-28-redos-rexml-cve-2024-49761.md @@ -28,4 +28,4 @@ Agradecimentos a [manun](https://hackerone.com/manun) por descobrir este problem ## Histórico -* Publicado originalmente em 2024-10-28 03:00:00 (UTC) \ No newline at end of file +* Publicado originalmente em 2024-10-28 03:00:00 (UTC) diff --git a/pt/news/_posts/2024-10-30-ruby-3-2-6-released.md b/pt/news/_posts/2024-10-30-ruby-3-2-6-released.md index b2b14c644d..6e07ffd96e 100644 --- a/pt/news/_posts/2024-10-30-ruby-3-2-6-released.md +++ b/pt/news/_posts/2024-10-30-ruby-3-2-6-released.md @@ -39,4 +39,4 @@ Por favor, consulte os [lançamentos no GitHub](https://github.com/ruby/ruby/rel ## Comentário do Lançamento Muitos committers, desenvolvedores e usuários que forneceram relatórios de bugs nos ajudaram a fazer este lançamento. -Obrigado pelas suas contribuições. \ No newline at end of file +Obrigado pelas suas contribuições. diff --git a/pt/news/_posts/2024-11-05-ruby-3-3-6-released.md b/pt/news/_posts/2024-11-05-ruby-3-3-6-released.md index ee224d4719..f3191cd0d9 100644 --- a/pt/news/_posts/2024-11-05-ruby-3-3-6-released.md +++ b/pt/news/_posts/2024-11-05-ruby-3-3-6-released.md @@ -47,4 +47,4 @@ Esperamos lançar o Ruby 3.3.7 em 7 de janeiro. Se surgirem mudanças significat ## Comentário sobre o Lançamento Muitos committers, desenvolvedores e usuários que forneceram relatórios de bugs nos ajudaram a fazer este lançamento. -Obrigado pelas suas contribuições. \ No newline at end of file +Obrigado pelas suas contribuições. From a9d731d0407a43f323555c1317f4d2395ca47e7f Mon Sep 17 00:00:00 2001 From: Daisuke Aritomo Date: Sun, 2 Feb 2025 15:21:11 +0900 Subject: [PATCH 513/607] Add link to 3.4 docs (ja) --- ja/documentation/index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ja/documentation/index.md b/ja/documentation/index.md index 8c34614174..437ba5dceb 100644 --- a/ja/documentation/index.md +++ b/ja/documentation/index.md @@ -15,6 +15,7 @@ Rubyでプログラミングする際に役立つドキュメントを紹介し また、現在有志の手により[リファレンスマニュアルの整備][rurema-wiki]が進行中です。 成果物を[<URL:https://docs.ruby-lang.org/ja/>][doc-r-l-o]から閲覧できます。 +* [Rubyリファレンスマニュアル Ruby 3.4版][man-34] * [Rubyリファレンスマニュアル Ruby 3.3版][man-33] * [Rubyリファレンスマニュアル Ruby 3.2版][man-32] * [Rubyリファレンスマニュアル Ruby 3.1版][man-31] @@ -123,6 +124,7 @@ Posted by Shugo Maeda on 26 May 2006 [man-31]: https://docs.ruby-lang.org/ja/3.1/doc/index.html [man-32]: https://docs.ruby-lang.org/ja/3.2/doc/index.html [man-33]: https://docs.ruby-lang.org/ja/3.3/doc/index.html +[man-34]: https://docs.ruby-lang.org/ja/3.4/doc/index.html [man-search]: https://docs.ruby-lang.org/ja/search/ [man-xz]: https://cache.ruby-lang.org/pub/ruby/doc/ruby-refm-1.9.3-dynamic-20120829.tar.xz [man-gz]: https://cache.ruby-lang.org/pub/ruby/doc/ruby-refm-1.9.3-dynamic-20120829.tar.gz From 018d91e87451c7305602af44e61a03f4d59add3b Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot Date: Tue, 4 Feb 2025 11:57:16 +0000 Subject: [PATCH 514/607] Create release for 3.2.7 --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 en/news/_posts/2025-02-04-ruby-3-2-7-released.md diff --git a/en/news/_posts/2025-02-04-ruby-3-2-7-released.md b/en/news/_posts/2025-02-04-ruby-3-2-7-released.md new file mode 100644 index 0000000000..7514717d67 --- /dev/null +++ b/en/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.7 Released" +author: +translator: +date: 2025-02-04 11:57:14 +0000 +lang: en +--- + +Ruby 3.2.7 has been released. + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_7) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.2.7" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 896af14218744ac66ce253407c8d6cf26cfa1d8e Mon Sep 17 00:00:00 2001 From: nagachika Date: Tue, 4 Feb 2025 21:09:46 +0900 Subject: [PATCH 515/607] add 3.2.7 entries in _data/downloads.yml and _data/releases.yml --- _data/downloads.yml | 2 +- _data/releases.yml | 24 +++++++++++++++++++ .../_posts/2025-02-04-ruby-3-2-7-released.md | 4 ++-- 3 files changed, 27 insertions(+), 3 deletions(-) diff --git a/_data/downloads.yml b/_data/downloads.yml index 87a5ad0fd9..007b69505d 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -9,7 +9,7 @@ stable: - 3.4.1 - 3.3.7 - - 3.2.6 + - 3.2.7 # optional security_maintenance: diff --git a/_data/releases.yml b/_data/releases.yml index b13a98f070..25376ee174 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -479,6 +479,30 @@ # 3.2 series +- version: 3.2.7 + date: 2025-02-04 + post: /en/news/2025/02/04/ruby-3-2-7-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.7.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.7.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.7.tar.xz + size: + gz: 20548416 + zip: 25129063 + xz: 15128228 + sha1: + gz: c45aa881a7ea1175212d385fe5c8b6e9ff14b2e5 + zip: d18fbf11004fdc98bc2c221b167b0d62bfc98dd2 + xz: 54e07b3adf1e948f5a35fc4ef9b24dd5976f1740 + sha256: + gz: 8488fa620ff0333c16d437f2b890bba3b67f8745fdecb1472568a6114aad9741 + zip: e4efb7d9e8f8fee6c717917760796c3e29d6c644f9777e4a46bd0a69ed21d5fd + xz: fc159b0d4a8ce412948fb69e61493839a0b3e1d5c919180f27036f1c948cfbe2 + sha512: + gz: 174e70ac20a21ea77e2c5055a9123a6812109fd7b54c0f7b948312b8159eedbfb11c06120390c158430ca8543e36893da6c809883c82757082d22e08004c5055 + zip: 5f57fb8b2d44187a8f900095cbe7bc90d9439c6436e3e361241b83102b85f665e3d7ed64fe1f6150dfb94eb289467f375ef24b46d5ac9b5f03b01ef31ed39606 + xz: c10b6fd27fad3bbd33d780c0a3eccb5df2a8465a89d2294ea6f14c7e5e8f7c8ea30b8a8b68bf8903c76f9133c5d984d5d66052ec4eb413153c739e6eea24beed + - version: 3.2.6 date: 2024-10-30 post: /en/news/2024/10/30/ruby-3-2-6-released/ diff --git a/en/news/_posts/2025-02-04-ruby-3-2-7-released.md b/en/news/_posts/2025-02-04-ruby-3-2-7-released.md index 7514717d67..a10c86dec4 100644 --- a/en/news/_posts/2025-02-04-ruby-3-2-7-released.md +++ b/en/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -1,9 +1,9 @@ --- layout: news_post title: "Ruby 3.2.7 Released" -author: +author: nagachika translator: -date: 2025-02-04 11:57:14 +0000 +date: 2025-02-04 12:00:00 +0000 lang: en --- From 0bd5ef01607be2318c6b5b7b327f181931750786 Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 5 Feb 2025 18:40:47 +0900 Subject: [PATCH 516/607] Copy {en,ko}/news/_posts/2025-02-04-ruby-3-2-7-released.md --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 ko/news/_posts/2025-02-04-ruby-3-2-7-released.md diff --git a/ko/news/_posts/2025-02-04-ruby-3-2-7-released.md b/ko/news/_posts/2025-02-04-ruby-3-2-7-released.md new file mode 100644 index 0000000000..a10c86dec4 --- /dev/null +++ b/ko/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.7 Released" +author: nagachika +translator: +date: 2025-02-04 12:00:00 +0000 +lang: en +--- + +Ruby 3.2.7 has been released. + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_7) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.2.7" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From ca83511bd8dadf5d1afa94afd6cc1b5e0d904180 Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 5 Feb 2025 18:42:36 +0900 Subject: [PATCH 517/607] Translate "Ruby 3.2.7 released" (ko) --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/ko/news/_posts/2025-02-04-ruby-3-2-7-released.md b/ko/news/_posts/2025-02-04-ruby-3-2-7-released.md index a10c86dec4..bb10f69369 100644 --- a/ko/news/_posts/2025-02-04-ruby-3-2-7-released.md +++ b/ko/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -1,17 +1,17 @@ --- layout: news_post -title: "Ruby 3.2.7 Released" +title: "Ruby 3.2.7 릴리스" author: nagachika -translator: +translator: shia date: 2025-02-04 12:00:00 +0000 -lang: en +lang: ko --- -Ruby 3.2.7 has been released. +Ruby 3.2.7이 릴리스되었습니다. -Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_7) for further details. +자세한 내용은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_2_7)를 참조하세요. -## Download +## 다운로드 {% assign release = site.data.releases | where: "version", "3.2.7" | first %} @@ -36,7 +36,7 @@ Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_ SHA256: {{ release.sha256.zip }} SHA512: {{ release.sha512.zip }} -## Release Comment +## 릴리스 코멘트 -Many committers, developers, and users who provided bug reports helped us make this release. -Thanks for their contributions. +많은 커미터, 개발자, 버그를 보고해 준 사용자들이 이 릴리스를 만드는 데 도움을 주었습니다. +그들의 기여에 감사드립니다. From ca3f9e44fdfb81d39807fdd46b195e7174b076af Mon Sep 17 00:00:00 2001 From: Bear Su Date: Wed, 5 Feb 2025 20:38:33 +0800 Subject: [PATCH 518/607] Translate Ruby 3.2.7 Released (zh_tw) --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 zh_tw/news/_posts/2025-02-04-ruby-3-2-7-released.md diff --git a/zh_tw/news/_posts/2025-02-04-ruby-3-2-7-released.md b/zh_tw/news/_posts/2025-02-04-ruby-3-2-7-released.md new file mode 100644 index 0000000000..30ad3d5add --- /dev/null +++ b/zh_tw/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -0,0 +1,41 @@ +--- +layout: news_post +title: "Ruby 3.2.7 發布" +author: nagachika +translator: "Bear Su" +date: 2025-02-04 12:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.2.7 已經發布了。 + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_2_7)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.2.7" | first %} + +* <{{ 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 02420553f67e241f71f89e860322589c2cece9a1 Mon Sep 17 00:00:00 2001 From: Eduardo Bohrer Date: Wed, 5 Feb 2025 22:30:41 -0300 Subject: [PATCH 519/607] Translate 3.2.7 release to pt --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 pt/news/_posts/2025-02-04-ruby-3-2-7-released.md diff --git a/pt/news/_posts/2025-02-04-ruby-3-2-7-released.md b/pt/news/_posts/2025-02-04-ruby-3-2-7-released.md new file mode 100644 index 0000000000..ef0cfcef67 --- /dev/null +++ b/pt/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.7 Lançado" +author: nagachika +translator: nbluis +date: 2025-02-04 12:00:00 +0000 +lang: pt +--- + +Ruby 3.2.7 foi lançado. + +Por favor, consulte os [lançamentos no GitHub](https://github.com/ruby/ruby/releases/tag/v3_2_7) para mais detalhes. + +## Download + +{% assign release = site.data.releases | where: "version", "3.2.7" | first %} + +* <{{ release.url.gz }}> + + TAMANHO: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + TAMANHO: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + TAMANHO: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Comentário do Lançamento + +Muitos committers, desenvolvedores e usuários que forneceram relatórios de bugs nos ajudaram a fazer este lançamento. +Obrigado pelas contribuições. From 28d5640fb168bb40dfdd47ece6fe67e08ce6bfb1 Mon Sep 17 00:00:00 2001 From: jdx <216188+jdx@users.noreply.github.com> Date: Thu, 6 Feb 2025 17:44:52 -0600 Subject: [PATCH 520/607] Added mise-en-place to installation (en) Co-authored-by: Juanito Fatas --- en/documentation/installation/index.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/en/documentation/installation/index.md b/en/documentation/installation/index.md index 94d07ab4b7..e4852a3e40 100644 --- a/en/documentation/installation/index.md +++ b/en/documentation/installation/index.md @@ -57,6 +57,7 @@ Here are available installation methods: * [Managers](#managers) * [asdf-vm](#asdf-vm) * [chruby](#chruby) + * [mise-en-place](#mise-en-place) * [rbenv](#rbenv) * [rbenv for Windows](#rbenv-for-windows) * [RVM](#rvm) @@ -334,6 +335,14 @@ manage Rubies installed by [ruby-install](#ruby-install) or even built from source. +### mise-en-place +{: #mise-en-place} + +[mise-en-place][mise-en-place] allows you to switch between multiple Rubies without requiring additional tools. +It manages installations automatically and includes a [gem backend](https://mise.jdx.dev/dev-tools/backends/gem.html) to manage versions of CLIs written in Ruby. +It supports UNIX-like and Windows operating systems. + + ### rbenv {: #rbenv} @@ -421,4 +430,6 @@ though, because the installed Ruby won't be managed by any tools. [wsl]: https://docs.microsoft.com/en-us/windows/wsl/about [asdf-vm]: https://asdf-vm.com/ [asdf-ruby]: https://github.com/asdf-vm/asdf-ruby +[mise-en-place]: https://mise.jdx.dev +[mise-en-place-ruby]: https://mise.jdx.dev/lang/ruby.html [openbsd-current-ruby-ports]: https://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/lang/ruby/?only_with_tag=HEAD From e3d5083197e3d143a9b03e5679eff4619002d25f Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 8 Feb 2025 10:38:05 +0900 Subject: [PATCH 521/607] Translate "Added mise-in-place" (ko) (#3488) * Align & fill up missed text * Copy "added mise-en-place" * Tranlate "mise-in-place" * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ko/documentation/installation/index.md | 93 +++++++++++++++++--------- 1 file changed, 63 insertions(+), 30 deletions(-) diff --git a/ko/documentation/installation/index.md b/ko/documentation/installation/index.md index 994c51c327..60998f0a07 100644 --- a/ko/documentation/installation/index.md +++ b/ko/documentation/installation/index.md @@ -4,8 +4,8 @@ title: "Ruby 설치하기" lang: ko --- -Ruby를 설치하고 관리할 수 있는 다양한 패키지 관리 시스템들과 서드파티 도구들이 있습니다. - +Ruby를 설치하고 관리할 수 있는 다양한 패키지 관리 시스템들과 +서드파티 도구들이 있습니다. {: .summary} 컴퓨터에 이미 Ruby가 설치되어 있을 수도 있습니다. @@ -55,7 +55,9 @@ Windows 10을 사용 중이라면 [Windows Subsystem for Linux][wsl]를 사용 * [RubyInstaller](#rubyinstaller) (Windows) * [Ruby Stack](#rubystack) * [관리자](#managers) + * [asdf-vm](#asdf-vm) * [chruby](#chruby) + * [mise-en-place](#mise-en-place) * [rbenv](#rbenv) * [rbenv for Windows](#rbenv-for-windows) * [RVM](#rvm) @@ -72,10 +74,12 @@ Ruby를 설치하기 위해 자신의 시스템의 패키지 관리자를 사용 Ruby 커뮤니티의 일부 회원들은 Ruby를 설치할 때 패키지 관리자를 사용하지 말아야 하고, 대신 도구를 사용해야 한다고 느끼고 있습니다. -대부분의 패키지 관리자들은 오래된 버전의 Ruby를 설치합니다. -최신의 Ruby를 사용하고자 한다면, 패키지의 버전 번호가 올바른지 확인하거나 +대부분의 패키지 관리자들은 최근 릴리스 대신 +오래된 버전의 Ruby를 설치합니다. 최신 버전의 Ruby를 사용하고자 한다면, +패키지의 버전 번호가 올바른지 확인하거나 특정 [인스톨러][installers]를 사용하세요. + ### apt (Debian이나 Ubuntu) {: #apt} @@ -86,6 +90,7 @@ Debian GNU/Linux와 Ubuntu는 apt 패키지 관리 시스템을 사용합니다. $ sudo apt-get install ruby-full {% endhighlight %} + ### yum (CentOS, Fedora, RHEL) {: #yum} @@ -96,20 +101,24 @@ CentOS, Fedora, RHEL은 yum 패키지 관리 시스템을 사용합니다. $ sudo yum install ruby {% endhighlight %} -설치된 버전은 보통 그 특정 배포 버전 릴리스 시기의 최신 버전의 Ruby입니다. +설치된 버전은 보통 그 특정 배포 버전 릴리스 시기의 +최신 버전의 Ruby입니다. ### snap (Ubuntu나 다른 리눅스 배포판) {: #snap} -Snap은 Canonical에 의해 개발된 패키지 매니저입니다. 이는 Ubuntu에서 바로 사용 가능합니다만, 다른 리눅스 배포판에서도 동작합니다. +Snap은 Canonical에 의해 개발된 패키지 매니저입니다. +이는 Ubuntu에서 바로 사용 가능합니다만, +다른 리눅스 배포판에서도 동작합니다. 다음과 같이 사용할 수 있습니다. {% highlight sh %} $ sudo snap install ruby --classic {% endhighlight %} -Ruby의 마이너 시리즈를 위한 채널을 제공합니다. 예를 들어, 다음 명령은 Ruby 2.3으로 변경할 수 있게 해줍니다. +Ruby의 마이너 시리즈를 위한 채널을 제공합니다. +예를 들어, 다음 명령은 Ruby 2.3으로 변경할 수 있게 해줍니다. {% highlight sh %} $ sudo snap switch ruby --channel=2.3/stable @@ -146,7 +155,8 @@ $ sudo pacman -S ruby ### Homebrew (macOS) {: #homebrew} -엘 캐피탄(10.11)부터 모하비(10.14)까지의 macOS 릴리스에서는 Ruby 2.0 이상이 포함되어 있습니다. +엘 캐피탄(10.11)부터 macOS 릴리스에서는 +Ruby 2.0 이상이 포함되어 있습니다. [Homebrew][homebrew]는 macOS에서 일반적으로 사용되는 패키지 관리자입니다. Homebrew를 사용해 새로운 버전의 Ruby를 설치하는 것은 쉽습니다. @@ -168,8 +178,9 @@ pkg를 이용하여 패키지를 설치할 수 있습니다: $ pkg install ruby {% endhighlight %} -[포트 컬렉션][freebsd-ports-collection]을 사용하여 Ruby를 소스로부터 설치 -할 수 있습니다. 이는 설치 설정을 변경하고 싶을 때 유용합니다. +[포트 컬렉션][freebsd-ports-collection]을 사용하여 Ruby를 소스로부터 +설치 할 수 있습니다. 이는 설치 설정을 변경하고 싶을 때 +유용합니다. FreeBSD 상의 Ruby와 그 환경에 대해서 더 자세한 정보는 [FreeBSD Ruby Project 웹사이트][freebsd-ruby]에서 얻을 수 있습니다. @@ -178,8 +189,9 @@ FreeBSD 상의 Ruby와 그 환경에 대해서 더 자세한 정보는 ### OpenBSD {: #openbsd} -OpenBSD와 그 배포판인 adJ에는 3개의 Ruby 메이저 버전의 패키지가 있습니다. -다음 명령을 통해 설치 가능한 버전을 확인하고 설치할 수 있습니다. +OpenBSD와 그 배포판인 adJ에는 3개의 Ruby 메이저 버전의 패키지가 +있습니다. 다음 명령을 통해 설치 가능한 버전을 확인하고 +설치할 수 있습니다. {% highlight sh %} $ doas pkg_add ruby @@ -190,7 +202,8 @@ $ doas pkg_add ruby 가장 최신의 Ruby 버전이 릴리스된 며칠 후면 OpenBSD 포트 컬렉션의 `HEAD` 브랜치에 이 플랫폼을 위한 Ruby 버전이 추가되어 있을 것입니다. -[가장 최신의 포트 컬렉션의 lang/ruby 디렉터리][openbsd-current-ruby-ports]를 확인하세요. +[가장 최신의 포트 컬렉션의 lang/ruby 디렉터리][openbsd-current-ruby-ports]를 +확인하세요. ### OpenIndiana에서의 Ruby @@ -205,7 +218,8 @@ Ruby 바이너리와 RubyGems를 직접 받아 설치합니다. 아주 쉽습니 $ pkg install runtime/ruby {% endhighlight %} -하지만, 서드파티 도구를 사용하는 것이 최신 버전의 Ruby를 얻는 더 좋은 방법입니다. +하지만, 서드파티 도구를 사용하는 것이 최신 버전의 Ruby를 얻는 +더 좋은 방법입니다. ### Windows 패키지 관리자 {: #winget} @@ -233,13 +247,14 @@ Windows에서 [Windows 패키지 관리자 CLI](https://github.com/microsoft/win > choco install ruby {% endhighlight %} -`msys2`가 이미 설치되어 있다면 이를 그대로 사용하고, 아니면 완전한 Ruby 개발 -환경을 위해서 새로 설치합니다. +`msys2`가 이미 설치되어 있다면 이를 그대로 사용하고, 아니면 완전한 Ruby 개발 환경을 위해서 새로 설치합니다. ### 다른 배포판 +{: #other-systems} -다른 시스템에서는 자신의 Linux 배포 관리자를 위한 패키지 저장소를 검색할 수 있습니다. -아니면 [서드파티 인스톨러][installers]를 사용할 수도 있습니다. +다른 시스템에서는 자신의 Linux 배포 관리자를 위한 패키지 저장소를 +검색할 수 있습니다. 아니면 [서드파티 인스톨러][installers]를 +사용할 수도 있습니다. ## 인스톨러 @@ -248,8 +263,9 @@ Windows에서 [Windows 패키지 관리자 CLI](https://github.com/microsoft/win 시스템이나 패키지 관리자에서 제공하는 Ruby가 구 버전이라면, 서드 파티 인스톨러를 사용해 새로운 버전의 Ruby를 설치할 수 있습니다. -어떤 인스톨러는 여러 버전의 Ruby를 같은 시스템에 설치하게 합니다. -관련된 관리자는 다른 Ruby 간의 전환을 도와줍니다. +어떤 인스톨러는 여러 버전의 Ruby를 같은 시스템에 설치하게 +합니다. 관련된 관리자는 다른 Ruby 간의 전환을 +도와줍니다. [RVM](#rvm)을 버전 관리자로 사용할 계획이라면 포함되어 있으므로 별도의 인스톨러는 필요 없습니다. @@ -285,26 +301,30 @@ Windows에서는 [RubyInstaller][rubyinstaller]는 전체 Ruby 개발 환경을 ### Ruby Stack {: #rubystack} -Ruby on Rails를 사용하기 위해 Ruby를 설치하신다면 다음 인스톨러를 사용할 수 있습니다. +Ruby on Rails를 사용하기 위해 Ruby를 설치하신다면 다음 인스톨러를 +사용할 수 있습니다. -* [Bitnami Ruby Stack][rubystack]는 Ruby on Rails를 위한 완전한 개발환경을 제공합니다. +* [Bitnami Ruby Stack][rubystack]는 Ruby on Rails를 위한 + 완전한 개발환경을 제공합니다. macOS, Linux, Windows, 가상 머신, 클라우드 이미지를 지원합니다. ## 관리자 +{: #managers} 많은 루비스트들이 여러 버전의 Ruby를 관리하기 위해 Ruby 관리자를 사용합니다. 각 프로젝트에서 서로 다른 Ruby 버전을 사용할 수 있도록 간단하게 또는 자동으로 버전을 변경해주며 그 이외의 장점들이 있지만, 공식적으로 지원되는 것은 아닙니다. 하지만, 각각의 커뮤니티에서 도움을 구할 수 있습니다. -### asdf-vm +### asdf-vm {: #asdf-vm} -[asdf-vm][asdf-vm]은 프로젝트 단위로 여러 언어 런타임 버전을 관리할 수 있는 -확장 가능한 버전 관리자입니다. Ruby를 설치하려면 [asdf-ruby][asdf-ruby] -플러그인이 필요합니다(이는 [ruby-build](#ruby-build)를 사용합니다). +[asdf-vm][asdf-vm]은 프로젝트 단위로 여러 언어 런타임 버전을 +관리할 수 있는 확장 가능한 버전 관리자입니다. Ruby를 설치하려면 +[asdf-ruby][asdf-ruby] 플러그인이 필요합니다(이는 [ruby-build](#ruby-build)를 +사용합니다). ### chruby @@ -315,6 +335,14 @@ chruby는 [ruby-install](#ruby-install)로 설치된 Ruby뿐만 아니라 소스에서 빌드 된 Ruby도 관리할 수 있습니다. +### mise-en-place +{: #mise-en-place} + +[mise-en-place][mise-en-place]는 추가 도구 없이 여러 Ruby 간의 전환을 할 수 있게 합니다. +설치를 자동으로 관리하며 Ruby로 작성된 CLI의 버전을 관리하기 위한 [gem 백엔드](https://mise.jdx.dev/dev-tools/backends/gem.html)를 포함합니다. +UNIX 계열 운영체제와 Windows를 지원합니다. + + ### rbenv {: #rbenv} @@ -323,13 +351,16 @@ rbenv 자체는 Ruby 설치를 지원하지 않습니다만, [ruby-build](#ruby- 유명한 플러그인에서 Ruby를 설치할 수 있습니다. rbenv, ruby-build 모두 macOS, Linux나 다른 UNIX-계열 운영체제에서 사용가능합니다. + ### rbenv for Windows {: #rbenv-for-windows} -[rbenv for Windows][rbenv-for-windows]는 Windows에서 여러 종류의 Ruby를 설치하고 -관리할 수 있도록 합니다. 이는 PowerShell로 작성되었으므로 Windows에서 Ruby를 -이용하는 사용자들에게 자연스러운 수단을 제공합니다. 또한 커맨드 라인 인터페이스는 -UNIX-계열 운영체제의 [rbenv][rbenv]와 호환됩니다. +[rbenv for Windows][rbenv-for-windows]는 Windows에서 여러 종류의 Ruby를 +설치하고 관리할 수 있도록 합니다. 이는 PowerShell로 작성되었으므로 +Windows에서 Ruby를 이용하는 사용자들에게 자연스러운 수단을 제공합니다. +또한 커맨드 라인 인터페이스는 UNIX 계열 +운영체제의 [rbenv][rbenv]와 호환됩니다. + ### RVM ("Ruby Version Manager") {: #rvm} @@ -399,4 +430,6 @@ $ sudo make install [wsl]: https://docs.microsoft.com/ko-kr/windows/wsl/about [asdf-vm]: https://asdf-vm.com/ [asdf-ruby]: https://github.com/asdf-vm/asdf-ruby +[mise-en-place]: https://mise.jdx.dev +[mise-en-place-ruby]: https://mise.jdx.dev/lang/ruby.html [openbsd-current-ruby-ports]: https://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/lang/ruby/?only_with_tag=HEAD From 5f1559c822843b1840751962cac0bc2abb839f30 Mon Sep 17 00:00:00 2001 From: gaojun Date: Mon, 10 Feb 2025 09:46:55 +0800 Subject: [PATCH 522/607] Translate Ruby 3.2.7 released(zh_cn) --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 zh_cn/news/_posts/2025-02-04-ruby-3-2-7-released.md diff --git a/zh_cn/news/_posts/2025-02-04-ruby-3-2-7-released.md b/zh_cn/news/_posts/2025-02-04-ruby-3-2-7-released.md new file mode 100644 index 0000000000..2ad8034460 --- /dev/null +++ b/zh_cn/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.7 已发布" +author: nagachika +translator: "GAO Jun" +date: 2025-02-04 12:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.2.7 已发布。 + +更多信息可以参考 [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_7)。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.2.7" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 10f07e63b0ae267c93674bad1e645c01b085f8bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Sun, 9 Feb 2025 21:34:41 -0500 Subject: [PATCH 523/607] Translate 3.2.7 release (es) (#3491) --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 es/news/_posts/2025-02-04-ruby-3-2-7-released.md diff --git a/es/news/_posts/2025-02-04-ruby-3-2-7-released.md b/es/news/_posts/2025-02-04-ruby-3-2-7-released.md new file mode 100644 index 0000000000..50e3c59227 --- /dev/null +++ b/es/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -0,0 +1,45 @@ +--- +layout: news_post +title: "Publicado Ruby 3.2.7" +author: nagachika +translator: vtamara +date: 2025-02-04 12:00:00 +0000 +lang: es +--- + +Ruby 3.2.7 ha sido publicado. + +Por favor vea detalles en la +[publiación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_2_7). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.2.7" | first %} + +* <{{ 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 }} + +## Comentarios de la versión + +Muchas contribuyentes, desarrolladores y usuarios que proveyeron +reportes de fallas nos ayudaron a producir esta versión. + +Gracias por sus contribuciones. From edc4e7e842919a494ac22b606803353ede680f6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Sun, 9 Feb 2025 21:37:20 -0500 Subject: [PATCH 524/607] Fix comments of 3.3.7 (#3492) --- es/news/_posts/2025-01-15-ruby-3-3-7-released.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/es/news/_posts/2025-01-15-ruby-3-3-7-released.md b/es/news/_posts/2025-01-15-ruby-3-3-7-released.md index 1fe6a4f205..40bcdac186 100644 --- a/es/news/_posts/2025-01-15-ruby-3-3-7-released.md +++ b/es/news/_posts/2025-01-15-ruby-3-3-7-released.md @@ -40,5 +40,8 @@ Por favor revise más detalles en las ## Comentario de la versión -Many committers, developers, and users who provided bug reports helped us make this release. -Thanks for their contributions. + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a producir esta versión. + +Gracias por sus contribuciones. From da025131a3ad53a87bbe90b89fb781946a210b64 Mon Sep 17 00:00:00 2001 From: nick evans Date: Sat, 8 Feb 2025 14:53:03 -0500 Subject: [PATCH 525/607] Add CVE-2025-25186: DoS vulnerability in net-imap --- .../2025-02-11-dos-net-imap-cve-2025-25186.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md diff --git a/en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md new file mode 100644 index 0000000000..66b0d9a4fa --- /dev/null +++ b/en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2025-25186: DoS vulnerability in net-imap" +author: "nevans" +translator: +date: 2025-02-11 03:00:00 +0000 +tags: security +lang: en +--- + +There is a possibility for DoS by in the net-imap gem. This vulnerability has been assigned the CVE identifier [CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186). We recommend upgrading the net-imap gem. + +## Details + +A malicious server can send highly compressed uid-set data which is automatically read by the client's receiver thread. The response parser uses Range#to_a to convert the uid-set data into arrays of integers, with no limitation on the expanded size of the ranges. + +Please update net-imap gem to version 0.3.8, 0.4.19, 0.5.6, or later. + +## Affected versions + +* net-imap gem between 0.3.2 and 0.3.8, 0.4.0 and 0.4.19, or 0.5.0 and 0.5.6 + +## Credits + +Thanks to [manun](https://hackerone.com/manun) for discovering this issue. + +## History + +* Originally published at 2025-02-11 03:00:00 (UTC) From 2a557d640fe2f4ffd9b1adac3dc23b86afe4acaa Mon Sep 17 00:00:00 2001 From: Bear Su Date: Mon, 10 Feb 2025 20:58:18 +0800 Subject: [PATCH 526/607] Translate 2025-02-11 DoS net-imap CVE news (zh_tw) --- .../2025-02-11-dos-net-imap-cve-2025-25186.md | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md diff --git a/zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md new file mode 100644 index 0000000000..53df9b3bd7 --- /dev/null +++ b/zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md @@ -0,0 +1,33 @@ +--- +layout: news_post +title: "CVE-2025-25186: net-imap DoS 漏洞" +author: "nevans" +translator: "Bear Su" +date: 2025-02-11 03:00:00 +0000 +tags: security +lang: zh_tw +--- + +在 net-imap gem 發現可能會造成 DoS 的漏洞。 +該漏洞的 CVE 編號為 [CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186)。 + +我們建議您升級 net-imap gem。 + +## 風險細節 + +惡意伺服器可以發送高度壓縮的 uid-set 資料,該資料會自動被客戶端的接收者執行緒讀取。 +回應解析器使用 Range#to_a 會將 uid-set 資料轉換為整數陣列,但對範圍的擴展大小沒有限制。 + +請更新 net-imap gem 至 0.3.8、0.4.19、0.5.6、或更新版本。 + +## 受影響版本 + +* net-imap gem 版本介於 0.3.2 至 0.3.8、0.4.0 至 0.4.19、或 0.5.0 至 0.5.6 + +## 致謝 + +感謝 [manun](https://hackerone.com/manun) 發現此問題。 + +## 歷史 + +* 最初發布於 2025-02-11 03:00:00 (UTC) From e544f9cd663b37b1a648a853c7bce0c885b24a3d Mon Sep 17 00:00:00 2001 From: Juanito Fatas Date: Mon, 10 Feb 2025 23:52:20 +0900 Subject: [PATCH 527/607] Fix affected versions for CVE-2025-25186 (en, zh_tw) --- en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md | 2 +- zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md index 66b0d9a4fa..1bba67bd7d 100644 --- a/en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md +++ b/en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md @@ -18,7 +18,7 @@ Please update net-imap gem to version 0.3.8, 0.4.19, 0.5.6, or later. ## Affected versions -* net-imap gem between 0.3.2 and 0.3.8, 0.4.0 and 0.4.19, or 0.5.0 and 0.5.6 +* net-imap gem versions 0.3.2 to 0.3.7, 0.4.0 to 0.4.18, and 0.5.0 to 0.5.5 (inclusive). ## Credits diff --git a/zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md index 53df9b3bd7..af6d9cbee9 100644 --- a/zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md +++ b/zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md @@ -22,7 +22,7 @@ lang: zh_tw ## 受影響版本 -* net-imap gem 版本介於 0.3.2 至 0.3.8、0.4.0 至 0.4.19、或 0.5.0 至 0.5.6 +* net-imap gem 版本介於 0.3.2 至 0.3.7、0.4.0 至 0.4.18、或 0.5.0 至 0.5.5 ## 致謝 From 2b6890fd3e52ab65dbe0828648bfbf8028f65edd Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 11 Feb 2025 10:52:04 +0900 Subject: [PATCH 528/607] Translate "CVE-2025-25186" (ko) (#3493) * cp {en,ko}/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md * Translate "CVE-2025-25186" (ko) Co-authored-by: Juanito Fatas --- .../2025-02-11-dos-net-imap-cve-2025-25186.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ko/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md diff --git a/ko/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/ko/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md new file mode 100644 index 0000000000..15c847df5e --- /dev/null +++ b/ko/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2025-25186: net-imap의 DoS 취약점" +author: "nevans" +translator: "shia" +date: 2025-02-11 03:00:00 +0000 +tags: security +lang: ko +--- + +net-imap gem에서 DoS 취약점이 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186)로 등록되었습니다. net-imap gem을 업그레이드하기를 추천합니다. + +## 세부 내용 + +악의적인 서버가 고도로 압축된 uid-set 데이터를 보낼 수 있으며, 클라이언트의 수신 스레드는 이 데이터를 자동으로 읽습니다. 응답 파서는 uid-set 데이터를 정수 배열로 변환하기 위해 Range#to_a를 사용하며, 이때 범위의 확장 크기에 대한 제한이 없습니다. + +net-imap gem을 0.3.8, 0.4.19, 또는 0.5.6으로 업데이트하세요. + +## 해당 버전 + +* net-imap gem 0.3.2부터 0.3.7까지, 0.4.0부터 0.4.18까지, 또는 0.5.0부터 0.5.5까지 + +## 도움을 준 사람 + +이 문제를 발견해 준 [manun](https://hackerone.com/manun)에게 감사를 표합니다. + +## 수정 이력 + +* 2025-02-11 03:00:00 (UTC) 최초 공개 From e6be1bf22ff5a1ee57fe12b4d4160676580b1d26 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 11 Feb 2025 10:52:47 +0900 Subject: [PATCH 529/607] Translate "CVE-2025-25186" (ja) (#3494) * cp {en,ja}/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md * Translate "CVE-2025-25186" (ja) Co-authored-by: Juanito Fatas --- .../2025-02-11-dos-net-imap-cve-2025-25186.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ja/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md diff --git a/ja/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/ja/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md new file mode 100644 index 0000000000..d25570b8bc --- /dev/null +++ b/ja/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2025-25186: net-imap gem の DoS の脆弱性" +author: "nevans" +translator: "shia" +date: 2025-02-11 03:00:00 +0000 +tags: security +lang: ja +--- + +net-imap gem に DoS の脆弱性が発見されました。この脆弱性は [CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186) として登録されています。net-imap gem のアップグレードを推奨します。 + +## 詳細 + +悪意のあるサーバーはクライアントの受信スレッドによって自動的に読み取られる高度に圧縮された uid-set データを送信することができます。応答パーサーは、uid-set データを整数の配列に変換するために Range#to_a を使用しますが、範囲の展開サイズに制限がありません。 + +net-imap gem を 0.3.8、0.4.19、0.5.6 またはそれ以降にアップデートしてください。 + +## 影響を受けるバージョン + +* net-imap gem 0.3.2 から 0.3.7 まで、0.4.0 から 0.4.18 まで、または 0.5.0 から 0.5.5 まで + +## クレジット + +* この脆弱性情報は、[manun](https://hackerone.com/manun) 氏によって報告されました。 + +## 更新履歴 + +* 2025-02-11 12:00:00 (JST) 初版 From 290546b19f3590aa37b3c3eb27a75c783a5178a7 Mon Sep 17 00:00:00 2001 From: Eduardo Bohrer Date: Mon, 10 Feb 2025 22:53:18 -0300 Subject: [PATCH 530/607] Translate CVE-2025-25186: DoS vulnerability in net-imap (pt) (#3497) * Translate CVE-2025-25186: Vulnerabilidade de DoS em net-imap (pt) --- .../2025-02-11-dos-net-imap-cve-2025-25186.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 pt/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md diff --git a/pt/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/pt/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md new file mode 100644 index 0000000000..7e4284f528 --- /dev/null +++ b/pt/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md @@ -0,0 +1,29 @@ +--- +layout: news_post +title: "CVE-2025-25186: Vulnerabilidade de DoS em net-imap" +author: "nevans" +translator: nbluis +date: 2025-02-11 03:00:00 +0000 +tags: security +lang: pt +--- + +Existe uma possibilidade de DoS na gem net-imap. Esta vulnerabilidade foi atribuída ao identificador CVE [CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186). Recomendamos atualizar a gem net-imap. + +## Detalhes + +Um servidor malicioso pode enviar dados uid-set altamente compactados, que são lidos automaticamente pelo thread receptor do cliente. O parser de resposta usa Range#to_a para converter os dados uid-set em arrays de inteiros, sem limitação no tamanho expandido dos intervalos. + +Atualize a gem net-imap para a versão 0.3.8, 0.4.19, 0.5.6 ou posterior. + +## Versões afetadas + +* gem net-imap entre 0.3.2 e 0.3.7, 0.4.0 e 0.4.18, ou 0.5.0 e 0.5.5 + +## Créditos + +Obrigado a [manun](https://hackerone.com/manun) por descobrir este problema. + +## Histórico + +* Publicado originalmente em 2025-02-11 03:00:00 (UTC) From 5e55eb6a0b199e448e7b9579cd64b53e41e57481 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 11 Feb 2025 10:53:47 +0900 Subject: [PATCH 531/607] Translate "Ruby 3.2.7 Released" (ja) (#3495) --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 ja/news/_posts/2025-02-04-ruby-3-2-7-released.md diff --git a/ja/news/_posts/2025-02-04-ruby-3-2-7-released.md b/ja/news/_posts/2025-02-04-ruby-3-2-7-released.md new file mode 100644 index 0000000000..a52bd5db0e --- /dev/null +++ b/ja/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.7 リリース" +author: nagachika +translator: shia +date: 2025-02-04 12:00:00 +0000 +lang: ja +--- + +Ruby 3.2.7 がリリースされました。 + +詳しくは [GitHub release notes](https://github.com/ruby/ruby/releases/tag/v3_2_7) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.2.7" | first %} + +* <{{ 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 31922302c65437bf37ed59e370232d0e126f9071 Mon Sep 17 00:00:00 2001 From: manunio Date: Tue, 11 Feb 2025 10:26:46 +0530 Subject: [PATCH 532/607] CVE-2025-25186: Update publish date --- ...025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} | 4 ++-- ...025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} | 4 ++-- ...025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} | 4 ++-- ...025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} | 4 ++-- ...025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) rename en/news/_posts/{2025-02-11-dos-net-imap-cve-2025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} (91%) rename ja/news/_posts/{2025-02-11-dos-net-imap-cve-2025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} (94%) rename ko/news/_posts/{2025-02-11-dos-net-imap-cve-2025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} (93%) rename pt/news/_posts/{2025-02-11-dos-net-imap-cve-2025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} (91%) rename zh_tw/news/_posts/{2025-02-11-dos-net-imap-cve-2025-25186.md => 2025-02-10-dos-net-imap-cve-2025-25186.md} (91%) diff --git a/en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/en/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md similarity index 91% rename from en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md rename to en/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md index 1bba67bd7d..8b39b12ed5 100644 --- a/en/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md +++ b/en/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -3,7 +3,7 @@ layout: news_post title: "CVE-2025-25186: DoS vulnerability in net-imap" author: "nevans" translator: -date: 2025-02-11 03:00:00 +0000 +date: 2025-02-10 03:00:00 +0000 tags: security lang: en --- @@ -26,4 +26,4 @@ Thanks to [manun](https://hackerone.com/manun) for discovering this issue. ## History -* Originally published at 2025-02-11 03:00:00 (UTC) +* Originally published at 2025-02-10 03:00:00 (UTC) diff --git a/ja/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/ja/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md similarity index 94% rename from ja/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md rename to ja/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md index d25570b8bc..d58d494a85 100644 --- a/ja/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md +++ b/ja/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -3,7 +3,7 @@ layout: news_post title: "CVE-2025-25186: net-imap gem の DoS の脆弱性" author: "nevans" translator: "shia" -date: 2025-02-11 03:00:00 +0000 +date: 2025-02-10 03:00:00 +0000 tags: security lang: ja --- @@ -26,4 +26,4 @@ net-imap gem を 0.3.8、0.4.19、0.5.6 またはそれ以降にアップデー ## 更新履歴 -* 2025-02-11 12:00:00 (JST) 初版 +* 2025-02-10 12:00:00 (JST) 初版 diff --git a/ko/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/ko/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md similarity index 93% rename from ko/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md rename to ko/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md index 15c847df5e..16f68c3621 100644 --- a/ko/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md +++ b/ko/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -3,7 +3,7 @@ layout: news_post title: "CVE-2025-25186: net-imap의 DoS 취약점" author: "nevans" translator: "shia" -date: 2025-02-11 03:00:00 +0000 +date: 2025-02-10 03:00:00 +0000 tags: security lang: ko --- @@ -26,4 +26,4 @@ net-imap gem을 0.3.8, 0.4.19, 또는 0.5.6으로 업데이트하세요. ## 수정 이력 -* 2025-02-11 03:00:00 (UTC) 최초 공개 +* 2025-02-10 03:00:00 (UTC) 최초 공개 diff --git a/pt/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/pt/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md similarity index 91% rename from pt/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md rename to pt/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md index 7e4284f528..09e8701462 100644 --- a/pt/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md +++ b/pt/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -3,7 +3,7 @@ layout: news_post title: "CVE-2025-25186: Vulnerabilidade de DoS em net-imap" author: "nevans" translator: nbluis -date: 2025-02-11 03:00:00 +0000 +date: 2025-02-10 03:00:00 +0000 tags: security lang: pt --- @@ -26,4 +26,4 @@ Obrigado a [manun](https://hackerone.com/manun) por descobrir este problema. ## Histórico -* Publicado originalmente em 2025-02-11 03:00:00 (UTC) +* Publicado originalmente em 2025-02-10 03:00:00 (UTC) diff --git a/zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md b/zh_tw/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md similarity index 91% rename from zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md rename to zh_tw/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md index af6d9cbee9..2c019ba8db 100644 --- a/zh_tw/news/_posts/2025-02-11-dos-net-imap-cve-2025-25186.md +++ b/zh_tw/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -3,7 +3,7 @@ layout: news_post title: "CVE-2025-25186: net-imap DoS 漏洞" author: "nevans" translator: "Bear Su" -date: 2025-02-11 03:00:00 +0000 +date: 2025-02-10 03:00:00 +0000 tags: security lang: zh_tw --- @@ -30,4 +30,4 @@ lang: zh_tw ## 歷史 -* 最初發布於 2025-02-11 03:00:00 (UTC) +* 最初發布於 2025-02-10 03:00:00 (UTC) From 6f9298148c49c6309495af45359a8d480bfa9673 Mon Sep 17 00:00:00 2001 From: gaojun Date: Tue, 11 Feb 2025 16:31:20 +0800 Subject: [PATCH 533/607] Translate CVE-2025-25186 (zh_cn) --- .../2025-02-10-dos-net-imap-cve-2025-25186.md | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 zh_cn/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md diff --git a/zh_cn/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md b/zh_cn/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md new file mode 100644 index 0000000000..f07bf86f31 --- /dev/null +++ b/zh_cn/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -0,0 +1,30 @@ +--- +layout: news_post +title: "CVE-2025-25186: net-imap 中的 DoS 漏洞" +author: "nevans" +translator: "GAO Jun" +date: 2025-02-10 03:00:00 +0000 +tags: security +lang: zh_cn +--- + +在 net-imap gem 中存在一个可能造成 DoS 的漏洞。此漏洞的 CVE 编号为[CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186)。 +我们建议您更新 net-imap gem。 + +## 详情 + +恶意服务器可以发送高度压缩的 uid-set 数据,这些数据会由客户端的接收线程自动读取。响应解析器会使用 Range#to_a 将 uid-set 数据转换为整数数组,但不会对 Range 实例展开后的大小进行任何限制。 + +请更新 net-imap gem 至 0.3.8,0.4.19,0.5.6,或更高版本。 + +## 受影响版本 + +* net-imap gem 版本 0.3.2 至 0.3.7, 0.4.0 至 0.4.18,以及 0.5.0 至 0.5.5。 + +## 致谢 + +感谢 [manun](https://hackerone.com/manun) 发现此问题。 + +## 历史 + +* 最初发布于 2025-02-10 03:00:00 (UTC) From 5ddf1a18a85c1219a428a2ff5156a7e1b1cc7b62 Mon Sep 17 00:00:00 2001 From: Chayoung You Date: Thu, 13 Feb 2025 16:49:07 +0900 Subject: [PATCH 534/607] Fix typos of CVE-2025-25186 (ko) (#3501) --- ko/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ko/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md b/ko/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md index 16f68c3621..58c493cbb7 100644 --- a/ko/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md +++ b/ko/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -8,11 +8,11 @@ tags: security lang: ko --- -net-imap gem에서 DoS 취약점이 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186)로 등록되었습니다. net-imap gem을 업그레이드하기를 추천합니다. +net-imap gem에서 DoS 취약점이 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186)으로 등록되었습니다. net-imap gem을 업그레이드하기를 추천합니다. ## 세부 내용 -악의적인 서버가 고도로 압축된 uid-set 데이터를 보낼 수 있으며, 클라이언트의 수신 스레드는 이 데이터를 자동으로 읽습니다. 응답 파서는 uid-set 데이터를 정수 배열로 변환하기 위해 Range#to_a를 사용하며, 이때 범위의 확장 크기에 대한 제한이 없습니다. +악의적인 서버가 고도로 압축된 uid-set 데이터를 보낼 수 있으며, 클라이언트의 수신 스레드는 이 데이터를 자동으로 읽습니다. 응답 파서는 uid-set 데이터를 정수 배열로 변환하기 위해 Range#to_a를 사용하며, 이때 확장된 범위의 크기에 대한 제한이 없습니다. net-imap gem을 0.3.8, 0.4.19, 또는 0.5.6으로 업데이트하세요. From b5a8f1b044d6f81a45684715500d3d04c1822019 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot Date: Fri, 14 Feb 2025 21:55:18 +0000 Subject: [PATCH 535/607] Create release for 3.4.2 --- .../_posts/2025-02-14-ruby-3-4-2-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 en/news/_posts/2025-02-14-ruby-3-4-2-released.md diff --git a/en/news/_posts/2025-02-14-ruby-3-4-2-released.md b/en/news/_posts/2025-02-14-ruby-3-4-2-released.md new file mode 100644 index 0000000000..b8d41af61f --- /dev/null +++ b/en/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.4.2 Released" +author: +translator: +date: 2025-02-14 21:55:17 +0000 +lang: en +--- + +Ruby 3.4.2 has been released. + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_4_2) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.4.2" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 2a03e202291f01158da69e77e6841826034b5a75 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Fri, 14 Feb 2025 14:20:23 -0800 Subject: [PATCH 536/607] Write up the release notes --- en/news/_posts/2025-02-14-ruby-3-4-2-released.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2025-02-14-ruby-3-4-2-released.md b/en/news/_posts/2025-02-14-ruby-3-4-2-released.md index b8d41af61f..2a97f81000 100644 --- a/en/news/_posts/2025-02-14-ruby-3-4-2-released.md +++ b/en/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -1,7 +1,7 @@ --- layout: news_post title: "Ruby 3.4.2 Released" -author: +author: k0kubun translator: date: 2025-02-14 21:55:17 +0000 lang: en @@ -9,7 +9,14 @@ lang: en Ruby 3.4.2 has been released. -Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_4_2) for further details. +This is a routine update that includes bug fixes. Please refer to the +[release notes on GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_2) for further details. + +## Release Schedule + +We intend to release the latest stable Ruby version (currently Ruby 3.4) every 2 months. +Ruby 3.4.3 will be released in April, 3.4.4 in June, 3.4.5 in August, 3.4.6 in October, and 3.4.7 in December. +If there's any change that affects a considerable amount of people, those versions may be released earlier than expected. ## Download From b0e6e53a2480969de54b9522001e4c635f36cec4 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Fri, 14 Feb 2025 14:21:27 -0800 Subject: [PATCH 537/607] Update _data --- _data/downloads.yml | 2 +- _data/releases.yml | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/_data/downloads.yml b/_data/downloads.yml index 007b69505d..36a817ddd9 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -7,7 +7,7 @@ preview: stable: - - 3.4.1 + - 3.4.2 - 3.3.7 - 3.2.7 diff --git a/_data/releases.yml b/_data/releases.yml index 25376ee174..8274b32d57 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,30 @@ # 3.4 series +- version: 3.4.2 + date: 2025-02-14 + post: /en/news/2025/02/14/ruby-3-4-2-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.2.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.2.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.2.tar.xz + size: + gz: 23174066 + zip: 28336243 + xz: 17218200 + sha1: + gz: 1537911b4a47940f11c309898e04187344a43167 + zip: 5a790b8a5aa662df6512f865bb042e93b8520864 + xz: b169f9e0d35cf85085c5f23d774485ba6c00ebac + sha256: + gz: 41328ac21f2bfdd7de6b3565ef4f0dd7543354d37e96f157a1552a6bd0eb364b + zip: e14b850e831bf046cf78d66f14207782da13e76777610596666a74fd6c786021 + xz: ebf1c2eb58f5da17c23e965d658dd7e6202c5c50f5179154c5574452bef4b3e0 + sha512: + gz: edc3aede0aadcaa62343f38ea6cab7adacedba810d883f1d9c3e6e24e28e24e0e27a7df2c8e517cc2aab940168fc4872ab8cad000598aab5940aa79072ac190b + zip: ac897cdc013b71ac3f76d1f70e9b79155a08197e458ddb7bfb638d1168d166b08fbc022aae95953bdade19ccd68989d666b76b6d681ee3480bb5936fb475959d + xz: cb8b5023bce316393716548c5f0a44c7d0240724ff79b995517641266af30bedc6f402c1c8fa27368ea607e2aa6d36bbb201e00c6e9dd2a80d837431d32343b5 + - version: 3.4.1 date: 2024-12-25 post: /en/news/2024/12/25/ruby-3-4-1-released/ From 2e4da5f5a4d9403ab0f8c50608043bd864f06a5d Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Fri, 14 Feb 2025 14:27:21 -0800 Subject: [PATCH 538/607] Insert a line for readability --- en/news/_posts/2025-02-14-ruby-3-4-2-released.md | 1 + 1 file changed, 1 insertion(+) diff --git a/en/news/_posts/2025-02-14-ruby-3-4-2-released.md b/en/news/_posts/2025-02-14-ruby-3-4-2-released.md index 2a97f81000..b176f52814 100644 --- a/en/news/_posts/2025-02-14-ruby-3-4-2-released.md +++ b/en/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -16,6 +16,7 @@ This is a routine update that includes bug fixes. Please refer to the We intend to release the latest stable Ruby version (currently Ruby 3.4) every 2 months. Ruby 3.4.3 will be released in April, 3.4.4 in June, 3.4.5 in August, 3.4.6 in October, and 3.4.7 in December. + If there's any change that affects a considerable amount of people, those versions may be released earlier than expected. ## Download From d984c0bce810173bd51448a929f1a48e920e549e Mon Sep 17 00:00:00 2001 From: Eduardo Bohrer Date: Fri, 14 Feb 2025 22:54:43 -0300 Subject: [PATCH 539/607] Translate "Ruby 3.4.2 Released" (pt) --- .../_posts/2025-02-14-ruby-3-4-2-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 pt/news/_posts/2025-02-14-ruby-3-4-2-released.md diff --git a/pt/news/_posts/2025-02-14-ruby-3-4-2-released.md b/pt/news/_posts/2025-02-14-ruby-3-4-2-released.md new file mode 100644 index 0000000000..821129f910 --- /dev/null +++ b/pt/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.2 Lançado" +author: k0kubun +translator: nbluis +date: 2025-02-14 21:55:17 +0000 +lang: pt +--- + +Ruby 3.4.2 foi lançado. + +Esta é uma atualização de rotina que inclui correções de bugs. Por favor consulte as +[notas de lançamento no GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_2) para maiores detalhes. + +## Cronograma de Lançamento + +Nosso objetivo é lançar a versão estável mais recente do Ruby (atualmente Ruby 3.4) a cada 2 meses. +O Ruby 3.4.3 será lançado em abril, 3.4.4 em junho, 3.4.5 em agosto, 3.4.6 em outubro e 3.4.7 em dezembro. + +Caso haja alguma alteração que afete um número considerável de pessoas, essas versões podem ser lançadas antes do esperado. + +## Download + +{% assign release = site.data.releases | where: "version", "3.4.2" | first %} + +* <{{ release.url.gz }}> + + TAMANHO: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + TAMANHO: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + TAMANHO: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Comentário sobre o Lançamento + +Muitos committers, desenvolvedores e usuários que forneceram relatórios de bugs nos ajudaram a fazer este lançamento. +Obrigado pelas contribuições. From cb8cb3196bc2720814c9c183f2f48daaef6fa5ac Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sat, 15 Feb 2025 09:59:41 +0800 Subject: [PATCH 540/607] Translate Ruby 3.4.2 Released (zh_tw) --- .../_posts/2025-02-14-ruby-3-4-2-released.md | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 zh_tw/news/_posts/2025-02-14-ruby-3-4-2-released.md diff --git a/zh_tw/news/_posts/2025-02-14-ruby-3-4-2-released.md b/zh_tw/news/_posts/2025-02-14-ruby-3-4-2-released.md new file mode 100644 index 0000000000..24c84e54f4 --- /dev/null +++ b/zh_tw/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -0,0 +1,48 @@ +--- +layout: news_post +title: "Ruby 3.4.2 發布" +author: k0kubun +translator: "Bear Su" +date: 2025-02-14 21:55:17 +0000 +lang: zh_tw +--- + +Ruby 3.4.2 已經發布了。 + +這是包括修復小型錯誤的例行更新。 +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_4_2)。 + +## 發布時程 + +我們打算每 2 個月發布一次最新的穩定 Ruby 版本(目前為 Ruby 3.4)。 + +我們預計 Ruby 3.4.3 於 4 月發布、Ruby 3.4.4 於 6 月發布、Ruby 3.4.5 於 8 月發布、Ruby 3.4.6 於 10 月發布、Ruby 3.4.7 於 12 月發布。如果有任何變更影響到相當多的人,我們可能會比預期更早發布新版本。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.4.2" | first %} + +* <{{ 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 9f6e8513056413cf504dab86f27801931dd7d5df Mon Sep 17 00:00:00 2001 From: Shia Date: Sun, 16 Feb 2025 09:31:16 +0900 Subject: [PATCH 541/607] Translate "Ruby 3.4.2 Released" (ko) (#3503) * cp {en,ko}/news/_posts/2025-02-14-ruby-3-4-2-released.md * Translate "Ruby 3.4.2 Released" (ko) * Update ko/news/_posts/2025-02-14-ruby-3-4-2-released.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../_posts/2025-02-14-ruby-3-4-2-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ko/news/_posts/2025-02-14-ruby-3-4-2-released.md diff --git a/ko/news/_posts/2025-02-14-ruby-3-4-2-released.md b/ko/news/_posts/2025-02-14-ruby-3-4-2-released.md new file mode 100644 index 0000000000..b29480454c --- /dev/null +++ b/ko/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.2 릴리스" +author: k0kubun +translator: "shia" +date: 2025-02-14 21:55:17 +0000 +lang: ko +--- + +Ruby 3.4.2가 릴리스되었습니다. + +이번 릴리스는 일반적인 업데이트로, 사소한 버그 수정이 포함되어 있습니다. +자세한 내용은 [GitHub 릴리스 노트](https://github.com/ruby/ruby/releases/tag/v3_4_2)를 참조하세요. + +## 릴리스 일정 + +Ruby의 최신 안정 버전(현재 Ruby 3.4)을 2개월마다 릴리스할 계획입니다. +Ruby 3.4.3은 4월에 릴리스될 예정이며, 3.4.4는 6월, 3.4.5는 8월, 3.4.6은 10월, 3.4.7은 12월에 릴리스될 예정입니다. + +만약 많은 사람들에게 영향을 미치는 변경 사항이 있을 경우, 해당 버전은 예상보다 빨리 릴리스될 수 있습니다. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.4.2" | first %} + +* <{{ 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 1daa1f3aac4c488caf0583c559dc62ea2a37da8d Mon Sep 17 00:00:00 2001 From: Daniel Bovensiepen Li Date: Mon, 17 Feb 2025 14:53:16 +0000 Subject: [PATCH 542/607] Add German translation for Ruby 3.3.7 release announcement --- .../_posts/2025-01-15-ruby-3-3-7-released.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 de/news/_posts/2025-01-15-ruby-3-3-7-released.md diff --git a/de/news/_posts/2025-01-15-ruby-3-3-7-released.md b/de/news/_posts/2025-01-15-ruby-3-3-7-released.md new file mode 100644 index 0000000000..ce0b4c7854 --- /dev/null +++ b/de/news/_posts/2025-01-15-ruby-3-3-7-released.md @@ -0,0 +1,43 @@ +--- +layout: news_post +title: "Ruby 3.3.7 veröffentlicht" +author: k0kubun +translator: "Daniel Bovensiepen" +date: 2025-01-15 07:51:59 +0000 +lang: de +--- + +Ruby 3.3.7 wurde veröffentlicht. + +Dies ist ein Routine-Update, welches Fehlerbehebungen enthält. +Bitte beachten Sie die [Release Notes auf GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_7) für weitere Details. + +## Herunterladen + +{% assign release = site.data.releases | where: "version", "3.3.7" | first %} + +* <{{ 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 }} + +## Veröffentlichungskommentar + +Viele Committer, Entwickler und Benutzer, die Fehlerberichte eingereicht haben, haben uns geholfen, diese Version zu erstellen. +Vielen Dank für Ihre Beiträge. From a7d5d57868565eba9cd727ed209b1397d356dc12 Mon Sep 17 00:00:00 2001 From: Daniel Bovensiepen Li Date: Mon, 17 Feb 2025 14:56:13 +0000 Subject: [PATCH 543/607] Add German translation for Ruby 3.2.7 release announcement --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 de/news/_posts/2025-02-04-ruby-3-2-7-released.md diff --git a/de/news/_posts/2025-02-04-ruby-3-2-7-released.md b/de/news/_posts/2025-02-04-ruby-3-2-7-released.md new file mode 100644 index 0000000000..b6f8d07b6c --- /dev/null +++ b/de/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.7 veröffentlicht" +author: nagachika +translator: "Daniel Bovensiepen" +date: 2025-02-04 12:00:00 +0000 +lang: de +--- + +Ruby 3.2.7 wurde veröffentlicht. + +Bitte beachten Sie die [Release Notes auf GitHub]((https://github.com/ruby/ruby/releases/tag/v3_2_7) für weitere Details. + +## Herunterladen + +{% assign release = site.data.releases | where: "version", "3.2.7" | first %} + +* <{{ 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 }} + +## Veröffentlichungskommentar + +Viele Committer, Entwickler und Benutzer, die Fehlerberichte eingereicht haben, haben uns geholfen, diese Version zu erstellen. +Vielen Dank für Ihre Beiträge. From 1e2d7b765efd0db1b72db2d31e6e8e96fba902e9 Mon Sep 17 00:00:00 2001 From: Daniel Bovensiepen Li Date: Mon, 17 Feb 2025 14:57:31 +0000 Subject: [PATCH 544/607] Add German translation for CVE-2025-25186: DoS vulnerability in net-imap --- .../2025-02-10-dos-net-imap-cve-2025-25186.md | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 de/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md diff --git a/de/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md b/de/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md new file mode 100644 index 0000000000..598907b2a8 --- /dev/null +++ b/de/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -0,0 +1,33 @@ +--- +layout: news_post +title: "CVE-2025-25186: DoS Sicherheitslücke in net-imap" +author: "nevans" +translator: "Daniel Bovensiepen" +date: 2025-02-10 03:00:00 +0000 +tags: security +lang: de +--- + +Es besteht die Möglichkeit eines DoS Angriffes auf das net-imap Gem. Diese Sicherheitslücke wurde mit der CVE-Kennung [CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186) versehen. Wir empfehlen, das net-imap Gem zu aktualisieren. + +## Details + +A malicious server can send highly compressed uid-set data which is automatically read by the client's receiver thread. The response parser uses Range#to_a to convert the uid-set data into arrays of integers, with no limitation on the expanded size of the ranges. + +## Details + +Ein bösartiger Server kann hochkomprimierte uid-set Daten versenden, welche automatisch vom Empfangsthread des Clients gelesen werden. Der Antwortparser verwendet Range#to_a, um die uid-set Daten in Listen von Ganzzahlen umzuwandeln, dabei gibt es keine Begrenzung der Größe der Range. + +Bitte aktualisieren Sie das net-imap-Gem auf Version 0.3.8, 0.4.19, 0.5.6 oder höher.. + +## Betroffene Versionen + +* net-imap gem Versionen 0.3.2 to 0.3.7, 0.4.0 to 0.4.18, und 0.5.0 bis 0.5.5 (inklusive). + +## Danksagung + +Danke an [manun](https://hackerone.com/manun) für das Entdecken dieses Problems. + +## Veröffentlichungsgeschichte + +* Ursprünglich veröffentlicht am 2025-02-10 03:00:00 (UTC) \ No newline at end of file From 3883c6cb088a9f00e5a504caaa7a81927cc565c5 Mon Sep 17 00:00:00 2001 From: Daniel Bovensiepen Li Date: Mon, 17 Feb 2025 14:58:52 +0000 Subject: [PATCH 545/607] Translate "Ruby 3.4.2 Released" to German --- .../_posts/2025-02-14-ruby-3-4-2-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 de/news/_posts/2025-02-14-ruby-3-4-2-released.md diff --git a/de/news/_posts/2025-02-14-ruby-3-4-2-released.md b/de/news/_posts/2025-02-14-ruby-3-4-2-released.md new file mode 100644 index 0000000000..569340e9f8 --- /dev/null +++ b/de/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.2 veröffentlicht" +author: k0kubun +translator: "Daniel Bovensiepen" +date: 2025-02-14 21:55:17 +0000 +lang: de +--- + +Ruby 3.4.2 wurde veröffentlicht. + +Dies ist ein Routine-Update, welches Fehlerbehebungen enthält. Bitte beachten Sie die +[Release Notes auf GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_2) für weitere Details. + +## Veröffentlichungsplan + +Wir beabsichtigen, eine neue stabile Ruby-Version (derzeit Ruby 3.4) alle 2 Monate zu veröffentlichen. +Ruby 3.4.3 wird im April veröffentlicht, 3.4.4 im Juni, 3.4.5 im August, 3.4.6 im Oktober und 3.4.7 im Dezember. + +Wenn es Änderungen gibt, die eine beträchtliche Anzahl von Menschen betreffen, können diese Versionen früher als erwartet veröffentlicht werden. + +## Herunterladen + +{% assign release = site.data.releases | where: "version", "3.4.2" | first %} + +* <{{ 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 }} + +## Veröffentlichungskommentar + +Viele Committer, Entwickler und Benutzer, die Fehlerberichte eingereicht haben, haben uns geholfen, diese Version zu erstellen. +Vielen Dank für Ihre Beiträge. From 3e40ccd35fe6d711462152f5135c81ba47776335 Mon Sep 17 00:00:00 2001 From: Daniel Bovensiepen Li Date: Mon, 17 Feb 2025 15:00:51 +0000 Subject: [PATCH 546/607] Fix formatting issue in German translation of CVE-2025-25186 post --- de/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/de/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md b/de/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md index 598907b2a8..7cfdad3f49 100644 --- a/de/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md +++ b/de/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -30,4 +30,4 @@ Danke an [manun](https://hackerone.com/manun) für das Entdecken dieses Problems ## Veröffentlichungsgeschichte -* Ursprünglich veröffentlicht am 2025-02-10 03:00:00 (UTC) \ No newline at end of file +* Ursprünglich veröffentlicht am 2025-02-10 03:00:00 (UTC) From 3eb366b68b7eb3f997681cd31bc376a802d358bc Mon Sep 17 00:00:00 2001 From: gaojun Date: Mon, 17 Feb 2025 09:20:44 +0800 Subject: [PATCH 547/607] Translate "Ruby 3.4.2 Released" (zh_cn) --- .../_posts/2025-02-14-ruby-3-4-2-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 zh_cn/news/_posts/2025-02-14-ruby-3-4-2-released.md diff --git a/zh_cn/news/_posts/2025-02-14-ruby-3-4-2-released.md b/zh_cn/news/_posts/2025-02-14-ruby-3-4-2-released.md new file mode 100644 index 0000000000..19b2830ded --- /dev/null +++ b/zh_cn/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.2 已发布" +author: k0kubun +translator: "GAO Jun" +date: 2025-02-14 21:55:17 +0000 +lang: zh_cn +--- + +Ruby 3.4.2 已发布。 + +此版本是包含了若干问题修正的定期更新版本。 +详细信息可参考 [GitHub 发布说明](https://github.com/ruby/ruby/releases/tag/v3_4_2) 。 + +## Release Schedule + +我们计划每2个月发布最新的 Ruby 版本(目前是 Ruby 3.4)。 +Ruby 3.4.3 将发布于四月,3.4.4 将发布于六月,3.4.5 将发布于八月,3.4.6 将发布于十月,3.4.7 将发布于十二月。 + +如果存在会影响到大量用户的更改,我们可能会提前发布一个版本。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.4.2" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 426e7e5984e10436b7887c579a7638b0ec48d60a Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 18 Feb 2025 14:38:57 +0900 Subject: [PATCH 548/607] bundle up --bundler --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 0819310148..d5b4e966c7 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -213,4 +213,4 @@ DEPENDENCIES validate-website (~> 1.6) BUNDLED WITH - 2.5.17 + 2.6.4 From 236f5dd4d07d99886f32371cd8431b7cfa1c56a7 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 18 Feb 2025 14:39:19 +0900 Subject: [PATCH 549/607] bundle up nokogiri --- Gemfile.lock | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index d5b4e966c7..e54f35de54 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -102,18 +102,26 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) + mini_portile2 (2.8.8) minitest (5.25.1) - nokogiri (1.16.7-aarch64-linux) + nokogiri (1.18.2) + mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.16.7-arm-linux) + nokogiri (1.18.2-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.16.7-arm64-darwin) + nokogiri (1.18.2-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.16.7-x86-linux) + nokogiri (1.18.2-arm-linux-gnu) racc (~> 1.4) - nokogiri (1.16.7-x86_64-darwin) + nokogiri (1.18.2-arm-linux-musl) racc (~> 1.4) - nokogiri (1.16.7-x86_64-linux) + nokogiri (1.18.2-arm64-darwin) + racc (~> 1.4) + nokogiri (1.18.2-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.18.2-x86_64-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.2-x86_64-linux-musl) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) From e88ed13798a2400680aa1b95b499d6080a9e7828 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 18 Feb 2025 14:39:39 +0900 Subject: [PATCH 550/607] bundle lock --normalize-platforms --- Gemfile.lock | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/Gemfile.lock b/Gemfile.lock index e54f35de54..c753ee0c39 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -25,6 +25,7 @@ GEM ethon (0.16.0) ffi (>= 1.15.0) eventmachine (1.2.7) + ffi (1.17.0) ffi (1.17.0-aarch64-linux-gnu) ffi (1.17.0-aarch64-linux-musl) ffi (1.17.0-arm-linux-gnu) @@ -143,22 +144,43 @@ GEM rouge (4.3.0) ruby-rc4 (0.1.5) safe_yaml (1.0.5) + sass-embedded (1.77.8) + google-protobuf (~> 4.26) + rake (>= 13) + sass-embedded (1.77.8-aarch64-linux-android) + google-protobuf (~> 4.26) sass-embedded (1.77.8-aarch64-linux-gnu) google-protobuf (~> 4.26) sass-embedded (1.77.8-aarch64-linux-musl) google-protobuf (~> 4.26) + sass-embedded (1.77.8-arm-linux-androideabi) + google-protobuf (~> 4.26) sass-embedded (1.77.8-arm-linux-gnueabihf) google-protobuf (~> 4.26) sass-embedded (1.77.8-arm-linux-musleabihf) google-protobuf (~> 4.26) sass-embedded (1.77.8-arm64-darwin) google-protobuf (~> 4.26) + sass-embedded (1.77.8-riscv64-linux-android) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-riscv64-linux-gnu) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-riscv64-linux-musl) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-x86-cygwin) + google-protobuf (~> 4.26) + sass-embedded (1.77.8-x86-linux-android) + google-protobuf (~> 4.26) sass-embedded (1.77.8-x86-linux-gnu) google-protobuf (~> 4.26) sass-embedded (1.77.8-x86-linux-musl) google-protobuf (~> 4.26) + sass-embedded (1.77.8-x86_64-cygwin) + google-protobuf (~> 4.26) sass-embedded (1.77.8-x86_64-darwin) google-protobuf (~> 4.26) + sass-embedded (1.77.8-x86_64-linux-android) + google-protobuf (~> 4.26) sass-embedded (1.77.8-x86_64-linux-gnu) google-protobuf (~> 4.26) sass-embedded (1.77.8-x86_64-linux-musl) @@ -194,19 +216,29 @@ GEM PLATFORMS aarch64-linux + aarch64-linux-android aarch64-linux-gnu aarch64-linux-musl arm-linux + arm-linux-androideabi arm-linux-gnu arm-linux-gnueabihf arm-linux-musl arm-linux-musleabihf arm64-darwin + riscv64-linux-android + riscv64-linux-gnu + riscv64-linux-musl + ruby + x86-cygwin x86-linux + x86-linux-android x86-linux-gnu x86-linux-musl + x86_64-cygwin x86_64-darwin x86_64-linux + x86_64-linux-android x86_64-linux-gnu x86_64-linux-musl From 7a61f9a34eb60f2243b982b722eaa14251624d71 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 18 Feb 2025 14:40:16 +0900 Subject: [PATCH 551/607] bundle up --- Gemfile.lock | 166 +++++++++++++++++++++++++-------------------------- 1 file changed, 83 insertions(+), 83 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index c753ee0c39..f7d8e0c9dd 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,62 +1,64 @@ GEM remote: https://rubygems.org/ specs: - Ascii85 (1.1.1) + Ascii85 (2.0.1) addressable (2.8.7) public_suffix (>= 2.0.2, < 7.0) afm (0.2.2) - async (2.15.3) - console (~> 1.26) + async (2.23.0) + console (~> 1.29) fiber-annotation - io-event (~> 1.6, >= 1.6.5) + io-event (~> 1.9) + metrics (~> 0.12) + traces (~> 0.15) base64 (0.2.0) - bigdecimal (3.1.8) + bigdecimal (3.1.9) colorator (1.1.0) - concurrent-ruby (1.3.4) - console (1.27.0) + concurrent-ruby (1.3.5) + console (1.29.2) fiber-annotation fiber-local (~> 1.1) json crass (1.0.6) - csv (3.3.0) + csv (3.3.2) em-websocket (0.5.3) eventmachine (>= 0.12.9) http_parser.rb (~> 0) ethon (0.16.0) ffi (>= 1.15.0) eventmachine (1.2.7) - ffi (1.17.0) - ffi (1.17.0-aarch64-linux-gnu) - ffi (1.17.0-aarch64-linux-musl) - ffi (1.17.0-arm-linux-gnu) - ffi (1.17.0-arm-linux-musl) - ffi (1.17.0-arm64-darwin) - ffi (1.17.0-x86-linux-gnu) - ffi (1.17.0-x86-linux-musl) - ffi (1.17.0-x86_64-darwin) - ffi (1.17.0-x86_64-linux-gnu) - ffi (1.17.0-x86_64-linux-musl) + ffi (1.17.1) + ffi (1.17.1-aarch64-linux-gnu) + ffi (1.17.1-aarch64-linux-musl) + ffi (1.17.1-arm-linux-gnu) + ffi (1.17.1-arm-linux-musl) + ffi (1.17.1-arm64-darwin) + ffi (1.17.1-x86-linux-gnu) + ffi (1.17.1-x86-linux-musl) + ffi (1.17.1-x86_64-darwin) + ffi (1.17.1-x86_64-linux-gnu) + ffi (1.17.1-x86_64-linux-musl) fiber-annotation (0.2.0) fiber-local (1.1.0) fiber-storage fiber-storage (1.0.0) forwardable-extended (2.6.0) - google-protobuf (4.27.5) + google-protobuf (4.29.3) bigdecimal rake (>= 13) - google-protobuf (4.27.5-aarch64-linux) + google-protobuf (4.29.3-aarch64-linux) bigdecimal rake (>= 13) - google-protobuf (4.27.5-arm64-darwin) + google-protobuf (4.29.3-arm64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.27.5-x86-linux) + google-protobuf (4.29.3-x86-linux) bigdecimal rake (>= 13) - google-protobuf (4.27.5-x86_64-darwin) + google-protobuf (4.29.3-x86_64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.27.5-x86_64-linux) + google-protobuf (4.29.3-x86_64-linux) bigdecimal rake (>= 13) hashery (2.1.2) @@ -70,32 +72,35 @@ GEM yell (~> 2.0) zeitwerk (~> 2.5) http_parser.rb (0.8.0) - i18n (1.14.5) + i18n (1.14.7) concurrent-ruby (~> 1.0) - io-event (1.6.5) - jekyll (4.3.3) + io-event (1.9.0) + jekyll (4.4.1) addressable (~> 2.4) + base64 (~> 0.2) colorator (~> 1.0) + csv (~> 3.0) em-websocket (~> 0.5) i18n (~> 1.0) jekyll-sass-converter (>= 2.0, < 4.0) jekyll-watch (~> 2.0) + json (~> 2.6) kramdown (~> 2.3, >= 2.3.1) kramdown-parser-gfm (~> 1.0) liquid (~> 4.0) - mercenary (>= 0.3.6, < 0.5) + mercenary (~> 0.3, >= 0.3.6) pathutil (~> 0.9) rouge (>= 3.0, < 5.0) safe_yaml (~> 1.0) terminal-table (>= 1.8, < 4.0) webrick (~> 1.7) - jekyll-sass-converter (3.0.0) - sass-embedded (~> 1.54) + jekyll-sass-converter (3.1.0) + sass-embedded (~> 1.75) jekyll-watch (2.2.1) listen (~> 3.0) - json (2.7.2) - kramdown (2.4.0) - rexml + json (2.10.1) + kramdown (2.5.1) + rexml (>= 3.3.9) kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) liquid (4.0.4) @@ -103,8 +108,9 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) + metrics (0.12.1) mini_portile2 (2.8.8) - minitest (5.25.1) + minitest (5.25.4) nokogiri (1.18.2) mini_portile2 (~> 2.8.2) racc (~> 1.4) @@ -127,8 +133,8 @@ GEM paint (2.3.0) pathutil (0.16.2) forwardable-extended (~> 2.6) - pdf-reader (2.12.0) - Ascii85 (~> 1.0) + pdf-reader (2.14.1) + Ascii85 (>= 1.0, < 3.0, != 2.0.0) afm (~> 0.2.1) hashery (~> 2.0) ruby-rc4 @@ -140,63 +146,57 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rexml (3.3.9) - rouge (4.3.0) + rexml (3.4.1) + rouge (4.5.1) ruby-rc4 (0.1.5) safe_yaml (1.0.5) - sass-embedded (1.77.8) - google-protobuf (~> 4.26) + sass-embedded (1.85.0) + google-protobuf (~> 4.29) rake (>= 13) - sass-embedded (1.77.8-aarch64-linux-android) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-aarch64-linux-gnu) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-aarch64-linux-musl) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-arm-linux-androideabi) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-arm-linux-gnueabihf) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-arm-linux-musleabihf) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-arm64-darwin) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-riscv64-linux-android) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-riscv64-linux-gnu) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-riscv64-linux-musl) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-x86-cygwin) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-x86-linux-android) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-x86-linux-gnu) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-x86-linux-musl) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-x86_64-cygwin) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-x86_64-darwin) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-x86_64-linux-android) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-x86_64-linux-gnu) - google-protobuf (~> 4.26) - sass-embedded (1.77.8-x86_64-linux-musl) - google-protobuf (~> 4.26) + sass-embedded (1.85.0-aarch64-linux-android) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-aarch64-linux-gnu) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-aarch64-linux-musl) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-arm-linux-androideabi) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-arm-linux-gnueabihf) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-arm-linux-musleabihf) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-arm64-darwin) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-riscv64-linux-android) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-riscv64-linux-gnu) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-riscv64-linux-musl) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-x86_64-cygwin) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-x86_64-darwin) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-x86_64-linux-android) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-x86_64-linux-gnu) + google-protobuf (~> 4.29) + sass-embedded (1.85.0-x86_64-linux-musl) + google-protobuf (~> 4.29) slop (4.10.1) - spidr (0.7.1) + spidr (0.7.2) + base64 (~> 0.1) nokogiri (~> 1.3) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) tidy_ffi (1.0.1) ffi (~> 1.2) + traces (0.15.2) ttfunk (1.8.0) bigdecimal (~> 3.1) typhoeus (1.4.1) ethon (>= 0.9.0) - unicode-display_width (2.5.0) + unicode-display_width (2.6.0) validate-website (1.12.0) crass (~> 1) nokogiri (~> 1.12) @@ -210,9 +210,9 @@ GEM json (>= 1.8) nokogiri (~> 1.6) rexml (~> 3.2) - webrick (1.8.2) + webrick (1.9.1) yell (2.2.2) - zeitwerk (2.6.17) + zeitwerk (2.7.1) PLATFORMS aarch64-linux From f43577d935206b569812310c9967457aefadda4e Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 18 Feb 2025 14:40:56 +0900 Subject: [PATCH 552/607] Removed development group for cloudlare pages --- Gemfile | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Gemfile b/Gemfile index b902f08e2e..f7b84d1345 100644 --- a/Gemfile +++ b/Gemfile @@ -4,11 +4,12 @@ gem "rake" gem "jekyll" gem "rouge" -group :development do - gem "minitest" - gem "html-proofer" - gem "validate-website", "~> 1.6" -end +# We didn't use development group for them +# Because lockfile is generated without `BUNDLE_WITHOUT` env variable +# so, some environment couldn't install them +gem "minitest" +gem "html-proofer" +gem "validate-website", "~> 1.6" # Jekyll need them for Ruby 3.4+ gem "csv" From d4a48b1c6208e208a92c42a0c3c0fd50fbc87f7f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 19 Feb 2025 13:31:48 +0000 Subject: [PATCH 553/607] Bump nokogiri from 1.18.2 to 1.18.3 Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.18.2 to 1.18.3. - [Release notes](https://github.com/sparklemotion/nokogiri/releases) - [Changelog](https://github.com/sparklemotion/nokogiri/blob/v1.18.3/CHANGELOG.md) - [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.18.2...v1.18.3) --- updated-dependencies: - dependency-name: nokogiri dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index f7d8e0c9dd..8a3c17ccaa 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -111,24 +111,24 @@ GEM metrics (0.12.1) mini_portile2 (2.8.8) minitest (5.25.4) - nokogiri (1.18.2) + nokogiri (1.18.3) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.18.2-aarch64-linux-gnu) + nokogiri (1.18.3-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.2-aarch64-linux-musl) + nokogiri (1.18.3-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.18.2-arm-linux-gnu) + nokogiri (1.18.3-arm-linux-gnu) racc (~> 1.4) - nokogiri (1.18.2-arm-linux-musl) + nokogiri (1.18.3-arm-linux-musl) racc (~> 1.4) - nokogiri (1.18.2-arm64-darwin) + nokogiri (1.18.3-arm64-darwin) racc (~> 1.4) - nokogiri (1.18.2-x86_64-darwin) + nokogiri (1.18.3-x86_64-darwin) racc (~> 1.4) - nokogiri (1.18.2-x86_64-linux-gnu) + nokogiri (1.18.3-x86_64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.2-x86_64-linux-musl) + nokogiri (1.18.3-x86_64-linux-musl) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) From e3c9f3b2a4c2df29e7620977fad734a4a3e532a5 Mon Sep 17 00:00:00 2001 From: Florent Drousset <45320122+florentdrousset@users.noreply.github.com> Date: Tue, 25 Feb 2025 12:19:32 +0100 Subject: [PATCH 554/607] Translation of Ruby 3.4.2 release post to french (fr) --- .../_posts/2025-02-14-ruby-3-4-2-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 fr/news/_posts/2025-02-14-ruby-3-4-2-released.md diff --git a/fr/news/_posts/2025-02-14-ruby-3-4-2-released.md b/fr/news/_posts/2025-02-14-ruby-3-4-2-released.md new file mode 100644 index 0000000000..dd439e7001 --- /dev/null +++ b/fr/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.2 est disponible" +author: k0kubun +translator: "Florent Drousset" +date: 2025-02-14 21:55:17 +0000 +lang: fr +--- + +Ruby 3.4.2 est disponible. + +Ceci est une mise à jour de routine incluant des corrections de bugs. +Veuillez vous référer aux [release notes sur GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_2) pour plus de détails. + +## Calendrier de publication + +Nous prévoyons de publier la version stable la plus récente de Ruby (actuellement la 3.4) tous les deux mois. +Ruby 3.4.3 sortira en avril, 3.4.4 en juin, 3.4.5 en août, 3.4.6 en octobre et 3.4.7 en décembre. + +Si un changement affecte un grand nombre d’utilisateurs, certaines de ces versions pourraient être publiées plus tôt que prévu. + +## Téléchargement + +{% assign release = site.data.releases | where: "version", "3.4.2" | first %} + +* <{{ 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 }} + +## Commentaire sur la version + +Grâce aux nombreux contributeurs, développeurs et utilisateurs qui ont fourni des rapports de bugs, nous avons pu réaliser cette version. +Merci à tous pour leurs contributions. From e070b3a56eddc86d320bca207f68d17906604471 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 26 Feb 2025 16:43:49 +0900 Subject: [PATCH 555/607] Security advisories: CVE-2025-27219, CVE-2025-27220 and CVE-2025-2722 --- .../_posts/2025-02-26-security-advisories.md | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 en/news/_posts/2025-02-26-security-advisories.md diff --git a/en/news/_posts/2025-02-26-security-advisories.md b/en/news/_posts/2025-02-26-security-advisories.md new file mode 100644 index 0000000000..25ae9f4250 --- /dev/null +++ b/en/news/_posts/2025-02-26-security-advisories.md @@ -0,0 +1,70 @@ +--- +layout: news_post +title: "Security advisories: CVE-2025-27219, CVE-2025-27220 and CVE-2025-27221" +author: "hsbt" +translator: +date: 2025-02-26 07:00:00 +0000 +tags: security +lang: en +--- + +We published security advisories for CVE-2025-27219, CVE-2025-27220 and CVE-2025-27221. Please read the details below. + +## CVE-2025-27219: Denial of Service in `CGI::Cookie.parse`. + +There is a possibility for DoS by in the cgi gem. This vulnerability has been assigned the CVE identifier [CVE-2025-27219](https://www.cve.org/CVERecord?id=CVE-2025-27219). We recommend upgrading the cgi gem. + +### Details + +`CGI::Cookie.parse` took super-linear time to parse a cookie string in some cases. Feeding a maliciously crafted cookie string into the method could lead to a Denial of Service. + +Please update CGI gem to version 0.3.5.1, 0.3.7, 0.4.2 or later. + +### Affected versions + +* cgi gem versions <= 0.3.5, 0.3.6, 0.4.0 and 0.4.1. + +### Credits + +Thanks to [lio346](https://hackerone.com/lio346) for discovering this issue. Also thanks to [mame](https://github.com/mame) for fixing this vulnerability. + +## CVE-2025-27220: ReDoS in `CGI::Util#escapeElement`. + +There is a possibility for Regular expression Denial of Service(ReDoS) by in the cgi gem. This vulnerability has been assigned the CVE identifier [CVE-2025-27220](https://www.cve.org/CVERecord?id=CVE-2025-27220). We recommend upgrading the cgi gem. + +### Details + +The regular expression used in `CGI::Util#escapeElement` is vulnerable to ReDoS. The crafted input could lead to a high CPU consumption. + +This vulnerability only affects Ruby 3.1 and 3.2. If you are using these versions, please update CGI gem to version 0.3.5.1, 0.3.7, 0.4.2 or later. + +### Affected versions + +* cgi gem versions <= 0.3.5, 0.3.6, 0.4.0 and 0.4.1. + +### Credits + +Thanks to [svalkanov](https://hackerone.com/svalkanov) for discovering this issue. Also thanks to [nobu](https://github.com/nobu) for fixing this vulnerability. + + +## CVE-2025-27221: userinfo leakage in `URI#join`, `URI#merge` and `URI#+`. + +There is a possibility for userinfo leakage by in the uri gem. This vulnerability has been assigned the CVE identifier [CVE-2025-27221](https://www.cve.org/CVERecord?id=CVE-2025-27221). We recommend upgrading the uri gem. + +### Details + +The methods `URI#join`, `URI#merge`, and `URI#+` retained userinfo, such as `user:password`, even after the host is replaced. When generating a URL to a malicious host from a URL containing secret userinfo using these methods, and having someone access that URL, an unintended userinfo leak could occur. + +Please update URI gem to version 0.11.3, 0.12.4, 0.13.2, 1.0.3 or later. + +### Affected versions + +* uri gem versions < 0.11.3, 0.12.0 to 0.12.3, 0.13.0, 0.13.1 and 1.0.0 to 1.0.2. + +### Credits + +Thanks to [Tsubasa Irisawa (lambdasawa)](https://hackerone.com/lambdasawa) for discovering this issue. Also thanks to [nobu](https://github.com/nobu) for additional fixes of this vulnerability. + +## History + +* Originally published at 2025-02-26 7:00:00 (UTC) From 6dd2bd29ae3a7153d95d979af50f866d58c454d7 Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 26 Feb 2025 19:57:54 +0900 Subject: [PATCH 556/607] Translate "Ruby 3.4.2 Released" (ja) (#3505) * cp {en,ja}/news/_posts/2025-02-14-ruby-3-4-2-released.md * Translate "Ruby 3.4.2 Released" (ja) --- .../_posts/2025-02-14-ruby-3-4-2-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ja/news/_posts/2025-02-14-ruby-3-4-2-released.md diff --git a/ja/news/_posts/2025-02-14-ruby-3-4-2-released.md b/ja/news/_posts/2025-02-14-ruby-3-4-2-released.md new file mode 100644 index 0000000000..d9000906f4 --- /dev/null +++ b/ja/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.2 リリース" +author: k0kubun +translator: shia +date: 2025-02-14 21:55:17 +0000 +lang: ja +--- + +Ruby 3.4.2がリリースされました。 + +これは定期的なアップデートであり、バグ修正を含みます。 +詳しくは[GitHub release notes](https://github.com/ruby/ruby/releases/tag/v3_4_2)を参照してください。 + +## リリーススケジュール + +最新の安定版Ruby(現在はRuby 3.4)を2ヶ月おきにリリースする予定です。 +Ruby 3.4.3は4月にリリースされ、3.4.4は6月、3.4.5は8月、3.4.6は10月、3.4.7は12月にリリースされます。 + +多くのユーザーに影響を与えるような変更があった場合、予定よりも早く新しいバージョンをリリースすることがあります。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.4.2" | first %} + +* <{{ 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 b959f90036c1538dc0e48b0177b0be7a183ebf72 Mon Sep 17 00:00:00 2001 From: Shia Date: Wed, 26 Feb 2025 21:58:02 +0900 Subject: [PATCH 557/607] Translate "Security advisories: CVE-2025-27219, CVE-2025-27220 and CVE-2025-27221" (ko) (#3517) * cp {en,ko}/news/_posts/2025-02-26-security-advisories.md * Translate "Security advisories: CVE-2025-27219, CVE-2025-27220 and CVE-2025-27221" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../_posts/2025-02-26-security-advisories.md | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 ko/news/_posts/2025-02-26-security-advisories.md diff --git a/ko/news/_posts/2025-02-26-security-advisories.md b/ko/news/_posts/2025-02-26-security-advisories.md new file mode 100644 index 0000000000..fe24d760da --- /dev/null +++ b/ko/news/_posts/2025-02-26-security-advisories.md @@ -0,0 +1,70 @@ +--- +layout: news_post +title: "보안 권고: CVE-2025-27219, CVE-2025-27220, CVE-2025-27221" +author: "hsbt" +translator: "shia" +date: 2025-02-26 07:00:00 +0000 +tags: security +lang: ko +--- + +CVE-2025-27219, CVE-2025-27220 및 CVE-2025-27221에 대한 보안 권고를 발표했습니다. 아래 내용을 확인해 주세요. + +## CVE-2025-27219: `CGI::Cookie.parse`에서의 서비스 거부 + +cgi gem에서 DoS가 발생할 수 있습니다. 이 취약점은 CVE 식별자 [CVE-2025-27219](https://www.cve.org/CVERecord?id=CVE-2025-27219)가 할당되었습니다. cgi gem을 업그레이드하기를 추천합니다. + +### 세부 내용 + +`CGI::Cookie.parse`는 특정 쿠키 문자열을 구문 분석할 때 초선형(super-linear) 시간이 걸렸습니다. 이 메서드에 악의적으로 조작된 쿠키 문자열을 넘기면 서비스 거부가 발생할 수 있습니다. + +CGI gem의 버전을 0.3.5.1, 0.3.7, 0.4.2 또는 그 이상으로 업데이트하세요. + +### 해당 버전 + +* cgi gem 버전 <= 0.3.5, 0.3.6, 0.4.0 및 0.4.1 + +### 도움을 준 사람 + +이 문제를 발견해 준 [lio346](https://hackerone.com/lio346)에게 감사를 표합니다. 또한 이 취약점을 수정한 [mame](https://github.com/mame)에게도 감사를 표합니다. + +## CVE-2025-27220: `CGI::Util#escapeElement`에서의 ReDoS + +cgi gem에서 정규 표현식 서비스 거부(ReDoS)가 발생할 수 있습니다. 이 취약점은 CVE 식별자 [CVE-2025-27220](https://www.cve.org/CVERecord?id=CVE-2025-27220)이 할당되었습니다. cgi gem을 업그레이드하기를 추천합니다. + +### 세부 내용 + +`CGI::Util#escapeElement`에서 사용된 정규 표현식이 ReDoS에 취약합니다. 정교하게 만들어진 입력은 높은 CPU 사용으로 이어질 수 있습니다. + +이 취약점은 Ruby 3.1 및 3.2에서만 영향을 미칩니다. 이러한 버전을 사용 중이라면 CGI gem을 버전을 0.3.5.1, 0.3.7, 0.4.2 또는 그 이상으로 업데이트하세요. + +### 해당 버전 + +* cgi gem 버전 <= 0.3.5, 0.3.6, 0.4.0 및 0.4.1 + +### 도움을 준 사람 + +이 문제를 발견해 준 [svalkanov](https://hackerone.com/svalkanov)에게 감사를 표합니다. 또한 이 취약점을 수정한 [nobu](https://github.com/nobu)에게도 감사를 표합니다. + + +## CVE-2025-27221: `URI#join`, `URI#merge` 및 `URI#+`에서의 사용자 정보 유출 + +uri gem에서 사용자 정보 유출이 발생할 수 있습니다. 이 취약점은 CVE 식별자 [CVE-2025-27221](https://www.cve.org/CVERecord?id=CVE-2025-27221)이 할당되었습니다. uri gem을 업그레이드하기를 추천합니다. + +### 세부 내용 + +`URI#join`, `URI#merge`, `URI#+` 메서드는 호스트 정보를 교체하더라도 `user:password`와 같은 사용자 정보를 유지합니다. 이러한 메서드를 사용하여 비밀인 사용자 정보를 포함하는 URL에서 악의적인 호스트로 URL을 생성하고, 누군가가 해당 URL에 액세스하면 의도하지 않은 사용자 정보 유출이 발생할 수 있습니다. + +URI gem을 버전 0.11.3, 0.12.4, 0.13.2, 1.0.3 또는 그 이상으로 업데이트하세요. + +### 해당 버전 + +* uri gem 버전 < 0.11.3, 0.12.0부터 0.12.3까지, 0.13.0, 0.13.1 및 1.0.0부터 1.0.2까지 + +### 도움을 준 사람 + +이 문제를 발견해 준 [Tsubasa Irisawa(lambdasawa)](https://hackerone.com/lambdasawa)에게 감사를 표합니다. 또한 이 취약점을 수정한 [nobu](https://github.com/nobu)에게도 감사를 표합니다. + +## 수정 이력 + +* 2025-02-26 7:00:00 (UTC) 최초 공개 From 99abcb84b6ef6cb5258f75e0f3e396191d928332 Mon Sep 17 00:00:00 2001 From: Eduardo Bohrer Date: Wed, 26 Feb 2025 20:54:44 -0300 Subject: [PATCH 558/607] Translate 2025-02-26 security advisories (pt) --- .../_posts/2025-02-26-security-advisories.md | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 pt/news/_posts/2025-02-26-security-advisories.md diff --git a/pt/news/_posts/2025-02-26-security-advisories.md b/pt/news/_posts/2025-02-26-security-advisories.md new file mode 100644 index 0000000000..8e7c9c9646 --- /dev/null +++ b/pt/news/_posts/2025-02-26-security-advisories.md @@ -0,0 +1,69 @@ +--- +layout: news_post +title: "Avisos de segurança: CVE-2025-27219, CVE-2025-27220 e CVE-2025-27221" +author: "hsbt" +translator: nbluis +date: 2025-02-26 07:00:00 +0000 +tags: security +lang: pt +--- + +Publicamos avisos de segurança para CVE-2025-27219, CVE-2025-27220 e CVE-2025-27221. Por favor, leia os detalhes abaixo. + +## CVE-2025-27219: Negação de Serviço em `CGI::Cookie.parse`. + +Há uma possibilidade de DoS na gem cgi. Esta vulnerabilidade foi identificada com o CVE [CVE-2025-27219](https://www.cve.org/CVERecord?id=CVE-2025-27219). Recomendamos atualizar a gem cgi. + +### Detalhes + +`CGI::Cookie.parse` levava tempo super-linear para analisar uma string de cookie em alguns casos. Alimentar uma string de cookie maliciosamente criada no método poderia levar a uma Negação de Serviço. + +Por favor, atualize a gem CGI para a versão 0.3.5.1, 0.3.7, 0.4.2 ou posterior. + +### Versões afetadas + +* Versões da gem cgi <= 0.3.5, 0.3.6, 0.4.0 e 0.4.1. + +### Créditos + +Obrigado a [lio346](https://hackerone.com/lio346) por descobrir este problema. Também agradecemos a [mame](https://github.com/mame) por corrigir esta vulnerabilidade. + +## CVE-2025-27220: ReDoS em `CGI::Util#escapeElement`. + +Há uma possibilidade de Negação de Serviço por expressão regular (ReDoS) na gem cgi. Esta vulnerabilidade foi identificada com o CVE [CVE-2025-27220](https://www.cve.org/CVERecord?id=CVE-2025-27220). Recomendamos atualizar a gem cgi. + +### Detalhes + +A expressão regular usada em `CGI::Util#escapeElement` é vulnerável a ReDoS. A entrada criada poderia levar a um alto consumo de CPU. + +Esta vulnerabilidade afeta apenas Ruby 3.1 e 3.2. Se você estiver usando essas versões, por favor, atualize a gem CGI para a versão 0.3.5.1, 0.3.7, 0.4.2 ou posterior. + +### Versões afetadas + +* Versões da gem cgi <= 0.3.5, 0.3.6, 0.4.0 e 0.4.1. + +### Créditos + +Obrigado a [svalkanov](https://hackerone.com/svalkanov) por descobrir este problema. Também agradecemos a [nobu](https://github.com/nobu) por corrigir esta vulnerabilidade. + +## CVE-2025-27221: vazamento de informações de usuário em `URI#join`, `URI#merge` e `URI#+`. + +Há uma possibilidade de vazamento de informações de usuário na gem uri. Esta vulnerabilidade foi identificada com o CVE [CVE-2025-27221](https://www.cve.org/CVERecord?id=CVE-2025-27221). Recomendamos atualizar a gem uri. + +### Detalhes + +Os métodos `URI#join`, `URI#merge` e `URI#+` mantinham informações de usuário, como `user:password`, mesmo após o host ser substituído. Ao gerar uma URL para um host malicioso a partir de uma URL contendo informações de usuário secretas usando esses métodos, e fazer alguém acessar essa URL, poderia ocorrer um vazamento não intencional de informações de usuário. + +Por favor, atualize a gem URI para a versão 0.11.3, 0.12.4, 0.13.2, 1.0.3 ou posterior. + +### Versões afetadas + +* Versões da gem uri < 0.11.3, 0.12.0 a 0.12.3, 0.13.0, 0.13.1 e 1.0.0 a 1.0.2. + +### Créditos + +Obrigado a [Tsubasa Irisawa (lambdasawa)](https://hackerone.com/lambdasawa) por descobrir este problema. Também agradecemos a [nobu](https://github.com/nobu) por correções adicionais desta vulnerabilidade. + +## Histórico + +* Publicado originalmente em 2025-02-26 7:00:00 (UTC) From 276153e120d467b32b97dce1e9197e56a4cf5187 Mon Sep 17 00:00:00 2001 From: gaojun Date: Fri, 28 Feb 2025 15:14:32 +0800 Subject: [PATCH 559/607] Translate "2025-02-26-security-advisories"(zh_cn) --- .../_posts/2025-02-26-security-advisories.md | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 zh_cn/news/_posts/2025-02-26-security-advisories.md diff --git a/zh_cn/news/_posts/2025-02-26-security-advisories.md b/zh_cn/news/_posts/2025-02-26-security-advisories.md new file mode 100644 index 0000000000..f9422f9da0 --- /dev/null +++ b/zh_cn/news/_posts/2025-02-26-security-advisories.md @@ -0,0 +1,71 @@ +--- +layout: news_post +title: "安全建议: CVE-2025-27219,CVE-2025-27220 和 CVE-2025-27221" +author: "hsbt" +translator: "GAO Jun" +date: 2025-02-26 07:00:00 +0000 +tags: security +lang: zh_cn +--- + +针对 CVE-2025-27219,CVE-2025-27220 和 CVE-2025-27221,我们发布下列安全建议。 + +## CVE-2025-27219: `CGI::Cookie.parse` 中的拒绝服务(Denial of Service,DoS)。 + +`cgi` gem 中存在 DoS 可能。此漏洞的 CVE 编号为 [CVE-2025-27219](https://www.cve.org/CVERecord?id=CVE-2025-27219)。我们建议您更新 `cgi` gem。 + +### 详情 + +在某些情况下,`CGI::Cookie.parse` 解析 cookie 字符串的时间超过线性增长。向该方法传入恶意构造的 cookie 字符串可能会导致拒绝服务(DoS)。 + +请更新 `cgi` gem 至 0.3.5.1,0.3.7,0.4.2 或更新版本。 + +### 受影响版本 + +* `cgi` gem 版本 <= 0.3.5,0.3.6,0.4.0 和 0.4.1。 + +### 致谢 + +感谢 [lio346](https://hackerone.com/lio346) 发现此漏洞。同样感谢 [mame](https://github.com/mame) 修补此漏洞。 + +## CVE-2025-27220: `CGI::Util#escapeElement` 中的正则表达式拒绝服务(Regular Expression Denail of Service, ReDoS)漏洞。 + +`cgi` gem 中存在 ReDoS 可能。此漏洞的 CVE 编号为 [CVE-2025-27220](https://www.cve.org/CVERecord?id=CVE-2025-27220)。我们建议您更新 `cgi` gem。 + +### 详情 + +`CGI::Util#escapeElement` 中使用的正则表达式可能受到 ReDoS 攻击。特定的输入可能会导致 CPU 高负载。 + +此漏洞仅影响 Ruby 3.1 和 3.2。如果您正在使用这些版本,请更新 `cgi` gem 至 0.3.5.1,0.3.7,0.4.2 或更新版本。 + +### 受影响版本 + +* `cgi` gem 版本 <= 0.3.5,0.3.6,0.4.0 和 0.4.1。 + +### 致谢 + +感谢 [svalkanov](https://hackerone.com/svalkanov) 发现此漏洞。同样感谢 [nobu](https://github.com/nobu) 修补此漏洞。 + + +## CVE-2025-27221: `URI#join`, `URI#merge` 和 `URI#+` 中的用户信息泄漏。 + +`uri` gem 可能会泄漏用户信息。此漏洞的 CVE 编号为 [CVE-2025-27221](https://www.cve.org/CVERecord?id=CVE-2025-27221)。我们建议您更新 `uri` gem。 + +### 详情 + +`URI#join`,`URI#merge` 和 `URI#+` 方法会保留用户信息,如 `user:password`。即使替换了主机也会保留。 +当基于用户隐私信息,使用了这些方法生成了一个指向恶意主机的 URL 后,如果有人访问了该 URL,可能会发生用户信息泄漏。 + +请更新 `uri` gem 至 0.11.3,0.12.4,0.13.2,1.0.3 或更新版本。 + +### 受影响版本 + +* `uri` gem 版本 < 0.11.3,0.12.0 至 0.12.3,0.13.0,0.13.1,1.0.0 至 1.0.2。 + +### 致谢 + +感谢 [Tsubasa Irisawa (lambdasawa)](https://hackerone.com/lambdasawa) 发现此漏洞。同样感谢 [nobu](https://github.com/nobu) 修补此漏洞。 + +## 历史 + +* 最初发布于 2025-02-26 7:00:00 (UTC) From 5052c46727a553e98e5d5c4c9deb698f15169c2f Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 4 Mar 2025 19:57:59 +0800 Subject: [PATCH 560/607] Translate 2025-02-26 security advisories (zh_tw) (#3519) --- .../_posts/2025-02-26-security-advisories.md | 79 +++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 zh_tw/news/_posts/2025-02-26-security-advisories.md diff --git a/zh_tw/news/_posts/2025-02-26-security-advisories.md b/zh_tw/news/_posts/2025-02-26-security-advisories.md new file mode 100644 index 0000000000..9a19bc83bc --- /dev/null +++ b/zh_tw/news/_posts/2025-02-26-security-advisories.md @@ -0,0 +1,79 @@ +--- +layout: news_post +title: "安全性公告:CVE-2025-27219、CVE-2025-27220 和 CVE-2025-27221" +author: "hsbt" +translator: "Bear Su" +date: 2025-02-26 07:00:00 +0000 +tags: security +lang: zh_tw +--- + +我們發布了安全性公告 CVE-2025-27219、CVE-2025-27220 和 CVE-2025-27221。 +請閱讀以下風險細節。 + +## CVE-2025-27219:`CGI::Cookie.parse` 中發生服務阻斷。 + +在 cgi gem 中可能會發生服務阻斷。該漏洞的 CVE 編號為 [CVE-2025-27219](https://www.cve.org/CVERecord?id=CVE-2025-27219)。 +我們強烈建議您升級 cgi gem。 + +### 風險細節 + +在某些情況下 `CGI::Cookie.parse` 解析 cookie 字串會花費超級線性時間。 +將刻意的 cookie 字串傳入該方法可能會導致服務阻斷。 + +請更新 CGI gem 至 0.3.5.1、0.3.7、0.4.2 或較新版本。 + +### 受影響版本 + +* cgi gem 版本 <= 0.3.5、0.3.6、0.4.0 和 0.4.1。 + +### 致謝 + +感謝 [lio346](https://hackerone.com/lio346) 發現此問題。同樣感謝 [mame](https://github.com/mame) 修復此漏洞。 + +## CVE-2025-27220:`CGI::Util#escapeElement` 中發生正規表示式服務阻斷(ReDoS)。 + +在 cgi gem 中可能會發生正規表示式服務阻斷(ReDoS)。 +該漏洞的 CVE 編號為 [CVE-2025-27220](https://www.cve.org/CVERecord?id=CVE-2025-27220)。 +我們強烈建議您升級 cgi gem。 + +### 風險細節 + +`CGI::Util#escapeElement` 使用的正規表示式容易受到 ReDos 的攻擊。 +特別設計的輸入資料可能會導致高 CPU 用量。 + +此漏洞只影響 Ruby 3.1 和 3.2。如果您使用這些版本,請更新 CGI gem 至 0.3.5.1、0.3.7、0.4.2 或較新版本。 + +### 受影響版本 + +* cgi gem 版本 <= 0.3.5、0.3.6、0.4.0 和 0.4.1。 + +### 致謝 + +感謝 [svalkanov](https://hackerone.com/svalkanov) 發現此問題。同樣感謝 [nobu](https://github.com/nobu) 修復此漏洞。 + + +## CVE-2025-27221:`URI#join`、`URI#merge` 和 `URI#+` 中發生使用者資訊外洩。 + +在 uri gem 中可能會發生使用者資訊外洩。 +該漏洞的 CVE 編號為 [CVE-2025-27221](https://www.cve.org/CVERecord?id=CVE-2025-27221)。 +我們強烈建議您升級 uri gem。 + +### 風險細節 + +`URI#join`、`URI#merge`、和 `URI#+` 方法會保留使用者資訊,例如 `user:password`,即使替換掉主機位址也仍保留著。 +當使用這些方法從包含機敏使用者資訊的 URL 產生指向惡意主機的 URL 時,並讓某些使用者存取該 URL,就會導致非預期的使用者資訊外洩。 + +請更新 URI gem 至 0.11.3、0.12.4、0.13.2、1.0.3 或較新版本。 + +### 受影響版本 + +* uri gem 版本 < 0.11.3、0.12.0 至 0.12.3、0.13.0、0.13.1 和 1.0.0 至 1.0.2。 + +### 致謝 + +感謝 [Tsubasa Irisawa (lambdasawa)](https://hackerone.com/lambdasawa) 發現此問題。同樣感謝 [nobu](https://github.com/nobu) 修復此漏洞。 + +## 歷史 + +* 最初發布於 2025-02-26 7:00:00 (UTC) From 303d02d0905a6dbce52e4cc5b5c5235144c0d8b2 Mon Sep 17 00:00:00 2001 From: myanch200 <78023091+myanch200@users.noreply.github.com> Date: Tue, 4 Mar 2025 13:58:43 +0200 Subject: [PATCH 561/607] Translate "Home" link in site navigation (bg) (#3522) --- _data/locales/bg.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/locales/bg.yml b/_data/locales/bg.yml index 0020ebd753..431df55eca 100644 --- a/_data/locales/bg.yml +++ b/_data/locales/bg.yml @@ -3,7 +3,7 @@ ruby: Ruby slogan: най-добрият приятел на програмиста sitelinks: -- text: Home +- text: Начало url: /bg home: true - text: За сваляне From 25f865385815f7e63d4fb672d95d039a2339a65d Mon Sep 17 00:00:00 2001 From: Yudai Takada Date: Tue, 4 Mar 2025 21:05:07 +0900 Subject: [PATCH 562/607] Add news post for KansaiRubyKaigi08 registration opening (#3513) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit References: https://github.com/ruby/www.ruby-lang.org/pull/1176 and https://scrapbox.io/ruby-no-kai/Regional_RubyKaigi >## 参加申し込みを開始したら > ruby-listにアナウンスしましょう > https://ruby-lang.org のnewsに載せよう > https://github.com//ruby/www.ruby-lang.org/ から PR を送れば news に載せることができます --- ...8-kansai-rubykaigi-registration-is-open.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 ja/news/_posts/2025-02-18-kansai-rubykaigi-registration-is-open.md diff --git a/ja/news/_posts/2025-02-18-kansai-rubykaigi-registration-is-open.md b/ja/news/_posts/2025-02-18-kansai-rubykaigi-registration-is-open.md new file mode 100644 index 0000000000..3993a0ab20 --- /dev/null +++ b/ja/news/_posts/2025-02-18-kansai-rubykaigi-registration-is-open.md @@ -0,0 +1,26 @@ +--- +layout: news_post +title: "関西Ruby会議08の参加登録が開始されました" +author: "Yudai Takada(@ydah)" +translator: +date: 2025-02-18 14:30:00 +0000 +lang: ja +--- + +日本Rubyの会が後援する、[地域Ruby会議(RegionalRubyKaigi)][1]の1つである[関西Ruby会議08](https://regional.rubykaigi.org/kansai08/)の参加登録が開始されました。 + +* 開催日: 2025年6月28日(土) 10:00 〜 18:00(時刻は変更となる場合があります) +* 会場: [先斗町 歌舞練場](https://maps.app.goo.gl/tf7ucg1ijkSjVjTr9) +* 主催: Ruby関西(るびーかんさい)、Kyoto.rb(きょうとあーるびー)、Kobe.rb(こうべあーるびー)、Kyobashi.rb(きょうばしあーるびー)、Ruby Tuesday(るびーちゅーずでー)、Ruby舞鶴(るびーまいづる)、AKASHI.rb(あかしあーるびー)、Shinosaka.rb(しんおおさかあーるびー)、naniwa.rb(なにわあーるびー) +* 参加費: 無料 +* 公式タグ: [#kanrk08](https://twitter.com/search?q=kanrk08&src=typd&f=realtime) + +## 参加登録 + +Tito にて申し込みを受け付けています。 + +* [イベントサイト](https://regional.rubykaigi.org/kansai08/) +* [参加受付](https://ti.to/kansairubykaigi/08) +* [発表者募集](https://forms.gle/ijBZ6WM63XJ4rdc58) + +[1]: http://regional.rubykaigi.org/ From 0e79cacd3eaee3c2f42bf559beb534d3ca719e9a Mon Sep 17 00:00:00 2001 From: Christopher Sahnwaldt Date: Tue, 4 Mar 2025 13:14:14 +0100 Subject: [PATCH 563/607] faq/2/index.md: fix incorrect wording (#3212) A def statement defines a function or method. It's not correct to say a def statement "is a function" or "is a method call". --- en/documentation/faq/2/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/documentation/faq/2/index.md b/en/documentation/faq/2/index.md index c1efec2c51..04577bdc1f 100644 --- a/en/documentation/faq/2/index.md +++ b/en/documentation/faq/2/index.md @@ -56,7 +56,7 @@ argument automagically becomes a reference to the receiver. Ruby is a pure OO language that can masquerade as a procedural one. It has no functions, only method calls. In a Ruby method the receiver, also called `self`, is a hidden argument like `this` in C++. A `def` statement outside of -a class definition, which is a function in Python, is actually a method call +a class definition, which defines a function in Python, actually defines a method in Ruby. These ersatz functions become private methods of class Object, the root of the Ruby class hierarchy. Procedural programming is neatly solved from the other direction---everything is an object. If the user doesn't grok From 37b75b68e94b649e5963eec168cce01935e0aa94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Tue, 4 Mar 2025 16:32:05 -0500 Subject: [PATCH 564/607] Translate news of februeray (es) (#3523) --- .../2025-02-10-dos-net-imap-cve-2025-25186.md | 38 +++++++ .../_posts/2025-02-14-ruby-3-4-2-released.md | 56 ++++++++++ .../_posts/2025-02-26-security-advisories.md | 102 ++++++++++++++++++ 3 files changed, 196 insertions(+) create mode 100644 es/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md create mode 100644 es/news/_posts/2025-02-14-ruby-3-4-2-released.md create mode 100644 es/news/_posts/2025-02-26-security-advisories.md diff --git a/es/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md b/es/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md new file mode 100644 index 0000000000..eb51e46abf --- /dev/null +++ b/es/news/_posts/2025-02-10-dos-net-imap-cve-2025-25186.md @@ -0,0 +1,38 @@ +--- +layout: news_post +title: "CVE-2025-25186: vulnerabilidad de dengación de servicio en net-imap" +author: "nevans" +translator: vtamara +date: 2025-02-10 03:00:00 +0000 +tags: security +lang: es +--- + +Hay posibilidad de un ataque de denegación de servicio (DoS) en la +gema net-imap. A esta vulnerabilidad se la ha asignado el identificador +[CVE-2025-25186](https://www.cve.org/CVERecord?id=CVE-2025-25186). +Recomendamos actualizar la gema net-imap. + +## Detalles + +Un servidor malicioso puede enviar un conjunto de datos uid altamente +comprimido que es leído automáticamente por el hilo receptor del cliente. +El analizador de la respuesta usa Range#to_a para convertir el conjunto +de datos uid a un arreglo de enteros, sin limite en el tamaño de los +rangos expandidos. + +Por favor actualizar la gema net-imap a la versión 0.3.8, 0.4.19, 0.5.6 +o posterior. + +## Versiones afectadas + +* Gema net-imap versiones 0.3.2 to 0.3.7, 0.4.0 to 0.4.18, y + 0.5.0 a 0.5.5 (incluida). + +## Créditos + +Gracias a [manun](https://hackerone.com/manun) por descubrir este problema. + +## Historia + +* Publicado originalmente el 2025-02-10 03:00:00 (UTC) diff --git a/es/news/_posts/2025-02-14-ruby-3-4-2-released.md b/es/news/_posts/2025-02-14-ruby-3-4-2-released.md new file mode 100644 index 0000000000..0e0d41714c --- /dev/null +++ b/es/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -0,0 +1,56 @@ +--- +layout: news_post +title: "Ruby 3.4.2 Publicado" +author: k0kubun +translator: vtamara +date: 2025-02-14 21:55:17 +0000 +lang: es +--- + +Ruby 3.4.2 ha sido publicado + +Esta es una actualización rutinaria que incluye correciones a fallas. +Por favor vea detalles en las +[notas de publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_2) + +## Calendario de publicaciones + +Queremos publicar la versión de Ruby estable más recieente (acutalmente +Ruby 3.4) cada 2 meses. +Ruby 3.4.3 será publicado en Abril, 3.4.4 en Junio, 3.4.5 en Agosto, +3.4.6 en Octubre, y 3.4.7 en Diciembre. + +Si hay algún cambio que afecte a un número considerabl de personas, +esas versiones sera publicadas más pronto de lo esperado. + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.4.2" | first %} + +* <{{ 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 }} + +## Comentario de la versión + +Muchos contribuidores, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a producir esta versión. + +Gracias por sus contribuciones. diff --git a/es/news/_posts/2025-02-26-security-advisories.md b/es/news/_posts/2025-02-26-security-advisories.md new file mode 100644 index 0000000000..6371bc0367 --- /dev/null +++ b/es/news/_posts/2025-02-26-security-advisories.md @@ -0,0 +1,102 @@ +--- +layout: news_post +title: "Avisos de seguridad: CVE-2025-27219, CVE-2025-27220 y CVE-2025-27221" +author: "hsbt" +translator: vtamara +date: 2025-02-26 07:00:00 +0000 +tags: security +lang: es +--- + +Publicamos avisos de seguridad para CVE-2025-27219, CVE-2025-27220 y +CVE-2025-27221. Por favor vea detalles a continuación. + +## CVE-2025-27219: Denegación de Servicio en `CGI::Cookie.parse`. + +Hay posibilidad de una DoS por la gema cgi. A esta vulnerabilidad se +le ha asignado el identificador +[CVE-2025-27219](https://www.cve.org/CVERecord?id=CVE-2025-27219). +Recomendamos actualizar la gema cgi. + +### Detalles + +`CGI::Cookie.parse` tomaba tiempo super-lineal para analizar una +cadena con una cookie en algunos casos. +Suministrar una cadena de cookie manipulada a ese método podría +conducir a una Denegación de Servicio. + +Por favor actualice la gema CGI a la versión 0.3.5.1, 0.3.7, 0.4.2 o +posterior. + +### Versiones afectadas + +* Gema cgi versiones <= 0.3.5, 0.3.6, 0.4.0 y 0.4.1. + +### Créditos + +Agradecemos a [lio346](https://hackerone.com/lio346) por descubrir +este problema. También agradecemos a +[mame](https://github.com/mame) por corregirlo. + +## CVE-2025-27220: ReDoS en `CGI::Util#escapeElement`. + +Hay posibilidad de una Denegación de Servicio por Expresión Regular (ReDoS) +por parte de la gema cgi. +A esta vulnerabilidad se le ha asignado el identificador +[CVE-2025-27220](https://www.cve.org/CVERecord?id=CVE-2025-27220). +Recomendamos actualizar la gema cgi. + +### Detalles + +La expresión regular usada en `CGI::Util#escapeElement` es +vulnerable a ReDoS. Una entrada diseñada podría conducir a un alto +consumo de CPU. + +Esta vulnerabilidad sólo afecta a Ruby 3.1 y 3.2. Si usa estas versiones, +por favor actualice la gema CGI a la versión 0.3.5.1, 0.3.7, 0.4.2 o posterior. + +### Versiones afectadas + +* Gema cgi versiones <= 0.3.5, 0.3.6, 0.4.0 y 0.4.1. + +### Créditos + +Gracias a [svalkanov](https://hackerone.com/svalkanov) por descubrir +el problma. También gracias a [nobu](https://github.com/nobu) por +corregir esta vulnerabilidad. + +## CVE-2025-27221: fuga de información del usuario en `URI#join`, +`URI#merge` y `URI#+`. + +Hay posibilidad de que se fugue información con la gema uri. A esta +vulnerabilidad se le ha asignado el identificador +[CVE-2025-27221](https://www.cve.org/CVERecord?id=CVE-2025-27221). +Recomendamos actualizar la gema uri. + +### Detalles + +Los métodos `URI#join`, `URI#merge`, y `URI#+` retienen información +del usuario, tales como `user:password`, incluso aún después de que +la máquina es reemplazada. Cuando genera un URL para una máquina +maliciosa a partir de una URL que contenga información de usuario +secreta usando este método, y teniendo que alguien accede a la URL, +podría ocurrir una fuga de datos no intencionada. + +Por favor actualizar la gema URI a las versiones 0.11.3, 0.12.4, 0.13.2, 1.0.3 +o posterior. + +### Versiones Afectadas + +* Gema uri versions < 0.11.3, 0.12.0 to 0.12.3, 0.13.0, 0.13.1 y + 1.0.0 a 1.0.2. + +### Créditos + +Agradecemos a [Tsubasa Irisawa (lambdasawa)](https://hackerone.com/lambdasawa) +por descubrir este problema. También agradecemos a +[nobu](https://github.com/nobu) por correcciones adicionales +para esta vulnerabilidad. + +## Historia + +* Publicado originalmente el 2025-02-26 7:00:00 (UTC) From 01dbd5a53772d1ea5a28a8e9b74ca1e068865df6 Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 8 Mar 2025 21:41:37 +0900 Subject: [PATCH 565/607] Follow up "faq/2/index.md: fix incorrect wording" (ko) (#3524) --- ko/documentation/faq/2/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ko/documentation/faq/2/index.md b/ko/documentation/faq/2/index.md index e8b5e322be..3f204b4dbe 100644 --- a/ko/documentation/faq/2/index.md +++ b/ko/documentation/faq/2/index.md @@ -55,7 +55,7 @@ Python은 하이브리드 언어입니다. 절차적 프로그래밍을 위한 Ruby는 절차적 언어로 가장할 수 있는 순수한 객체 지향 언어입니다. 함수는 없고 메서드 호출만 있습니다. Ruby 메서드에서 `self`라고도 하는 수신자는 C++의 `this`와 같은 숨겨진 인수입니다. 클래스 정의 밖의 `def` 문은 Python에서는 -함수지만 Ruby에서 실제로는 메서드 호출입니다. 이러한 가짜 함수는 Ruby 클래스 +함수 정의이지만 Ruby에서 실제로는 메서드 정의입니다. 이러한 가짜 함수는 Ruby 클래스 계층 구조의 루트인 Object 클래스의 private 메서드가 됩니다. 절차적 프로그래밍은 다른 방향에서 깔끔하게 해결됩니다. 모든 것이 객체입니다. 사용자가 아직 객체를 이해하지 못했어도 `def`가 함수 정의인 것처럼 동작해서 문제없이 사용할 수 있습니다. From 34b16ad8018fd4be9d795068a248a84bf85a45ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 12 Mar 2025 15:44:53 +0000 Subject: [PATCH 566/607] Bump json from 2.10.1 to 2.10.2 Bumps [json](https://github.com/ruby/json) from 2.10.1 to 2.10.2. - [Release notes](https://github.com/ruby/json/releases) - [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md) - [Commits](https://github.com/ruby/json/compare/v2.10.1...v2.10.2) --- updated-dependencies: - dependency-name: json dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 8a3c17ccaa..f88b844103 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -98,7 +98,7 @@ GEM sass-embedded (~> 1.75) jekyll-watch (2.2.1) listen (~> 3.0) - json (2.10.1) + json (2.10.2) kramdown (2.5.1) rexml (>= 3.3.9) kramdown-parser-gfm (1.1.0) From 7cf93bad00463ee1f45539361fe51c91c1ce7bd0 Mon Sep 17 00:00:00 2001 From: Jae Youp Kim Date: Sun, 16 Mar 2025 10:28:35 +0900 Subject: [PATCH 567/607] fix: correct awkward translations (#3526) --- ko/documentation/installation/index.md | 8 ++++---- ko/documentation/quickstart/2/index.md | 2 +- ko/documentation/quickstart/4/index.md | 2 +- ko/libraries/index.md | 14 +++++++------- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/ko/documentation/installation/index.md b/ko/documentation/installation/index.md index 60998f0a07..8c4982926e 100644 --- a/ko/documentation/installation/index.md +++ b/ko/documentation/installation/index.md @@ -346,7 +346,7 @@ UNIX 계열 운영체제와 Windows를 지원합니다. ### rbenv {: #rbenv} -[rbenv][rbenv]는 여러 종류의 Ruby를 설치할 수 있게 합니다. +[rbenv][rbenv]는 여러 버전의 Ruby를 설치할 수 있게 합니다. rbenv 자체는 Ruby 설치를 지원하지 않습니다만, [ruby-build](#ruby-build)라는 유명한 플러그인에서 Ruby를 설치할 수 있습니다. rbenv, ruby-build 모두 macOS, Linux나 다른 UNIX-계열 운영체제에서 사용가능합니다. @@ -355,7 +355,7 @@ rbenv, ruby-build 모두 macOS, Linux나 다른 UNIX-계열 운영체제에서 ### rbenv for Windows {: #rbenv-for-windows} -[rbenv for Windows][rbenv-for-windows]는 Windows에서 여러 종류의 Ruby를 +[rbenv for Windows][rbenv-for-windows]는 Windows에서 여러 버전의 Ruby를 설치하고 관리할 수 있도록 합니다. 이는 PowerShell로 작성되었으므로 Windows에서 Ruby를 이용하는 사용자들에게 자연스러운 수단을 제공합니다. 또한 커맨드 라인 인터페이스는 UNIX 계열 @@ -365,7 +365,7 @@ Windows에서 Ruby를 이용하는 사용자들에게 자연스러운 수단을 ### RVM ("Ruby Version Manager") {: #rvm} -[RVM][rvm]은 시스템에 여러 종류의 Ruby를 설치하고 관리할 수 있게 해줍니다. +[RVM][rvm]은 시스템에 여러 버전의 Ruby를 설치하고 관리할 수 있게 해줍니다. RVM은 다른 gemset도 관리해 줍니다. macOS, Linux나 다른 UNIX-계열 운영체제에서만 사용 가능합니다. @@ -373,7 +373,7 @@ macOS, Linux나 다른 UNIX-계열 운영체제에서만 사용 가능합니다. ### RVM 4 Windows {: #rvm-windows} -[RVM 4 Windows][rvm-windows]는 Windows에서 여러 종류의 Ruby를 설치하고 +[RVM 4 Windows][rvm-windows]는 Windows에서 여러 버전의 Ruby를 설치하고 관리할 수 있게 해줍니다. 이는 오리지널 RVM의 복제로, 오리지널 RVM과 동일한 커맨드 라인 인터페이스를 제공하며, 기존 커맨드 라인 인터페이스와 PowerShell을 모두 지원합니다. diff --git a/ko/documentation/quickstart/2/index.md b/ko/documentation/quickstart/2/index.md index 434771da22..a8b304bd20 100644 --- a/ko/documentation/quickstart/2/index.md +++ b/ko/documentation/quickstart/2/index.md @@ -65,7 +65,7 @@ Hello Matz! ## 문자열의 중간에 자리를 잡아두기 -`#\{name}` 부분은 무엇이냐구요? Ruby에서 문자열 중간에 무엇을 삽입하는 방법입니다. +`#{name}` 부분은 무엇이냐구요? Ruby에서 문자열 중간에 무엇을 삽입하는 방법입니다. 중괄호 사이의 부분이 문자열로 변환되어 (이미 문자열이 아니라면) 전체 문자열의 그 지점에 삽입되는 것이지요. 사람 이름의 첫 글자를 대문자로 만들어주는 것도 가능합니다. diff --git a/ko/documentation/quickstart/4/index.md b/ko/documentation/quickstart/4/index.md index f951d5bdaf..6295c7ad73 100644 --- a/ko/documentation/quickstart/4/index.md +++ b/ko/documentation/quickstart/4/index.md @@ -64,7 +64,7 @@ end 매개 변수입니다. 여기서 일어나고 있는 것은 리스트의 각 원소가 `name` 변수에 넘겨져서, 그 `name`을 -가지고 `puts “Hello#\{name}!”` 코드가 실행되고 있는 거랍니다. +가지고 `puts "Hello #{name}!"` 코드가 실행되고 있는 거랍니다. 대부분의 다른 프로그래밍 언어에서는 보통 `for` 반복문을 사용해서 리스트의 내용물을 처리하게 되지요. C 코드로는 다음과 같겠죠. diff --git a/ko/libraries/index.md b/ko/libraries/index.md index 2e6b7eacf5..c63d0cab53 100644 --- a/ko/libraries/index.md +++ b/ko/libraries/index.md @@ -35,15 +35,15 @@ list`를 사용합니다. 좀 더 정보가 필요하시면 아래 내용을 좀 소스코드는 GitHub에서 볼 수 있습니다. [**The Ruby Toolbox**][6]는 오픈소스이며 Ruby 프로젝트를 검색하기 쉽게 하기 위한 -프로젝트입니다. 다양한 종류의 일반적인 개발 작업을 카테고리로 릴리스나 커밋의 -활발함, 라이브러리의 의존관계 등 각 프로젝트의 다양한 정보를 모았습니다. 또 RubyGems.org와 -GitHub의 인기를 바탕으로 프로젝트의 순위를 매깁니다. 검색을 하면 원하는 것을 쉽게 찾으실 -수 있을 것입니다. +프로젝트입니다. 다양한 개발 작업을 위한 카테고리를 가지고 있으며, +릴리스, 커밋 활동 혹은 의존성과 같이 프로젝트에 관한 많은 정보를 수집합니다. +또한 RubyGems.org와 GitHub에서의 인기도를 기반으로 프로젝트를 평가합니다. +검색을 통해 웹 프레임워크, 문서화 도구, 코드 품질 라이브러리 등 문제 해결을 위한 gem을 쉽게 찾으실 수 있을 것입니다. ### RubyGems에 대한 보충 설명 -많이 쓰이는 `gem` 명령어를 가볍게 보시려면, 이 패키지 관리시스템의 전반에 -대한 [좀 더 자세한 문서][7]도 있습니다. +다음은 일상적인 사용을 위한 `gem` 명령어에 대한 간략한 리뷰입니다. +이 패키징 시스템의 모든 기능을 다루는 [더 상세한 문서][7]도 있습니다. #### gem 찾기 @@ -71,7 +71,7 @@ gem을 설치하려면 **install** 명령을 사용하면 됩니다. 예를 들 $ gem install rails {% endhighlight %} -`--version` / `-v` 플래그를 이용하면 특정 버전을 지칭해서 설치할 수도 있습니다. +`--version` / `-v` 플래그를 이용하면 특정 버전을 지정해서 설치할 수도 있습니다. {% highlight sh %} $ gem install rails --version 5.0 From 805066249639375e7cbdf3348cae7fe524ccb05e Mon Sep 17 00:00:00 2001 From: nagachika Date: Thu, 20 Mar 2025 03:42:52 +0900 Subject: [PATCH 568/607] Fix missing links for CVE-2015-3900 in ko version (#3527) * Fix missing links for CVE-2015-3900 in ko version * Update ko/news/_posts/2015-08-18-ruby-2-0-0-p647-released.md Co-authored-by: Chayoung You * Update ko/news/_posts/2015-08-18-ruby-2-1-7-released.md Co-authored-by: Chayoung You * Update ko/news/_posts/2015-08-18-ruby-2-2-3-released.md Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- ko/news/_posts/2015-08-18-ruby-2-0-0-p647-released.md | 2 +- ko/news/_posts/2015-08-18-ruby-2-1-7-released.md | 2 +- ko/news/_posts/2015-08-18-ruby-2-2-3-released.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ko/news/_posts/2015-08-18-ruby-2-0-0-p647-released.md b/ko/news/_posts/2015-08-18-ruby-2-0-0-p647-released.md index 7e7e284e1b..ebd1eb0e64 100644 --- a/ko/news/_posts/2015-08-18-ruby-2-0-0-p647-released.md +++ b/ko/news/_posts/2015-08-18-ruby-2-0-0-p647-released.md @@ -12,7 +12,7 @@ lang: ko 이 릴리스에는 RubyGems 도메인 이름 확인 취약점에 관한 보안 수정이 포함됩니다. 더 자세한 내용은 밑의 내용을 보세요. -* [CVE-2015-3900 RubyGems 2.4.6 이전의 요청 가로채기 취약점](http://ruby-korea.github.io/rubygems-blog/2015/05/14/CVE-2015-3900.html) +* [CVE-2015-3900 RubyGems 2.4.6 이전의 요청 가로채기 취약점](https://rubykr.github.io/rubygems-blog/2015/05/14/CVE-2015-3900.html) 그리고 이 릴리스에는 lib/resolv.rb의 회귀에 대한 수정도 포함됩니다. diff --git a/ko/news/_posts/2015-08-18-ruby-2-1-7-released.md b/ko/news/_posts/2015-08-18-ruby-2-1-7-released.md index 42356aa7e6..afbc8e4421 100644 --- a/ko/news/_posts/2015-08-18-ruby-2-1-7-released.md +++ b/ko/news/_posts/2015-08-18-ruby-2-1-7-released.md @@ -12,7 +12,7 @@ lang: ko 이 릴리스에는 RubyGems 도메인 이름 확인 취약점에 관한 보안 수정이 포함됩니다. 더 자세한 내용은 밑의 내용을 보세요. -* [CVE-2015-3900 RubyGems 2.4.6 이전의 요청 가로채기 취약점](http://ruby-korea.github.io/rubygems-blog/2015/05/14/CVE-2015-3900.html) +* [CVE-2015-3900 RubyGems 2.4.6 이전의 요청 가로채기 취약점](https://rubykr.github.io/rubygems-blog/2015/05/14/CVE-2015-3900.html) 또한 많은 버그가 수정되었습니다. 자세한 내용은 [티켓](https://bugs.ruby-lang.org/projects/ruby-21/issues?set_filter=1&status_id=5)과 diff --git a/ko/news/_posts/2015-08-18-ruby-2-2-3-released.md b/ko/news/_posts/2015-08-18-ruby-2-2-3-released.md index c1c8f7959d..4d71bcfbba 100644 --- a/ko/news/_posts/2015-08-18-ruby-2-2-3-released.md +++ b/ko/news/_posts/2015-08-18-ruby-2-2-3-released.md @@ -12,7 +12,7 @@ lang: ko 이 릴리스에는 RubyGems 도메인 이름 확인 취약점에 관한 보안 수정이 포함됩니다. -* [CVE-2015-3900 RubyGems 2.4.6 이전의 요청 가로채기 취약점](http://ruby-korea.github.io/rubygems-blog/2015/05/14/CVE-2015-3900.html) +* [CVE-2015-3900 RubyGems 2.4.6 이전의 요청 가로채기 취약점](https://rubykr.github.io/rubygems-blog/2015/05/14/CVE-2015-3900.html) 버그 수정도 조금 있었습니다. 자세한 내용은 From 15c414940a1a7abc802b6a848ddcc5772a89b7ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Mar 2025 23:47:30 +0000 Subject: [PATCH 569/607] Bump nokogiri from 1.18.3 to 1.18.4 Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.18.3 to 1.18.4. - [Release notes](https://github.com/sparklemotion/nokogiri/releases) - [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md) - [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.18.3...v1.18.4) --- updated-dependencies: - dependency-name: nokogiri dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index f88b844103..05a5961647 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -111,24 +111,24 @@ GEM metrics (0.12.1) mini_portile2 (2.8.8) minitest (5.25.4) - nokogiri (1.18.3) + nokogiri (1.18.4) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.18.3-aarch64-linux-gnu) + nokogiri (1.18.4-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.3-aarch64-linux-musl) + nokogiri (1.18.4-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.18.3-arm-linux-gnu) + nokogiri (1.18.4-arm-linux-gnu) racc (~> 1.4) - nokogiri (1.18.3-arm-linux-musl) + nokogiri (1.18.4-arm-linux-musl) racc (~> 1.4) - nokogiri (1.18.3-arm64-darwin) + nokogiri (1.18.4-arm64-darwin) racc (~> 1.4) - nokogiri (1.18.3-x86_64-darwin) + nokogiri (1.18.4-x86_64-darwin) racc (~> 1.4) - nokogiri (1.18.3-x86_64-linux-gnu) + nokogiri (1.18.4-x86_64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.3-x86_64-linux-musl) + nokogiri (1.18.4-x86_64-linux-musl) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) From 50a3b16ae093833f6d0ffe937cf57230eadb3f04 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot Date: Wed, 26 Mar 2025 04:44:29 +0000 Subject: [PATCH 570/607] Create release for 3.1.7 --- .../_posts/2025-03-26-ruby-3-1-7-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 en/news/_posts/2025-03-26-ruby-3-1-7-released.md diff --git a/en/news/_posts/2025-03-26-ruby-3-1-7-released.md b/en/news/_posts/2025-03-26-ruby-3-1-7-released.md new file mode 100644 index 0000000000..e12058f917 --- /dev/null +++ b/en/news/_posts/2025-03-26-ruby-3-1-7-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.1.7 Released" +author: +translator: +date: 2025-03-26 04:44:27 +0000 +lang: en +--- + +Ruby 3.1.7 has been released. + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_7) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.1.7" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 6d9015803007344bd2d34efecab12ebcdd5b7d87 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 26 Mar 2025 13:58:30 +0900 Subject: [PATCH 571/607] Added 3.1.7 to releases.yml --- _data/releases.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/_data/releases.yml b/_data/releases.yml index 8274b32d57..46bd420ae2 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -818,6 +818,29 @@ # 3.1 series +- version: 3.1.7 + date: '2025-03-26' + post: "/en/news/2025/03/26/ruby-3-1-7-released/" + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.7.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.7.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.7.zip + size: + gz: 20811481 + xz: 15196628 + zip: 25555673 + sha1: + gz: c2023f05989241d1f21409b980ffbda83b1cbe7b + xz: 1437e9ec92f2c166f5b04dbb0c21ac299aca0542 + zip: c2eeaba7ebdabc84ca7b77a14a1f83b16397c87e + sha256: + gz: 0556acd69f141ddace03fa5dd8d76e7ea0d8f5232edf012429579bcdaab30e7b + xz: 658acc455b6bda87ac6cc1380e86552b9c1af87055e7a127589c5bf7ed80b035 + zip: ab91106d0686cd30c375c309c58a5b96e68ac56e96c453c1d4f3fbb6c548dec7 + sha512: + gz: a8432aaeaee4f48027ab30b7870bc61350840761b9d72b0b399d8fdfa96acb3c8f1ebe63663bcd8d835dd89b21128a07ef8f0c0c47eb41b942c169954ccb7edd + xz: 44e013f6e8d159a49125d24eaf02f58e02997fcd7bd4f4370250248c2d3264fb45183e33797638a7d9a2907fb48fe1b46f5f45514d60a800f96bce2c10baca82 + zip: febc49a0350558a8f3ad0d683c94321fc3437201c1adafdaa4e1a454234eef857d324e6ee1f95f5998d96fafce7f3a6c39483b3251a4a9ed4f64d80a1f73964e - version: 3.1.6 date: 2024-05-29 post: "/en/news/2024/05/29/ruby-3-1-6-released/" From 752d19775a7568ae5fb0e4ba395cacb4f2870474 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 26 Mar 2025 14:29:47 +0900 Subject: [PATCH 572/607] Update release announcement --- en/news/_posts/2025-03-26-ruby-3-1-7-released.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/en/news/_posts/2025-03-26-ruby-3-1-7-released.md b/en/news/_posts/2025-03-26-ruby-3-1-7-released.md index e12058f917..5892ed0746 100644 --- a/en/news/_posts/2025-03-26-ruby-3-1-7-released.md +++ b/en/news/_posts/2025-03-26-ruby-3-1-7-released.md @@ -7,10 +7,14 @@ date: 2025-03-26 04:44:27 +0000 lang: en --- -Ruby 3.1.7 has been released. +Ruby 3.1.7 has been released. This release includes [CVE-2025-27219, CVE-2025-27220 and CVE-2025-27221 fixes](https://www.ruby-lang.org/en/news/2025/02/26/security-advisories/) and update bundled REXML and RSS gems. Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_7) for further details. +This version is a final release of Ruby 3.1 series. We will not provide any further updates including security fixes for Ruby 3.1 series. + +We recommend you to upgrade to Ruby 3.3 or 3.4 series. + ## Download {% assign release = site.data.releases | where: "version", "3.1.7" | first %} From b91cf7814a7f6620069bfe31055aac1b7e60cafa Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 26 Mar 2025 14:34:28 +0900 Subject: [PATCH 573/607] Fill in author --- en/news/_posts/2025-03-26-ruby-3-1-7-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2025-03-26-ruby-3-1-7-released.md b/en/news/_posts/2025-03-26-ruby-3-1-7-released.md index 5892ed0746..e84a3c6eae 100644 --- a/en/news/_posts/2025-03-26-ruby-3-1-7-released.md +++ b/en/news/_posts/2025-03-26-ruby-3-1-7-released.md @@ -1,7 +1,7 @@ --- layout: news_post title: "Ruby 3.1.7 Released" -author: +author: hsbt translator: date: 2025-03-26 04:44:27 +0000 lang: en From d2acbe1f8ff365e4902223717abf4f04f397fa60 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot Date: Wed, 26 Mar 2025 04:45:02 +0000 Subject: [PATCH 574/607] Create release for 3.2.8 --- .../_posts/2025-03-26-ruby-3-2-8-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 en/news/_posts/2025-03-26-ruby-3-2-8-released.md diff --git a/en/news/_posts/2025-03-26-ruby-3-2-8-released.md b/en/news/_posts/2025-03-26-ruby-3-2-8-released.md new file mode 100644 index 0000000000..10099c8a08 --- /dev/null +++ b/en/news/_posts/2025-03-26-ruby-3-2-8-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.2.8 Released" +author: +translator: +date: 2025-03-26 04:45:01 +0000 +lang: en +--- + +Ruby 3.2.8 has been released. + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_8) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.2.8" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From ca435fd28e5fa19d4f871daee3e3c8232266df9d Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 26 Mar 2025 13:57:27 +0900 Subject: [PATCH 575/607] Added 3.2.8 to releases.yml --- _data/releases.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/_data/releases.yml b/_data/releases.yml index 46bd420ae2..8f1b222727 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -503,6 +503,29 @@ # 3.2 series +- version: 3.2.8 + date: '2025-03-26' + post: "/en/news/2025/03/26/ruby-3-2-8-released/" + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.8.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.8.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.8.zip + size: + gz: 20549999 + xz: 15130380 + zip: 25134315 + sha1: + gz: 419ecff4a0f8e805ddb1314344ffad33afde91d8 + xz: 570b529a10784fc16bb0339e6d37408adf9cd31d + zip: c80bf2e90b3bbfbedc9c8b65d401ce4bd0ed4263 + sha256: + gz: 77acdd8cfbbe1f8e573b5e6536e03c5103df989dc05fa68c70f011833c356075 + xz: 1cccd3100155275293ae5d4ea0a1a1068f5de69e71732220f144acce26327a3c + zip: c8ca517937c05e03ae52c41dad16ccf12ffae323365e73f3720142421f3aa2c7 + sha512: + gz: 342d9ce337936cdbaa5d63a4d393edf0594e431add8cec3b6f17b884075bfdc5aa7a843c03f4ee3bece01700dfa4707bba653715a628d9dcb230762dbd3e5ac8 + xz: 19ff96619945d907e509803b85ecf21750ffa4ae033045272feb43c183ab180d0033b98cf47c18804e448f01bc1928e3b833c61c98446dbe6be31fb9ea6b059d + zip: e248bc2a37b32edca0508df3016ac933089170deba6eec5479d8fb45a3d022c4c9532de2b5486863d30233bd276b14335e8d5ee97c371746b26d64f4864e80d3 - version: 3.2.7 date: 2025-02-04 post: /en/news/2025/02/04/ruby-3-2-7-released/ From ddba64ee14da3a3aa6ced63750a883e0605feec5 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 26 Mar 2025 14:33:57 +0900 Subject: [PATCH 576/607] Update release announcement --- en/news/_posts/2025-03-26-ruby-3-2-8-released.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/en/news/_posts/2025-03-26-ruby-3-2-8-released.md b/en/news/_posts/2025-03-26-ruby-3-2-8-released.md index 10099c8a08..8acf005161 100644 --- a/en/news/_posts/2025-03-26-ruby-3-2-8-released.md +++ b/en/news/_posts/2025-03-26-ruby-3-2-8-released.md @@ -1,16 +1,20 @@ --- layout: news_post title: "Ruby 3.2.8 Released" -author: +author: hsbt translator: date: 2025-03-26 04:45:01 +0000 lang: en --- -Ruby 3.2.8 has been released. +Ruby 3.2.8 has been released. This release includes [CVE-2025-27219, CVE-2025-27220 and CVE-2025-27221 fixes](https://www.ruby-lang.org/en/news/2025/02/26/security-advisories/). Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_8) for further details. +This version is a last version of normal maintenance for Ruby 3.2 series. We will fix only security issues for Ruby 3.2 series until end of March 2026. + +Please consider upgrading to Ruby 3.3 or 3.4 series. + ## Download {% assign release = site.data.releases | where: "version", "3.2.8" | first %} From cf4a5b1e8abff7051218b84c67a6db132986243a Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 28 Mar 2025 07:28:19 +0900 Subject: [PATCH 577/607] Translate "Ruby 3.2.8 Released", "Ruby 3.1.7 Released" (ko)* (#3532) * Copy ruby 3.1.7, 3.2.8 released to ko * Translate "Ruby 3.2.8 Released", "Ruby 3.1.7 Released" (ko) * Apply suggestions from code review Co-authored-by: Chayoung You --------- Co-authored-by: Chayoung You --- .../_posts/2025-03-26-ruby-3-1-7-released.md | 46 +++++++++++++++++++ .../_posts/2025-03-26-ruby-3-2-8-released.md | 46 +++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 ko/news/_posts/2025-03-26-ruby-3-1-7-released.md create mode 100644 ko/news/_posts/2025-03-26-ruby-3-2-8-released.md diff --git a/ko/news/_posts/2025-03-26-ruby-3-1-7-released.md b/ko/news/_posts/2025-03-26-ruby-3-1-7-released.md new file mode 100644 index 0000000000..51a22a3847 --- /dev/null +++ b/ko/news/_posts/2025-03-26-ruby-3-1-7-released.md @@ -0,0 +1,46 @@ +--- +layout: news_post +title: "Ruby 3.1.7 릴리스" +author: hsbt +translator: shia +date: 2025-03-26 04:44:27 +0000 +lang: ko +--- + +Ruby 3.1.7이 릴리스되었습니다. 이 릴리스에는 [CVE-2025-27219, CVE-2025-27220 및 CVE-2025-27221 수정 사항](https://www.ruby-lang.org/ko/news/2025/02/26/security-advisories/)이 포함되어 있고, 내장된 REXML 및 RSS gem이 업데이트되었습니다. + +자세한 사항은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_1_7)를 확인해 주세요. + +이 버전은 Ruby 3.1 버전대의 최종 릴리스입니다. Ruby 3.1 버전대에 대한 보안 수정을 포함한 추가 업데이트는 제공되지 않습니다. + +Ruby 3.3 또는 3.4 버전대로 업그레이드하는 것을 권장합니다. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.1.7" | first %} + +* <{{ 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/2025-03-26-ruby-3-2-8-released.md b/ko/news/_posts/2025-03-26-ruby-3-2-8-released.md new file mode 100644 index 0000000000..aed1e2ba99 --- /dev/null +++ b/ko/news/_posts/2025-03-26-ruby-3-2-8-released.md @@ -0,0 +1,46 @@ +--- +layout: news_post +title: "Ruby 3.2.8 릴리스" +author: hsbt +translator: shia +date: 2025-03-26 04:45:01 +0000 +lang: ko +--- + +Ruby 3.2.8이 릴리스되었습니다. 이 릴리스에는 [CVE-2025-27219, CVE-2025-27220 및 CVE-2025-27221 수정 사항](https://www.ruby-lang.org/ko/news/2025/02/26/security-advisories/)이 포함되어 있습니다. + +자세한 사항은 [GitHub 릴리스](https://github.com/ruby/ruby/releases/tag/v3_2_8)를 확인해 주세요. + +이 버전은 Ruby 3.2 버전대의 일반 유지보수 마지막 버전입니다. Ruby 3.2 버전대는 2026년 3월 말까지 보안 문제만 수정될 것입니다. + +Ruby 3.3 또는 3.4 버전대로 업그레이드하는 것을 권장합니다. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.2.8" | first %} + +* <{{ 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 d7eae851575418c4cbebb570eda96767ba4379be Mon Sep 17 00:00:00 2001 From: gaojun Date: Thu, 27 Mar 2025 15:41:10 +0800 Subject: [PATCH 578/607] Translate "3.1.7/3.2.8 Released" (zh_cn) --- .../_posts/2025-03-26-ruby-3-1-7-released.md | 47 +++++++++++++++++++ .../_posts/2025-03-26-ruby-3-2-8-released.md | 46 ++++++++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 zh_cn/news/_posts/2025-03-26-ruby-3-1-7-released.md create mode 100644 zh_cn/news/_posts/2025-03-26-ruby-3-2-8-released.md diff --git a/zh_cn/news/_posts/2025-03-26-ruby-3-1-7-released.md b/zh_cn/news/_posts/2025-03-26-ruby-3-1-7-released.md new file mode 100644 index 0000000000..869d7a996d --- /dev/null +++ b/zh_cn/news/_posts/2025-03-26-ruby-3-1-7-released.md @@ -0,0 +1,47 @@ +--- +layout: news_post +title: "Ruby 3.1.7 已发布" +author: hsbt +translator: "GAO Jun" +date: 2025-03-26 04:44:27 +0000 +lang: zh_cn +--- + +Ruby 3.1.7 已发布。此版本包括 [CVE-2025-27219,CVE-2025-27220 和 CVE-2025-27221 的补丁](https://www.ruby-lang.org/zh_cn/news/2025/02/26/security-advisories/) +并更新了绑定的 REXML 和 RSS gems. + +详细信息可参考 [GitHub 发布说明](https://github.com/ruby/ruby/releases/tag/v3_1_7)。 + +此版本是 Ruby 3.1 系列的最终版本。我们不会再发布 Ruby 3.1 系列的后续版本,包括安全补丁。 + +我们建议您更新到 Ruby 3.3 或 3.4 系列版本。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.1.7" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 diff --git a/zh_cn/news/_posts/2025-03-26-ruby-3-2-8-released.md b/zh_cn/news/_posts/2025-03-26-ruby-3-2-8-released.md new file mode 100644 index 0000000000..bf40ff3f58 --- /dev/null +++ b/zh_cn/news/_posts/2025-03-26-ruby-3-2-8-released.md @@ -0,0 +1,46 @@ +--- +layout: news_post +title: "Ruby 3.2.8 已发布" +author: hsbt +translator: "GAO Jun" +date: 2025-03-26 04:45:01 +0000 +lang: zh_cn +--- + +Ruby 3.2.8已发布。此版本包括 [CVE-2025-27219,CVE-2025-27220 和 CVE-2025-27221 的补丁](https://www.ruby-lang.org/zh_cn/news/2025/02/26/security-advisories/)。 + +详细信息可参考 [GitHub 发布说明](https://github.com/ruby/ruby/releases/tag/v3_2_8)。 + +此版本是 Ruby 3.2 系列的最后普通维护版本。今后,直到 2026 年 3 月,我们仅会为 Ruby 3.2 系列提供安全补丁。 + +请考虑更新到 Ruby 3.3 或 3.4 系列版本。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.2.8" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From aa7b294787d0cb5f47dbb4c595b305429edbb7b4 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 2 Apr 2025 11:30:11 +0900 Subject: [PATCH 579/607] update bundles --- Gemfile.lock | 110 +++++++++++++++++++++++++-------------------------- 1 file changed, 54 insertions(+), 56 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 05a5961647..10d89d516a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -5,7 +5,7 @@ GEM addressable (2.8.7) public_suffix (>= 2.0.2, < 7.0) afm (0.2.2) - async (2.23.0) + async (2.23.1) console (~> 1.29) fiber-annotation io-event (~> 1.9) @@ -15,12 +15,12 @@ GEM bigdecimal (3.1.9) colorator (1.1.0) concurrent-ruby (1.3.5) - console (1.29.2) + console (1.30.2) fiber-annotation fiber-local (~> 1.1) json crass (1.0.6) - csv (3.3.2) + csv (3.3.3) em-websocket (0.5.3) eventmachine (>= 0.12.9) http_parser.rb (~> 0) @@ -43,26 +43,26 @@ GEM fiber-storage fiber-storage (1.0.0) forwardable-extended (2.6.0) - google-protobuf (4.29.3) + google-protobuf (4.30.2) bigdecimal rake (>= 13) - google-protobuf (4.29.3-aarch64-linux) + google-protobuf (4.30.2-aarch64-linux) bigdecimal rake (>= 13) - google-protobuf (4.29.3-arm64-darwin) + google-protobuf (4.30.2-arm64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.29.3-x86-linux) + google-protobuf (4.30.2-x86-linux) bigdecimal rake (>= 13) - google-protobuf (4.29.3-x86_64-darwin) + google-protobuf (4.30.2-x86_64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.29.3-x86_64-linux) + google-protobuf (4.30.2-x86_64-linux) bigdecimal rake (>= 13) hashery (2.1.2) - html-proofer (5.0.9) + html-proofer (5.0.10) addressable (~> 2.3) async (~> 2.1) nokogiri (~> 1.13) @@ -74,7 +74,7 @@ GEM http_parser.rb (0.8.0) i18n (1.14.7) concurrent-ruby (~> 1.0) - io-event (1.9.0) + io-event (1.10.0) jekyll (4.4.1) addressable (~> 2.4) base64 (~> 0.2) @@ -108,27 +108,27 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) - metrics (0.12.1) + metrics (0.12.2) mini_portile2 (2.8.8) - minitest (5.25.4) - nokogiri (1.18.4) + minitest (5.25.5) + nokogiri (1.18.7) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.18.4-aarch64-linux-gnu) + nokogiri (1.18.7-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.4-aarch64-linux-musl) + nokogiri (1.18.7-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.18.4-arm-linux-gnu) + nokogiri (1.18.7-arm-linux-gnu) racc (~> 1.4) - nokogiri (1.18.4-arm-linux-musl) + nokogiri (1.18.7-arm-linux-musl) racc (~> 1.4) - nokogiri (1.18.4-arm64-darwin) + nokogiri (1.18.7-arm64-darwin) racc (~> 1.4) - nokogiri (1.18.4-x86_64-darwin) + nokogiri (1.18.7-x86_64-darwin) racc (~> 1.4) - nokogiri (1.18.4-x86_64-linux-gnu) + nokogiri (1.18.7-x86_64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.4-x86_64-linux-musl) + nokogiri (1.18.7-x86_64-linux-musl) racc (~> 1.4) paint (2.3.0) pathutil (0.16.2) @@ -150,39 +150,37 @@ GEM rouge (4.5.1) ruby-rc4 (0.1.5) safe_yaml (1.0.5) - sass-embedded (1.85.0) - google-protobuf (~> 4.29) + sass-embedded (1.86.1) + google-protobuf (~> 4.30) rake (>= 13) - sass-embedded (1.85.0-aarch64-linux-android) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-aarch64-linux-gnu) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-aarch64-linux-musl) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-arm-linux-androideabi) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-arm-linux-gnueabihf) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-arm-linux-musleabihf) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-arm64-darwin) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-riscv64-linux-android) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-riscv64-linux-gnu) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-riscv64-linux-musl) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-x86_64-cygwin) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-x86_64-darwin) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-x86_64-linux-android) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-x86_64-linux-gnu) - google-protobuf (~> 4.29) - sass-embedded (1.85.0-x86_64-linux-musl) - google-protobuf (~> 4.29) + sass-embedded (1.86.1-aarch64-linux-android) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-aarch64-linux-gnu) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-aarch64-linux-musl) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-arm-linux-androideabi) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-arm-linux-gnueabihf) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-arm-linux-musleabihf) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-arm64-darwin) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-riscv64-linux-android) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-riscv64-linux-gnu) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-riscv64-linux-musl) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-x86_64-darwin) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-x86_64-linux-android) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-x86_64-linux-gnu) + google-protobuf (~> 4.30) + sass-embedded (1.86.1-x86_64-linux-musl) + google-protobuf (~> 4.30) slop (4.10.1) spidr (0.7.2) base64 (~> 0.1) @@ -212,7 +210,7 @@ GEM rexml (~> 3.2) webrick (1.9.1) yell (2.2.2) - zeitwerk (2.7.1) + zeitwerk (2.7.2) PLATFORMS aarch64-linux @@ -253,4 +251,4 @@ DEPENDENCIES validate-website (~> 1.6) BUNDLED WITH - 2.6.4 + 2.6.6 From b11e5168851a86660c4d5dafc8c0900a93796b82 Mon Sep 17 00:00:00 2001 From: Kazuhiro NISHIYAMA Date: Thu, 3 Apr 2025 09:03:55 +0900 Subject: [PATCH 580/607] Update branch status --- _data/branches.yml | 9 ++++----- _data/downloads.yml | 12 ++---------- 2 files changed, 6 insertions(+), 15 deletions(-) diff --git a/_data/branches.yml b/_data/branches.yml index 864193a135..82c6d4f9ed 100644 --- a/_data/branches.yml +++ b/_data/branches.yml @@ -21,18 +21,17 @@ expected_eol_date: 2027-03-31 - name: 3.2 - status: normal maintenance + status: security maintenance date: 2022-12-25 - security_maintenance_date: + security_maintenance_date: 2025-04-01 eol_date: expected_eol_date: 2026-03-31 - name: 3.1 - status: security maintenance + status: eol date: 2021-12-25 security_maintenance_date: 2024-04-01 - eol_date: - expected_eol_date: 2025-03-31 + eol_date: 2025-03-26 - name: 3.0 status: eol diff --git a/_data/downloads.yml b/_data/downloads.yml index 36a817ddd9..c8811b1602 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -9,17 +9,16 @@ stable: - 3.4.2 - 3.3.7 - - 3.2.7 + - 3.2.8 # optional security_maintenance: - - 3.1.6 # optional eol: - - 3.0.7 + - 3.1.7 stable_snapshots: @@ -44,13 +43,6 @@ stable_snapshots: zip: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_2.zip version: '3.2' - - branch: ruby_3_1 - url: - gz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_1.tar.gz - xz: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_1.tar.xz - zip: https://cache.ruby-lang.org/pub/ruby/snapshot/snapshot-ruby_3_1.zip - version: '3.1' - nightly_snapshot: url: From 98e35436d5d845f007e9208435010e6108f97c2d Mon Sep 17 00:00:00 2001 From: Bear Su Date: Thu, 27 Mar 2025 20:43:35 +0800 Subject: [PATCH 581/607] Translate Ruby 3.1.7 and 3.2.8 Released (zh_tw) --- .../_posts/2025-03-26-ruby-3-1-7-released.md | 47 +++++++++++++++++++ .../_posts/2025-03-26-ruby-3-2-8-released.md | 46 ++++++++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 zh_tw/news/_posts/2025-03-26-ruby-3-1-7-released.md create mode 100644 zh_tw/news/_posts/2025-03-26-ruby-3-2-8-released.md diff --git a/zh_tw/news/_posts/2025-03-26-ruby-3-1-7-released.md b/zh_tw/news/_posts/2025-03-26-ruby-3-1-7-released.md new file mode 100644 index 0000000000..8908ec8434 --- /dev/null +++ b/zh_tw/news/_posts/2025-03-26-ruby-3-1-7-released.md @@ -0,0 +1,47 @@ +--- +layout: news_post +title: "Ruby 3.1.7 發布" +author: hsbt +translator: "Bear Su" +date: 2025-03-26 04:44:27 +0000 +lang: zh_tw +--- + +Ruby 3.1.7 已經發布了。 本次發布版本包含 [CVE-2025-27219、CVE-2025-27220 和 CVE-2025-27221 修復](https://www.ruby-lang.org/en/news/2025/02/26/security-advisories/) 以及更新 bundled REXML 和 RSS gems。 + +詳細的變動請參閱 [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_1_7)。 + +此為 Ruby 3.1 系列的最後版本。 +我們將不會為 Ruby 3.1 系列發布任何包含安全性修復的更新。 + +我們建議升級至 Ruby 3.3 或 3.4 系列。 + + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.1.7" | first %} + +* <{{ 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/zh_tw/news/_posts/2025-03-26-ruby-3-2-8-released.md b/zh_tw/news/_posts/2025-03-26-ruby-3-2-8-released.md new file mode 100644 index 0000000000..9f7f486c92 --- /dev/null +++ b/zh_tw/news/_posts/2025-03-26-ruby-3-2-8-released.md @@ -0,0 +1,46 @@ +--- +layout: news_post +title: "Ruby 3.2.8 發布" +author: hsbt +translator: "Bear Su" +date: 2025-03-26 04:45:01 +0000 +lang: zh_tw +--- + +Ruby 3.2.8 已經發布了。 本次發布版本包含 [CVE-2025-27219、CVE-2025-27220 和 CVE-2025-27221 修復](https://www.ruby-lang.org/en/news/2025/02/26/security-advisories/)。 + +詳細的變動請參閱 [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_2_8)。 + +此為 Ruby 3.2 系列最後的常規維護版本。 +我們將只修復 Ruby 3.2 系列的安全性漏洞直到 2026 年 3 月底。 + +請考慮升級至 Ruby 3.3 或 3.4 系列。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.2.8" | first %} + +* <{{ 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 6a51acb42c251d5ef3380a8cf88b43eabe9135d2 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 9 Apr 2025 09:14:14 +0900 Subject: [PATCH 582/607] Update sponsor list --- en/about/website/index.md | 3 --- ko/about/website/index.md | 3 --- zh_tw/about/website/index.md | 3 --- 3 files changed, 9 deletions(-) diff --git a/en/about/website/index.md b/en/about/website/index.md index d83fcfecfc..1b1057542e 100644 --- a/en/about/website/index.md +++ b/en/about/website/index.md @@ -50,8 +50,6 @@ Also many thanks to the organizations that support us: Heroku -[IBM][ibm] (hosting) - [Fastly][fastly] (CDN) Fastly @@ -77,7 +75,6 @@ Also many thanks to the organizations that support us: [github-wiki]: https://github.com/ruby/www.ruby-lang.org/wiki [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ -[ibm]: https://www.ibm.com [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ [mackerel]: https://mackerel.io/ diff --git a/ko/about/website/index.md b/ko/about/website/index.md index a3215c8ce2..a3d0d4622f 100644 --- a/ko/about/website/index.md +++ b/ko/about/website/index.md @@ -52,8 +52,6 @@ lang: ko Heroku -[IBM][ibm] (호스팅) - [Fastly][fastly] (CDN) Fastly @@ -79,7 +77,6 @@ lang: ko [github-wiki]: https://github.com/ruby/www.ruby-lang.org/wiki [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ -[ibm]: https://www.ibm.com [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ [mackerel]: https://mackerel.io/ diff --git a/zh_tw/about/website/index.md b/zh_tw/about/website/index.md index 789c69403c..a1c931e0e5 100644 --- a/zh_tw/about/website/index.md +++ b/zh_tw/about/website/index.md @@ -47,8 +47,6 @@ lang: zh_tw Heroku -[IBM][ibm] (網站托管) - [Fastly][fastly] (CDN) Fastly @@ -74,7 +72,6 @@ lang: zh_tw [github-wiki]: https://github.com/ruby/www.ruby-lang.org/wiki [rubyassociation]: http://www.ruby.or.jp [heroku]: https://www.heroku.com/ -[ibm]: https://www.ibm.com [fastly]: http://www.fastly.com [hatena]: http://hatenacorp.jp/ [mackerel]: https://mackerel.io/ From b593dd91f0f69a16194243105fd7e41dceee4a05 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot Date: Wed, 9 Apr 2025 10:38:52 +0000 Subject: [PATCH 583/607] Create release for 3.3.8 --- .../_posts/2025-04-09-ruby-3-3-8-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 en/news/_posts/2025-04-09-ruby-3-3-8-released.md diff --git a/en/news/_posts/2025-04-09-ruby-3-3-8-released.md b/en/news/_posts/2025-04-09-ruby-3-3-8-released.md new file mode 100644 index 0000000000..60d5fd8076 --- /dev/null +++ b/en/news/_posts/2025-04-09-ruby-3-3-8-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.3.8 Released" +author: +translator: +date: 2025-04-09 10:38:51 +0000 +lang: en +--- + +Ruby 3.3.8 has been released. + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_8) for further details. + +## Download + +{% assign release = site.data.releases | where: "version", "3.3.8" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From 9005c820eb4605f6c262b32257514c5226398545 Mon Sep 17 00:00:00 2001 From: nagachika Date: Wed, 9 Apr 2025 20:17:18 +0900 Subject: [PATCH 584/607] Added ruby 3.3.8 release in releases.yml/downloads.yml --- _data/downloads.yml | 2 +- _data/releases.yml | 24 +++++++++++++++++++ .../_posts/2025-04-09-ruby-3-3-8-released.md | 2 +- 3 files changed, 26 insertions(+), 2 deletions(-) diff --git a/_data/downloads.yml b/_data/downloads.yml index c8811b1602..ec9404ec52 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -8,7 +8,7 @@ preview: stable: - 3.4.2 - - 3.3.7 + - 3.3.8 - 3.2.8 # optional diff --git a/_data/releases.yml b/_data/releases.yml index 8f1b222727..b00aa72721 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -187,6 +187,30 @@ # 3.3 series +- version: 3.3.8 + date: '2025-04-09' + post: "/en/news/2025/04/09/ruby-3-3-8-released/" + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.8.tar.gz + xz: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.8.tar.xz + zip: https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.8.zip + size: + gz: 22197497 + xz: 16435924 + zip: 27628937 + sha1: + gz: 71b8362d413f58ed5aef2ecd132769210c45f058 + xz: 9ee07098fd930744d8df5d4945b5f99d2fecb9ef + zip: 4c0d938d2791ab696e921557aec19613bb364a67 + sha256: + gz: 5ae28a87a59a3e4ad66bc2931d232dbab953d0aa8f6baf3bc4f8f80977c89cab + xz: 44ae70fee043da3ce48289b7a52618ebe32dc083253993d486211c7e445c8642 + zip: 389b8deae02849e769855dea892c921d3387b6548209189837a00f1cdf353797 + sha512: + gz: c5005ba4019fbae19650a9a9ce139e13608345065da9e2277dbeac9d0ac9e3b07b666816afe7be690088080c8c9cf88a8c372971d429479dcebea80d6c2e3883 + xz: 71c2f3ac9955e088fa885fd2ff695e67362a770a5d33e5160081eda3dd298ca2c692e299b03d757caecfbc94043fedc4ad093de84c505585d480cb36bbf978b9 + zip: 1aa6a0412760d0d1f423cd5f02533696b7c952c04f567b89aa875997e1d53a548c294c0b771a9e06e666daab038e3481a6251e361163449f92b02ab3a89a6373 + - version: 3.3.7 date: 2025-01-15 post: /en/news/2025/01/15/ruby-3-3-7-released/ diff --git a/en/news/_posts/2025-04-09-ruby-3-3-8-released.md b/en/news/_posts/2025-04-09-ruby-3-3-8-released.md index 60d5fd8076..aaf7bc4ef4 100644 --- a/en/news/_posts/2025-04-09-ruby-3-3-8-released.md +++ b/en/news/_posts/2025-04-09-ruby-3-3-8-released.md @@ -3,7 +3,7 @@ layout: news_post title: "Ruby 3.3.8 Released" author: translator: -date: 2025-04-09 10:38:51 +0000 +date: 2025-04-09 11:00:00 +0000 lang: en --- From 60a4c863edfe28bc97b1a43bbc5a0e2418b24ec2 Mon Sep 17 00:00:00 2001 From: nagachika Date: Wed, 9 Apr 2025 20:23:01 +0900 Subject: [PATCH 585/607] Add author. --- en/news/_posts/2025-04-09-ruby-3-3-8-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2025-04-09-ruby-3-3-8-released.md b/en/news/_posts/2025-04-09-ruby-3-3-8-released.md index aaf7bc4ef4..7ca452a3e7 100644 --- a/en/news/_posts/2025-04-09-ruby-3-3-8-released.md +++ b/en/news/_posts/2025-04-09-ruby-3-3-8-released.md @@ -1,7 +1,7 @@ --- layout: news_post title: "Ruby 3.3.8 Released" -author: +author: nagachika translator: date: 2025-04-09 11:00:00 +0000 lang: en From 96124fc5aa69d1c288f2647fd05af426a3877b6d Mon Sep 17 00:00:00 2001 From: Bear Su Date: Wed, 9 Apr 2025 21:24:55 +0800 Subject: [PATCH 586/607] Translate Ruby 3.3.8 Released (zh_tw) --- .../_posts/2025-04-09-ruby-3-3-8-released.md | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 zh_tw/news/_posts/2025-04-09-ruby-3-3-8-released.md diff --git a/zh_tw/news/_posts/2025-04-09-ruby-3-3-8-released.md b/zh_tw/news/_posts/2025-04-09-ruby-3-3-8-released.md new file mode 100644 index 0000000000..a3f3be68e0 --- /dev/null +++ b/zh_tw/news/_posts/2025-04-09-ruby-3-3-8-released.md @@ -0,0 +1,41 @@ +--- +layout: news_post +title: "Ruby 3.3.8 發布" +author: nagachika +translator: "Bear Su" +date: 2025-04-09 11:00:00 +0000 +lang: zh_tw +--- + +Ruby 3.3.8 已經發布了。 + +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_3_8)。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.3.8" | first %} + +* <{{ 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 e37aece71c030e302d2d364e814bc301f570972b Mon Sep 17 00:00:00 2001 From: Shia Date: Thu, 10 Apr 2025 08:54:57 +0900 Subject: [PATCH 587/607] Translate "Ruby 3.3.8 Released" (ko) (#3537) * cp {en,ko}/news/_posts/2025-04-09-ruby-3-3-8-released.md * Translate "Ruby 3.3.8 Released" (ko) --- .../_posts/2025-04-09-ruby-3-3-8-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 ko/news/_posts/2025-04-09-ruby-3-3-8-released.md diff --git a/ko/news/_posts/2025-04-09-ruby-3-3-8-released.md b/ko/news/_posts/2025-04-09-ruby-3-3-8-released.md new file mode 100644 index 0000000000..7edd5c7872 --- /dev/null +++ b/ko/news/_posts/2025-04-09-ruby-3-3-8-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.3.8 릴리스" +author: nagachika +translator: shia +date: 2025-04-09 11:00:00 +0000 +lang: ko +--- + +Ruby 3.3.8이 릴리스되었습니다. + +자세한 내용은 [GitHub 릴리스 노트](https://github.com/ruby/ruby/releases/tag/v3_3_8)를 참조하세요. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.3.8" | first %} + +* <{{ 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 2b2022a2de3b62eae9c3e53dde79a65dc0dfeb9b Mon Sep 17 00:00:00 2001 From: GaTo <109578116+GaTo-Rfc@users.noreply.github.com> Date: Thu, 10 Apr 2025 16:33:33 +0900 Subject: [PATCH 588/607] Translate "Ruby 3.3.8 Released" (ja) (#3539) * translate ruby-3-3-8-released post * Reset date --- .../_posts/2025-04-09-ruby-3-3-8-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 ja/news/_posts/2025-04-09-ruby-3-3-8-released.md diff --git a/ja/news/_posts/2025-04-09-ruby-3-3-8-released.md b/ja/news/_posts/2025-04-09-ruby-3-3-8-released.md new file mode 100644 index 0000000000..b2781d2c78 --- /dev/null +++ b/ja/news/_posts/2025-04-09-ruby-3-3-8-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.3.8 リリース" +author: nagachika +translator: GaTo-Rfc +date: 2025-04-09 11:00:00 +0000 +lang: ja +--- + +Ruby 3.3.8 がリリースされました。 + +詳しくは [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_3_8) を参照してください。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.3.8" | first %} + +* <{{ 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 5ca38efe54024c0d518f506aeb931f74ea1b011e Mon Sep 17 00:00:00 2001 From: gaojun Date: Sat, 12 Apr 2025 13:51:51 +0800 Subject: [PATCH 589/607] Translate "Ruby 3.3.8 Released" (zh_cn) --- .../_posts/2025-04-09-ruby-3-3-8-released.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 zh_cn/news/_posts/2025-04-09-ruby-3-3-8-released.md diff --git a/zh_cn/news/_posts/2025-04-09-ruby-3-3-8-released.md b/zh_cn/news/_posts/2025-04-09-ruby-3-3-8-released.md new file mode 100644 index 0000000000..8be944d49f --- /dev/null +++ b/zh_cn/news/_posts/2025-04-09-ruby-3-3-8-released.md @@ -0,0 +1,42 @@ +--- +layout: news_post +title: "Ruby 3.3.8 已发布" +author: nagachika +translator: "GAO Jun" +date: 2025-04-09 11:00:00 +0000 +lang: zh_cn +--- + +Ruby 3.3.8 已发布。 + +更多信息可以参考 [GitHub 发布说明](https://github.com/ruby/ruby/releases/tag/v3_3_8)。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.3.8" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 222f77e2d9985448955335a02a5369cad5bd2b3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Mon, 14 Apr 2025 09:31:03 -0400 Subject: [PATCH 590/607] Translation of publication of ruby 3.2.8 and 3.1.7 (es) (#3535) --- .../_posts/2025-03-26-ruby-3-1-7-released.md | 52 +++++++++++++++++++ .../_posts/2025-03-26-ruby-3-2-8-released.md | 51 ++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 es/news/_posts/2025-03-26-ruby-3-1-7-released.md create mode 100644 es/news/_posts/2025-03-26-ruby-3-2-8-released.md diff --git a/es/news/_posts/2025-03-26-ruby-3-1-7-released.md b/es/news/_posts/2025-03-26-ruby-3-1-7-released.md new file mode 100644 index 0000000000..4ec1003178 --- /dev/null +++ b/es/news/_posts/2025-03-26-ruby-3-1-7-released.md @@ -0,0 +1,52 @@ +--- +layout: news_post +title: "Ruby 3.1.7 Publicado" +author: hsbt +translator: vtamara +date: 2025-03-26 04:44:27 +0000 +lang: es +--- + +Ruby 3.1.7 ha sido publicado. Esta versión incluye +[correcciones a las fallas CVE-2025-27219, CVE-2025-27220 y CVE-2025-27221](https://www.ruby-lang.org/es/news/2025/02/26/security-advisories/) +y actualiza las gemas incluidas REXML y RSS. + +Por favor vea más detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_1_7). + +Esta versión es una versión final de la serie Ruby 3.1. +No proveeremos más actualizaciones ni siquiera de seguridad para la serie +Ruby 3.1. + +Le recomendamos actualizar a las series Ruby 3.3 o 3.4. + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.1.7" | first %} + +* <{{ 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 }} + +## Comentario de la versión + +Muchas contribuyentes, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a producir esta versión. + +Gracias por sus contribuciones. diff --git a/es/news/_posts/2025-03-26-ruby-3-2-8-released.md b/es/news/_posts/2025-03-26-ruby-3-2-8-released.md new file mode 100644 index 0000000000..55ccbd3d60 --- /dev/null +++ b/es/news/_posts/2025-03-26-ruby-3-2-8-released.md @@ -0,0 +1,51 @@ +--- +layout: news_post +title: "Ruby 3.2.8 Publicado" +author: hsbt +translator: vtamara +date: 2025-03-26 04:45:01 +0000 +lang: es +--- + +Ruby 3.2.8 ha sido publicado. Esta version incluye +[correcciones a las fallas CVE-2025-27219, CVE-2025-27220 y CVE-2025-27221](https://www.ruby-lang.org/es/news/2025/02/26/security-advisories/). + +Por favor ver más detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_2_8). + +Esta versión es la última versión del mantenimiento normal para la serie +Ruby 3.2. Corregiremos sólo fallas de seguridad para la serie Ruby 3.2 hasta +Marzo de 2026. + +Por favor considere actualizar a la serie Ruby 3.3 o 3.4. + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.2.8" | first %} + +* <{{ 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 }} + +## Comentarios de la versión + +Muchas contribuyentes, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a producir esta versión. + +Gracias por sus contribuciones. From e4da7a524d4982522e2c5039b2718c9054511ff0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?= Date: Mon, 14 Apr 2025 09:40:58 -0400 Subject: [PATCH 591/607] Transalation of Ruby 3.3.8 (es) and consistency (#3543) --- .../_posts/2025-02-04-ruby-3-2-7-released.md | 2 +- .../_posts/2025-02-14-ruby-3-4-2-released.md | 2 +- .../_posts/2025-03-26-ruby-3-1-7-released.md | 4 +- .../_posts/2025-03-26-ruby-3-2-8-released.md | 4 +- .../_posts/2025-04-09-ruby-3-3-8-released.md | 44 +++++++++++++++++++ 5 files changed, 50 insertions(+), 6 deletions(-) create mode 100644 es/news/_posts/2025-04-09-ruby-3-3-8-released.md diff --git a/es/news/_posts/2025-02-04-ruby-3-2-7-released.md b/es/news/_posts/2025-02-04-ruby-3-2-7-released.md index 50e3c59227..a4af8d1358 100644 --- a/es/news/_posts/2025-02-04-ruby-3-2-7-released.md +++ b/es/news/_posts/2025-02-04-ruby-3-2-7-released.md @@ -39,7 +39,7 @@ Por favor vea detalles en la ## Comentarios de la versión -Muchas contribuyentes, desarrolladores y usuarios que proveyeron +Muchos contribuyentes, desarrolladores y usuarios que proveyeron reportes de fallas nos ayudaron a producir esta versión. Gracias por sus contribuciones. diff --git a/es/news/_posts/2025-02-14-ruby-3-4-2-released.md b/es/news/_posts/2025-02-14-ruby-3-4-2-released.md index 0e0d41714c..dbae879927 100644 --- a/es/news/_posts/2025-02-14-ruby-3-4-2-released.md +++ b/es/news/_posts/2025-02-14-ruby-3-4-2-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.4.2 Publicado" +title: "Publicado Ruby 3.4.2" author: k0kubun translator: vtamara date: 2025-02-14 21:55:17 +0000 diff --git a/es/news/_posts/2025-03-26-ruby-3-1-7-released.md b/es/news/_posts/2025-03-26-ruby-3-1-7-released.md index 4ec1003178..d03f74557c 100644 --- a/es/news/_posts/2025-03-26-ruby-3-1-7-released.md +++ b/es/news/_posts/2025-03-26-ruby-3-1-7-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.1.7 Publicado" +title: "Publicado Ruby 3.1.7" author: hsbt translator: vtamara date: 2025-03-26 04:44:27 +0000 @@ -46,7 +46,7 @@ Le recomendamos actualizar a las series Ruby 3.3 o 3.4. ## Comentario de la versión -Muchas contribuyentes, desarrolladores y usuarios que proveyeron reportes de +Muchos contribuyentes, desarrolladores y usuarios que proveyeron reportes de fallas nos ayudaron a producir esta versión. Gracias por sus contribuciones. diff --git a/es/news/_posts/2025-03-26-ruby-3-2-8-released.md b/es/news/_posts/2025-03-26-ruby-3-2-8-released.md index 55ccbd3d60..5ef0b01d97 100644 --- a/es/news/_posts/2025-03-26-ruby-3-2-8-released.md +++ b/es/news/_posts/2025-03-26-ruby-3-2-8-released.md @@ -1,6 +1,6 @@ --- layout: news_post -title: "Ruby 3.2.8 Publicado" +title: "Publicado Ruby 3.2.8" author: hsbt translator: vtamara date: 2025-03-26 04:45:01 +0000 @@ -45,7 +45,7 @@ Por favor considere actualizar a la serie Ruby 3.3 o 3.4. ## Comentarios de la versión -Muchas contribuyentes, desarrolladores y usuarios que proveyeron reportes de +Muchos contribuyentes, desarrolladores y usuarios que proveyeron reportes de fallas nos ayudaron a producir esta versión. Gracias por sus contribuciones. diff --git a/es/news/_posts/2025-04-09-ruby-3-3-8-released.md b/es/news/_posts/2025-04-09-ruby-3-3-8-released.md new file mode 100644 index 0000000000..4244e5f8f7 --- /dev/null +++ b/es/news/_posts/2025-04-09-ruby-3-3-8-released.md @@ -0,0 +1,44 @@ +--- +layout: news_post +title: "Publicado Ruby 3.3.8" +author: nagachika +translator: vtamara +date: 2025-04-09 11:00:00 +0000 +lang: es +--- + +Ruby 3.3.8 ha sido publicado. + +Por favor vea detalles en la [publicación en GitHub](https://github.com/ruby/ruby/releases/tag/v3_3_8). + +## Descargas + +{% assign release = site.data.releases | where: "version", "3.3.8" | first %} + +* <{{ 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 }} + +## Comentario de la versión + +Muchos contribuyentes, desarrolladores y usuarios que proveyeron reportes de +fallas nos ayudaron a producir esta versión. + +Gracias por sus contribuciones. From 434163e26590630bddf7b61d5d301e07706cc977 Mon Sep 17 00:00:00 2001 From: matzbot Date: Tue, 15 Apr 2025 01:54:30 +0900 Subject: [PATCH 592/607] Create release for 3.4.3 (#3542) * Create release for 3.4.3 * Add 3.4.3 to _data * Write up the 3.4.3 release entry --------- Co-authored-by: GitHub Actions Bot Co-authored-by: Takashi Kokubun --- _data/downloads.yml | 2 +- _data/releases.yml | 24 +++++++++ .../_posts/2025-04-14-ruby-3-4-3-released.md | 50 +++++++++++++++++++ 3 files changed, 75 insertions(+), 1 deletion(-) create mode 100644 en/news/_posts/2025-04-14-ruby-3-4-3-released.md diff --git a/_data/downloads.yml b/_data/downloads.yml index ec9404ec52..9788b90ca8 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -7,7 +7,7 @@ preview: stable: - - 3.4.2 + - 3.4.3 - 3.3.8 - 3.2.8 diff --git a/_data/releases.yml b/_data/releases.yml index b00aa72721..a32e25b17d 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -21,6 +21,30 @@ # 3.4 series +- version: 3.4.3 + date: 2025-04-14 + post: /en/news/2025/04/14/ruby-3-4-3-released/ + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.3.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.3.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.3.tar.xz + size: + gz: 23194448 + zip: 28356998 + xz: 17230984 + sha1: + gz: c269cd122ab9d4620a1e0e6a8f4de378deec3799 + zip: 87cb747a766660cf487a2e9dbbc7a18a8f6b65d9 + xz: d0d86fdfe6bcf9f2eb3b450f3209f655ceda86da + sha256: + gz: 55a4cd1dcbe5ca27cf65e89a935a482c2bb2284832939266551c0ec68b437f46 + zip: 06b8bf2ddf2642327c992d30f5d414ffa5a5df0c4c706d7b2507b42509fb5055 + xz: 174dcd8c516694f833fd3c93ea227fa6c3321464577a3882a6fc7e4fe20237fd + sha512: + gz: 7019889939713c3e649003fed4d973dced36239fc354cfdee2d01dbdeb7e8512881a31b00efc3d5017f08cd492aed7914d15927bc8d076c0cae7534273e471e9 + zip: b25289c899318ce5071b075fc1b75f602e0a543faeefa44df7e8064933500f9c357685fe21d09abc4034d481c22c89491c841f596d07e1cd269d800e6266cc24 + xz: b30aad675cdcc1bdfe9e5fffe9d1925db3b3ac854a5e34180c368bc6e66f73e29ba5d802fea249353b7d799c01384c58bdd763fd1b679303158baa7824b9c08e + - version: 3.4.2 date: 2025-02-14 post: /en/news/2025/02/14/ruby-3-4-2-released/ diff --git a/en/news/_posts/2025-04-14-ruby-3-4-3-released.md b/en/news/_posts/2025-04-14-ruby-3-4-3-released.md new file mode 100644 index 0000000000..f8f969291b --- /dev/null +++ b/en/news/_posts/2025-04-14-ruby-3-4-3-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.3 Released" +author: k0kubun +translator: +date: 2025-04-14 08:06:57 +0000 +lang: en +--- + +Ruby 3.4.3 has been released. + +Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_4_3) for further details. +[release notes on GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_3) for further details. + +## Release Schedule + +We intend to release the latest stable Ruby version (currently Ruby 3.4) every 2 months. +Ruby 3.4.4 will be released in June, 3.4.5 in August, 3.4.6 in October, and 3.4.7 in December. + +If there's any change that affects a considerable amount of people, those versions may be released earlier than expected. + +## Download + +{% assign release = site.data.releases | where: "version", "3.4.3" | first %} + +* <{{ 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 }} + +## Release Comment + +Many committers, developers, and users who provided bug reports helped us make this release. +Thanks for their contributions. From c085e7ceb2314696fe72261125460b49a9aaa0b3 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Tue, 15 Apr 2025 01:57:30 +0900 Subject: [PATCH 593/607] Fix a wrong link --- en/news/_posts/2025-04-14-ruby-3-4-3-released.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/en/news/_posts/2025-04-14-ruby-3-4-3-released.md b/en/news/_posts/2025-04-14-ruby-3-4-3-released.md index f8f969291b..0d3c5b3255 100644 --- a/en/news/_posts/2025-04-14-ruby-3-4-3-released.md +++ b/en/news/_posts/2025-04-14-ruby-3-4-3-released.md @@ -9,8 +9,7 @@ lang: en Ruby 3.4.3 has been released. -Please see the [GitHub releases](https://github.com/ruby/ruby/releases/tag/v3_4_3) for further details. -[release notes on GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_3) for further details. +Please see the [release notes on GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_3) for further details. ## Release Schedule From 4d157294e5b2acf84a3557e887d920d6aa3d7d61 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Tue, 15 Apr 2025 01:58:06 +0900 Subject: [PATCH 594/607] Unify the wording with 3.4.2 --- en/news/_posts/2025-04-14-ruby-3-4-3-released.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/en/news/_posts/2025-04-14-ruby-3-4-3-released.md b/en/news/_posts/2025-04-14-ruby-3-4-3-released.md index 0d3c5b3255..d2a160d9cf 100644 --- a/en/news/_posts/2025-04-14-ruby-3-4-3-released.md +++ b/en/news/_posts/2025-04-14-ruby-3-4-3-released.md @@ -9,7 +9,8 @@ lang: en Ruby 3.4.3 has been released. -Please see the [release notes on GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_3) for further details. +This is a routine update that includes bug fixes. Please refer to the +[release notes on GitHub](https://github.com/ruby/ruby/releases/tag/v3_4_3) for further details. ## Release Schedule From 5eb38f03b7ff1a9d8ff66ee21de91b262bccd012 Mon Sep 17 00:00:00 2001 From: Shia Date: Tue, 15 Apr 2025 12:02:07 +0900 Subject: [PATCH 595/607] Translate "Ruby 3.4.3 Released" (ko) (#3544) * cp {en,ko}/news/_posts/2025-04-14-ruby-3-4-3-released.md * Translate "Ruby 3.4.3 Released" (ko) --- .../_posts/2025-04-14-ruby-3-4-3-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ko/news/_posts/2025-04-14-ruby-3-4-3-released.md diff --git a/ko/news/_posts/2025-04-14-ruby-3-4-3-released.md b/ko/news/_posts/2025-04-14-ruby-3-4-3-released.md new file mode 100644 index 0000000000..27989b7a5e --- /dev/null +++ b/ko/news/_posts/2025-04-14-ruby-3-4-3-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.3 릴리스" +author: k0kubun +translator: "shia" +date: 2025-04-14 08:06:57 +0000 +lang: ko +--- + +Ruby 3.4.3이 릴리스되었습니다. + +이번 릴리스는 일반적인 업데이트로, 사소한 버그 수정이 포함되어 있습니다. +자세한 내용은 [GitHub 릴리스 노트](https://github.com/ruby/ruby/releases/tag/v3_4_3)를 참조하세요. + +## 릴리스 일정 + +Ruby의 최신 안정 버전(현재 Ruby 3.4)을 2개월마다 릴리스할 계획입니다. +Ruby 3.4.4는 6월에 릴리스될 예정이며, 3.4.5는 8월, 3.4.6은 10월, 3.4.7은 12월에 릴리스될 예정입니다. + +만약 많은 사람들에게 영향을 미치는 변경 사항이 있을 경우, 해당 버전은 예상보다 빨리 릴리스될 수 있습니다. + +## 다운로드 + +{% assign release = site.data.releases | where: "version", "3.4.3" | first %} + +* <{{ 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 2b4f5d768e70245f341121db1d01a1eda4fa2d8e Mon Sep 17 00:00:00 2001 From: gaojun Date: Tue, 15 Apr 2025 11:02:05 +0800 Subject: [PATCH 596/607] Translate "3.4.3 Released" (zh_cn) --- .../_posts/2025-04-14-ruby-3-4-3-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 zh_cn/news/_posts/2025-04-14-ruby-3-4-3-released.md diff --git a/zh_cn/news/_posts/2025-04-14-ruby-3-4-3-released.md b/zh_cn/news/_posts/2025-04-14-ruby-3-4-3-released.md new file mode 100644 index 0000000000..9e51564afb --- /dev/null +++ b/zh_cn/news/_posts/2025-04-14-ruby-3-4-3-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.3 已发布" +author: k0kubun +translator: "GAO Jun" +date: 2025-04-14 08:06:57 +0000 +lang: zh_cn +--- + +Ruby 3.4.3 已发布。 + +此版本是包含了若干问题修正的定期更新版本。 +详细信息可参考 [GitHub 发布说明](https://github.com/ruby/ruby/releases/tag/v3_4_3)。 + +## 发布计划 + +我们计划每2个月发布最新的 Ruby 版本(目前是 Ruby 3.4)。 +Ruby 3.4.4 将发布于六月,3.4.5 将发布于八月,3.4.6 将发布于十月,3.4.7 将发布于十二月。 + +如果存在会影响到大量用户的更改,我们可能会提前发布新版本。 + +## 下载 + +{% assign release = site.data.releases | where: "version", "3.4.3" | first %} + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## 发布说明 + +许多提交者、开发人员以及用户提供了问题报告,帮助我们完成了此版本。 +感谢他们的贡献。 From 103531d1c0a8eebf4e98e2b4f06b4fb1d88cdeda Mon Sep 17 00:00:00 2001 From: Bear Su Date: Tue, 15 Apr 2025 23:08:27 +0800 Subject: [PATCH 597/607] Translate Ruby 3.4.3 Released (zh_tw) --- .../_posts/2025-04-14-ruby-3-4-3-released.md | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 zh_tw/news/_posts/2025-04-14-ruby-3-4-3-released.md diff --git a/zh_tw/news/_posts/2025-04-14-ruby-3-4-3-released.md b/zh_tw/news/_posts/2025-04-14-ruby-3-4-3-released.md new file mode 100644 index 0000000000..cbc4f782f6 --- /dev/null +++ b/zh_tw/news/_posts/2025-04-14-ruby-3-4-3-released.md @@ -0,0 +1,49 @@ +--- +layout: news_post +title: "Ruby 3.4.3 發布" +author: k0kubun +translator: "Bear Su" +date: 2025-04-14 08:06:57 +0000 +lang: zh_tw +--- + +Ruby 3.4.3 已經發布了。 + +這是包括修復小型錯誤的例行更新。 +詳細的變動請參閱 [GitHub 發布](https://github.com/ruby/ruby/releases/tag/v3_4_3)。 + +## 發布時程 + +我們打算每 2 個月發布一次最新的穩定 Ruby 版本(目前為 Ruby 3.4)。 +我們預計 Ruby 3.4.4 於 6 月發布、Ruby 3.4.5 於 8 月發布、Ruby 3.4.6 於 10 月發布、Ruby 3.4.7 於 12 月發布。 + +如果有任何變更影響到相當多的人,我們可能會比預期更早發布新版本。 + +## 下載 + +{% assign release = site.data.releases | where: "version", "3.4.3" | first %} + +* <{{ 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 a62d34abdc797476d2d632a593031255b3d6845d Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Fri, 18 Apr 2025 09:50:30 +0900 Subject: [PATCH 598/607] Ruby 3.5.0 Preview 1 Released (#3549) --- _data/branches.yml | 5 + _data/downloads.yml | 1 + _data/releases.yml | 31 ++++++ ...2025-04-18-ruby-3-5-0-preview1-released.md | 105 ++++++++++++++++++ ...2025-04-18-ruby-3-5-0-preview1-released.md | 99 +++++++++++++++++ 5 files changed, 241 insertions(+) create mode 100644 en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md create mode 100644 ja/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md diff --git a/_data/branches.yml b/_data/branches.yml index 82c6d4f9ed..57cf7f9159 100644 --- a/_data/branches.yml +++ b/_data/branches.yml @@ -8,6 +8,11 @@ # date: date of first stable release (YYYY-MM-DD) # eol_date: date of EOL (YYYY-MM-DD) +- name: 3.5 + status: preview + date: + eol_date: + - name: 3.4 status: normal maintenance date: 2024-12-25 diff --git a/_data/downloads.yml b/_data/downloads.yml index 9788b90ca8..866046866c 100644 --- a/_data/downloads.yml +++ b/_data/downloads.yml @@ -4,6 +4,7 @@ # optional preview: + - 3.5.0-preview1 stable: diff --git a/_data/releases.yml b/_data/releases.yml index a32e25b17d..b111482216 100644 --- a/_data/releases.yml +++ b/_data/releases.yml @@ -19,6 +19,37 @@ # In order to get the release listed on the downloads page, # you also need to add an entry to `_data/downloads.yml'. +# 3.5 series + +- version: 3.5.0-preview1 + date: 2025-04-18 + post: /en/news/2025/04/18/ruby-3-5-0-preview1-released/ + tag: v3_5_0_preview1 + stats: + files_changed: 2065 + insertions: 36581 + deletions: 203037 + url: + gz: https://cache.ruby-lang.org/pub/ruby/3.5/ruby-3.5.0-preview1.tar.gz + zip: https://cache.ruby-lang.org/pub/ruby/3.5/ruby-3.5.0-preview1.zip + xz: https://cache.ruby-lang.org/pub/ruby/3.5/ruby-3.5.0-preview1.tar.xz + size: + gz: 23146162 + zip: 28548713 + xz: 17443928 + sha1: + gz: ee0fcfe1342116f05060279ff0c9eb1e215db0b9 + zip: bd0c32bc84ac1ce9edbc9c0a50e8c72e56b1229d + xz: 8a78a9189afa20cde42207a466bcf7d421ee144b + sha256: + gz: ecf09c7eb902e91cdaf9cc553cd00cca9b848b3fc0e14297850f9ab08cdd46f0 + zip: 3e1d9df578c69976a01a69b961819d00c4e8942f8b5fe4fb8e135fca4f7e7e5e + xz: c6cc1e9f23fe4719b024b8305345ca0cff4e1bc159f3ebff86cb5b87969863aa + sha512: + gz: d718973648705636eff5933a0919132fd1f6b9afea432e09cce1265c6e0125e11cc94dbff84cba1caefc03190c48d8af4a27337d2af031f3f1660ca3a3531211 + zip: 47057e1615b2b59d5bbd0d6629e1320ed74f3d70748f1db4e8b88d6c8a3ecd255eacc7dac0cccd01923fae4b4dff9e6b9457a9858c81dab81c1ab9ee514b15fa + xz: 835bd0b65d546722c83b0ab454256357b48898a0de9aa8e38966f53d2370a6e99552eeaff76a0b680aefbbe7491e701e5e7357797e50f063c53e79d9561c1dac + # 3.4 series - version: 3.4.3 diff --git a/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md b/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md new file mode 100644 index 0000000000..8223d35ed9 --- /dev/null +++ b/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md @@ -0,0 +1,105 @@ +--- +layout: news_post +title: "Ruby 3.5.0 preview1 Released" +author: "naruse" +translator: +date: 2025-04-18 00:00:00 +0000 +lang: en +--- + +{% assign release = site.data.releases | where: "version", "3.5.0-preview1" | first %} +We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.4 updates its Unicode version to 15.1.0, and so on. + +## Language changes + +* `*nil` no longer calls `nil.to_a`, similar to how `**nil` does + not call `nil.to_hash`. [[Feature #21047]] + +## Core classes updates + +Note: We're only listing notable updates of Core class. + +* Binding + + * `Binding#local_variables` does no longer include numbered parameters. + Also, `Binding#local_variable_get` and `Binding#local_variable_set` reject to handle numbered parameters. + [[Bug #21049]] + +* IO + + * `IO.select` accepts +Float::INFINITY+ as a timeout argument. + [[Feature #20610]] + +* String + + * Update Unicode to Version 15.1.0 and Emoji Version 15.1. [[Feature #19908]] + (also applies to Regexp) + + +## Standard Library updates + +Note: We're only listing notable updates of Standard librarires. + +* ostruct 0.6.1 +* pstore 0.2.0 +* benchmark 0.4.0 +* logger 1.7.0 +* rdoc 6.13.1 +* win32ole 1.9.2 +* irb 1.15.2 +* reline 0.6.1 +* readline 0.0.4 +* fiddle 1.1.6 + +## Compatibility issues + +Note: Excluding feature bug fixes. + + + +## Standard library compatibility issues + + +## C API updates + + + +## Miscellaneous changes + + + +See [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +or [commit logs](https://github.com/ruby/ruby/compare/v3_4_0...{{ release.tag }}) +for more details. + +With those changes, [{{ release.stats.files_changed }} files changed, {{ release.stats.insertions }} insertions(+), {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket) +since Ruby 3.4.0! + +## Download + +* <{{ 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 + +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/2025-04-18-ruby-3-5-0-preview1-released.md b/ja/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md new file mode 100644 index 0000000000..927cc65c25 --- /dev/null +++ b/ja/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md @@ -0,0 +1,99 @@ +--- +layout: news_post +title: "Ruby 3.5.0 preview1 リリース" +author: "naruse" +translator: +date: 2025-04-18 00:00:00 +0000 +lang: ja +--- + +{% assign release = site.data.releases | where: "version", "3.5.0-preview1" | first %} +Ruby {{ release.version }} が公開されました。Ruby 3.5では、Unicodeバージョンの15.1.0へのアップデートなど様々な改善が行われています。 + + + +## 言語機能の変更 + + + +* `*nil` no longer calls `nil.to_a`, similar to how `**nil` does + not call `nil.to_hash`. [[Feature #21047]] + +## コアクラスのアップデート + +注: 複数のアップデートの中から注目すべきアップデートのみを掲載しています。 + +* Binding + + * `Binding#local_variables` does no longer include numbered parameters. + Also, `Binding#local_variable_get` and `Binding#local_variable_set` reject to handle numbered parameters. + [[Bug #21049]] + +* IO + + * `IO.select` accepts +Float::INFINITY+ as a timeout argument. + [[Feature #20610]] + +* String + + * Update Unicode to Version 15.1.0 and Emoji Version 15.1. [[Feature #19908]] + (also applies to Regexp) + + +## 標準ライブラリのアップデート + +注: 複数のアップデートの中から注目すべき標準ライブラリのアップデートのみを掲載しています。 + + + +## 互換性に関する変更 + +注: 不具合修正を除きます。 + + + +## 標準ライブラリの互換性の変更 + + + +## C API のアップデート + + + +## その他の変更点 + + + +より詳細な情報は [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +か [commit logs](https://github.com/ruby/ruby/compare/v3_4_0...{{ release.tag }}) を参照してください。 + + +これらの変更により、Ruby 3.4.0から [{{ release.stats.files_changed }} ファイルが変更され、 {{ release.stats.insertions }} 行が追加され、 {{ release.stats.deletions }} 行が削除されました!deletions(-)](https://github.com/ruby/ruby/compare/v3_4_0...{{ release.tag }}#file_bucket) + + +## Download + +* <{{ 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 + +Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 From 7a07db6a72f0894a19b574e47eb0b289dfa95255 Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 18 Apr 2025 10:19:45 +0900 Subject: [PATCH 599/607] Translate "Ruby 3.5.0 preview1 Released" (ko) (#3551) * cp {en,ko}/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md * Translate "Ruby 3.5.0 preview1 Released" (ko) --- ...2025-04-18-ruby-3-5-0-preview1-released.md | 110 ++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 ko/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md diff --git a/ko/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md b/ko/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md new file mode 100644 index 0000000000..53d0133d46 --- /dev/null +++ b/ko/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md @@ -0,0 +1,110 @@ +--- +layout: news_post +title: "Ruby 3.5.0-preview1 릴리스" +author: "naruse" +translator: "shia" +date: 2025-04-18 00:00:00 +0000 +lang: ko +--- + +{% assign release = site.data.releases | where: "version", "3.5.0-preview1" | first %} +Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.5는 유니코드 버전을 15.1.0으로 업데이트했으며, 더 많은 것들이 있습니다. + +## 언어 변경 + +* `**nil`과 비슷하게 `*nil`은 더 이상 `nil.to_a`를 호출하지 않습니다. + [[Feature #21047]] + +## 코어 클래스 변경 + +주의: 눈에 띄는 클래스 변경만을 포함합니다. + +* Binding + + * `Binding#local_variables`는 더 이상 번호가 매겨진 매개변수를 포함하지 않습니다. + 또한, `Binding#local_variable_get`과 `Binding#local_variable_set`은 번호가 매겨진 매개변수를 처리하지 않습니다. + [[Bug #21049]] + +* IO + + * `IO.select`는 타임아웃 인수로 +Float::INFINITY+를 허용합니다. + [[Feature #20610]] + +* String + + * Unicode 15.1.0 및 이모지 버전 15.1로 업데이트합니다. [[Feature #19908]] + (Regexp에도 적용됩니다) + + +## 표준 라이브러리 변경 + +주의: 눈에 띄는 표준 라이브러리 변경만을 포함합니다. + +* ostruct 0.6.1 +* pstore 0.2.0 +* benchmark 0.4.0 +* logger 1.7.0 +* rdoc 6.13.1 +* win32ole 1.9.2 +* irb 1.15.2 +* reline 0.6.1 +* readline 0.0.4 +* fiddle 1.1.6 + +## 호환성 문제 + +주의: 기능 버그 수정은 포함되어 있지 않습니다. + + + +## 표준 라이브러리 호환성 문제 + + +## C API 변경 + + + +## 그 이외의 변경 + + + +더 자세한 내용은 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나 +[커밋 로그](https://github.com/ruby/ruby/compare/v3_4_0...{{ release.tag }})를 +확인해 주세요. + +이러한 변경사항에 따라, Ruby 3.4.0 이후로 [파일 {{ release.stats.files_changed }}개 수정, {{ release.stats.insertions }}줄 추가(+), {{ release.stats.deletions }}줄 삭제(-)](https://github.com/ruby/ruby/compare/v3_4_0...{{ release.tag }}#file_bucket)가 +이루어졌습니다! + +## 다운로드 + +* <{{ 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는 + +Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고, +현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며, +특히 웹 개발에서 전 세계적으로 이용되고 있습니다. + +[Feature #21047]: https://bugs.ruby-lang.org/issues/21047 +[Bug #21049]: https://bugs.ruby-lang.org/issues/21049 +[Feature #20610]: https://bugs.ruby-lang.org/issues/20610 +[Feature #19908]: https://bugs.ruby-lang.org/issues/19908 From 0fe1054460347514209097d37c51ccc253aa9ac7 Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 18 Apr 2025 10:02:04 +0900 Subject: [PATCH 600/607] Fix typo --- en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md b/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md index 8223d35ed9..f1ce27ca3d 100644 --- a/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md +++ b/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md @@ -8,7 +8,7 @@ lang: en --- {% assign release = site.data.releases | where: "version", "3.5.0-preview1" | first %} -We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.4 updates its Unicode version to 15.1.0, and so on. +We are pleased to announce the release of Ruby {{ release.version }}. Ruby 3.5 updates its Unicode version to 15.1.0, and so on. ## Language changes From 1b09b6a49fc7416873f9f64e312a46564ccacb51 Mon Sep 17 00:00:00 2001 From: Shia Date: Sat, 19 Apr 2025 07:07:22 +0900 Subject: [PATCH 601/607] Apply translation review to "Ruby 3.5.0 preview1" (#3553) --- ko/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ko/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md b/ko/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md index 53d0133d46..50c084aeb5 100644 --- a/ko/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md +++ b/ko/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md @@ -12,12 +12,12 @@ Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.5 ## 언어 변경 -* `**nil`과 비슷하게 `*nil`은 더 이상 `nil.to_a`를 호출하지 않습니다. +* `**nil`이 `nil.to_hash`를 호출하지 않는 것과 비슷하게 `*nil`은 더 이상 `nil.to_a`를 호출하지 않습니다. [[Feature #21047]] ## 코어 클래스 변경 -주의: 눈에 띄는 클래스 변경만을 포함합니다. +주의: 눈에 띄는 코어 클래스 변경만을 포함합니다. * Binding @@ -32,7 +32,7 @@ Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다. Ruby 3.5 * String - * Unicode 15.1.0 및 이모지 버전 15.1로 업데이트합니다. [[Feature #19908]] + * 유니코드 15.1.0 및 이모지 버전 15.1로 업데이트합니다. [[Feature #19908]] (Regexp에도 적용됩니다) From 860fff95ac7da0e96449a33a7720bfc80915a89d Mon Sep 17 00:00:00 2001 From: Bear Su Date: Sun, 20 Apr 2025 19:17:32 +0800 Subject: [PATCH 602/607] Translate Ruby 3.5.0 Preview1 Released (zh_tw) --- ...2025-04-18-ruby-3-5-0-preview1-released.md | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 zh_tw/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md diff --git a/zh_tw/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md b/zh_tw/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md new file mode 100644 index 0000000000..f2c1ee8aab --- /dev/null +++ b/zh_tw/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md @@ -0,0 +1,100 @@ +--- +layout: news_post +title: "Ruby 3.5.0 preview1 發布" +author: "naruse" +translator: "Bear Su" +date: 2025-04-18 00:00:00 +0000 +lang: zh_tw +--- + +{% assign release = site.data.releases | where: "version", "3.5.0-preview1" | first %} +我們很高興宣布 Ruby {{ release.version }} 發布了。 +Ruby 3.5 的 Unicode 版本升級為 15.1.0 與其他更新。 + +## 語法變更 + +* `*nil` 不再呼叫 `nil.to_a`,就跟 `**nil` 不呼叫 `nil.to_hash` 一樣。[[Feature #21047]] + +## 核心類別更新 + +注意:我們只列出特別的類別更新。 + +* Binding + + * `Binding#local_variables` 不再包含編號參數。 + 並且,`Binding#local_variable_get` 和 `Binding#local_variable_set` 拒絕處理編號參數。 + [[Bug #21049]] + +* IO + + * `IO.select` 同意 +Float::INFINITY+ 作為逾時參數。 + [[Feature #20610]] + +* String + + * 更新 Unicode 至版本 15.1.0 和 Emoji 版本 15.1. [[Feature #19908]] + (也套用至 Regexp) + + +## 標準函式庫更新 + +注意:我們只列出特別的標準函式庫更新。 + +* ostruct 0.6.1 +* pstore 0.2.0 +* benchmark 0.4.0 +* logger 1.7.0 +* rdoc 6.13.1 +* win32ole 1.9.2 +* irb 1.15.2 +* reline 0.6.1 +* readline 0.0.4 +* fiddle 1.1.6 + +## 相容性問題 + +注意:不包含功能問題的修正。 + +## 標準函式庫相容性問題 + +## C API 更新 + +## 其他變更 + +參見 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +和 [commit logs](https://github.com/ruby/ruby/compare/v3_4_0...{{ release.tag }}) +來了解更多。 + +自 Ruby 3.4.0 以來,計 [{{ release.stats.files_changed }} 檔案變更,{{ release.stats.insertions }} 行新增(+),{{ release.stats.deletions }} 行刪減(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)! + +## 下載 + +* <{{ 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 是什麼 + +Ruby 最初由 Matz(Yukihiro Matsumoto)於 1993 年開發的開源軟體。可以在許多平台上執行。使用者來自世界各地,特別活躍於網路開發領域。 + +[Feature #21047]: https://bugs.ruby-lang.org/issues/21047 +[Bug #21049]: https://bugs.ruby-lang.org/issues/21049 +[Feature #20610]: https://bugs.ruby-lang.org/issues/20610 +[Feature #19908]: https://bugs.ruby-lang.org/issues/19908 From f387875109bb101a10203ce72cbd799c88b4efd7 Mon Sep 17 00:00:00 2001 From: Shia Date: Mon, 21 Apr 2025 07:18:45 +0900 Subject: [PATCH 603/607] Add link to Ruby 3.5.0 preview1 (#3552) --- en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md | 5 +++++ ja/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md b/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md index f1ce27ca3d..3a14de85d3 100644 --- a/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md +++ b/en/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md @@ -103,3 +103,8 @@ since Ruby 3.4.0! 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. + +[Feature #21047]: https://bugs.ruby-lang.org/issues/21047 +[Bug #21049]: https://bugs.ruby-lang.org/issues/21049 +[Feature #20610]: https://bugs.ruby-lang.org/issues/20610 +[Feature #19908]: https://bugs.ruby-lang.org/issues/19908 diff --git a/ja/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md b/ja/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md index 927cc65c25..0af36bffb6 100644 --- a/ja/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md +++ b/ja/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md @@ -97,3 +97,8 @@ Ruby {{ release.version }} が公開されました。Ruby 3.5では、Unicode ## What is Ruby Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。 + +[Feature #21047]: https://bugs.ruby-lang.org/issues/21047 +[Bug #21049]: https://bugs.ruby-lang.org/issues/21049 +[Feature #20610]: https://bugs.ruby-lang.org/issues/20610 +[Feature #19908]: https://bugs.ruby-lang.org/issues/19908 From c2016213120ed610244566ba66f7d8cb45cc1174 Mon Sep 17 00:00:00 2001 From: Shia Date: Mon, 21 Apr 2025 08:32:52 +0900 Subject: [PATCH 604/607] Translate "Ruby 3.4.3 Released" (ja) (#3545) --- .../_posts/2025-04-14-ruby-3-4-3-released.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 ja/news/_posts/2025-04-14-ruby-3-4-3-released.md diff --git a/ja/news/_posts/2025-04-14-ruby-3-4-3-released.md b/ja/news/_posts/2025-04-14-ruby-3-4-3-released.md new file mode 100644 index 0000000000..57f4fd445c --- /dev/null +++ b/ja/news/_posts/2025-04-14-ruby-3-4-3-released.md @@ -0,0 +1,50 @@ +--- +layout: news_post +title: "Ruby 3.4.3 リリース" +author: k0kubun +translator: shia +date: 2025-04-14 08:06:57 +0000 +lang: ja +--- + +Ruby 3.4.3がリリースされました。 + +これは定期的なアップデートであり、バグ修正を含みます。 +詳しくは[GitHub release notes](https://github.com/ruby/ruby/releases/tag/v3_4_3)を参照してください。 + +## リリーススケジュール + +最新の安定版Ruby(現在はRuby 3.4)を2ヶ月おきにリリースする予定です。 +Ruby 3.4.4は6月にリリースされ、3.4.5は8月、3.4.6は10月、3.4.7は12月にリリースされます。 + +多くのユーザーに影響を与えるような変更があった場合、予定よりも早く新しいバージョンをリリースすることがあります。 + +## ダウンロード + +{% assign release = site.data.releases | where: "version", "3.4.3" | first %} + +* <{{ 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 9f1d0f0abe8fa0ada77b056dcf498c8a90ef7844 Mon Sep 17 00:00:00 2001 From: gaojun Date: Sat, 19 Apr 2025 12:20:51 +0800 Subject: [PATCH 605/607] Translate "3.5.0 preview1 Released"(zh_cn) --- ...2025-04-18-ruby-3-5-0-preview1-released.md | 106 ++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 zh_cn/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md diff --git a/zh_cn/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md b/zh_cn/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md new file mode 100644 index 0000000000..34a017c404 --- /dev/null +++ b/zh_cn/news/_posts/2025-04-18-ruby-3-5-0-preview1-released.md @@ -0,0 +1,106 @@ +--- +layout: news_post +title: "Ruby 3.5.0 preview1 已发布" +author: "naruse" +translator: "GAO Jun" +date: 2025-04-18 00:00:00 +0000 +lang: zh_cn +--- + +{% assign release = site.data.releases | where: "version", "3.5.0-preview1" | first %} +我们很高兴地宣布 Ruby {{ release.version }} 已发布。Ruby 3.5 除了将 Unicode 版本更新到 15.1.0外,还有一些其他变更。 + +## 语言变化 + +* `*nil` 不再调用 `nil.to_a`,就像 `**nil` 不再调用 `nil.to_hash`。 [[Feature #21047]] + +## 核心类更新 + +注意:我们只列出了重要的核心类更新。 + +* Binding + + * `Binding#local_variables` 不再包含引用数字参数(如 `_1`, `_2`)。 + 同样, `Binding#local_variable_get` 和 `Binding#local_variable_set` 也会拒绝处理引用数字参数。 + [[Bug #21049]] + +* IO + + * `IO.select` 允许使用 `Float::INFINITY` 作为超时参数。 + [[Feature #20610]] + +* String + + * 更新 Unicode 版本至 15.1.0,更新 Emoji 版本至 15.1。 [[Feature #19908]] + (同样适用于 Regexp) + + +## 标准库更新 + +注意:我们只列出了重要的标准库更新。 + +* ostruct 0.6.1 +* pstore 0.2.0 +* benchmark 0.4.0 +* logger 1.7.0 +* rdoc 6.13.1 +* win32ole 1.9.2 +* irb 1.15.2 +* reline 0.6.1 +* readline 0.0.4 +* fiddle 1.1.6 + +## 兼容性问题 + +注意:不包括错误问题修正。 + + + +## 标准库兼容性问题 + + +## C API 更新 + + + +## 其他变化 + + + +更多详情,可参见 [NEWS](https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md) +或 [提交日志](https://github.com/ruby/ruby/compare/v3_4_0...{{ release.tag }})。 + +自 Ruby 3.4.0 以来,这些变化共导致 [{{ release.stats.files_changed }} 个文件被更改,新增 {{ release.stats.insertions }} 行(+),删除 {{ release.stats.deletions }} deletions(-)](https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)! + +## 下载 + +* <{{ release.url.gz }}> + + 文件大小: {{ release.size.gz }} + SHA1: {{ release.sha1.gz }} + SHA256: {{ release.sha256.gz }} + SHA512: {{ release.sha512.gz }} + +* <{{ release.url.xz }}> + + 文件大小: {{ release.size.xz }} + SHA1: {{ release.sha1.xz }} + SHA256: {{ release.sha256.xz }} + SHA512: {{ release.sha512.xz }} + +* <{{ release.url.zip }}> + + 文件大小: {{ release.size.zip }} + SHA1: {{ release.sha1.zip }} + SHA256: {{ release.sha256.zip }} + SHA512: {{ release.sha512.zip }} + +## Ruby 是什么 + +Ruby 最初由 Matz (松本行弘,Yukihiro Matsumoto) 于 1993 年开发, +现在以开源软件的形式开发。它可以在多个平台上运行,并在全球得到广泛使用,尤其是 Web 开发领域。 + +[Feature #21047]: https://bugs.ruby-lang.org/issues/21047 +[Bug #21049]: https://bugs.ruby-lang.org/issues/21049 +[Feature #20610]: https://bugs.ruby-lang.org/issues/20610 +[Feature #19908]: https://bugs.ruby-lang.org/issues/19908 From 8e3d3125e66ff03eb0503e180089816e801100fb Mon Sep 17 00:00:00 2001 From: nick evans Date: Wed, 30 Apr 2025 12:34:27 -0400 Subject: [PATCH 606/607] Add CVE-2025-43857: DoS vulnerability in net-imap --- .../2025-04-28-dos-net-imap-cve-2025-43857.md | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 en/news/_posts/2025-04-28-dos-net-imap-cve-2025-43857.md diff --git a/en/news/_posts/2025-04-28-dos-net-imap-cve-2025-43857.md b/en/news/_posts/2025-04-28-dos-net-imap-cve-2025-43857.md new file mode 100644 index 0000000000..7183d72188 --- /dev/null +++ b/en/news/_posts/2025-04-28-dos-net-imap-cve-2025-43857.md @@ -0,0 +1,35 @@ +--- +layout: news_post +title: "CVE-2025-43857: DoS vulnerability in net-imap" +author: "nevans" +translator: +date: 2025-04-28 16:02:04 +0000 +tags: security +lang: en +--- + +There is a possibility for DoS by in the net-imap gem. This vulnerability has been assigned the CVE identifier [CVE-2025-43857]. We recommend upgrading the net-imap gem. + +## Details + +A malicious server can send can send a "literal" byte count which is automatically read by the client's receiver thread. The response reader immediately allocates memory for the number of bytes indicated by the server response. This should not be an issue when securely connecting to trusted IMAP servers that are well-behaved. It affects insecure connections and buggy, untrusted, or compromised servers (for example, connecting to a user supplied hostname). + +Please update net-imap gem to version 0.2.5, 0.3.9, 0.4.20, 0.5.7, or later. + +When connecting to untrusted servers or using an insecure connection, `max_response_size` and response handlers must be configured appropriately to limit memory consumption. See [GHSA-j3g3-5qv5-52mj] for more details. + +## Affected versions + +net-imap gem versions <= 0.2.4, 0.3.0 to 0.3.8, 0.4.0 to 0.4.19, and 0.5.0 to 0.5.6. + +## Credits + +Thanks to [Masamune] for discovering this issue. + +## History + +* Originally published at 2025-04-28 16:02:04 (UTC) + +[CVE-2025-43857]: https://www.cve.org/CVERecord?id=CVE-2025-43857 +[GHSA-j3g3-5qv5-52mj]: https://github.com/ruby/net-imap/security/advisories/GHSA-j3g3-5qv5-52mj +[Masamune]: https://hackerone.com/masamune_ From cd27ccd0d1c298712b756bb2836224f38db63704 Mon Sep 17 00:00:00 2001 From: Shia Date: Fri, 2 May 2025 12:58:08 +0900 Subject: [PATCH 607/607] Translate "CVE-2025-43857: DoS vulnerability in net-imap" (ko) (#3561) * cp {en,ko}/news/_posts/2025-04-28-dos-net-imap-cve-2025-43857.md * Translate "CVE-2025-43857" (ko) --- .../2025-04-28-dos-net-imap-cve-2025-43857.md | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 ko/news/_posts/2025-04-28-dos-net-imap-cve-2025-43857.md diff --git a/ko/news/_posts/2025-04-28-dos-net-imap-cve-2025-43857.md b/ko/news/_posts/2025-04-28-dos-net-imap-cve-2025-43857.md new file mode 100644 index 0000000000..05f362580a --- /dev/null +++ b/ko/news/_posts/2025-04-28-dos-net-imap-cve-2025-43857.md @@ -0,0 +1,35 @@ +--- +layout: news_post +title: "CVE-2025-43857: net-imap의 DoS 취약점" +author: "nevans" +translator: "shia" +date: 2025-04-28 16:02:04 +0000 +tags: security +lang: ko +--- + +net-imap gem에서 DoS 취약점이 발견되었습니다. 이 취약점은 CVE 번호 [CVE-2025-43857](https://www.cve.org/CVERecord?id=CVE-2025-43857)으로 등록되었습니다. net-imap gem을 업그레이드하기를 추천합니다. + +## 세부 내용 + +악의적인 서버가 "문자 그대로" 바이트 수를 보낼 수 있으며, 클라이언트의 수신 스레드는 이 데이터를 자동으로 읽습니다. 응답 리더는 서버 응답에 의해 표시된 바이트 수에 대한 메모리를 즉시 할당합니다. 신뢰할 수 있는 IMAP 서버에 안전하게 연결할 때는 문제가 되지 않습니다. 그러나 보안 연결을 사용하지 않거나 버그가 있거나 신뢰할 수 없는 서버(예: 사용자 제공 호스트 이름에 연결하는 경우)에서는 문제가 발생할 수 있습니다. + +net-imap gem 0.2.5, 0.3.9, 0.4.20, 0.5.7 이상으로 업데이트하세요. + +신뢰할 수 없는 서버에 연결하거나 보안 연결을 사용하고 있다면, `max_response_size`와 응답 핸들러를 적절히 설정하여 메모리 소비를 제한해야 합니다. 자세한 내용은 [GHSA-j3g3-5qv5-52mj]를 참조하세요. + +## 해당 버전 + +net-imap gem 0.2.4 이하, 0.3.0부터 0.3.8까지, 0.4.0부터 0.4.19까지, 또는 0.5.0부터 0.5.6까지 + +## 도움을 준 사람 + +이 문제를 발견해 준 [Masamune]에게 감사를 표합니다. + +## 수정 이력 + +* 2025-04-28 16:02:04 (UTC) 최초 공개 + +[CVE-2025-43857]: https://www.cve.org/CVERecord?id=CVE-2025-43857 +[GHSA-j3g3-5qv5-52mj]: https://github.com/ruby/net-imap/security/advisories/GHSA-j3g3-5qv5-52mj +[Masamune]: https://hackerone.com/masamune_