<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/spec/bundler/commands/ssl_spec.rb, branch v4.0.4</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>[ruby/rubygems] Change the logger instance for this spec:</title>
<updated>2025-11-20T22:05:13+00:00</updated>
<author>
<name>Edouard CHIN</name>
<email>chin.edouard@gmail.com</email>
</author>
<published>2025-11-20T00:57:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=8b71234a4877b4bd2058cca2766ea9794fbcee41'/>
<id>8b71234a4877b4bd2058cca2766ea9794fbcee41</id>
<content type='text'>
- With the logger change that is now threadsafe, such code no longer
  behaves the same:

  ```ruby
  Bundler.ui.silence do
    Bundler.ui.level = 'info'

    Bundler.ui.info("foo")
    # This used to output something. Now it doesn't.
  end
  ```

  IMHO this is the right behaviour since we are in a silence block,
  changing the level should have no effect. And fortunately it seems
  that we only need to change this spec.

  The call to `Bundler.ui.silence` is done in a `around` block
  https://github.com/ruby/rubygems/blob/4a13684f07ebb1dea5501e3f826fab414f96bf47/bundler/spec/spec_helper.rb#L119

https://github.com/ruby/rubygems/commit/e716adb6c9
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- With the logger change that is now threadsafe, such code no longer
  behaves the same:

  ```ruby
  Bundler.ui.silence do
    Bundler.ui.level = 'info'

    Bundler.ui.info("foo")
    # This used to output something. Now it doesn't.
  end
  ```

  IMHO this is the right behaviour since we are in a silence block,
  changing the level should have no effect. And fortunately it seems
  that we only need to change this spec.

  The call to `Bundler.ui.silence` is done in a `around` block
  https://github.com/ruby/rubygems/blob/4a13684f07ebb1dea5501e3f826fab414f96bf47/bundler/spec/spec_helper.rb#L119

https://github.com/ruby/rubygems/commit/e716adb6c9
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Fix test warnings introduced by recent CGI changes</title>
<updated>2025-05-19T02:19:17+00:00</updated>
<author>
<name>David Rodríguez</name>
<email>deivid.rodriguez@riseup.net</email>
</author>
<published>2025-05-16T17:51:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=57e4176649f056966d860505694570d23200b44a'/>
<id>57e4176649f056966d860505694570d23200b44a</id>
<content type='text'>
They read like this:

```
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:13: warning: method redefined; discarding old rfc1123_date
/opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:225: warning: previous definition of rfc1123_date was here
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:34: warning: method redefined; discarding old pretty
/opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:246: warning: previous definition of pretty was here
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:16: warning: method redefined; discarding old escape
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:29: warning: method redefined; discarding old unescape
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:13: warning: method redefined; discarding old rfc1123_date
/opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:225: warning: previous definition of rfc1123_date was here
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:34: warning: method redefined; discarding old pretty
/opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:246: warning: previous definition of pretty was here
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:16: warning: method redefined; discarding old escape
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:29: warning: method redefined; discarding old unescape
```

The problem is that `rspec` loads `erb` for its configuration, which
loads `cgi/util` from system gems.

Then our tests change the `$LOAD_PATH` to make test gems installed in
tmp visible to `require`, and then they all require `cgi` as a
transitive dependency of `rack-test`, this time from `tmp` gems. This
causes system and test specific copies to be mixed together and these
warnings to be printed, but we have also observed failures in some tests
with errors like

&gt; class variable @@accept_charset of CGI::Util is overtaken by CGI::Escape

This changes should also fix those failures.

The fix is to require all of `rack-test` (including `cgi`) before we
have changed the `$LOAD_PATH`. Because the `$LOAD_PATH` is unchanged,
RubyGems respects the version of `cgi` activated by RSpec, avoiding the
double loads.

https://github.com/rubygems/rubygems/commit/34e75465c6
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
They read like this:

```
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:13: warning: method redefined; discarding old rfc1123_date
/opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:225: warning: previous definition of rfc1123_date was here
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:34: warning: method redefined; discarding old pretty
/opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:246: warning: previous definition of pretty was here
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:16: warning: method redefined; discarding old escape
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:29: warning: method redefined; discarding old unescape
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:13: warning: method redefined; discarding old rfc1123_date
/opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:225: warning: previous definition of rfc1123_date was here
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:34: warning: method redefined; discarding old pretty
/opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:246: warning: previous definition of pretty was here
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:16: warning: method redefined; discarding old escape
/home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:29: warning: method redefined; discarding old unescape
```

The problem is that `rspec` loads `erb` for its configuration, which
loads `cgi/util` from system gems.

Then our tests change the `$LOAD_PATH` to make test gems installed in
tmp visible to `require`, and then they all require `cgi` as a
transitive dependency of `rack-test`, this time from `tmp` gems. This
causes system and test specific copies to be mixed together and these
warnings to be printed, but we have also observed failures in some tests
with errors like

