aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* [ruby/cgi] Implement `CGI.url_encode` and `CGI.url_decode`Jean Boussier2022-08-161-8/+41
| | | | | | | | [Feature #18822] Ruby is somewhat missing an RFC 3986 compliant escape method. https://github.com/ruby/cgi/commit/c2729c7f33
* [rubygems/rubygems] Fix Ruby platform incorrectly removed on `bundle update`David Rodríguez2022-08-151-1/+1
| | | | https://github.com/rubygems/rubygems/commit/0d321c9e3a
* [ruby/error_highlight] Add a note about the current limitation of ↵Yusuke Endoh2022-08-121-0/+8
| | | | | | ErrorHighlight.spot https://github.com/ruby/error_highlight/commit/489ce80a62
* [ruby/error_highlight] Bump versionYusuke Endoh2022-08-101-1/+1
| | | | https://github.com/ruby/error_highlight/commit/6edf0a0a5d
* [ruby/error_highlight] Make backtrace_location keyword workYusuke Endoh2022-08-101-1/+3
| | | | | | We had to keep backtrace_location before opts is overwritten. https://github.com/ruby/error_highlight/commit/2735e4681a
* [ruby/error_highlight] Make ErrorHighlight.spot accept Exception ↵Yusuke Endoh2022-08-102-37/+54
| | | | | | | | | (https://github.com/ruby/error_highlight/pull/25) ... and move things from core_ext.rb to base.rb. This will confine CRuby-dependent things to ErrorHighlight.spot. https://github.com/ruby/error_highlight/commit/22d1dd7824
* Merge rubygems/bundler HEAD.Hiroshi SHIBATA2022-08-0970-267/+262
| | | | Pick from https://github.com/rubygems/rubygems/commit/dfbb5a38114640e0d8d616861607f3de73ee0199
* [ruby/rdoc] Allow multiple footnotes without in-between blank linesNobuyoshi Nakada2022-08-081-9/+25
| | | | | | | | | | | | https://github.com/ruby/ruby/commit/e4e054e3ce40 used four footnotes without blank lines. And the ChangeLog generated from that commit resulted in ``undefined method `parts' for nil`` error. For now, let a footnote terminated by the next footnote mark. Also refined the error message when undefined footnote is used. https://github.com/ruby/rdoc/commit/a7f290130b
* [ruby/rdoc] [DOC] Removes remaining old Markup Reference ↵Burdette Lamar2022-08-071-349/+0
| | | | | | (https://github.com/ruby/rdoc/pull/910) https://github.com/ruby/rdoc/commit/4e44c9c6cf
* [rubygems/rubygems] Fix yanked gems being unintentionally update when other ↵David Rodríguez2022-08-064-19/+23
| | | | | | | | | | | | | gems are unlocked This is a regression from a change intended to raise errors when user puts a gem under an incorrect source in the Gemfile by mistake. To fix the issue, we revert the change that caused it and implement it in a different way that restores the resolver independency from real specifications. Now it deals only with names and versions and does not try to materialize anything into real specifications before resolving. https://github.com/rubygems/rubygems/commit/d2bf1b86eb
* [rubygems/rubygems] Move comment where the actual replacement happensDavid Rodríguez2022-08-061-1/+1
| | | | https://github.com/rubygems/rubygems/commit/d60acdf80d
* [rubygems/rubygems] Remove unclear commentDavid Rodríguez2022-08-061-3/+0
| | | | https://github.com/rubygems/rubygems/commit/3a843c1ac7
* [rubygems/rubygems] Extract `SourceList#get_with_fallback`David Rodríguez2022-08-062-1/+5
| | | | https://github.com/rubygems/rubygems/commit/9dbc4757a8
* [rubygems/rubygems] Include backtrace with crashes by defaultDavid Rodríguez2022-08-051-1/+1
| | | | https://github.com/rubygems/rubygems/commit/3cc3bfd371
* [rubygems/rubygems] Automatically remove "ruby" from lockfile if incompleteDavid Rodríguez2022-08-052-0/+16
| | | | https://github.com/rubygems/rubygems/commit/69d0b4e10b
* Use $(bindir) for path to executable in mkmfAlan Wu2022-08-041-1/+5
| | | | | | | | | | | | | | | | For the macOS -bundle_loader linker option, we need a path to the Ruby exectuable. $(RUBY) is not necessarily a path since it could be a command line invocation. That happens during build with runruby.rb and can happen post installation if the user passes the --ruby option to a extconf.rb. Use $(bindir) to locate the executable instead. Before installation, $(bindir) doesn't exist, so we need to be able to override $(BUILTRUBY) in such situations so test-spec and bundled extensions could build. Use a new mkmf global, $builtruby, to do this; set it in fake.rb and in extmk.rb. Our build system is quite complex...
* Link ext bundles with bundle loader option for newer ld64Yuta Saito2022-08-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ld64 shipped with Xcode 14 emits a warning when using `-undefined dynamic_lookup`. ``` ld: warning: -undefined dynamic_lookup may not work with chained fixups ``` Actually, `-undefined dynamic_lookup` doesn't work when: 1. Link a *shared library* with the option 2. Link it with a program that uses the chained-fixup introduced from macOS 12 and iOS 15 because `-undefined dynamic_lookup` uses lazy-bindings and they won't be bound while dyld fixes-up by traversing chained-fixup info. However, we build exts as *bundles* and they are loaded only through `dlopen`, so it's safe to use `-undefined dynamic_lookup` in theory. So the warning produced by ld64 is false-positive, and it results failure of option checking in configuration. Therefore, it would be an option to ignore the warning during our configuration. On the other hand, `-undefined dynamic_lookup` is already deprecated on all darwin platforms except for macOS, so it's good time to get rid of the option. ld64 also provides `-bundle_loader <executable>` option, which allows to resolve symbols defined in the executable symtab while linking. It behaves almost the same with `-undefined dynamic_lookup`, but it makes the following changes: 1. Require that unresolved symbols among input objects must be defined in the executable. 2. Lazy symbol binding will lookup only the symtab of the bundle loader executable. (`-undefined dynamic_lookup` lookups all symtab as flat namespace) This patch adds `-bundle_loader $(RUBY)` when non-EXTSTATIC configuration by assuming ruby executable can be linked before building exts. See "New Features" subsection under "Linking" section for chained fixup https://developer.apple.com/documentation/xcode-release-notes/xcode-13-release-notes
* [rubygems/rubygems] Warn dangling symlinksDavid Rodríguez2022-08-042-11/+13
| | | | https://github.com/rubygems/rubygems/commit/425b78637f
* [rubygems/rubygems] Extract entry.full_name to a variableDavid Rodríguez2022-08-041-3/+4
| | | | https://github.com/rubygems/rubygems/commit/3973773005
* [ruby/irb] shortcut colorize_code to speedup pretty_printtompng2022-08-041-0/+3
| | | | https://github.com/ruby/irb/commit/8a074a6904
* [rubygems/rubygems] Fix `bundle outdated --strict`David Rodríguez2022-08-031-2/+2
| | | | | | | | | It should be an alias of `--filter-strict`. `--update-strict` is essentially a dummy option with no special behavior associated and should be deprecated. https://github.com/rubygems/rubygems/commit/ec1e5d83c8
* [rubygems/rubygems] Fix conservative updates regardless of `--strict`David Rodríguez2022-08-031-1/+1
| | | | https://github.com/rubygems/rubygems/commit/c9a1d69a8d
* Merge rubygems/bundler HEADHiroshi SHIBATA2022-08-0313-15/+19
| | | | Pick from https://github.com/rubygems/rubygems/commit/8331e63263081a6aa690d8025d2957f30c4e814a
* [rubygems/rubygems] fix platform matching for index specsIlya Dyakonov2022-08-031-2/+3
| | | | https://github.com/rubygems/rubygems/commit/f087f1b590
* [rubygems/rubygems] Warn (rather than crash) when setting `nil` ↵David Rodríguez2022-08-032-3/+13
| | | | | | specification versions https://github.com/rubygems/rubygems/commit/a4ba1a4d97
* [rubygems/rubygems] Array is already uniq, no need to deduplicate itDavid Rodríguez2022-08-021-1/+1
| | | | https://github.com/rubygems/rubygems/commit/3212ae14b7
* [rubygems/rubygems] Fix arguments for bundle-config(1) docsTakuya Noguchi2022-08-022-3/+3
| | | | | | Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/3e62ca776d
* [rubygems/rubygems] Preserve the previous behavior of raising an error when ↵David Rodríguez2022-08-021-1/+5
| | | | | | in frozen mode https://github.com/rubygems/rubygems/commit/6e35a6edfe
* [rubygems/rubygems] Don't discard candidates matching ruby metadataDavid Rodríguez2022-08-023-8/+13
| | | | | | | | | | Do dependency filtering and materialization in one step. Before, dependency filtering would not consider ruby metadata so it would discard variants that end up not being materializable in the end. https://github.com/rubygems/rubygems/commit/0c0d40d417 Co-authored-by: Ian Ker-Seymer <ian.kerseymer@shopify.com>
* [rubygems/rubygems] Materializing for resolution already filters platformsDavid Rodríguez2022-08-021-10/+15
| | | | https://github.com/rubygems/rubygems/commit/9f4ba9ebb0
* [rubygems/rubygems] Remove unnecessary local variableDavid Rodríguez2022-08-021-3/+2
| | | | https://github.com/rubygems/rubygems/commit/a997210473
* [rubygems/rubygems] Prefer reverse+find to select+lastDavid Rodríguez2022-08-021-2/+2
| | | | https://github.com/rubygems/rubygems/commit/ffb161bb69
* [rubygems/rubygems] Only need to filter platforms when materialization is ↵David Rodríguez2022-08-021-9/+7
| | | | | | not strict https://github.com/rubygems/rubygems/commit/9d878cbda0
* [rubygems/rubygems] This should go through the standard source search logicDavid Rodríguez2022-08-021-3/+1
| | | | https://github.com/rubygems/rubygems/commit/087e3e4e3b
* [rubygems/rubygems] Refactor materialization conditionsDavid Rodríguez2022-08-021-2/+2
| | | | https://github.com/rubygems/rubygems/commit/08e1554fb6
* [rubygems/rubygems] Fix incorrect force_ruby_platform propagationDavid Rodríguez2022-08-022-9/+14
| | | | | | | | It was just working by chance. (cherry picked from commit https://github.com/rubygems/rubygems/commit/16b2d6bfe893) https://github.com/rubygems/rubygems/commit/8f922d980f
* [rubygems/rubygems] Remove unnecessary special case for BundlerDavid Rodríguez2022-08-022-8/+2
| | | | https://github.com/rubygems/rubygems/commit/2777e79b8e
* [rubygems/rubygems] Move some logic to `LazySpecification#__materialize__`David Rodríguez2022-08-022-2/+2
| | | | https://github.com/rubygems/rubygems/commit/5e100df7c9
* [rubygems/rubygems] Fix crash when running `bundle outdated` in debug modeDavid Rodríguez2022-08-011-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously it would crash like this: ```` $ /Users/deivid/.asdf/installs/ruby/3.1.2/bin/ruby -I/Users/deivid/Code/rubygems/rubygems/bundler/spec -r/Users/deivid/Code/rubygems/rubygems/bundler/spec/support/artifice/fail.rb -r/Users/deivid/Code/rubygems/rubygems/bundler/spec/support/hax.rb /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/bin/bundle outdated --patch --strict --filter-patch Running `bundle outdated --filter-patch --patch --strict` with bundler 2.4.0.dev Found changes from the lockfile, re-resolving dependencies because bundler is unlocking Using a local server, bundler won't use the CompactIndex API Fetching source index from file:///Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/remote4/ Resolving dependencies... --- ERROR REPORT TEMPLATE ------------------------------------------------------- ``` RuntimeError: LazySpecification has not been materialized yet (calling :loaded_from []) /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/lazy_specification.rb:147:in `method_missing' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:214:in `gem_column_for' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:174:in `block in print_gems_table' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:173:in `map' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:173:in `print_gems_table' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:123:in `run' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli.rb:420:in `outdated' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli.rb:31:in `dispatch' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli.rb:25:in `start' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/exe/bundle:48:in `block in <top (required)>' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/friendly_errors.rb:120:in `with_friendly_errors' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/exe/bundle:36:in `<top (required)>' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/bin/bundle:25:in `load' /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/bin/bundle:25:in `<main>' ``` ```` https://github.com/rubygems/rubygems/commit/23c46f3b57
* [rubygems/rubygems] Update bundle-platform(1) manTakuya Noguchi2022-08-012-12/+29
| | | | | | Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/1c3736f5af
* [ruby/rdoc] Fix blockquote with word in verbatimNobuyoshi Nakada2022-07-301-6/+10
| | | | https://github.com/ruby/rdoc/commit/75eee668a5
* [rubygems/rubygems] Make `--standalone` play nice with `--local`David Rodríguez2022-07-302-2/+2
| | | | | | | | I'm not sure if using relative paths in the generated script is best for this case, since it makes the script not movable, but that can be improved later. https://github.com/rubygems/rubygems/commit/7f5bdbb842
* [rubygems/rubygems] No need to set anything at all unless standalone is givenDavid Rodríguez2022-07-301-2/+5
| | | | https://github.com/rubygems/rubygems/commit/d695c8da3e
* Update parser-text.rb with ↵Hiroshi SHIBATA2022-07-291-1/+1
| | | | https://github.com/ruby/racc/commit/4ecc13c9cbd4663268c34b0a5c99cf5307de7c60
* fix typo in Time#xmlschema documentationLuka Dornhecker2022-07-291-1/+1
|
* [ruby/optparse] Also accept '-' as an optional argument ↵konsolebox2022-07-291-3/+3
| | | | | | (https://github.com/ruby/optparse/pull/35) https://github.com/ruby/optparse/commit/f2b8318631
* Merge ruby/fileutils from ↵Hiroshi SHIBATA2022-07-291-1/+13
| | | | https://github.com/ruby/fileutils/commit/332025bc0299254f97a06d64e580f60fea4e7125
* [rubygems/rubygems] Fix dead links to deprecated bundle-package(1) with ↵Takuya Noguchi2022-07-294-10/+6
| | | | | | | | bundler-cache(1) Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/9c2e80a10f
* [rubygems/rubygems] Add package/pack aliases to man pages for cacheTakuya Noguchi2022-07-292-0/+13
| | | | | | Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/1685e3a9dc
* Merge rubygems master from ↵Hiroshi SHIBATA2022-07-2915-14/+89
| | | | https://github.com/rubygems/rubygems/commit/446cc57a7ccdf1924deb291be9571219e7ba8523