guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] build: ruby: Rewrite build system to use gem archives.


From: Thompson, David
Subject: Re: [PATCH] build: ruby: Rewrite build system to use gem archives.
Date: Tue, 18 Aug 2015 08:34:44 -0400

On Tue, Aug 18, 2015 at 2:40 AM, Ricardo Wurmus <address@hidden> wrote:
>
> Thompson, David <address@hidden> writes:
>
>>> The major change from the previous version of this patch is that I
>>> figured how to unpack the source gem, allow the package build script
>>> to make any necessary dynamic patches, and then install a repacked gem
>>> as opposed to the source gem.
>>
>> I found a problem with this system when it came to running certain
>> test suites that used Bundler to read the gemspec.  A lot of upstream
>> gemspec include things like shell commands to run 'git ls-files' and
>> things.  In the former build system, the 'gitify' phase took care of
>> this.  Now, we can more easily deal with it by asking the 'gem'
>> utility to generate a gemspec for us based on the source gem archive.
>> Hope that wasn't too confusing for the non-Rubyists.
>
> I just read through the patch set.  Looks good!  (Note: I haven’t
> actually tested this yet.)
>
> It seems that you had to disable tests for “useragent”, “arel”, “git”; I
> assume that’s because the gems do not come with the necessary test
> files.  I remember a link to a discussion you once shared, in which it
> was said that the declaration of test files in gemspec manifests is
> deprecated.  Do you think the absence of tests in the published gems is
> going to be a problem for many more packages?

It's hit and miss.  Some have them, some don't.  I imported a bunch of
gems to mess around with last night and a good number of them had
runnable test suites, but not all.  Pjotr showed me that the official
RubyGems guide recommends including test files:
http://guides.rubygems.org/what-is-a-gem/

I had a conversation with Mark about this in the context of dealing
with Node packages, which are definitely more of a pain than gems, and
he convinced me that we cannot let the perfect get in the way of the
good.  Making it really easy to use the gem archives that Ruby
developers are releasing with Guix is an important first step to
making packaging better for everyone.  So, if we have to disable some
test suites to get our Ruby support off the ground, so be it.

Thanks for the review,

- Dave



reply via email to

[Prev in Thread] Current Thread [Next in Thread]