Bug 904862 (php-EasyRdf) - Review Request: php-EasyRdf - A PHP library designed to make it easy to consume and produce RDF
Summary: Review Request: php-EasyRdf - A PHP library designed to make it easy to consu...
Keywords:
Status: CLOSED ERRATA
Alias: php-EasyRdf
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Remi Collet
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-01-27 23:19 UTC by Shawn Iwinski
Modified: 2013-02-24 08:58 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-02-23 20:43:27 UTC
Type: ---
Embargoed:
fedora: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)
phpci.log (33.59 KB, text/plain)
2013-02-06 08:07 UTC, Remi Collet
no flags Details
php-EasyRdf-review.txt (8.44 KB, text/plain)
2013-02-06 08:08 UTC, Remi Collet
no flags Details

Description Shawn Iwinski 2013-01-27 23:19:01 UTC
Spec URL: http://siwinski.fedorapeople.org/rpmbuild/SPECS/php-EasyRdf.spec

SRPM URL: http://siwinski.fedorapeople.org/rpmbuild/SRPMS/php-EasyRdf-0.7.2-1.fc17.src.rpm

Description:
EasyRdf is a PHP library designed to make it easy to consume and produce RDF
(http://en.wikipedia.org/wiki/Resource_Description_Framework). It was designed
for use in mixed teams of experienced and inexperienced RDF developers. It is
written in Object Oriented PHP and has been tested extensively using PHPUnit.

After parsing EasyRdf builds up a graph of PHP objects that can then be walked
around to get the data to be placed on the page. Dump methods are available to
inspect what data is available during development.

Data is typically loaded into a EasyRdf_Graph object from source RDF documents,
loaded from the web via HTTP. The EasyRdf_GraphStore class simplifies loading
and saving data to a SPARQL 1.1 Graph Store.

SPARQL queries can be made over HTTP to a Triplestore using the
EasyRdf_Sparql_Client class. SELECT and ASK queries will return an
EasyRdf_Sparql_Result object and CONSTRUCT and DESCRIBE queries will
return an EasyRdf_Graph object.


Fedora Account System Username: siwinski

Comment 1 Shawn Iwinski 2013-01-27 23:22:38 UTC
Should I move the docs to a "-doc" sub-package?  If so, would the sub-package have to have "Requires: %{name} = %{version}-%{release}"?

I could not get the tests to pass so I wrapped them in an rpmbuild "--with tests" conditional.  I'd love some help trying to figure out how to get the tests to pass.

Comment 2 Remi Collet 2013-01-28 06:41:18 UTC
(In reply to comment #1)
> Should I move the docs to a "-doc" sub-package?  If so, would the
> sub-package have to have "Requires: %{name} = %{version}-%{release}"?

The sub-package -docs packages don't need to requires the main package, you just need to conform to License Guideline

[x]: License file installed when any subpackage combination is installed.

So the -docs need to also include the License file.

NB: -tests need -docs.

> I could not get the tests to pass so I wrapped them in an rpmbuild "--with
> tests" conditional.  I'd love some help trying to figure out how to get the
> tests to pass.

Drop the EXAMPLES_DIR change in %prep, and test works.
So need to apply this hack in %install (to the buildroot installed file)

Warning: some tests use online file, this is not compatible with mock build
(ex http://www.bbc.co.uk/music/artists/70248960-cb53-4ea4-943a-edb18f7d336f.rdf)

Need to skip this test or use a local copy of the file (check this with upstream)

Warning: "Non-PEAR PHP software which provides shared libraries should put its PHP source files for such shared libraries in a subfolder of /usr/share/php, named according to the name of the software. For example, a library called "Whizz_Bang" (with a RPM called php-something-Whizz-Bang) would put the PHP source files for its shared libraries in /usr/share/php/Whizz_Bang. "

So there is a problem with /usr/share/php/EasyRdf.php which, according to Guildelines should not be in /usr/share/php, but this make sense for PSR0 compatibility. 

Need to think about this...

Comment 3 Remi Collet 2013-01-28 06:49:39 UTC
Hmm... it seems you should be able to use --bootstrap=./lib/EasyRdf.php (instead of creating your one one), except some classes are not handled properly, at least EasyRdf_Isomorphic...)

Comment 4 Remi Collet 2013-01-28 07:31:22 UTC
According the the error message (pasted in your spec), probably you need to requires phpunit >= 3.7 (it it fails with 3.6).

Comment 5 Shawn Iwinski 2013-01-31 01:26:06 UTC
THANKS Remi!  Here's my latest WIP.  I added the lib tests and a made a couple other changes.  It builds correctly in f18 and dist-6E-epel, but there is a build failure (test failure) in rawhide that I can't figure out -- in the "EasyRdf_Serialiser_GraphVizTest::testSerialiseSvg" test.  I'm not sure if the failure is in this library or some other package because I got different errors when I ran the exact same scratch build yesterday.  Any ideas?

Changelog:
- Tests run by default (i.e. without "--with tests")
- Fixes for tests
- Removed Mac files
- Separated docs into sub-package

SPEC URL: http://siwinski.fedorapeople.org/rpmbuild/SPECS/php-EasyRdf.spec

SRPM URL: http://siwinski.fedorapeople.org/rpmbuild/SRPMS/php-EasyRdf-0.7.2-2.fc17.src.rpm



rawhide scratch build (FAILED): http://koji.fedoraproject.org/koji/taskinfo?taskID=4916306

f18 scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4916308

dist-6E-epel scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4916310

Comment 6 Remi Collet 2013-01-31 07:44:48 UTC
Yes the rawhide failure is quite strange.

As far as it build on f18 and el6 (and with php 5.5.0-dev), you can, I think, temporary ignored the test result on rawhide (you will have to fix it later).

Comment 7 Shawn Iwinski 2013-02-04 17:45:36 UTC
Temporarily skipping "EasyRdf_Serialiser_GraphVizTest::testSerialiseSvg" test for Fedora > 18


rawhide scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4928116

f18 scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4928111

dist-6E-epel scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4928110



SPEC URL: http://siwinski.fedorapeople.org/rpmbuild/SPECS/php-EasyRdf.spec

SRPM URL: http://siwinski.fedorapeople.org/rpmbuild/SRPMS/php-EasyRdf-0.7.2-3.fc18.src.rpm

Comment 8 Remi Collet 2013-02-06 08:07:54 UTC
Created attachment 693764 [details]
phpci.log

Comment 9 Remi Collet 2013-02-06 08:08:32 UTC
Created attachment 693765 [details]
php-EasyRdf-review.txt

Generated by fedora-review 0.3.1 (b71abc1) last change: 2012-10-16
Buildroot used: fedora-rawhide-x86_64
Command line :/usr/bin/fedora-review -b 904862

Comment 10 Remi Collet 2013-02-06 08:09:16 UTC
Everything seems ok.

No blocker

=== APPROVED ===

Comment 11 Shawn Iwinski 2013-02-06 14:33:44 UTC
THANKS for the review and help!


New Package SCM Request
=======================
Package Name: php-EasyRdf
Short Description: A PHP library designed to make it easy to consume and produce RDF
Owners: siwinski
Branches: f18 el6
InitialCC:

Comment 12 Gwyn Ciesla 2013-02-06 14:39:13 UTC
Git done (by process-git-requests).

Comment 13 Fedora Update System 2013-02-07 02:33:33 UTC
php-EasyRdf-0.7.2-3.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/php-EasyRdf-0.7.2-3.el6

Comment 14 Fedora Update System 2013-02-07 02:33:46 UTC
php-EasyRdf-0.7.2-3.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/php-EasyRdf-0.7.2-3.fc18

Comment 15 Fedora Update System 2013-02-08 02:20:47 UTC
php-EasyRdf-0.7.2-3.fc18 has been pushed to the Fedora 18 testing repository.

Comment 16 Fedora Update System 2013-02-23 20:43:29 UTC
php-EasyRdf-0.7.2-3.el6 has been pushed to the Fedora EPEL 6 stable repository.

Comment 17 Fedora Update System 2013-02-24 08:58:29 UTC
php-EasyRdf-0.7.2-3.fc18 has been pushed to the Fedora 18 stable repository.


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