Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1064564 (Ahven) - Review Request: ahven – a unit testing framework for Ada 95
Summary: Review Request: ahven – a unit testing framework for Ada 95
Keywords:
Status: CLOSED ERRATA
Alias: Ahven
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jeff Layton
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-02-12 20:36 UTC by Björn Persson
Modified: 2015-04-21 18:33 UTC (History)
2 users (show)

Fixed In Version: ahven-2.4-4.fc22
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-04-21 18:33:17 UTC
jlayton: fedora-review+
puiterwijk: fedora-cvs+


Attachments (Terms of Use)

Description Björn Persson 2014-02-12 20:36:55 UTC
Spec URL: https://www.rombobjörn.se/packages/ahven-2.4-1/ahven.spec
SRPM URL: https://www.rombobjörn.se/packages/ahven-2.4-1/ahven-2.4-1.fc20.src.rpm
Description:
Ahven is a simple unit testing library (or a framework) for the Ada
programming language. It is loosely modeled after Junit and some ideas are
taken from Aunit.

Features:
· Simple API
· Small size
· Junit-compatible test results in XML format, which allows integration with
  tools like Jenkins and Cruisecontrol
· Strict coding style (enforced by Adacontrol)
· Plain Ada 95 code, no Ada 2005 features used, but can be compiled as Ada 2005
  code if needed
· Portable across different compilers and operating systems
· Permissive Open Source license (ISC)

I'm not sure the split into a base package and a -devel subpackage is very useful for a unit testing library that only testsuites will link to, but the other unit testing libraries I found in Fedora had -devel subpackages so I packaged this one the same way.

Note: ahven-devel contains copies of Jquery and some other Javascript libraries. Those are copied there by Sphinx when it generates the HTML documentation. It's possible that Sphinx needs to be adjusted to comply with the new Javascript policy, but I don't think Ahven is at fault for this.

Fedora Account System username: rombobeorn

Comment 1 Björn Persson 2015-03-29 13:16:13 UTC
Updated for policy changes and the current state of Rawhide:
https://www.rombobjörn.se/packages/ahven-2.4-2/ahven.spec
https://www.rombobjörn.se/packages/ahven-2.4-2/ahven-2.4-2.fc21.src.rpm

Comment 2 Jeff Layton 2015-04-01 17:11:14 UTC
I'll take a look (though be forewarned that I know _nothing_ about Ada ;).

Comment 3 Jeff Layton 2015-04-01 17:38:42 UTC
Ok, there are a number of rpmlint warnings:

Rpmlint
-------
Checking: ahven-2.4-2.fc21.x86_64.rpm
          ahven-devel-2.4-2.fc21.x86_64.rpm
          ahven-2.4-2.fc21.src.rpm
ahven.x86_64: I: enchant-dictionary-not-found sv
ahven.x86_64: W: executable-stack /usr/lib64/libahven.so.24

...the above is probably worth fixing:

    https://fedoraproject.org/wiki/Packaging_tricks#Executable_stack

ahven.x86_64: W: no-documentation

...meh -- not much worth including in the main package doc-wise.

ahven-devel.x86_64: W: only-non-binary-in-usr-lib

...this appears to be complaining about the GNAT libs. I'll assume they're ok, and ignore this. Please do correct this if it's wrong however.

ahven-devel.x86_64: W: hidden-file-or-dir /usr/share/doc/ahven/html/.buildinfo

...I'd also fix this. Probably simplest to just remove that file after the %install stage. It doesn't appear to be necessary in the package.

ahven-devel.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/ahven/html/_static/jquery.js
ahven-devel.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/ahven/html/objects.inv
ahven-devel.x86_64: W: file-not-utf8 /usr/share/doc/ahven/html/objects.inv
3 packages and 0 specfiles checked; 0 errors, 7 warnings. 

I guess this is the Sphinx problem you referred to? I'll plan to just waive the check on this one since it's just the docs.

Comment 4 Jeff Layton 2015-04-01 17:52:37 UTC
Also, Adam's comments in this bug may be a better approach than undefining _hardened_build:

    https://bugzilla.redhat.com/show_bug.cgi?id=1197501#c5

