Bug 725200 - (raptor2) Review Request: raptor2 - RDF Parser Toolkit for Redland
Review Request: raptor2 - RDF Parser Toolkit for Redland
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Orcan Ogetbil
Fedora Extras Quality Assurance
:
: 723909 (view as bug list)
Depends On:
Blocks: kde-reviews
  Show dependency treegraph
 
Reported: 2011-07-24 00:14 EDT by Rex Dieter
Modified: 2011-08-22 11:13 EDT (History)
5 users (show)

See Also:
Fixed In Version: redland-1.0.14-1.fc16
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2011-08-22 11:13:37 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
oget.fedora: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Rex Dieter 2011-07-24 00:14:28 EDT
Spec URL: http://rdieter.fedorapeople.org/rpms/raptor2/raptor2.spec
SRPM URL: http://rdieter.fedorapeople.org/rpms/raptor2/raptor2-2.0.3-1.fc15.src.rpm
Description: 
Raptor is the RDF Parser Toolkit for Redland that provides
a set of standalone RDF parsers, generating triples from RDF/XML
or N-Triples.
Comment 1 Rex Dieter 2011-07-24 00:15:18 EDT
this is required for a rasqal/redland stack update.
Comment 2 Rex Dieter 2011-07-24 00:15:48 EDT
*** Bug 723909 has been marked as a duplicate of this bug. ***
Comment 3 Orcan Ogetbil 2011-07-24 10:26:44 EDT
Yes, the developers told me /usr/bin/rapper is the only real conflict in between. But it is nonessential, so can be excluded in one or the other package.

Now the big question is, how are we going to handle redland and rasqal builds? Which raptor will they link to?
Comment 4 Rex Dieter 2011-07-24 11:02:18 EDT
I figured raptor2, else the exercize is largely moot, from my pov.
Comment 5 Rex Dieter 2011-07-25 10:51:56 EDT
After taking a closer look, newer rasqal's (and soprano) require raptor2 anyway, so not using it isn't an option anyway.
Comment 6 Orcan Ogetbil 2011-07-25 11:09:51 EDT
Hmm, I wonder if our raptor1 applications will mind this combination (i.e. some might need raptor1 together with the redland that is compatible with raptor1). I'll have time tonight or tomorrow to check if we can get away with it easily.
Comment 7 Rex Dieter 2011-07-25 11:19:32 EDT
$ repoquery --whatrequires 'libraptor.so.1()(64bit)'
(pruned)
ardour-0:2.8.11-7.fc15.x86_64
flickcurl-0:1.18-2.fc15.x86_64
liblicense-0:0.8.1-5.x86_64
liblrdf-0:0.4.0-17.fc15.x86_64
librawstudio-0:2.0-1.fc15.x86_64
rasqal-0:0.9.21-2.fc15.x86_64
rawstudio-0:2.0-1.fc15.x86_64
redland-0:1.0.12-3.fc15.x86_64
sonic-visualiser-0:1.8-1.fc15.x86_64

of these, rasqal,redland are part of the stack in question.

of the others, I checked that sonic-visualizer, at least, only supports raptor(1)

so, that leaves,
ardour, flickcurl, liblicense, liblrdf, (lib)rawstudio to check.
Comment 8 Rex Dieter 2011-07-25 11:24:49 EDT
ardour here comes from indirect deps in liblrdf (probably overlinking)
liblrdf uses raptor(1) only, should be ok
flickcurl, ditto, ok
rawstudio BR's flickcurl, probably the same as ardour above (harmless overlinking)

