Commit graph

14675 commits

Author SHA1 Message Date
Nobuyoshi Nakada
9647dca143 [ruby/tempfile] [DOC] Fix a typo
ruby/ruby#13636

366d9ccb8f

Co-Authored-By: Tim Smith <tsmith84@gmail.com>
2025-06-17 09:41:45 +00:00
David Rodríguez
0a62e82ac4
[rubygems/rubygems] Fix gem install sometimes compiling the wrong source files
If a previous copy of a gem is already installed, RubyGems will not
reinstall the gem but only recompile its extensions. This seems like a
good idea, but only if the gem is being installed from the registry.

If we are installing a locally built package, then the package should be
completely reinstalled and extensions compiled from the sources in the
locally built package, not from the sources in the previous
installation.

1c282d98d5
2025-06-17 15:09:34 +09:00
David Rodríguez
ddb412f680 [rubygems/rubygems] Fix redefinition warnings when using modern RubyGems with old Bundler
ce7e8e92ca
2025-06-16 10:03:36 +09:00
Cody Cutrer
22a7f6b6c2 [rubygems/rubygems] Recognize JRuby loaded from a classloader, not just any JAR
Such is the case if you embed JRuby into an application dynamically (such
as via OSGi). From my test environment:

```
irb(main):006:0> $LOADED_FEATURES.grep(/cli.rb/)
=> ["uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/cli.rb"]
```

75ac5d46a7
2025-06-13 12:55:14 +09:00
Samuel Giddins
73532ecf3a [rubygems/rubygems] Update bundled tls certs
By running tool/update_bundled_ca_certificates.rb

Signed-off-by: Samuel Giddins <segiddins@segiddins.me>

54f5278450
2025-06-13 12:55:13 +09:00
Hiroshi SHIBATA
166ff187bd [rubygems/rubygems] Removed ccache or sccache from args of Rust builder
```
 "  = note: some arguments are omitted. use `--verbose` to show all linker arguments\n" +
 "  = note: error: unexpected argument '-W' found\n" +
 "          \n" +
 "            tip: to pass '-W' as a value, use '-- -W'\n" +
 "          \n" +
 "          Usage: sccache [OPTIONS] <--dist-auth|--debug-preprocessor-cache|--dist-status|--show-stats|--show-adv-stats|--start-server|--stop-server|--zero-stats|--package-toolchain <EXE> <OUT>|CMD>\n" +
 "          \n" +
 "          For more information, try '--help'.\n" +
 "          \n" +
```

45e688ae62
2025-06-12 14:28:43 +09:00
Joshua Young
8abb87b9c7 [rubygems/rubygems] Remove duplicate documentation for --changelog flag
9f1d07685f
2025-06-12 08:40:51 +09:00
David Rodríguez
3fdaa6a19c [rubygems/rubygems] Fix typos in some documentation lists making them render incorrectly
19739ba71c
2025-06-12 08:40:50 +09:00
David Rodríguez
ca7bd59794 [rubygems/rubygems] Update man pages month
3e4687616a
2025-06-12 08:40:50 +09:00
Earlopain
970813d982 [ruby/prism] Fix parser translator during string escaping with invalid utf-8
Instead, prefer `scan_byte` over `get_byte` since that already returns the byte as an integer, sidestepping conversion issues.

Fixes https://github.com/ruby/prism/issues/3582

7f3008b2b5
2025-06-11 18:07:43 +00:00
Nobuyoshi Nakada
51118fa2da [ruby/net-http] Support pretty_print
bfc60454f6
2025-06-11 05:04:16 +00:00
Hiroshi SHIBATA
51b70d106a [ruby/net-http] Don't set content type by default
Fixes https://github.com/ruby/net-http/issues/205

002441da1e
2025-06-11 03:35:11 +00:00
David Rodríguez
dba72134de [rubygems/rubygems] Fix gem pristine sometimes not resetting extensions
If `gem pristine foo` is run, and there's a default copy of foo, only
executables for it are reset. However, that was causing other copies of
`foo` to only reset executables, which is unexpected.

We should not modify `options[:only_executables]`, but respect its value
for every gem, and make sure special handling for default gems does not
leak to other gems.