&gt; class variable @@accept_charset of CGI::Util is overtaken by CGI::Escape

This changes should also fix those failures.

The fix is to require all of `rack-test` (including `cgi`) before we
have changed the `$LOAD_PATH`. Because the `$LOAD_PATH` is unchanged,
RubyGems respects the version of `cgi` activated by RSpec, avoiding the
double loads.

https://github.com/rubygems/rubygems/commit/34e75465c6
</pre>
</div>
</content>
</entry>
<entry>
<title>Skip failing example on Ubuntu runner of ruby/ruby</title>
<updated>2025-04-22T06:34:56+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2025-04-22T03:42:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3a2415cc47aab53ed54ba66193ee81379ca6704d'/>
<id>3a2415cc47aab53ed54ba66193ee81379ca6704d</id>
<content type='text'>
https://github.com/ruby/ruby/actions/runs/14585602800/job/40910453142
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/ruby/actions/runs/14585602800/job/40910453142
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Warn if TLS 1.2 is not supported</title>
<updated>2025-04-22T02:27:24+00:00</updated>
<author>
<name>Edouard CHIN</name>
<email>chin.edouard@gmail.com</email>
</author>
<published>2025-04-09T22:31:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=56c1a15eb70eaed2acf84cb449f19a9745dcfe44'/>
<id>56c1a15eb70eaed2acf84cb449f19a9745dcfe44</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/e4f70a3e4f
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/e4f70a3e4f
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Summarize the diagnostic</title>
<updated>2025-04-22T02:27:24+00:00</updated>
<author>
<name>Edouard CHIN</name>
<email>chin.edouard@gmail.com</email>
</author>
<published>2025-04-09T22:31:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ff2e0e41730f21b29660254d29cf5bb3ceffdbd4'/>
<id>ff2e0e41730f21b29660254d29cf5bb3ceffdbd4</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/40cf54d256
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/40cf54d256
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Diagnose the bare net/http connection</title>
<updated>2025-04-22T02:27:23+00:00</updated>
<author>
<name>Edouard CHIN</name>
<email>chin.edouard@gmail.com</email>
</author>
<published>2025-04-09T22:11:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=19477ef2875221ff38bdc934897d32d94af0da05'/>
<id>19477ef2875221ff38bdc934897d32d94af0da05</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/38a0bdc123
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/38a0bdc123
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Diagnose the RubyGems connection</title>
<updated>2025-04-22T02:27:23+00:00</updated>
<author>
<name>Edouard CHIN</name>
<email>chin.edouard@gmail.com</email>
</author>
<published>2025-04-09T21:59:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=7a10ce8c95a714e6eb37250687828508e133dddc'/>
<id>7a10ce8c95a714e6eb37250687828508e133dddc</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/bf63859e1e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/bf63859e1e
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Diagnose the bundler connection</title>
<updated>2025-04-22T02:27:23+00:00</updated>
<author>
<name>Edouard CHIN</name>
<email>chin.edouard@gmail.com</email>
</author>
<published>2025-04-09T21:50:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=cba7408017e51e6ef119964f1b408e4938c8a2a4'/>
<id>cba7408017e51e6ef119964f1b408e4938c8a2a4</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/0aae094c89
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/0aae094c89
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Diagnose when OpenSSL can't be loaded.</title>
<updated>2025-04-22T02:27:23+00:00</updated>
<author>
<name>Edouard CHIN</name>
<email>chin.edouard@gmail.com</email>
</author>
<published>2025-04-09T21:42:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ae308ae523a0af0e5566fff741395e48e5e877a2'/>
<id>ae308ae523a0af0e5566fff741395e48e5e877a2</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/e6aa8aabcd
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/e6aa8aabcd
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Add the `bundle doctor subcommand` skeleton:</title>
<updated>2025-04-22T02:27:23+00:00</updated>
<author>
<name>Edouard CHIN</name>
<email>chin.edouard@gmail.com</email>
</author>
<published>2025-04-03T23:08:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=cda29294a912521a72e28d773e6aa6845535616d'/>
<id>cda29294a912521a72e28d773e6aa6845535616d</id>
<content type='text'>
- The command can either be run using:

  1. `bundle doctor --ssl`
  2. `bundle doctor ssl`

  The later is most useful when you need to specify
  custom ssl options (such as the verify mode or the
  TLS version when running the diagnostic).

  The implementation will follow in the next commits.

https://github.com/rubygems/rubygems/commit/993d12874c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- The command can either be run using:

  1. `bundle doctor --ssl`
  2. `bundle doctor ssl`

  The later is most useful when you need to specify
  custom ssl options (such as the verify mode or the
  TLS version when running the diagnostic).

  The implementation will follow in the next commits.

https://github.com/rubygems/rubygems/commit/993d12874c
</pre>
</div>
</content>
</entry>
</feed>
