<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/tool/downloader.rb, branch v4.0.2</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>Suppress warning from net/http.rb in ruby 3.1</title>
<updated>2025-09-13T11:20:02+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-08-30T04:03:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ea8b346cbc03bae4857d32456bbd2895ae82e770'/>
<id>ea8b346cbc03bae4857d32456bbd2895ae82e770</id>
<content type='text'>
When `-F` option is given to strip comments in bundled_gems file, `$;`
is set to the regexp.

On the other hand, old net/http.rb contained old CVS keyword expansion
that is `split` with the default separator, and non-nil `$;` causes a
warning.

```ruby
    Revision = %q$Revision$.split[1]
```
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When `-F` option is given to strip comments in bundled_gems file, `$;`
is set to the regexp.

On the other hand, old net/http.rb contained old CVS keyword expansion
that is `split` with the default separator, and non-nil `$;` causes a
warning.

```ruby
    Revision = %q$Revision$.split[1]
```
</pre>
</div>
</content>
</entry>
<entry>
<title>Extract last-modified time after fetch completes</title>
<updated>2025-07-03T05:29:48+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-07-03T04:29:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=5817e58a60354050cfa059ec8e89202b6e9598d4'/>
<id>5817e58a60354050cfa059ec8e89202b6e9598d4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Prefer autotools repository mirror for build-aux files</title>
<updated>2025-07-03T05:29:48+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-07-03T04:23:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=319062e4a0608c474e9c934fc4a1171ea2aa1269'/>
<id>319062e4a0608c474e9c934fc4a1171ea2aa1269</id>
<content type='text'>
gcc master is still using 2021 version files.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
gcc master is still using 2021 version files.
</pre>
</div>
</content>
</entry>
<entry>
<title>Drop HTTP support in downloader.rb</title>
<updated>2025-07-03T05:29:48+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-07-03T04:19:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=9782bd52353526a50b77ddba3687d7e921d06eaa'/>
<id>9782bd52353526a50b77ddba3687d7e921d06eaa</id>
<content type='text'>
The only use case is access to `repo.or.cz`, and it redirects HTTP
requests to HTTPS now.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The only use case is access to `repo.or.cz`, and it redirects HTTP
requests to HTTPS now.
</pre>
</div>
</content>
</entry>
<entry>
<title>tool/downloader.rb: Stop caching already existing files</title>
<updated>2025-02-13T06:35:31+00:00</updated>
<author>
<name>Yuta Saito</name>
<email>kateinoigakukun@gmail.com</email>
</author>
<published>2025-02-12T11:43:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d35cc0cc772b48c5aaba354e7084278da68f44e4'/>
<id>d35cc0cc772b48c5aaba354e7084278da68f44e4</id>
<content type='text'>
Previously, the script was caching any file already present in the
destination directory, regardless of its origin. This caused issues
when the directory contained files copied from external sources like
`autoreconf --install`.

For example:
1. `./autogen.sh --install` copies `config.guess` and `config.sub`
   from the system to `./tool`.
2. `ruby tool/downloader.rb -d tool -e gnu config.guess config.sub`
   treats those files as if they were downloaded and caches them.
3. Removing the files: `rm tool/config.guess tool/config.sub`.
4. Running the downloader again, it mistakenly restores the cached
   files instead of downloading fresh versions.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, the script was caching any file already present in the
destination directory, regardless of its origin. This caused issues
when the directory contained files copied from external sources like
`autoreconf --install`.

For example:
1. `./autogen.sh --install` copies `config.guess` and `config.sub`
   from the system to `./tool`.
2. `ruby tool/downloader.rb -d tool -e gnu config.guess config.sub`
   treats those files as if they were downloaded and caches them.
3. Removing the files: `rm tool/config.guess tool/config.sub`.
4. Running the downloader again, it mistakenly restores the cached
   files instead of downloading fresh versions.
</pre>
</div>
</content>
</entry>
<entry>
<title>downloader.rb: Use keyword arguments</title>
<updated>2025-01-16T06:35:50+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-01-16T06:35:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=0d6506170e8e990e90001cb30f0fa67176ed1710'/>
<id>0d6506170e8e990e90001cb30f0fa67176ed1710</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Ignore errors on prerelease gems</title>
<updated>2024-03-27T07:18:14+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2024-03-27T06:48:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=cbc11bcb63ccebd8fc3f12362b8d6dbcf06d7fdd'/>
<id>cbc11bcb63ccebd8fc3f12362b8d6dbcf06d7fdd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Deprecate `--dryrun` options in favor of `--dry-run`</title>
<updated>2024-03-15T05:12:08+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2024-03-15T05:12:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=823727538e0b32fc7e7b74c05299991fd587bf32'/>
<id>823727538e0b32fc7e7b74c05299991fd587bf32</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>downloader.rb: Add `--help` option</title>
<updated>2024-03-15T05:11:16+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2024-03-15T05:11:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=eceb36c7b9c71d7d230c104a486c3ba1a5afd8f9'/>
<id>eceb36c7b9c71d7d230c104a486c3ba1a5afd8f9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>downloader.rb: unlink broken symlink before caching to fix ENOENT</title>
<updated>2023-07-27T21:09:08+00:00</updated>
<author>
<name>Alan Wu</name>
<email>XrXr@users.noreply.github.com</email>
</author>
<published>2023-07-27T21:09:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=83f9d80c0b0b7752e490abb45145073d8d0e656d'/>
<id>83f9d80c0b0b7752e490abb45145073d8d0e656d</id>
<content type='text'>
On GitHub CI, the downloader's cache is shared across different jobs.
For some systems, the cached config.guess ends up being a symlink to
/usr/share/autoconf/build-aux/config.guess and containers that don't
have that file end up consuming the cache anyways, leading to ENOENT
when trying to cache the downloaded file.

This error happened on forks:
 - https://github.com/XrXr/ruby/actions/runs/5675262636/job/15380232344
 - https://github.com/peterzhu2118/ruby/actions/runs/5684765421/job/15408188728</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
On GitHub CI, the downloader's cache is shared across different jobs.
For some systems, the cached config.guess ends up being a symlink to
/usr/share/autoconf/build-aux/config.guess and containers that don't
have that file end up consuming the cache anyways, leading to ENOENT
when trying to cache the downloaded file.

This error happened on forks:
 - https://github.com/XrXr/ruby/actions/runs/5675262636/job/15380232344
 - https://github.com/peterzhu2118/ruby/actions/runs/5684765421/job/15408188728</pre>
</div>
</content>
</entry>
</feed>
