<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/lib/bundler/settings.rb, branch v3_3_11</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>Update RubyGems 3.5.16 and Bundler 2.5.16 for Ruby 3.3 (#11252)</title>
<updated>2024-07-30T16:05:54+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2024-07-30T16:05:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=f85c7deacc25738bd83ba182370c283ba82b61d4'/>
<id>f85c7deacc25738bd83ba182370c283ba82b61d4</id>
<content type='text'>
* Merge RubyGems-3.5.12 and Bundler-2.5.12

* Merge RubyGems-3.5.13 and Bundler-2.5.13

* Merge RubyGems-3.5.14 and Bundler-2.5.14

* Merge RubyGems-3.5.15 and Bundler-2.5.15

* Merge RubyGems-3.5.16 and Bundler-2.5.16</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Merge RubyGems-3.5.12 and Bundler-2.5.12

* Merge RubyGems-3.5.13 and Bundler-2.5.13

* Merge RubyGems-3.5.14 and Bundler-2.5.14

* Merge RubyGems-3.5.15 and Bundler-2.5.15

* Merge RubyGems-3.5.16 and Bundler-2.5.16</pre>
</div>
</content>
</entry>
<entry>
<title>Merge RubyGems 3.5.11 and Bundler 2.5.11 for Ruby 3.3 (#10870)</title>
<updated>2024-06-05T04:36:46+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2024-06-05T04:36:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=06f470ce66be24f82d3720dd2bb08b18b16753ac'/>
<id>06f470ce66be24f82d3720dd2bb08b18b16753ac</id>
<content type='text'>
Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Merge RubyGems 3.5.9 and Bundler 2.5.9 (Fixed CI at Ruby 3.3) (#10348)</title>
<updated>2024-04-16T02:22:22+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2024-04-16T02:22:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=7227b859a7bf7626ee73de8130796657b7c7f3b5'/>
<id>7227b859a7bf7626ee73de8130796657b7c7f3b5</id>
<content type='text'>
* Merge RubyGems-3.5.6 and Bundler-2.5.6

* Merge RubyGems-3.5.7 and Bundler-2.5.7

* Merge RubyGems-3.5.8 and Bundler-2.5.8

* Partly reverted about https://github.com/rubygems/rubygems/pull/7483

* Merge RubyGems-3.5.9 and Bundler-2.5.9</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Merge RubyGems-3.5.6 and Bundler-2.5.6

* Merge RubyGems-3.5.7 and Bundler-2.5.7

* Merge RubyGems-3.5.8 and Bundler-2.5.8

* Partly reverted about https://github.com/rubygems/rubygems/pull/7483

* Merge RubyGems-3.5.9 and Bundler-2.5.9</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Use modern hashes consistently</title>
<updated>2023-12-07T22:29:33+00:00</updated>
<author>
<name>David Rodríguez</name>
<email>deivid.rodriguez@riseup.net</email>
</author>
<published>2023-12-07T21:10:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2755cb1b2fbc4a5f08ca56345b5945bd452da74e'/>
<id>2755cb1b2fbc4a5f08ca56345b5945bd452da74e</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/bb66253f2c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/bb66253f2c
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Don't remember `--jobs` flag</title>
<updated>2023-11-27T06:04:40+00:00</updated>
<author>
<name>David Rodríguez</name>
<email>deivid.rodriguez@riseup.net</email>
</author>
<published>2023-11-23T22:13:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=794c879d19689df8ced5537ecaacdbe5313f2a3f'/>
<id>794c879d19689df8ced5537ecaacdbe5313f2a3f</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/9ab1136036
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/9ab1136036
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Let RuboCop target Ruby 3.0</title>
<updated>2023-11-13T02:06:10+00:00</updated>
<author>
<name>David Rodríguez</name>
<email>deivid.rodriguez@riseup.net</email>
</author>
<published>2023-10-26T20:17:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=a4d80eee179cf4d0b126aa8c61888b7e08795a85'/>
<id>a4d80eee179cf4d0b126aa8c61888b7e08795a85</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/70243b1d72
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/70243b1d72
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Stop allocating the same settings keys repeatedly</title>
<updated>2023-09-15T17:54:01+00:00</updated>
<author>
<name>Samuel Giddins</name>
<email>segiddins@segiddins.me</email>
</author>
<published>2023-09-15T02:34:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=c423d6e0e48bd8a94548ff7a6275d93ae770f9d1'/>
<id>c423d6e0e48bd8a94548ff7a6275d93ae770f9d1</id>
<content type='text'>
Running `bundle update --bundler` on a rails app locally:

```
==&gt; memprof.after.txt &lt;==
Total allocated: 301.90 kB (3794 objects)
Total retained:  73.24 kB (698 objects)

==&gt; memprof.before.txt &lt;==
Total allocated: 14.47 MB (196378 objects)
Total retained:  25.93 kB (202 objects)
```

So for a slight increase in retained memory (all keys are now retained),
we go from about 200k allocations in the settings file to under 4k

https://github.com/rubygems/rubygems/commit/e64debb6ae
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Running `bundle update --bundler` on a rails app locally:

```
==&gt; memprof.after.txt &lt;==
Total allocated: 301.90 kB (3794 objects)
Total retained:  73.24 kB (698 objects)

==&gt; memprof.before.txt &lt;==
Total allocated: 14.47 MB (196378 objects)
Total retained:  25.93 kB (202 objects)
```

So for a slight increase in retained memory (all keys are now retained),
we go from about 200k allocations in the settings file to under 4k

https://github.com/rubygems/rubygems/commit/e64debb6ae
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Update bundler/lib/bundler/settings.rb</title>
<updated>2023-08-30T00:36:38+00:00</updated>
<author>
<name>Josh Nichols</name>
<email>josh@technicalpickles.com</email>
</author>
<published>2023-08-29T23:01:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=e747e2c36b76262740da6070434a6768723397b2'/>
<id>e747e2c36b76262740da6070434a6768723397b2</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/75ffa8ef76

Co-authored-by: Martin Emde &lt;martinemde@users.noreply.github.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/75ffa8ef76

Co-authored-by: Martin Emde &lt;martinemde@users.noreply.github.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] (Further) Improve Bundler::Settings#[] performance and memory usage</title>
<updated>2023-08-30T00:36:38+00:00</updated>
<author>
<name>Josh Nichols</name>
<email>josh.nichols@gusto.com</email>
</author>
<published>2023-08-29T00:02:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=6a876a61d7495ff64805cdda2756c5fc38846ef8'/>
<id>6a876a61d7495ff64805cdda2756c5fc38846ef8</id>
<content type='text'>
I previously identified and improved this method over in https://github.com/rubygems/rubygems/pull/6884
but while reviewing another memory_profiler profile, I realized another
gain we can eek out.

This method keeps comes up in part because `configs` is allocating a new
Hash every time. My last change took advantage of that by using `map!`
on it. `configs` is called quite often, including in this `[]` method,
so there's a benefit to memoizing it.

Back in `[]`, logically we are trying to find the first Hash in `configs`
that has a value for the given key. Currently, we end up `map` and
`compact` to just get that value.

Instead, we can use a loop over `configs`, and break when we find the
value for the key.

https://github.com/rubygems/rubygems/commit/b913cfc87b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I previously identified and improved this method over in https://github.com/rubygems/rubygems/pull/6884
but while reviewing another memory_profiler profile, I realized another
gain we can eek out.

This method keeps comes up in part because `configs` is allocating a new
Hash every time. My last change took advantage of that by using `map!`
on it. `configs` is called quite often, including in this `[]` method,
so there's a benefit to memoizing it.

Back in `[]`, logically we are trying to find the first Hash in `configs`
that has a value for the given key. Currently, we end up `map` and
`compact` to just get that value.

Instead, we can use a loop over `configs`, and break when we find the
value for the key.

https://github.com/rubygems/rubygems/commit/b913cfc87b
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] fix lint</title>
<updated>2023-08-20T09:07:11+00:00</updated>
<author>
<name>Josh Nichols</name>
<email>josh.nichols@gusto.com</email>
</author>
<published>2023-08-19T16:33:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=35442005132e60a728b59f0811da10fba95a851e'/>
<id>35442005132e60a728b59f0811da10fba95a851e</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/75c0f27b7e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/75c0f27b7e
</pre>
</div>
</content>
</entry>
</feed>