...but I'll leave that for you to decide if it's appropriate.

Comment 5 Björn Persson 2015-04-01 18:28:14 UTC
(In reply to Jeff Layton from comment #3)
> ahven.x86_64: I: enchant-dictionary-not-found sv

That one only says that you don't have a Swedish dictionary installed.

> ahven.x86_64: W: executable-stack /usr/lib64/libahven.so.24
> 
> ...the above is probably worth fixing:
> 
>     https://fedoraproject.org/wiki/Packaging_tricks#Executable_stack

As documented in https://fedoraproject.org/wiki/Packaging:Ada, an executable stack is normal in Ada because GNAT uses trampolines for pointers to nested functions.

> ahven-devel.x86_64: W: only-non-binary-in-usr-lib
> 
> ...this appears to be complaining about the GNAT libs. I'll assume they're
> ok, and ignore this. Please do correct this if it's wrong however.

Like in most -devel packages there is a symbolic link in _libdir. Like in all Ada libraries there are also a number of ALI files. ALI files are architecture-specific so they can't be moved to /usr/share. I have no idea what other binary files RPMlint expects to find in a -devel package that would silence that warning.

> ahven-devel.x86_64: W: hidden-file-or-dir
> /usr/share/doc/ahven/html/.buildinfo
> 
> ...I'd also fix this. Probably simplest to just remove that file after the
> %install stage. It doesn't appear to be necessary in the package.

Well, Sphinx generates that and it didn't seem worth caring about, but OK, I'll remove it.

> ahven-devel.x86_64: W: wrong-file-end-of-line-encoding
> /usr/share/doc/ahven/html/_static/jquery.js
> ahven-devel.x86_64: W: wrong-file-end-of-line-encoding
> /usr/share/doc/ahven/html/objects.inv
> ahven-devel.x86_64: W: file-not-utf8 /usr/share/doc/ahven/html/objects.inv
> 3 packages and 0 specfiles checked; 0 errors, 7 warnings. 
> 
> I guess this is the Sphinx problem you referred to? I'll plan to just waive
> the check on this one since it's just the docs.

For jquery.js the argument is the same: If there's a problem with that file, the place to fix it is in Sphinx.

objects.inv isn't even a text file. If I'm removing .buildinfo I'll simply remove that one too.

(In reply to Jeff Layton from comment #4)
> Also, Adam's comments in this bug may be a better approach than undefining
> _hardened_build:
> 
>     https://bugzilla.redhat.com/show_bug.cgi?id=1197501#c5
> 
> ...but I'll leave that for you to decide if it's appropriate.

The general case is more complex than simply using -fPIC everywhere. In this specific case the testsuite isn't being packaged and doesn't need hardening. The library itself is hardened.

Comment 6 Jeff Layton 2015-04-01 19:05:41 UTC
Fair enough then. Those explanations all look reasonable to me, and you're definitely more knowledgeable about Ada packages than I am.

I'll go ahead and consider the review "passed". You can fix up .buildinfo and objects.inv at your leisure.

Comment 7 Björn Persson 2015-04-01 22:43:02 UTC
Thanks Jeff for the review.

New Package SCM Request
=======================
Package Name: ahven
Short Description: A unit testing framework for Ada 95
Upstream URL: http://ahven.stronglytyped.org/
Owners: rombobeorn
Branches: f21 f22
InitialCC:

Comment 8 Patrick Uiterwijk 2015-04-02 13:16:57 UTC
Git done (by process-git-requests).

Comment 9 Fedora Update System 2015-04-02 15:57:05 UTC
ahven-2.4-3.fc22 has been submitted as an update for Fedora 22.
https://admin.fedoraproject.org/updates/ahven-2.4-3.fc22

Comment 10 Fedora Update System 2015-04-02 19:00:16 UTC
ahven-2.4-3.fc22 has been pushed to the Fedora 22 testing repository.

Comment 11 Fedora Update System 2015-04-04 16:31:42 UTC
ahven-2.4-4.fc22 has been pushed to the Fedora 22 testing repository.

Comment 12 Fedora Update System 2015-04-21 18:33:17 UTC
ahven-2.4-4.fc22 has been pushed to the Fedora 22 stable repository.


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