Bug 1412841 - Base Runtime FTBFS: rubygem-hpricot-0:0.8.6-12.fc24 unnecessary dependency
Summary: Base Runtime FTBFS: rubygem-hpricot-0:0.8.6-12.fc24 unnecessary dependency
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Deadline: 2017-01-26
Product: Fedora
Classification: Fedora
Component: rubygem-hpricot
Version: 25
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Petr Šabata
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: BaseRuntimeFTBFS
TreeView+ depends on / blocked
 
Reported: 2017-01-12 23:07 UTC by Merlin Mathesius
Modified: 2017-02-06 07:06 UTC (History)
8 users (show)

Fixed In Version: rubygem-hpricot-0.8.6-16.fc26
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-02-06 07:06:35 UTC
Type: Bug


Attachments (Terms of Use)
patch to remove obsolete dependencies (4.21 KB, patch)
2017-01-12 23:07 UTC, Merlin Mathesius
no flags Details | Diff
patch to remove unnecessary dependency (1.25 KB, patch)
2017-01-16 20:14 UTC, Merlin Mathesius
no flags Details | Diff
Conditionalize the use of ragel (1.48 KB, patch)
2017-01-25 13:03 UTC, Petr Šabata
no flags Details | Diff

Description Merlin Mathesius 2017-01-12 23:07:01 UTC
Created attachment 1240138 [details]
patch to remove obsolete dependencies

Version-Release number of selected component:
rubygem-tilt-0:2.0.4-1.fc25

Description of problem:
When attempting to rebuild portions of the frozen package set of Fedora 25 for the Base Runtime project, it was discovered that the package ragel failed to build from source. Some work was done to address that problem (https://bugzilla.redhat.com/show_bug.cgi?id=1382861), but it still fails to build from source for all necessary architectures--with no fix in sight.

What do the ragel problems have to do with rubygem-tilt, you ask?

rubygem-tilt has a build time dependency upon /usr/bin/ronn--which is provided by package rubygem-ronn. rubygem-ronn, in turn, has a dependency upon the rubygem-hpricot package, which has a build time dependency upon the ragel package. Additionally, rubygem-tilt is the only package that is part of Base Runtime that depends upon rubygem-ronn, and thus rubygem-hpricot and ragel as well. As a result, the Base Runtime module cannot be fully rebuilt from source.

Also, the upstream sources for both rubygem-ronn and rubygem-hpricot are no longer maintained, so it would be good to get rid of the obsolete dependency chain.

Fortunately, the only need rubygem-tilt has for ronn is to convert the small tilt man page from the "ronn" dialect of Markdown to "roff" format during build time. Thus, the problem can be easily remedied by including a pre-generated man page with the rubygem-tilt package. Attached is a patch to do just that.

Please apply the patch or respond with a reason it should not be applied within two weeks. After that time, a provenpackager will go ahead and apply it.

Comment 1 Vít Ondruch 2017-01-16 16:53:50 UTC
I think much better idea is dropping the Ragel dependency from hpricot, since it is currently (for 9 years already, if I read the changelog correctly) not used, if I am not mistaken.

It could be used to regenerate the .c sources, but it is not mandated [1] nor it is currently done.



[1] https://fedoraproject.org/wiki/Packaging:Guidelines#Use_of_pregenerated_code

Comment 2 Merlin Mathesius 2017-01-16 20:14:52 UTC
Created attachment 1241397 [details]
patch to remove unnecessary dependency

Patch to eliminate unnecessary rubygem-hpricot build-time dependency on ragel.

Comment 3 Merlin Mathesius 2017-01-16 20:20:50 UTC
Eliminating the unnecessary rubygem-hpricot build-time dependency on ragel is indeed the better idea. Thank you for pointing that out.

A patch for correcting rubygem-hpricot is attached.

Comment 4 Vít Ondruch 2017-01-17 07:48:33 UTC
I guess that neither the rake dependency is required ...

Comment 5 Petr Šabata 2017-01-25 12:53:00 UTC
Mamoru,

I see you've updated the Rawhide SPEC to use Ragel again.  Would you mind making the whole thing optional and disabled by default, for example using a bcond macro?

As Merlin mentioned in the original comment, there are some issues with Ragel (or more precisely, its dependency chain) on certain architectures.  We'd prefer not having to deal with it, at least not right now.

Comment 6 Petr Šabata 2017-01-25 13:03:36 UTC
Created attachment 1244260 [details]
Conditionalize the use of ragel

Should be applied on top of 3f6e0dd190b314f875d7024938b66a762e34eba1.

Comment 7 Petr Šabata 2017-01-27 11:50:39 UTC
I'm going to apply the patch.  Mamoru, if you strongly feel we should regenerate the sources by default, despite the issues with the build dependency chain, let's discuss it here.

Comment 8 Mamoru TASAKA 2017-01-27 12:22:56 UTC
Well, I am going to revert this for now, please make your effort to make colm build pass first, thank you.

Comment 9 Petr Šabata 2017-01-28 09:57:47 UTC
Fair enough.  But since you made the dependency necessary again, what's the point in keeping this report open?  There are no issues here.

Comment 10 Mamoru TASAKA 2017-01-31 07:28:06 UTC
So I tried debugging colm issue for about 2 weeks but still no luck (valgrind shows nothing, imvoking from gdb directory does not crash... I suspect this is memory initialization issue, however still I cannot figure out), so for now I gave up. I hope someone who knows better than me would see what is happening on bug 1402582 (as ragel is anyway BR for many packages)..........

* Tue Jan 31 2017 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.8.6-16
- Bump release
- Kill ragel BR for now due to armv7hl difficulty (ref: bug 1402582)

By the way, rawhide fix only is okay? F-25 backport is also required?

Comment 11 Petr Šabata 2017-01-31 16:03:44 UTC
(In reply to Mamoru TASAKA from comment #10)
> By the way, rawhide fix only is okay? F-25 backport is also required?

Rawhide is sufficient.

Comment 12 Mamoru TASAKA 2017-02-06 07:06:35 UTC
(In reply to Petr Šabata from comment #11)
> (In reply to Mamoru TASAKA from comment #10)
> > By the way, rawhide fix only is okay? F-25 backport is also required?
> 
> Rawhide is sufficient.

Okay, once closing.


Note You need to log in before you can comment on or make changes to this bug.