[#97063] [Ruby master Bug#16608] ConditionVariable#wait should return false when timeout exceeded — shugo@...

Issue #16608 has been reported by shugo (Shugo Maeda).

10 messages 2020/02/05

[#97084] [Ruby master Feature#16614] New method cache mechanism for Guild — ko1@...

Issue #16614 has been reported by ko1 (Koichi Sasada).

18 messages 2020/02/07

[#97248] [Ruby master Bug#16651] Extensions Do Not Compile on Mingw64 — cfis@...

Issue #16651 has been reported by cfis (Charlie Savage).

17 messages 2020/02/24

[#97289] [Ruby master Bug#16658] `method__cache__clear` DTrace hook was dropped without replacement — v.ondruch@...

Issue #16658 has been reported by vo.x (Vit Ondruch).

9 messages 2020/02/27

[#97307] [Ruby master Feature#16663] Add block or filtered forms of Kernel#caller to allow early bail-out — headius@...

Issue #16663 has been reported by headius (Charles Nutter).

29 messages 2020/02/28

[#97310] [Ruby master Feature#16665] Add an Array#except_index method — alexandr1golubenko@...

Issue #16665 has been reported by alex_golubenko (Alex Golubenko).

12 messages 2020/02/29

[ruby-core:97251] [Ruby master Feature#16652] Use RubyGems facilities to install Gems during Ruby installation

From: v.ondruch@...
Date: 2020-02-24 17:10:45 UTC
List: ruby-core #97251
Issue #16652 has been reported by vo.x (Vit Ondruch).

----------------------------------------
Feature #16652: Use RubyGems facilities to install Gems during Ruby installation
https://bugs.ruby-lang.org/issues/16652

* Author: vo.x (Vit Ondruch)
* Status: Open
* Priority: Normal
----------------------------------------
Currently, `tools/rbinstall` uses quite some custom code to install gems instead of using functionality available in RubyGems. I don't think this is good, because the code is non transparent ATM and it is duplicating functionality, which is already available and tested in RubyGems. Also, it intoduces its own concepts such as `$script_mode` vs `$prog_mode`. So I opened two PRs, gradually implementing this.

The first PR [1] uses `Gem::Package` like object and duck typing instead of monkey patching.

1. This is similar to what RubyGems do and it is less magic [2].
2. It avoids deprecated code paths in RubyGems [3].

The second PR [4] builds on the top of the first one and uses `UnpackedInstaller` to install default gems (it would be probably nice to get `UnpackedInstaller` into RubyGems, but I am not sure how it could be invoked). As a bonus, it removes the pregenerated binstubs. These are now generated by `Gem::Installer` instead.



[1]: https://github.com/ruby/ruby/pull/2515
[2]: https://github.com/rubygems/rubygems/blob/92892bbc3adba86a90756c385433835f6761b8da/lib/rubygems/installer.rb#L151
[3]: https://github.com/rubygems/rubygems/blob/92892bbc3adba86a90756c385433835f6761b8da/lib/rubygems/installer.rb#L187
[4]: https://github.com/ruby/ruby/pull/2545



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next