<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/lib/bundler/cli, branch master</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] Return exit status 1 only when the config value is nil</title>
<updated>2026-05-08T08:08:05+00:00</updated>
<author>
<name>Shinichi Maeshima</name>
<email>netwillnet@gmail.com</email>
</author>
<published>2026-05-07T10:03:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=c9ee9c1e23ac27cf2699a41e221e05d82f30e4c3'/>
<id>c9ee9c1e23ac27cf2699a41e221e05d82f30e4c3</id>
<content type='text'>
When using something like `bundle config set foo false`, the config value is converted via `Bundler::Settings#converted_value`, so the stored value becomes `false` instead of the string `"false"`. Because of that, passing `Bundler.settings[name]` directly to an `if` statement can execute `exit 1` even when the value is actually configured.

Since config values do not appear to become `nil` explicitly, use `nil?` to determine whether the value is configured.

https://github.com/ruby/rubygems/commit/8fd32cb611
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When using something like `bundle config set foo false`, the config value is converted via `Bundler::Settings#converted_value`, so the stored value becomes `false` instead of the string `"false"`. Because of that, passing `Bundler.settings[name]` directly to an `if` statement can execute `exit 1` even when the value is actually configured.

Since config values do not appear to become `nil` explicitly, use `nil?` to determine whether the value is configured.

https://github.com/ruby/rubygems/commit/8fd32cb611
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/rubygems] Simplify the code</title>
<updated>2026-05-08T08:08:04+00:00</updated>
<author>
<name>Shinichi Maeshima</name>
<email>netwillnet@gmail.com</email>
</author>
<published>2026-05-05T08:13:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=842c847c79d57de4c2d9b3199679fceaab839899'/>
<id>842c847c79d57de4c2d9b3199679fceaab839899</id>
<content type='text'>
Refactor the code based on the feedback in https://github.com/ruby/rubygems/pull/9505#discussion_r3167085736 .

https://github.com/ruby/rubygems/commit/153abcb5e3
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Refactor the code based on the feedback in https://github.com/ruby/rubygems/pull/9505#discussion_r3167085736 .

https://github.com/ruby/rubygems/commit/153abcb5e3
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/rubygems] Make `bundle config get` return status 1 when the value is not set</title>
<updated>2026-05-08T08:08:04+00:00</updated>
<author>
<name>Shinichi Maeshima</name>
<email>netwillnet@gmail.com</email>
</author>
<published>2026-04-29T10:11:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=607648d5fc98782018a40c45079d300c48f684c4'/>
<id>607648d5fc98782018a40c45079d300c48f684c4</id>
<content type='text'>
Fix https://github.com/ruby/rubygems/pull/3215

Change the exit status to 1 when trying to `get` a config key that does not exist, as shown below.

```sh
$ bundle config get foo

Settings for `foo` in order of priority. The top value will be used

You have not configured a value for `foo`

$ echo $?
1
```

It seems that showing “Settings for `foo` in order of priority. The top value will be used” when the key does not exist is not very meaningful, but for now I have left the behavior unchanged except for the exit status.

In the tests, some existing cases try to `get` a missing config without `raise_on_error: false`, so set the value in advance or add `raise_on_error: false` to handle them.

https://github.com/ruby/rubygems/commit/73205e3d64
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix https://github.com/ruby/rubygems/pull/3215

Change the exit status to 1 when trying to `get` a config key that does not exist, as shown below.

```sh
$ bundle config get foo

Settings for `foo` in order of priority. The top value will be used

You have not configured a value for `foo`

$ echo $?
1
```

It seems that showing “Settings for `foo` in order of priority. The top value will be used” when the key does not exist is not very meaningful, but for now I have left the behavior unchanged except for the exit status.

In the tests, some existing cases try to `get` a missing config without `raise_on_error: false`, so set the value in advance or add `raise_on_error: false` to handle them.

