Bug 444511 - Review Request: emma - Java code coverage tool
Review Request: emma - Java code coverage tool
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Lillian Angel
Fedora Extras Quality Assurance
:
: 227052 (view as bug list)
Depends On:
Blocks: eclipse-eclemma
  Show dependency treegraph
 
Reported: 2008-04-28 15:48 EDT by Andrew Overholt
Modified: 2008-12-03 11:17 EST (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-12-03 11:17:56 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
fitzsim: fedora‑review+
kevin: fedora‑cvs+


Attachments (Terms of Use)
mock fedora-9-i386 build log with ant -d (23.47 KB, application/octet-stream)
2008-05-27 23:16 EDT, Thomas Fitzsimmons
no flags Details

  None (edit)
Description Andrew Overholt 2008-04-28 15:48:32 EDT
Spec URL: http://fedorapeople.org/~overholt/emma.spec
SRPM URL: http://fedorapeople.org/~overholt/emma-2.0-0.5312.2jpp.1.fc8.src.rpm
Description: EMMA is an open-source toolkit for measuring and reporting Java
code coverage. EMMA distinguishes itself from other tools by going
after a unique feature combination: support for large-scale
enterprise software development while keeping individual developer's
work fast and iterative.
Comment 1 Thomas Fitzsimmons 2008-05-27 21:00:16 EDT
*** Bug 227052 has been marked as a duplicate of this bug. ***
Comment 2 Thomas Fitzsimmons 2008-05-27 23:15:27 EDT
- MUST: rpmlint must be run on every package. The output should be posted...

$ rpmlint SRPMS/emma-2.0-0.5312.2jpp.1.fc9.src.rpm 

OK

$ rpmlint RPMS/noarch/emma-2.0-0.5312.2jpp.1.fc9.noarch.rpm 
emma.noarch: W: non-conffile-in-etc /etc/maven/fragments/emma

Explain

$ rpmlint RPMS/noarch/emma-javadoc-2.0-0.5312.2jpp.1.fc9.noarch.rpm 

OK

- MUST: The package must be named according to the Package Naming Guideli...

OK

- MUST: The spec file name must match the base package %{name}, in the fo...

OK

- MUST: The package must meet the Packaging Guidelines .

OK.  Do you want to leave the Epoch tag?

- MUST: The package must be licensed with a Fedora approved license and m...

OK

- MUST: The License field in the package spec file must match the actual ...

OK

- MUST: If (and only if) the source package includes the text of the lice...

OK

- MUST: The spec file must be written in American English.

OK

- MUST: The spec file for the package MUST be legible. If the reviewer is...

OK

- MUST: The sources used to build the package must match the upstream sou...

OK

- MUST: The package must successfully compile and build into binary rpms ...

OK

- MUST: If the package does not successfully compile, build or work on an...

OK

- MUST: All build dependencies must be listed in BuildRequires, except fo...

OK

- MUST: The spec file MUST handle locales properly. This is done by using...

OK

- MUST: Every binary RPM package which stores shared library files (not j...

OK

- MUST: If the package is designed to be relocatable, the packager must s...

OK

- MUST: A package must own all directories that it creates. If it does no...

What package should own %{_datadir}/maven2 and
%{_datadir}/maven2/poms?  They're unowned on my Fedora 9 system.

- MUST: A package must not contain any duplicate files in the %files list...

OK

- MUST: Permissions on files must be set properly. Executables should be ...

The base defattr line should use '-' for permissions.

- MUST: Each package must have a %clean section, which contains rm -rf %{...

OK

- MUST: Each package must consistently use macros, as described in the [w...

OK

- MUST: The package must contain code, or permissable content. This is de...

OK

- MUST: Large documentation files should go in a -doc subpackage. (The de...

OK

- MUST: If a package includes something as %doc, it must not affect the r...

OK

- MUST: Header files must be in a -devel package.

OK

- MUST: Static libraries must be in a -static package.

OK

- MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfi...

OK

- MUST: If a package contains library files with a suffix (e.g. libfoo.so...

OK

- MUST: In the vast majority of cases, devel packages must require the ba...

OK

- MUST: Packages must NOT contain any .la libtool archives, these should ...

OK

- MUST: Packages containing GUI applications must include a %{name}.deskt...

OK

- MUST: Packages must not own files or directories already owned by other...

%{_mavendepmapfragdir} is owned by other packages.

- MUST: At the beginning of %install, each package MUST run rm -rf %{buil...

OK

- MUST: All filenames in rpm packages must be valid UTF-8.

OK

- SHOULD: If the source package does not include license text(s) as a sep...

OK

- SHOULD: The description and summary sections in the package spec file s...

OK

- SHOULD: The reviewer should test that the package builds in mock. See [...

fedora-9-i386 mock build fails.

- SHOULD: The package should compile and build into binary rpms on all su...

OK on i386

- SHOULD: The reviewer should test that the package functions as describe...

emma -help works

- SHOULD: If scriptlets are used, those scriptlets must be sane. This is ...

OK

- SHOULD: Usually, subpackages other than devel should require the base p...

javadoc doesn't require base package but that's expected.

- SHOULD: The placement of pkgconfig(.pc) files depends on their usecase,...

OK

- SHOULD: If the package has file dependencies outside of /etc, /bin, /sb...

OK
Comment 3 Thomas Fitzsimmons 2008-05-27 23:16:52 EDT
Created attachment 306881 [details]
mock fedora-9-i386 build log with ant -d
Comment 4 Andrew Overholt 2008-05-28 09:10:54 EDT
Huh, how did this build for me?  Weird.  I'll investigate.  In the meantime,
I've fixed the file permissions and added maven2 as a dependency (which owns the
maven directories):

http://fedorapeople.org/~overholt/emma.spec

Deepak:  can you please comment on the maven pom file being in /etc somewhere
(the rpmlint warning listed in comment #2)?

Reassigning to Tom as he's taking this.
Comment 5 Andrew Overholt 2008-05-28 10:53:36 EDT
Okay, I figured out why it was failing to build:  ecj doesn't accept -source 1.2
whereas OpenJDK's javac does.  The following will fail with ecj and not with
OpenJDK:

cd /tmp
echo "public class Test444511 { public static void main(String[] args) { \
 System.out.println(\"Hello, world\"); } } > Test444511.java
javac -source 1.2 -target 1.2 Test444511.java

If I change build.target to 1.3 in build.xml, I get further but end at an import of:

sun.misc.Signal

Seeing as the chances of a change in this area going upstream are slim (there's
been no traffic on the bug I filed about their closed source jar they use for
building the jar timestamp -- see the URL in the .spec), I'm just going to BR
javac >= 1.6.

New spec and SRPM (also fixing maven ownership issues):

http://fedorapeople.org/~overholt/emma.spec
http://fedorapeople.org/~overholt/emma-2.0-0.5312.2jpp.2.fc9.src.rpm

Also, I spoke with Deepak on IRC and he said to waive the rpmlint warning 'cause
that's the place that maven poms go.  I've filed bug #448736 to track the maven
rpmlint warning issue.
Comment 6 Andrew Overholt 2008-05-28 13:58:24 EDT
New Package CVS Request
=======================
Package Name: emma
Short Description: Java code coverage tool
Owners: overholt
Branches: F-9
InitialCC:
Cvsextras Commits:
Comment 7 Thomas Fitzsimmons 2008-05-28 14:04:54 EDT
I confirmed the new SRPM builds in fedora-9-i386 mock.
Comment 8 Kevin Fenzi 2008-05-30 15:35:40 EDT
cvs done.

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