2c3039f1b0
2025-06-11 08:48:57 +09:00
Samuel Giddins
7e3d271f76 [rubygems/rubygems] Install the best matching gem for the current platform in gem install
Instead of picking essentially a random matching platform

Signed-off-by: Samuel Giddins <segiddins@segiddins.me>

3727096297
2025-06-11 08:48:56 +09:00
Randy Stauner
b5beb19825 [rubygems/rubygems] Validate dependencies when doing bundle install
b0983f392f
2025-06-11 08:48:55 +09:00
David Rodríguez
ca1c46d33c [rubygems/rubygems] Ignore local specifications if they have incorrect dependencies
Currently ruby-dev installs an incorrect gemspec for rdoc, that does not
declare its dependency on psych.

This seems like a ruby-core bug, but it seems best for Bundler to ignore
it, go with the remote specification instead, and print a warning.

227cafd657
2025-06-06 10:22:29 +09:00
Samuel Giddins
c0a1e877b3
Move most of Bundler::GemHelpers to Gem::Platform
This will help centralize wheel platform selection logic eventually

Signed-off-by: Samuel Giddins <segiddins@segiddins.me>
2025-06-06 10:22:18 +09:00
Thomas Marshall
ee55b82b34
[rubygems/rubygems] Cache commit SHA ref revisions
If the `ref` option is a specific commit SHA, we can check to see if
it's already fetched locally. If it is, then we don't need to re-fetch
it from the remote.

The `ref` option might not be a commit SHA, so we're using the `#commit`
method which returns the full SHA if it's a commit ref, or the locked
revision, or nil.

This is a small improvement that will make `bundle update` slightly
faster in cases for git-sourced gems pinned to a specific commit.

f434c2e66c
2025-06-06 10:09:14 +09:00
David Rodríguez
b9e3edb3e6 [rubygems/rubygems] Slightly simplify locked specification source replacement
22f0a07377
2025-06-05 19:12:46 +09:00
David Rodríguez
970eac1530 [rubygems/rubygems] Fix git source unlocking for multi-gem repositories like Rails
If you have

```
gem "rails", git: "https://github.com/rails/rails"
```

and then explicitly pin to an older ref, like

```
gem "rails", git: "https://github.com/rails/rails", ref: "99bacb5aa8"
```

Then `bundle install` fails, because locked sources fail to be updated
to use the new source.

This commit fixes the problem by making sure get their source properly
replaced.

5de8c2e0cf
2025-06-05 19:12:46 +09:00
David Rodríguez
e4933e1d93 [rubygems/rubygems] Fix bundle update --bundler when restarts disabled
There's no reason why we should not update bundler as requested, even if
restarts are disabled.

e59acd2a0d
2025-06-05 19:12:45 +09:00
David Rodríguez
5cf07c1e8f [rubygems/rubygems] Look in configured path when checking if self-update version is installed
1ce0882e6f
2025-06-05 19:12:44 +09:00
David Rodríguez
0e6805eb31 [rubygems/rubygems] Refactor restarts to not need memoizing the restart version
a9d80a7dcb
2025-06-05 19:12:43 +09:00
David Rodríguez
e74008bfc9 [rubygems/rubygems] Reduce duplication a bit
0574c62fc0
2025-06-05 19:12:40 +09:00
Antoine Marguerie
11492bd88d [rubygems/rubygems] Fix headings levels in Changelogs
And adapt release scripts and configuration to the new structure.