https://github.com/ruby/rubygems/commit/73205e3d64
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/rubygems] Switch bundle add to use optimistic versioning by default</title>
<updated>2026-05-08T06:39:01+00:00</updated>
<author>
<name>Jeremy Evans</name>
<email>code@jeremyevans.net</email>
</author>
<published>2026-05-03T04:53:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ee9e92082784761849b4f9d5244af22c3bf407ba'/>
<id>ee9e92082784761849b4f9d5244af22c3bf407ba</id>
<content type='text'>
Add the recent developer meeting, we discussed switching from using
pessimistic versioning by default to using optimistic versioning by
default. This is the a step in that direction. It makes bundle add
without a explicit version given to use &gt;= (optimistic) instead of
~&gt; (pessimistic).

With this, the bundle add --optimistic option is now ignored, since
the behavior is now the default. This add a --pessimistic option to
set a pessimistic version.

https://github.com/ruby/rubygems/commit/eed378086b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add the recent developer meeting, we discussed switching from using
pessimistic versioning by default to using optimistic versioning by
default. This is the a step in that direction. It makes bundle add
without a explicit version given to use &gt;= (optimistic) instead of
~&gt; (pessimistic).

With this, the bundle add --optimistic option is now ignored, since
the behavior is now the default. This add a --pessimistic option to
set a pessimistic version.

https://github.com/ruby/rubygems/commit/eed378086b
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/rubygems] Update gem creation guide URL to rubygems.org</title>
<updated>2026-04-24T00:45:15+00:00</updated>
<author>
<name>y-onishi</name>
<email>yuta_onishi@smartbank.co.jp</email>
</author>
<published>2026-04-23T10:57:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=7e1039e191550869aa146a4895af2db48b506882'/>
<id>7e1039e191550869aa146a4895af2db48b506882</id>
<content type='text'>
Update the gem creation guide links in the CLI output and gemspac template.
The previous Bundler guide URL now redirects to RubyGems Guides.

https://github.com/ruby/rubygems/commit/0b469edf03
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update the gem creation guide links in the CLI output and gemspac template.
The previous Bundler guide URL now redirects to RubyGems Guides.

https://github.com/ruby/rubygems/commit/0b469edf03
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/rubygems] Normalize the number of workers:</title>
<updated>2026-03-18T10:55:45+00:00</updated>
<author>
<name>Edouard CHIN</name>
<email>chin.edouard@gmail.com</email>
</author>
<published>2026-03-16T16:05:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=a0efe15163ecf45cb3748a4bdb1051dd2f7019b7'/>
<id>a0efe15163ecf45cb3748a4bdb1051dd2f7019b7</id>
<content type='text'>
- ### Problem

  I'd like to normalize the number of workers when downloading gems
  and use the `BUNDLE_JOBS` configuration (or default to
  `Etc.nprocessors`).
  Right now the number of workers when doing parallel work seems a bit
  random.

  ### Benchmarks

  **Downloading 40 git gems**

  === Comparison Summary ===

  Scenario: git-gems (40 gems)
                             Cold     +/-                        Warm     +/-
  ------------------------------------------------------------------------------
  more-downloads            7.94s   1.44s  baseline             5.02s   0.31s  baseline
  master                   14.59s   1.67s  83.7% slower         5.72s   0.30s  13.9% slower

  _________________________________

  **Downloading 249 gems from a fake gemserver with a 300ms latency**

  === Comparison Summary ===

  Scenario: no-deps (249 gems)
                             Cold     +/-                        Warm     +/-
  ------------------------------------------------------------------------------
  more-downloads           11.11s   0.66s  baseline             1.23s   0.14s  baseline
  master                   16.89s   0.60s  52.0% slower         1.03s   0.09s  16.2% faster

  ### Context

  I originally added those workers count in

  1. https://github.com/ruby/rubygems/pull/9087/changes#diff-524173391e40a96577540013a1ad749433454155f79aa05c5d0832235b0bdad1R11
  2. https://github.com/ruby/rubygems/pull/9100/changes#diff-04ae823e98259f697c78d2d0b4eab0ced6a83a84a986578703eb2837d6db1a32R1105

  For 1. (downloading gems from Rubygems.org)I opted to go with a
  hardcoded worker count of 5 and not anything higher as I was
  that we could hammer RubyGems.org. I think this concern
  is not valid, because requests to download gems don't even hit
  RubyGems.org server as there is the fastly CDN in front of the s3
  bucket.

  For 2. I went with a worker count of 5 to match, without giving this
  a second thought.

