https://bugs.ruby-lang.org/https://bugs.ruby-lang.org/favicon.ico?17113305112019-02-18T18:35:56ZRuby Issue Tracking SystemRuby master - Feature #15611: Shipping Bundler as a bundled gem, not a default gemhttps://bugs.ruby-lang.org/issues/15611?journal_id=768482019-02-18T18:35:56ZEregon (Benoit Daloze)
<ul><li><strong>Related to</strong> <i><a class="issue tracker-5 status-6 priority-4 priority-default closed" href="/issues/15610">Misc #15610</a>: Could bundler & rubygems be shipped in site_ruby?</i> added</li></ul> Ruby master - Feature #15611: Shipping Bundler as a bundled gem, not a default gemhttps://bugs.ruby-lang.org/issues/15611?journal_id=768512019-02-19T00:59:43Zmame (Yusuke Endoh)mame@ruby-lang.org
<ul></ul><p>As far as I know, bundler is planned to be merged to rubygems. If shipping bundler as a gem is ephemeral, it looks less significant to me whether bundler should be a bundled gem or a default one.</p>
<p>In fact, rubygems already includes some special code for bundler, e.g., <a href="https://github.com/rubygems/rubygems/blob/master/lib/rubygems/bundler_version_finder.rb" class="external">bundler_version_finder.rb</a>. I think that it is going to be unreasonable to separate bundler as a gem.</p>
<p>Just my two cents,</p> Ruby master - Feature #15611: Shipping Bundler as a bundled gem, not a default gemhttps://bugs.ruby-lang.org/issues/15611?journal_id=768522019-02-19T09:25:30Zdeivid (David Rodríguez)
<ul></ul><p>Yes, I was going to comment exactly along the same lines mame presents.</p>
<p>Also, moving bundler to a default gem would still keep the same problem in <a href="https://bugs.ruby-lang.org/issues/15610" class="external">https://bugs.ruby-lang.org/issues/15610</a>, but only for the rubygems code. Although to be honest, having duplicated versions of the rubygems code in rubylibdir and site_ruby has not yet led to real world issues that I know of. But still, moving both to site_ruby feels cleaner and safer to me.</p> Ruby master - Feature #15611: Shipping Bundler as a bundled gem, not a default gemhttps://bugs.ruby-lang.org/issues/15611?journal_id=768532019-02-19T12:26:21ZEregon (Benoit Daloze)
<ul></ul><blockquote>
<p>As far as I know, bundler is planned to be merged to rubygems.</p>
</blockquote>
<p>What would that mean exactly? (that's a question for Bundler/RubyGems devs)<br>
Will both repositories become one and the code be reused for both parts? That's what I would consider "merged".<br>
Otherwise, it looks like two different softwares with different versions. Currently it doesn't look merged at all to me.</p>
<blockquote>
<p>If shipping bundler as a gem is ephemeral, it looks less significant to me whether bundler should be a bundled gem or a default one.</p>
</blockquote>
<p>Not sure how ephemeral, but right now bundler is a default gem in the 2.6 releases, and as argued above I think it's an actual issue for it to be a default gem.</p>
<blockquote>
<p>Also, moving bundler to a default gem would still keep the same problem in <a href="https://bugs.ruby-lang.org/issues/15610" class="external">https://bugs.ruby-lang.org/issues/15610</a>, but only for the rubygems code. Although to be honest, having duplicated versions of the rubygems code in rubylibdir and site_ruby has not yet led to real world issues that I know of. But still, moving both to site_ruby feels cleaner and safer to me.</p>
</blockquote>
<p>RubyGems has been in stdlib since 1.9, so there is some history there, and RubyGems itself cannot be a gem of course.<br>
But I agree, it would be more consistent to always have RubyGems be installed the same directory.<br>
I wonder what should happen when upgrading RubyGems fails while copying files though, maybe having a safe copy somewhere would be a good way to deal with that.</p>
<p>I think it would be better if every part of stdlib that can be upgraded could be cleanly removed and handled like a real gem, which seems very complicated for stdlibs directly under <code>lib/</code>.<br>
This also applies for other default gems part of the stdlib.</p> Ruby master - Feature #15611: Shipping Bundler as a bundled gem, not a default gemhttps://bugs.ruby-lang.org/issues/15611?journal_id=768572019-02-19T17:56:47Zdeivid (David Rodríguez)
<ul></ul><blockquote>
<p>Also, moving bundler to a default gem would still keep the same problem...</p>
</blockquote>
<p>When I said "default gem" before I meant "bundled gem", but I think you understood me... :)</p>
<blockquote>
<p>¿What would that mean exactly? (that's a question for Bundler/RubyGems devs)<br>
Will both repositories become one and the code be reused for both parts? That's what I would consider "merged".<br>
Otherwise, it looks like two different softwares with different versions. Currently it doesn't look merged at all to me.</p>
</blockquote>
<p>Yeah, that's what it means. But it's currently only a long term goal.</p>
<blockquote>
<p>RubyGems has been in stdlib since 1.9, so there is some history there, and RubyGems itself cannot be a gem of course.<br>
But I agree, it would be more consistent to always have RubyGems be installed the same directory.<br>
I wonder what should happen when upgrading RubyGems fails while copying files though, maybe having a safe copy somewhere would be a good way to deal with that.</p>
</blockquote>
<p>Right, I guess that's precisely why rubygems is currently shipped in rubylibdir, so that the default installation is never changed?</p> Ruby master - Feature #15611: Shipping Bundler as a bundled gem, not a default gemhttps://bugs.ruby-lang.org/issues/15611?journal_id=768872019-02-26T08:46:13Zhsbt (Hiroshi SHIBATA)hsbt@ruby-lang.org
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Assigned</i></li></ul> Ruby master - Feature #15611: Shipping Bundler as a bundled gem, not a default gemhttps://bugs.ruby-lang.org/issues/15611?journal_id=769902019-03-08T11:53:17Zhsbt (Hiroshi SHIBATA)hsbt@ruby-lang.org
<ul><li><strong>Status</strong> changed from <i>Assigned</i> to <i>Rejected</i></li></ul><blockquote>
<p>Is there a particular reason to have Bundler as a default gem?</p>
</blockquote>
<p>Already <a class="user active user-mention" href="https://bugs.ruby-lang.org/users/18">@mame (Yusuke Endoh)</a> said. Bundler will merge into RubyGems in the feature. In fact, after RubyGems 2.7+ integrated the part of dependency resolver of Bundler.<br>
Therefore We should test Bundler and RubyGems every commits of CRuby. If We shipped Bundler as bundled gems, We couldn't test its integrated parts.</p>
<p>PS. The RubyGems and Bundler team are going to discuss its details at before/after Dev MTG in RubyKaig 2019.</p>