Request for help: remove bundler from ruby 2.6 port

Adam Weinberger adamw at adamw.org
Mon Dec 31 02:15:32 UTC 2018


On Sun, Dec 30, 2018 at 6:00 PM Pete Wright <pete at nomadlogic.org> wrote:
>
>
>
> On 12/30/18 4:31 PM, Adam Weinberger wrote:
> > On Sun, Dec 30, 2018 at 5:27 PM Pete Wright <pete at nomadlogic.org> wrote:
> >>
> >>
> >> On 12/29/18 5:35 PM, Yasuhiro KIMURA wrote:
> >>> From: Adam Weinberger <adamw at adamw.org>
> >>> Subject: Re: Request for help: remove bundler from ruby 2.6 port
> >>> Date: Sat, 29 Dec 2018 15:34:17 -0700
> >>>
> >>>> I think perhaps it's worth considering doing the opposite and,
> >>>> beginning with 2.6, install the entire standard library by default.
> >>>> Gems and stdlib exist side-by-side without problem, and many of the
> >>>> gems that are deleted are generally kept up-to-date.
> >>>>
> >>>> Even if we don't want to install the entire standard library, I'd at
> >>>> least strongly argue for including the most important gems (rake, gem,
> >>>> minitest, and bundler) by default. They are basic components of ruby
> >>>> itself, and ports should provide //optional// newer versions of them.
> >>> From: Pete Wright <pete at nomadlogic.org>
> >>> Subject: Re: Request for help: remove bundler from ruby 2.6 port
> >>> Date: Sat, 29 Dec 2018 16:41:32 -0800
> >>>
> >>>> +1 from me on this.
> >>>>
> >>>> i think the benefits of lowering the porting overhead combined with
> >>>> the fact that most ruby envs i've supported (and currently support)
> >>>> are built around the expectation that rake, gem and bundler are all
> >>>> available - so this would lower my administrative overhead as well.
> >>> Thank you for reply. Then I'm going to create full port and post here
> >>> again. But I'm away from this evening to next Saturday and can't
> >>> access development environment during that time. So if someone else
> >>> want to try it, please don't hesitate.
> >> I was able to build this on 13-CURRENT/amd64 today without issues. the
> >> ruby26 runtime seems OK after initial testing, but there is an issue
> >> with bundler26:
> >>
> >> $ /usr/local/bin/bundle26
> >> Traceback (most recent call last):
> >>       2: from /usr/local/bin/bundle26:23:in `<main>'
> >>       1: from /usr/local/lib/ruby/2.6/rubygems.rb:302:in `activate_bin_path'
> >> /usr/local/lib/ruby/2.6/rubygems.rb:283:in `find_spec_for_exe': can't
> >> find gem bundler (>= 0.a) with executable bundle (Gem::GemNotFoundException)
> >>
> >>
> >> i did verify that this package does not conflict with the existing
> >> rubygem-bundler and ruby24 ports.
> >>
> >> as a starting place I have created this PR:
> >> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=234509
> >>
> >> if i have time over the next couple days i'll take a closer look at how
> >> bundler is being built and see if can fix the above issue.
> > Bundler's whole purpose is to install gems using the 'gem' command,
> > which the ruby port specifically excludes. So, all the Bundler stuff
> > will have to be removed for the ruby26 port. Take a look at the
> > Makefile where we delete all the rake-related stuff; Bundler should be
> > removed in the same way.
> oh i see.  so dumb question, but it looks like rubygem-bundler depends
> on ruby24 and it's gems package.
>
> $ sudo pkg install rubygem-bundler
>
> New packages to be INSTALLED:
>      rubygem-bundler: 1.17.1 [FreeBSD]
>      ruby: 2.4.5_1,1 [FreeBSD]
>      ruby24-gems: 2.7.8 [FreeBSD]
>
>
> what is the proper way to get bundler to support 2.5 and 2.6?

Ruby selection is determined by DEFAULT_VERSIONS. In your /etc/make.conf, put:
DEFAULT_VERSIONS+=   ruby=2.5

# Adam


-- 
Adam Weinberger
adamw at adamw.org
https://www.adamw.org


More information about the freebsd-ports mailing list