So, looks like other packages that currently
BR: raptor-devel
should be unaffected by introducing raptor2.
Comment 9 Rex Dieter 2011-07-25 11:26:13 EDT
oh, and
liblicense uses raptor(1) only, similar to liblrdf, flickcurl.
Comment 10 Orcan Ogetbil 2011-07-25 22:08:00 EDT
(In reply to comment #7)
> 
> of the others, I checked that sonic-visualizer, at least, only supports
> raptor(1)
> 

correction: sonic-visualiser links to redland directly, and to raptor+rasqal indirectly. So it might or might not work. Fortunately, the code that uses redland is rather short, we can handle the port rather easily if there is need.

Thus we are good to go, but before we start the review, I have one last question: 

Does it make more sense to call the new package raptor2, or to make a new raptor1 package and update raptor package to raptor(2)? What do o holy guidelines recommend?
Comment 11 Rex Dieter 2011-07-25 22:18:34 EDT
internally, it's raptor2 everywhere (pkgconfig raptor2.pc, headers %_includedir/raptor, library, %{_libdir}/libraptor2.so, etc...), makes most sense to me to call it that, raptor2.
Comment 12 Rex Dieter 2011-07-25 22:19:21 EDT
typo there, headers => %_includedir/raptor2/
Comment 13 Orcan Ogetbil 2011-07-25 23:00:41 EDT
Alright then. Sold. I'll do the review.
Comment 14 Orcan Ogetbil 2011-07-25 23:48:31 EDT
Here is the review. There are a few blockers though:

* Fails to build on rawhide. I didn't look at it in detail yet.
   http://koji.fedoraproject.org/koji/taskinfo?taskID=3229864

* The main package does not have a group tag. It's interesting to see that rpmlint didn't complain.

* rpmlint:    raptor2.x86_64: W: no-documentation
There is a bunch of doc files (README, ChangeLog, etc) on the root of the source tree that we should probably package. Especially the licensing stuff.
Also examples/ directory could be packaged in devel subpackage.

* The LICENSE.txt says this is GPLv2+ or LGPLv2+ or ASL 2.0. However these files in src/ are GPLv3+:
   parsedate.c, turtle_parter.{c,h}
and this makes me confused.

* rpmlint says
   raptor2.x86_64: W: spelling-error %description -l en_US parsers -> parser, parses, parers
   raptor2.x86_64: W: incoherent-version-in-changelog -1 ['2.0.3-1.fc15', '2.0.3-1']
   raptor2.src: W: spelling-error %description -l en_US parsers -> parser, parses, parers
These can be ignored, except maybe you want to fix the changelog complaint.

? Shouldn't we package /usr/bin/rapper here instead of raptor(1). This is the one that is being maintained.
Comment 15 Kevin Kofler 2011-07-26 05:58:25 EDT
> * The main package does not have a group tag. It's interesting to see that
> rpmlint didn't complain.

The Group tag is no longer required.

> raptor2.x86_64: W: incoherent-version-in-changelog -1 ['2.0.3-1.fc15',
> '2.0.3-1']

The problem here is that there's a stray space before the "-1" in the changelog.
Comment 16 Orcan Ogetbil 2011-07-26 07:59:03 EDT
(In reply to comment #15)
> > * The main package does not have a group tag. It's interesting to see that
> > rpmlint didn't complain.
> 
> The Group tag is no longer required.
> 

Is it only required in the subpackage?
Comment 17 Kevin Kofler 2011-07-26 08:26:40 EDT
It's not required anywhere. Current versions of RPM don't require it anymore. That said, it should probably be used consistently. It is also needed for the older versions of RPM used in RHEL (at least RHEL 5, not sure about 6), in case we care about that.
Comment 18 Rex Dieter 2011-07-26 09:11:39 EDT
* re: license and    parsedate.c, turtle_parter.{c,h} .
These are bison generated files with the exception:
"As a special exception, you may create a larger work that contains
   part or all of the Bison parser skeleton and distribute that work
   under terms of your choice..."

* the failed rawhide build was due to missing curl-devel, broken rawhide buildroot most likely. it builds ok on f15.

* re: rappor.  I'll include rappor here again once it is imported into rawhide, and a raptor(1) build exists first without (to avoid conflicts)

* re: including examples/ in -devel.  I'd rather not.  upstream doesn't 'install' them, and our manually including them may lead to spurious multilib conflicts (been there, done that in other packages before, not fun).

And, here's a minor update,

Spec URL: http://rdieter.fedorapeople.org/rpms/raptor2/raptor2.spec
SRPM URL:
http://rdieter.fedorapeople.org/rpms/raptor2/raptor2-2.0.3-2.fc15.src.rpm

%changelog
* Tue Jul 26 2011 Rex Dieter <rdieter@fedoraproject.org> 2.0.3-2
- -devel: drop Group: tag
- add lot's of %%doc's
- License: GPLv2+ or LGPLv2+ or ASL 2.0
Comment 19 Rex Dieter 2011-07-26 09:14:40 EDT
Took a closer look at rawhide failure,
raptor_internal.h:923:24: fatal error: curl/types.h: No such file or directory

looks like libcurl-devel simply no longer provides this header (yay for api changes!).  We'll have to fix that sooner or later, sure, but I hope you won't consider it a review blocker (for now).

in the meantime, here's a dist-f15 scratch build for testing purposes:
http://koji.fedoraproject.org/koji/taskinfo?taskID=3231099
Comment 20 Orcan Ogetbil 2011-07-26 23:08:26 EDT
Okay this is good. The fix in rawhide is as simple as removing the
    #include <curl/types.h> 
line from raptor_internal.h. After removing the line, the package builds both in F-15 and rawhide. 

See the upstream commit
   https://github.com/dajobe/raptor/commit/820ea624587f045de732b7e0d6dda1499e0f61ff#src/raptor_internal.h

Accordingly, the typedef they need from types.h got moved into curl.h ~7 years ago (around curl-7.11.2) and this slipped through undocumented. Should be safe to patch out.

------------------------------------------
This package (raptor2) is APPROVED by oget
------------------------------------------
Comment 21 Rex Dieter 2011-07-29 00:28:41 EDT
I'll make sure to fix that prior to submitting any builds.

New Package SCM Request
=======================
Package Name: raptor2
Short Description: RDF Parser Toolkit for Redland
Owners: rdieter
Branches: f16

comaintainers encouraged to apply too (esp other existing raptor owners).
Comment 22 Jon Ciesla 2011-07-29 08:02:41 EDT
Git done (by process-git-requests).
Comment 23 Rex Dieter 2011-07-29 17:52:08 EDT
imported
Comment 24 Dave Beckett 2011-07-29 19:34:43 EDT
Hey folks - upstream author here.  Just to note raptor2 2.0.4 was released with the curl header fix.  Let me know anything I need to do/merge upstream.  Cheers
Comment 25 Orcan Ogetbil 2011-07-29 20:20:52 EDT
Hi Dave, there is only this patch Rex made to make raptor2 docs paralelly installable with raptor(1) docs:

   http://pkgs.fedoraproject.org/gitweb/?p=raptor2.git;a=blob_plain;f=raptor2-2.0.3-raptor2_doc.patch;hb=c4984f6edd0ee2eb82ae7d6e07d8edfaa6f4ed75

Dave, you can always find our patches at
   http://pkgs.fedoraproject.org/gitweb/?p=raptor2.git

or
   http://pkgs.fedoraproject.org/gitweb/?p=redland.git
etc. But we'll try to let you know in advance when we do something nontrivial.

Also, thank you Rex for taking care of this.
Comment 26 Fedora Update System 2011-08-01 00:14:05 EDT
soprano-2.6.52-2.20110723.fc16,redland-1.0.14-1.fc16,rasqal-0.9.26-1.fc16,raptor2-2.0.4-2.fc16,raptor-1.4.21-10.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/soprano-2.6.52-2.20110723.fc16,redland-1.0.14-1.fc16,rasqal-0.9.26-1.fc16,raptor2-2.0.4-2.fc16,raptor-1.4.21-10.fc16
Comment 27 Fedora Update System 2011-08-01 23:46:07 EDT
Package soprano-2.6.52-2.20110723.fc16, redland-1.0.14-1.fc16, rasqal-0.9.26-1.fc16, raptor2-2.0.4-2.fc16, raptor-1.4.21-10.fc16:
* should fix your issue,
* was pushed to the Fedora 16 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing soprano-2.6.52-2.20110723.fc16 redland-1.0.14-1.fc16 rasqal-0.9.26-1.fc16 raptor2-2.0.4-2.fc16 raptor-1.4.21-10.fc16'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/soprano-2.6.52-2.20110723.fc16,redland-1.0.14-1.fc16,rasqal-0.9.26-1.fc16,raptor2-2.0.4-2.fc16,raptor-1.4.21-10.fc16
then log in and leave karma (feedback).
Comment 28 Fedora Update System 2011-08-08 16:49:03 EDT
Package redland-1.0.14-1.fc16, rasqal-0.9.26-1.fc16, raptor2-2.0.4-2.fc16, raptor-1.4.21-10.fc16, soprano-2.7.0-1.fc16:
* should fix your issue,
* was pushed to the Fedora 16 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing redland-1.0.14-1.fc16 rasqal-0.9.26-1.fc16 raptor2-2.0.4-2.fc16 raptor-1.4.21-10.fc16 soprano-2.7.0-1.fc16'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/soprano-2.7.0-1.fc16,redland-1.0.14-1.fc16,rasqal-0.9.26-1.fc16,raptor2-2.0.4-2.fc16,raptor-1.4.21-10.fc16
then log in and leave karma (feedback).
Comment 29 Fedora Update System 2011-08-10 16:45:39 EDT
Package redland-1.0.14-1.fc16, rasqal-0.9.26-1.fc16, raptor2-2.0.4-2.fc16, raptor-1.4.21-10.fc16, soprano-2.7.0-1.fc16, sonic-visualiser-1.8-3.fc16:
* should fix your issue,
* was pushed to the Fedora 16 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing redland-1.0.14-1.fc16 rasqal-0.9.26-1.fc16 raptor2-2.0.4-2.fc16 raptor-1.4.21-10.fc16 soprano-2.7.0-1.fc16 sonic-visualiser-1.8-3.fc16'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/sonic-visualiser-1.8-3.fc16,soprano-2.7.0-1.fc16,redland-1.0.14-1.fc16,rasqal-0.9.26-1.fc16,raptor2-2.0.4-2.fc16,raptor-1.4.21-10.fc16
then log in and leave karma (feedback).
Comment 30 Fedora Update System 2011-08-22 11:13:22 EDT
redland-1.0.14-1.fc16, rasqal-0.9.26-1.fc16, raptor2-2.0.4-2.fc16, raptor-1.4.21-10.fc16, soprano-2.7.0-1.fc16, sonic-visualiser-1.8-3.fc16 has been pushed to the Fedora 16 stable repository.  If problems still persist, please make note of it in this bug report.

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