Bug 591305 - Review Request: apache-commons-digester - XML to Java object mapping module
Review Request: apache-commons-digester - XML to Java object mapping module
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Stanislav Ochotnicky
Fedora Extras Quality Assurance
:
: 225926 (view as bug list)
Depends On:
Blocks: JakartaCommonsRename
  Show dependency treegraph
 
Reported: 2010-05-11 16:27 EDT by Mat Booth
Modified: 2010-05-26 13:13 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-05-26 13:13:18 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
sochotni: fedora‑review+
dennis: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Mat Booth 2010-05-11 16:27:49 EDT
!!! NOTE: This is a re-review because the package has been renamed from
jakarta-commons-digester

Spec URL: http://mbooth.fedorapeople.org/reviews/apache-commons-digester.spec
SRPM URL: http://mbooth.fedorapeople.org/reviews/apache-commons-digester-1.8.1-4.fc13.src.rpm
Description:
Many projects read XML configuration files to provide initialization of
various Java objects within the system. There are several ways of doing this,
and the Digester component was designed to provide a common implementation
that can be used in many different projects
Comment 1 Mat Booth 2010-05-11 16:28:59 EDT
*** Bug 225926 has been marked as a duplicate of this bug. ***
Comment 2 Stanislav Ochotnicky 2010-05-12 11:40:30 EDT
Whole idea of group rename of all jakarta-commons packages was to avoid having to have this in apache-commons:

BuildRequires: jakarta-commons-beanutils >= 1.7
BuildRequires: jakarta-commons-logging >= 1.1.1

and also this

Requires:      jakarta-commons-beanutils >= 1.7
Requires:      jakarta-commons-logging >= 1.1.1

I would love to see depends on apache-commons-beanutils/logging. Would it be possible to wait for beanutils (since apache-commons-loggins is already in rawhide)? Also you have old changelog included, it would probably be better to start from scratch.

