<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/lib/rubygems/package, branch v3_4_9</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>Merge RubyGems-3.6.9 and Bundler-2.6.9</title>
<updated>2025-05-22T16:20:28+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2025-05-22T07:15:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=616771e34e651d2a09ab3dad77d826c2100512e8'/>
<id>616771e34e651d2a09ab3dad77d826c2100512e8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Fix incompatible encodings error</title>
<updated>2024-11-04T10:04:40+00:00</updated>
<author>
<name>David Rodríguez</name>
<email>deivid.rodriguez@riseup.net</email>
</author>
<published>2024-10-31T16:02:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=50dbe19b685047cff7000878b330eee8a3f2583d'/>
<id>50dbe19b685047cff7000878b330eee8a3f2583d</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/d478ec403f
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/d478ec403f
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Use a constant empty tar header to avoid extra allocations</title>
<updated>2024-05-13T13:01:44+00:00</updated>
<author>
<name>Samuel Giddins</name>
<email>segiddins@segiddins.me</email>
</author>
<published>2024-02-20T19:05:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=02c8e6583b33c62b4050420234167a467f32fefa'/>
<id>02c8e6583b33c62b4050420234167a467f32fefa</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/716666f65f
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/716666f65f
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Fewer allocations in gem installation</title>
<updated>2023-12-11T23:14:58+00:00</updated>
<author>
<name>Samuel Giddins</name>
<email>segiddins@segiddins.me</email>
</author>
<published>2023-09-19T01:51:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=505715ddf17e004d184c0b71afb40a31e2e8c98e'/>
<id>505715ddf17e004d184c0b71afb40a31e2e8c98e</id>
<content type='text'>
For now, on a small rails app I have hanging around:

```
==&gt; memprof.after.txt &lt;==
Total allocated: 872.51 MB (465330 objects)
Total retained:  40.48 kB (326 objects)

==&gt; memprof.before.txt &lt;==
Total allocated: 890.79 MB (1494026 objects)
Total retained:  40.40 kB (328 objects)
```

Not a huge difference in memory usage, but it's a drastic improvement
in total number of allocations.

Additionally, this will pay huge dividends once
https://github.com/ruby/zlib/pull/61 is merged, as it will allow us to
completely avoid allocations in the repeated calls to readpartial,
which currently accounts for most of the memory usage shown above.

https://github.com/rubygems/rubygems/commit/f78d45d927
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For now, on a small rails app I have hanging around:

```
==&gt; memprof.after.txt &lt;==
Total allocated: 872.51 MB (465330 objects)
Total retained:  40.48 kB (326 objects)

==&gt; memprof.before.txt &lt;==
Total allocated: 890.79 MB (1494026 objects)
Total retained:  40.40 kB (328 objects)
```

Not a huge difference in memory usage, but it's a drastic improvement
in total number of allocations.

Additionally, this will pay huge dividends once
https://github.com/ruby/zlib/pull/61 is merged, as it will allow us to
completely avoid allocations in the repeated calls to readpartial,
which currently accounts for most of the memory usage shown above.

https://github.com/rubygems/rubygems/commit/f78d45d927
</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] Use String#unpack1 available since ruby 3.0</title>
<updated>2023-12-06T02:45:37+00:00</updated>
<author>
<name>Martin Emde</name>
<email>martin.emde@gmail.com</email>
</author>
<published>2023-12-05T21:29:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d9a1bb4b097899c21c9a11b042072224c4ff252b'/>
<id>d9a1bb4b097899c21c9a11b042072224c4ff252b</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/46258d6cb4
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/46258d6cb4
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Ignore non-tar format `.gem` files during search</title>
<updated>2023-10-23T19:52:22+00:00</updated>
<author>
<name>dearblue</name>
<email>dearblue@users.osdn.me</email>
</author>
<published>2023-10-23T14:49:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=062d6050b05dba8c0cc915e83a05a418a1c8ab1d'/>
<id>062d6050b05dba8c0cc915e83a05a418a1c8ab1d</id>
<content type='text'>
Previously, `rake install` or `rake update` would fail if there was a non-tar format `.gem` file in the current working directory.

https://github.com/rubygems/rubygems/commit/f562788f1d
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, `rake install` or `rake update` would fail if there was a non-tar format `.gem` file in the current working directory.

https://github.com/rubygems/rubygems/commit/f562788f1d
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Raise Gem::Package::FormatError on EOF, indicating corrupt gem</title>
<updated>2023-08-17T23:16:57+00:00</updated>
<author>
<name>Martin Emde</name>
<email>martin.emde@gmail.com</email>
</author>
<published>2023-08-15T17:39:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=e913431687f2fffb1a8cc435e60c95eea887b087'/>
<id>e913431687f2fffb1a8cc435e60c95eea887b087</id>
<content type='text'>
Gem::Package::TarReader::Entry now raises EOFError or returns nil
appropriately based on Ruby core IO.read and IO.readpartial behavior.

Zlib will respond accordingly by raising Zlib::GzipFile::Error on EOF.

When verifying a gem or extracting contents, raise FormatError similar
to other cases of corrupt gems.

Addresses a bug where Gem::Package would attempt to call size on nil
instead of raising a more descriptive and useful error, leading users
to assume the problem is internal to rubygems.

Remove unused error class TarReader::UnexpectedEOF that was never raised
since the NoMethodError on nil would happen first. Use EOFError instead.

https://github.com/rubygems/rubygems/commit/dc6129644b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Gem::Package::TarReader::Entry now raises EOFError or returns nil
appropriately based on Ruby core IO.read and IO.readpartial behavior.

Zlib will respond accordingly by raising Zlib::GzipFile::Error on EOF.

When verifying a gem or extracting contents, raise FormatError similar
to other cases of corrupt gems.

Addresses a bug where Gem::Package would attempt to call size on nil
instead of raising a more descriptive and useful error, leading users
to assume the problem is internal to rubygems.

Remove unused error class TarReader::UnexpectedEOF that was never raised
since the NoMethodError on nil would happen first. Use EOFError instead.

https://github.com/rubygems/rubygems/commit/dc6129644b
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] auto-correct Style/YodaCondition</title>
<updated>2023-06-14T22:01:28+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2023-06-14T07:51:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=827d66266be9feff10f71dd26fa04227423d134a'/>
<id>827d66266be9feff10f71dd26fa04227423d134a</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/6d9e8025dc
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/6d9e8025dc
</pre>
</div>
</content>
</entry>
<entry>
<title>util/rubocop -A --only Style/NumericLiteralPrefix</title>
<updated>2023-04-11T10:12:28+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2023-04-11T05:56:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d89cc317c642848008f5b17a82196d25ddcdf124'/>
<id>d89cc317c642848008f5b17a82196d25ddcdf124</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