https://github.com/ruby/rubygems/commit/170c9d75c2
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- ### Problem

  I'd like to normalize the number of workers when downloading gems
  and use the `BUNDLE_JOBS` configuration (or default to
  `Etc.nprocessors`).
  Right now the number of workers when doing parallel work seems a bit
  random.

  ### Benchmarks

  **Downloading 40 git gems**

  === Comparison Summary ===

  Scenario: git-gems (40 gems)
                             Cold     +/-                        Warm     +/-
  ------------------------------------------------------------------------------
  more-downloads            7.94s   1.44s  baseline             5.02s   0.31s  baseline
  master                   14.59s   1.67s  83.7% slower         5.72s   0.30s  13.9% slower

  _________________________________

  **Downloading 249 gems from a fake gemserver with a 300ms latency**

  === Comparison Summary ===

  Scenario: no-deps (249 gems)
                             Cold     +/-                        Warm     +/-
  ------------------------------------------------------------------------------
  more-downloads           11.11s   0.66s  baseline             1.23s   0.14s  baseline
  master                   16.89s   0.60s  52.0% slower         1.03s   0.09s  16.2% faster

  ### Context

  I originally added those workers count in

  1. https://github.com/ruby/rubygems/pull/9087/changes#diff-524173391e40a96577540013a1ad749433454155f79aa05c5d0832235b0bdad1R11
  2. https://github.com/ruby/rubygems/pull/9100/changes#diff-04ae823e98259f697c78d2d0b4eab0ced6a83a84a986578703eb2837d6db1a32R1105

  For 1. (downloading gems from Rubygems.org)I opted to go with a
  hardcoded worker count of 5 and not anything higher as I was
  that we could hammer RubyGems.org. I think this concern
  is not valid, because requests to download gems don't even hit
  RubyGems.org server as there is the fastly CDN in front of the s3
  bucket.

  For 2. I went with a worker count of 5 to match, without giving this
  a second thought.

https://github.com/ruby/rubygems/commit/170c9d75c2
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/rubygems] Show release date with bundle outdated</title>
<updated>2026-03-03T06:04:08+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2026-02-18T05:21:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=1008a469499bbbefb31f59a1b2cbb6ce0120bbfa'/>
<id>1008a469499bbbefb31f59a1b2cbb6ce0120bbfa</id>
<content type='text'>
https://github.com/ruby/rubygems/commit/300cc0c223
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/rubygems/commit/300cc0c223
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/rubygems] Support precompiled rust gems out of the box</title>
<updated>2026-02-13T06:28:13+00:00</updated>
<author>
<name>Ian Ker-Seymer</name>
<email>ian.kerseymer@shopify.com</email>
</author>
<published>2024-05-31T03:22:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=211c17dcac82fec630bd6e57d362abbf6f281eae'/>
<id>211c17dcac82fec630bd6e57d362abbf6f281eae</id>
<content type='text'>
https://github.com/ruby/rubygems/commit/5d3fbf0280
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/rubygems/commit/5d3fbf0280
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/rubygems] [rust gem] Make cargo test work by default</title>
<updated>2026-02-13T06:28:11+00:00</updated>
<author>
<name>Ian Ker-Seymer</name>
<email>hello@ianks.com</email>
</author>
<published>2024-04-25T02:52:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=27204dc8ccd028d4c670be572d2c70abf41f1ce2'/>
<id>27204dc8ccd028d4c670be572d2c70abf41f1ce2</id>
<content type='text'>
https://github.com/ruby/rubygems/commit/9420974db7
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/rubygems/commit/9420974db7
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/rubygems] Relax gem name validation to warn on capital letters</title>
<updated>2026-02-13T05:29:05+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2026-02-13T04:53:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=00440871dbe648cf7f8e2ebc2f01d3b1e0024cd6'/>
<id>00440871dbe648cf7f8e2ebc2f01d3b1e0024cd6</id>
<content type='text'>
https://github.com/ruby/rubygems/commit/26dab848c5
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/rubygems/commit/26dab848c5
</pre>
</div>
</content>
</entry>
</feed>