Rest is just my curiosity...why have "-Dmaven.compile.target=1.5" ? Were there problems with building without these defines?
Comment 3 Mat Booth 2010-05-12 16:36:39 EDT
(In reply to comment #2)
> Whole idea of group rename of all jakarta-commons packages was to avoid having
> to have this in apache-commons:
> 
> BuildRequires: jakarta-commons-beanutils >= 1.7
> BuildRequires: jakarta-commons-logging >= 1.1.1
> 
> and also this
> 
> Requires:      jakarta-commons-beanutils >= 1.7
> Requires:      jakarta-commons-logging >= 1.1.1
> 
> I would love to see depends on apache-commons-beanutils/logging. Would it be
> possible to wait for beanutils

Sure, I can submit the apache-commons-beanutils package for review too, if you'd like?

(In reply to comment #2)
> (since apache-commons-loggins is already in
> rawhide)? Also you have old changelog included, it would probably be better to
> start from scratch.
> 

I have nothing against elderly changelogs, and it's not particularly long. I know packages like Kernel and Eclipse trim them periodically because they get absurdly long, but I thought it would be frowned upon to trim it for purely aesthetic reasons...

(In reply to comment #2)
> Rest is just my curiosity...why have "-Dmaven.compile.target=1.5" ? Were there
> problems with building without these defines?    

Indeed there were, Maven throws a wobbly when using GCJ if you don't set those properties. For some reason 1.2 is the default:

Compiling 70 source files to /home/mbooth/rpmbuild/BUILD/commons-digester-1.8.1-src/target/classes
source level should be comprised in between '1.3' and '1.6' (or '5', '5.0', ..., '7' or '7.0'): 1.2
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Compilation failure
Comment 4 Mat Booth 2010-05-12 16:41:00 EDT
> (In reply to comment #2)
> > Rest is just my curiosity...why have "-Dmaven.compile.target=1.5" ? Were there
> > problems with building without these defines?    
> 
> Indeed there were, Maven throws a wobbly when using GCJ if you don't set those
> properties. For some reason 1.2 is the default:
> 
> Compiling 70 source files to
> /home/mbooth/rpmbuild/BUILD/commons-digester-1.8.1-src/target/classes
> source level should be comprised in between '1.3' and '1.6' (or '5', '5.0',
> ..., '7' or '7.0'): 1.2
> [INFO] ------------------------------------------------------------------------
> [ERROR] BUILD FAILURE
> [INFO] ------------------------------------------------------------------------
> [INFO] Compilation failure    

Sorry, I should expand on that: For some reason *upstream* set it to 1.2 by default. GCJ complains about this. OpenJDK doesn't care, but it seems silly to restrict it to java >= 1.6 when it quite clearly also builds and runs on 1.5.
Comment 5 Stanislav Ochotnicky 2010-05-13 08:28:02 EDT
(In reply to comment #3)
> Sure, I can submit the apache-commons-beanutils package for review too, if
> you'd like?

That would be great. Just don't forget to cc current owner of jakarta-commons-beanutils (ideally also add him as co-maintainer at the end of review if he doesn't mind).


> (In reply to comment #2)
> > (since apache-commons-loggins is already in
> > rawhide)? Also you have old changelog included, it would probably be better to
> > start from scratch.
> > 
> 
> I have nothing against elderly changelogs, and it's not particularly long. I
> know packages like Kernel and Eclipse trim them periodically because they get
> absurdly long, but I thought it would be frowned upon to trim it for purely
> aesthetic reasons...

I wouldn't say it's aesthetic reason...You are creating a new package so if anyone is looking for history of the older package they can check its history. At least that's what I did with my commons packages: trimmed changelog, started counting from revision 1. But this is just my preference, AFAIK there is no policy forcing either way.


I'll take this for review once beanutils is in rawhide (so maybe I'll review that first..)
Comment 6 Mat Booth 2010-05-13 16:41:59 EDT
Ok I updated the dependencies. This will now be unbuildable until beanutils is updated.

New SPEC/SRPM:
http://mbooth.fedorapeople.org/reviews/apache-commons-digester.spec
http://mbooth.fedorapeople.org/reviews/apache-commons-digester-1.8.1-5.fc13.src.rpm
Comment 8 Stanislav Ochotnicky 2010-05-17 04:00:40 EDT
Spec file looks good, I believe there will be no problem with this review once beanutils is done. Do you still plan to do the spec file for beanutils?
Comment 9 Mat Booth 2010-05-17 19:05:34 EDT
(In reply to comment #8)
> Spec file looks good, I believe there will be no problem with this review once
> beanutils is done. Do you still plan to do the spec file for beanutils?    

At some point during the next week. I will check and update the wiki page before I start on it.
Comment 11 Stanislav Ochotnicky 2010-05-21 11:51:23 EDT
OK: rpmlint must be run on every package. The output should be posted in the review.
apache-commons-digester.noarch: W: non-conffile-in-etc /etc/maven/fragments/apache-commons-digester
apache-commons-digester-javadoc.noarch: W: obsolete-not-provided jakarta-commons-digester-javadoc
3 packages and 0 specfiles checked; 0 errors, 2 warnings.

false positives

OK: The package must be named according to the Package Naming Guidelines .
OK : The spec file name must match the base package %{name}, in the format %{name}.spec unless your package has an exemption.  .
OK: The package must meet the Packaging Guidelines .
OK: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines .
OK: The License field in the package spec file must match the actual license.
OK: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package must be included in %doc.
OK: The spec file must be written in American English.
OK: The spec file for the package MUST be legible.
OK: The sources used to build the package must match the upstream source, as provided in the spec URL. Reviewers should use md5sum for this task. If no upstream URL can be specified for this package, please see the Source URL Guidelines for how to deal with this.
OK: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
OK: All build dependencies must be listed in BuildRequires, except for any that are listed in the exceptions section of the Packaging Guidelines ; inclusion of those as BuildRequires is optional. Apply common sense.

But I assume these:
BuildRequires: apache-commons-beanutils >= 1.8
Requires:      apache-commons-beanutils >= 1.8

should better be
BuildRequires: apache-commons-beanutils >= 1.8.3
Requires:      apache-commons-beanutils >= 1.8.3

OK: The spec file MUST handle locales properly. This is done by using the %find_lang macro. Using %{_datadir}/locale/* is strictly forbidden.
OK: Packages must NOT bundle copies of system libraries.
OK: A package must own all directories that it creates. If it does not create a directory that it uses, then it should require a package which does create that directory.
OK: A Fedora package must not list a file more than once in the spec file's %files listings.
OK: Permissions on files must be set properly. Executables should be set with executable permissions, for example. Every %files section must include a %defattr(...) line.
OK: Each package must consistently use macros.
OK: The package must contain code, or permissable content.
OK: Large documentation files must go in a -doc subpackage. (The definition of large is left up to the packager's best judgement, but is not restricted to size. Large can refer to either size or quantity).
OK: If a package includes something as %doc, it must not affect the runtime of the application. To summarize: If it is in %doc, the program must run properly if it is not present.
OK: Packages must not own files or directories already owned by other packages. The rule of thumb here is that the first package to be installed should own the files or directories that other packages may rely upon. This means, for example, that no package in Fedora should ever share ownership with any of the files or directories owned by the filesystem or man package. If you feel that you have a good reason to own a file or directory that another package owns, then please present that at package review time.
OK: All filenames in rpm packages must be valid UTF-8.

I know that this is re-review, and provides/obsoletes are OK.


Package is clean, except for that small BR thingy (not a show-stopper). APPROVED
Comment 12 Mat Booth 2010-05-23 12:16:35 EDT
(In reply to comment #11)
> 
> But I assume these:
> BuildRequires: apache-commons-beanutils >= 1.8
> Requires:      apache-commons-beanutils >= 1.8
> 
> should better be
> BuildRequires: apache-commons-beanutils >= 1.8.3
> Requires:      apache-commons-beanutils >= 1.8.3
> 

Well, it's possible to use beanutils 1.7.x, but upstream recommends at least 1.8, so that requirement was intended.


> Package is clean, except for that small BR thingy (not a show-stopper).
> APPROVED    

Thanks.
Comment 13 Mat Booth 2010-05-23 12:19:06 EDT
New Package CVS Request
=======================
Package Name: apache-commons-digester
Short Description: XML to Java object mapping module
Owners: mbooth
Branches: devel
InitialCC:
Comment 14 Dennis Gilmore 2010-05-25 17:01:30 EDT
CVS Done
Comment 15 Stanislav Ochotnicky 2010-05-26 04:32:30 EDT
I just built apache-commons-beanutils so it should be available as a dep in koji in about an hour.
Comment 16 Mat Booth 2010-05-26 13:13:18 EDT
Thanks, this is built in Rawhide now, closing.

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