14144 Commits
Author SHA1 Message Date
Hiroshi SHIBATAandClaude Opus 5 6deacfb827 Bump up resolv-0.7.2 for Ruby 3.4
Backport of the August 2026 resolv security release.

CVE-2026-80212
CVE-2026-80213

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-30 19:18:36 +09:00
Earlopain 5874b12d56 Bump prism version 2026-06-23 11:27:54 -04:00
nagachika 7fa5883808 Bump resolv.gem to v0.7.1. [Backport #22017] 2026-05-24 17:31:27 +09:00
nagachika 55f7432b30 Bump pstore version to v0.2.1. [Bug #21880] 2026-05-09 15:26:33 +09:00
Earlopain de535e9071 [ruby/syntax_suggest] v2.0.3
https://github.com/ruby/syntax_suggest/commit/a81b92fcf2

[Bug #21847]
2026-05-09 15:16:03 +09:00
Schneems b7d3e381f6 [ruby/syntax_suggest] Refactor multi-prism version logic
The reason this logic for different methods branches in the class instead of internally was to be eagerly aggressive about runtime performance. This code is currently only used once for the document where it's invoked ~N times (where N is number of lines):

```ruby
module SyntaxSuggest
  class CleanDocument
    # ...
    def join_trailing_slash!
      trailing_groups = @document.select(&:trailing_slash?).map do |code_line|
        take_while_including(code_line.index..) { |x| x.trailing_slash? }
      end
      join_groups(trailing_groups)
      self
    end
```

Since this is not currently a hot-spot I think merging the branches and using a case statement is a reasonable tradeoff and avoids the need to do specific version testing.

An alternative idea was presented in #241 of behavior-based testing for branch logic (which I would prefer), however, calling the code triggered requiring a `DelegateClass` when the `syntax_suggest/api` is being required.

https://github.com/ruby/syntax_suggest/commit/ab122c455f
2026-05-09 15:16:03 +09:00
Earlopain ec0a6af126 [ruby/syntax_suggest] Handle on_sp when using prism
It used to not emit this token type, but now it does.
So when a newer version of prism is present, we can fall back
to the same code that ripper uses.

Ref:
* https://github.com/ruby/ruby/pull/15914
* https://github.com/ruby/prism/pull/3859

https://github.com/ruby/syntax_suggest/commit/42a3b8f6cb
2026-05-09 15:16:03 +09:00
Hiroshi SHIBATA 5b17dd7a4d [ruby/syntax_suggest] bundle exec standardrb --fix
https://github.com/ruby/syntax_suggest/commit/54bb8ab330
2026-05-09 15:16:03 +09:00
nagachika 6eeeb07e27 merge revision(s) f315d250b4: [Backport #21947]
[PATCH] [ruby/timeout] Compatibility with Fiber scheduler. (https://github.com/ruby/timeout/pull/97)

	[Bug #21947]

	https://github.com/ruby/timeout/commit/55d7c84b50
2026-05-09 15:09:56 +09:00
Takashi Kokubun e8ef526538 [ruby/erb] Version 4.0.4.1 2026-04-22 08:56:46 +09:00
Takashi KokubunandTristan Madani 85a0a76403 [ruby/erb] Prohibit def_method on marshal-loaded ERB instances
Extends the @_init guard to def_method so that an ERB object created
via Marshal.load (which bypasses initialize) raises ArgumentError
instead of evaluating arbitrary source. def_module and def_class both
delegate to def_method and are covered by the same check.

Co-authored-by: Tristan Madani <TristanInSec@gmail.com>
2026-04-22 08:56:46 +09:00
Takashi Kokubun d282e76fb6 Bump Prism to v1.5.2
[Backport #21187]
2025-12-08 15:30:35 -08:00
Hiroshi SHIBATA 3f6cdb1246 Update next stable version to 4.0 from 3.5 (#15146) 2025-11-12 11:02:23 -08:00
Takashi Kokubun c26a2b12e1 merge revision(s) 377aa2a336: [Backport #21668]
[PATCH] Improve performance of UnicodeNormalize.canonical_ordering_one

	Use array_of_integer.sort! instead of buble-sort-like algorithm
2025-11-04 22:10:54 -08:00
Hiroshi SHIBATA 7fa4d58ef2 [ruby/rubygems] Bump up vendored uri to 1.0.4
https://github.com/ruby/rubygems/commit/bc77ec0bf2
2025-10-22 19:57:28 -07:00
Hiroshi SHIBATA 71462666e0 Merge URI-1.0.4 2025-10-07 09:15:46 -07:00
Takashi Kokubun 9c65da0145 Bump Prism version to 1.5.1 (#14549) 2025-09-13 20:53:54 -07:00
Takashi Kokubun 52b3f006cb Bump Prism version to 1.5.0 2025-09-12 14:30:16 -07:00
Alan Wu b97a159dd9 Bump PRISM version number to avoid collision with RubyGems version 2025-08-27 09:07:32 -07:00
Aaron Patterson 1f421d092b When reading from stdin, put a wrapper around the IO object
The purpose of this commit is to fix Bug #21188.  We need to detect when
stdin has run in to an EOF case.  Unfortunately we can't _call_ the eof
function on IO because it will block.

Here is a short script to demonstrate the issue:

```ruby
x = STDIN.gets
puts x
puts x.eof?
```

If you run the script, then type some characters (but _NOT_ a newline),
then hit Ctrl-D twice, it will print the input string.  Unfortunately,
calling `eof?` will try to read from STDIN again causing us to need a
3rd Ctrl-D to exit the program.

Before introducing the EOF callback to Prism, the input loop looked
kind of like this:

```ruby
loop do
  str = STDIN.gets
  process(str)

  if str.nil?
    p :DONE
  end
end
```

Which required 3 Ctrl-D to exit.  If we naively changed it to something
like this:

```ruby
loop do
  str = STDIN.gets
  process(str)

  if STDIN.eof?
    p :DONE
  end
end
```

It would still require 3 Ctrl-D because `eof?` would block.  In this
patch, we're wrapping the IO object, checking the buffer for a newline
and length, and then using that to simulate a non-blocking eof? method.

This commit wraps STDIN and emulates a non-blocking `eof` function.

[Backport #21188]
2025-08-27 09:07:32 -07:00
1e3d24a0f4 [ruby/prism] Accept a newline after the defined? keyword [Backport #21197] (#13327)
* [ruby/prism] Accept a newline after the defined? keyword

[Bug #21197]

https://github.com/ruby/prism/commit/22be955ce9

* Fix a compilation error

Co-authored-by: Stan Lo <stan001212@gmail.com>

---------

Co-authored-by: Kevin Newton <kddnewton@gmail.com>
Co-authored-by: Stan Lo <stan001212@gmail.com>
2025-07-09 14:51:32 -07:00
Hiroshi SHIBATA 5cd408a52e Bump up resolv-0.6.2 for Ruby 3.4 (#13818) 2025-07-08 09:32:36 -07:00
Stan Lo 03eb777c69 Sync RDoc 6.14.0 2025-05-22 15:04:47 -07:00
Hiroshi SHIBATA 616771e34e Merge RubyGems-3.6.9 and Bundler-2.6.9 2025-05-22 09:20:28 -07:00
Hiroshi SHIBATA d766eceb48 Merge RubyGems-3.6.8 and Bundler-2.6.8 2025-05-22 09:20:28 -07:00
Takashi Kokubun 65e02ab1a6 merge revision(s) 3e47e7a499, b48b841378, 2fe8b9cd3d: [Backport #21327]
Fix redefinition of `clock_gettime` and `clock_getres`

	winpthreads-git 12.0.0.r720 provides `clock_gettime` and
	`clock_getres` as inline functions.

	digest.so needs ruby/digest.h which is installed by build-ext

	Copy to path with the base name
2025-05-13 17:18:43 -07:00
Takashi Kokubun 1c23c30953 Revert "merge revision(s) 052794bfe1: [Backport #21197]"
This reverts commit e630a0f7ae.
2025-04-14 16:29:03 +09:00
Takashi Kokubun e630a0f7ae merge revision(s) 052794bfe1: [Backport #21197]
[ruby/prism] Accept a newline after the defined? keyword

	[Bug #21197]

	https://github.com/ruby/prism/commit/22be955ce9
2025-04-14 16:18:37 +09:00
Hiroshi SHIBATA e580145171 Merge RubyGems-3.6.7 and Bundler-2.6.7 2025-04-08 17:54:29 -07:00
Hiroshi SHIBATA db2bf9f078 Merge RubyGems-3.6.6 and Bundler-2.6.6 2025-04-08 17:54:29 -07:00
David Rodríguez 2efa400539 [rubygems/rubygems] Support git 2.49
One error message that we parse is now slightly different.

https://github.com/rubygems/rubygems/commit/758528791d
2025-03-24 13:24:30 +09:00
Hiroshi SHIBATA 5f2e0cb0c6 Merge uri-1.0.3 2025-02-27 09:00:25 -08:00
Hiroshi SHIBATA 5653eb90bb Merge cgi-0.4.2 2025-02-27 09:00:25 -08:00
Hiroshi SHIBATA 06451f0dec Merge RubyGems-3.6.5 and Bundler-2.6.5 2025-02-20 16:50:20 -08:00
Hiroshi SHIBATA a0025b6e5d Merge RubyGems-3.6.4 and Bundler-2.6.4 2025-02-20 16:50:20 -08:00
Hiroshi SHIBATA 19c69f382b Merge RubyGems-3.6.3 and Bundler-2.6.3 2025-02-20 16:50:20 -08:00
Takashi Kokubun d3fc56dcfa merge revision(s) 127325a4ba: [Backport #21117]
[ruby/prism] No writing to numbered parameters

	Fixes [Bug #21117]

	https://github.com/ruby/prism/commit/19d4bab5a0
2025-02-13 21:17:04 -08:00
Takashi Kokubun c989d90754 merge revision(s) 117d6e145a: [Backport #21027]
[ruby/prism] Fix `not` receiver

	`not foo` should be `!foo`
	`not()` should be `!nil`

	Fixes [Bug #21027]

	https://github.com/ruby/prism/commit/871ed4b462
2025-02-13 17:54:41 -08:00
Nobuyoshi Nakada f72b94bdb6 [DOC] Fix duplicate entries
A tentative workaround for duplicate entries in "Class and Module
Index".
2024-12-25 11:37:37 +09:00
David Rodríguez 42026ec3da Fix bundled gems warning for sub feature locations 2024-12-24 12:07:54 +09:00
David Rodríguez 9e0eb9778d Merge RubyGems-3.6.2 and Bundler-2.6.2 2024-12-24 07:21:10 +09:00
David Rodríguez 3cbfd21916 Fix code location in bundled gems warnings 2024-12-23 16:01:30 +09:00
David Rodríguez a51b5660dc Find uplevel for bundled gems warnings just once 2024-12-23 16:01:30 +09:00
Nobuyoshi Nakada b19fcd02fa Use the dedicated constants LIBARG and LIBPATHFLAG 2024-12-23 11:52:14 +09:00
Julien Marrec be7e5f1f85 Implements [Feature #3456]: Support pkgconf on windows
1. Store the `PKG_CONFIG` variable in Makefile.sub (or try to get it from the ENV var PKG_CONFIG in mkmf.rb)
2. Try to use --msvc-syntax, with a fallback to replacing -Lxxx with -libpath:xxx. --msvc-syntax has been in pkgconf since 1.4.0 (released 7 years ago). pkg-config (freedesktop), does not support it, hence the fallback.
3. The `try_ldflags` passes these `ldflags` as the `opt` parameter to the `link_command`, not as `ldflags`. Unix systems are forgiving in that regard, MSVC is not: as a result as passing them as `opt`, they (specifically the `/libpath:xxx` ones) end up passed before the `-link` command to `cl.exe` and it throws because it ignores it and therefore can't find the lib.

```
cl : Command line warning D9002 : ignoring unknown option '-libpath:C:/Users/julien/.conan2/p/libff3726d89a6255c/p/lib'
```
2024-12-23 11:52:14 +09:00
Hiroshi SHIBATA 0275cc0524 [ruby/logger] v1.6.4
https://github.com/ruby/logger/commit/216cedef7c
2024-12-19 13:16:56 +09:00
Nobuyoshi Nakada d16b043cdd [ruby/logger] Use __FILE__ for wasm
`/dev/null` is not available on wasm.

https://github.com/ruby/logger/commit/4be05c2208
2024-12-19 13:16:50 +09:00
Stan Lo bba66f94f2 [ruby/rdoc] Bump version to v6.10.0
https://github.com/ruby/rdoc/commit/2b79892ab4
2024-12-19 08:45:31 +09:00
James Reid-Smith a920808c4b [ruby/rdoc] Auto-hide navigation on link click
(https://github.com/ruby/rdoc/pull/1238)

Hide navigation sidebar when clicking anchor links on mobile devices.
Previously, anchor links would change the page but the navigation
sidebar would block the view.

https://github.com/ruby/rdoc/commit/f12a96b7fa
2024-12-19 08:45:31 +09:00
Stan Lo 35ff04ce5e [ruby/irb] Bump version to v1.14.3
(https://github.com/ruby/irb/pull/1050)

https://github.com/ruby/irb/commit/49050f9bf3
2024-12-19 08:45:31 +09:00