On Tue, Jun 21, 2022 at 1:43 PM Kurt Mosiejczuk <k...@openbsd.org> wrote:

> Ruby as of 3.0 stopped shipping Set.
>
> Sorted_set was split out of Set since it needed the external library
> rbtree for
> decent performance.
>
> Here are the three gems to import and make them available for Ruby 3.0/3.1
>
> I've marked the FLAVORS as just "ruby30 ruby31" since ruby27 has them built
> in and jRuby has its own implementations built in still.
>
> ok to import?
>

Ruby didn't stop shipping Set in Ruby 3.0, though it is true that
sorted_set was removed.  So importing ruby-set should not be necessary.
Looks like sorted-set has a runtime dependency on the set gem, you should
patch that out as it isn't necessary (make patch, then edit
$WRKSRC/.metadata).

I would remove the use of FLAVORS in rbtree and sorted_set.  It's not a
problem to build a Ruby 2.7 version, the Ruby 2.7 version is not built by
default anyway, and removing FLAVORS will ease maintenance burden when Ruby
3.2 is added.

For sorted_set, seems odd to comment out the .git* files in the package,
but leave the bin directory.  No objections to keeping it that way, though.

For rbtree, it has a C extension, so CONFIGURE_STYLE should be "ruby gem
ext". The ${GEM_LIB}/extensions directory should be removed from the
PLIST.  Most files from ${GEM_LIB}/gems/${DISTNAME} should be removed as
well.  I would change the rbtree PLIST to:

${GEM_LIB}/cache/${DISTNAME}.gem
${GEM_LIB}/gems/${DISTNAME}/
${GEM_LIB}/gems/${DISTNAME}/LICENSE
${GEM_LIB}/gems/${DISTNAME}/MANIFEST
${GEM_LIB}/gems/${DISTNAME}/README
${GEM_LIB}/gems/${DISTNAME}/lib/
@so ${GEM_LIB}/gems/${DISTNAME}/lib/rbtree.so
${GEM_LIB}/gems/${DISTNAME}/test.rb
${GEM_LIB}/specifications/${DISTNAME}.gemspec

Thanks,
Jeremy

Reply via email to