ruby: update to 3.3.3

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.

See: https://www.ruby-lang.org/en/news/2023/12/25/ruby-3-3-0-released/

The 3.3.1 release includes security fixes.

- CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search
- CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc
- CVE-2024-27280: Buffer overread vulnerability in StringIO

See: https://www.ruby-lang.org/en/news/2024/04/23/ruby-3-3-1-released/

The 3.3.2 release includes many bug-fixes.

See: https://www.ruby-lang.org/en/news/2024/05/30/ruby-3-3-2-released/

Packaging changes since 3.2.2:
- New packages: ruby-prism and ruby-rjit
- Added /usr/bin/rdbg to ruby-debug
- Added /usr/bin/syntax_suggest to ruby-syntax_suggest

The 3.3.3 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

See: https://www.ruby-lang.org/en/news/2024/06/12/ruby-3-3-3-released/

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
This commit is contained in:
Luiz Angelo Daros de Luca
2024-06-03 01:13:14 -03:00
committed by Tianling Shen
parent 4fdce5538f
commit 0c7b588695
3 changed files with 112 additions and 63 deletions

View File

@@ -6,7 +6,25 @@
function list_staging_files {
cd "$1"; find \
\( \( -name "root-*" -or -name "packages" -or -name "stamp" -or -name "pkginfo" -or -name "host" -or -name man \) -prune \) -or -true \
\( -path "*ruby*" -or -name "erb" -or -name "gem" -or -name "irb" -or -name "rake" -or -name "rdoc" -or -name "ri" -or -name "testrb" -or -name "racc" -or -name "racc2y" -or -name "y2racc" \) \
\( \
-path "*ruby*" -or \
-name "bundle" -or \
-name "bundler" -or \
-name "erb" -or \
-name "gem" -or \
-name "irb" -or \
-name "racc" -or \
-name "racc2y" -or \
-name "rake" -or \
-name "rbs" -or \
-name "rdbg" -or \
-name "rdoc" -or \
-name "ri" -or \
-name "syntax_suggest" -or \
-name "testrb" -or \
-name "typeprof" -or \
-name "y2racc" \
\) \
-not -path "*/usr/lib/ruby/gems/*/cache/*" \
-not -name "*test_case.rb" \
-not -name "*.rdoc" \