3deb1aedae
2025-06-05 19:12:39 +09:00
Nicholas La Roux
803dae70cb [rubygems/rubygems] Deprecate x64-mingw32 legacy Windows platform in favor of x64-mingw-ucrt
71c969be44
2025-06-05 19:12:37 +09:00
Hiroshi SHIBATA
a84f734343
Added warning for CGI.parse 2025-06-04 12:47:29 +09:00
TangRufus
204e3c58e1 [rubygems/rubygems] Only ignore .gitignore when generating gems with git
aec5a7887d
2025-06-03 08:06:39 +09:00
TangRufus
9024caa1d6 [rubygems/rubygems] Ignore Gemfile, gems.rb & gems.locked according to init_gems_rb preference
88aeb66f41
2025-06-03 08:06:31 +09:00
TangRufus
2667df27e9 [rubygems/rubygems] Remove .git from spec.files default ignore list
4f96e12ff3
2025-06-03 08:06:13 +09:00
TangRufus
ab63fb0e3b [rubygems/rubygems] Rename ignore_files to ignore_paths
c07e3a88aa
2025-06-03 08:06:05 +09:00
TangRufus
636ff31c4e [rubygems/rubygems] Add .gitignore, gems.rb & gems.locked into spec.files default ignore list
6390ed7a2b
2025-06-03 08:05:49 +09:00
TangRufus
63ae1d289a [rubygems/rubygems] Remove features/ from spec.files default ignore list
77ba4192a7
2025-06-03 08:05:39 +09:00
TangRufus
68345e2930 [rubygems/rubygems] Only ignore test/ when generating gems with minitest or test-unit
c464f2036a
2025-06-03 08:05:31 +09:00
TangRufus
959bde8643 [rubygems/rubygems] Suffix .circleci with / in spec.files in the .gemspec template
e48c6beaf6
2025-06-03 08:05:07 +09:00
TangRufus
3691c5409d [rubygems/rubygems] Suffix .github with / in spec.files in the .gemspec template
edf13f7e60
2025-06-03 08:04:59 +09:00
TangRufus
68d64f464a [rubygems/rubygems] Exclude spec from spec.files in the .gemspec template only when using RSpec
a42387b8be
2025-06-03 08:04:49 +09:00
TangRufus
6b2088cf90 [rubygems/rubygems] Exclude .rspec from spec.files in the .gemspec template
331901941d
2025-06-03 08:04:39 +09:00
TangRufus
a7be563d0b [rubygems/rubygems] Exclude .rubocop.yml and .standard.yml from spec.files in the .gemspec template
9d937d4f7f
2025-06-03 08:04:32 +09:00
TangRufus
4802571729 [rubygems/rubygems] Remove appveyor from spec.files default ignore list
2f2046c97b
2025-06-03 08:04:18 +09:00
TangRufus
04a396409d [rubygems/rubygems] Refactor spec.files ignore list generation
c11539f325
2025-06-03 08:04:04 +09:00
Matthew Hively
21a14ea230
[rubygems/rubygems] Moved the REMEMBERING OPTIONS section to be after CONFIGURATION KEYS
Since the remembering options are discouraged, the preferred method should be explained first.

Slight tweak to wording

Fix documentation spec test as per suggested patch

9f082ccf31
2025-06-03 07:47:14 +09:00
Matthew Hively
f4a5247ce4
[rubygems/rubygems] Clarify how BUNDLE_DEPLOYMENT, BUNDLE_FROZEN and BUNDLE_PATH are connected
9ed20bddab
2025-06-03 07:47:14 +09:00
John Bampton
a763716a96
[rubygems/rubygems] misc: fix spelling
0e40e7d938
2025-06-03 07:47:14 +09:00
Nobuyoshi Nakada
5e64d5c7d9 [ruby/prism] [DOC] Markup __FILE__ as code, not emphasis
571ba378f5
2025-05-29 04:45:59 +00:00
Nobuyoshi Nakada
82c74e4282 [ruby/prism] [DOC] Stop rdoc from processing non-rdoc comments
de1faa1680
2025-05-29 04:45:59 +00:00
Nobuyoshi Nakada
22451f370e [ruby/prism] [DOC] Add code fences
641775e5fe
2025-05-29 04:45:58 +00:00
Nobuyoshi Nakada
991cf2dd4d [ruby/prism] [DOC] Specify markdown mode to RDoc
12af4e144e
2025-05-29 04:45:58 +00:00
John Bampton
bb4d9f3f61 [ruby/resolv] Update resolv.rb - fix spelling
65ce7f214b
2025-05-28 22:01:04 +00:00
Samuel Giddins
485ee6d7a3
[rubygems/rubygems] Remove backport of LATEST_RUBY_WITHOUT_PATCH_VERSIONS
Signed-off-by: Samuel Giddins <segiddins@segiddins.me>

24c8073b24
2025-05-26 11:46:12 +09:00