Bug 439911

Summary: Review Request: stringtemplate - A Java template engine
Product: [Fedora] Fedora Reporter: Colin Walters <walters>
Component: Package ReviewAssignee: Jason Tibbitts <j>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: rawhideCC: fedora-package-review, notting
Target Milestone: ---Flags: j: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-04-05 17:07:39 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Colin Walters 2008-03-31 22:52:00 UTC
Spec URL: http://cdn.verbum.org/stringtemplate.spec
SRPM URL: http://cdn.verbum.org/stringtemplate-3.1-1.fc9.src.rpm

%description
StringTemplate is a java template engine (with ports for 
C# and Python) for generating source code, web pages,
emails, or any other formatted text output. StringTemplate
is particularly good at multi-targeted code generators,
multiple site skins, and internationalization/localization.

Comment 1 Jason Tibbitts 2008-04-04 04:12:14 UTC
This failed to build for me:

+ ant jar
Buildfile: build.xml
init:
prepare-sources:
    [mkdir] Created dir: /builddir/build/BUILD/stringtemplate-3.1/build
    [mkdir] Created dir: /builddir/build/BUILD/stringtemplate-3.1/build/src
     [copy] Copying 71 files to /builddir/build/BUILD/stringtemplate-3.1/build/src
generator:
BUILD FAILED
/builddir/build/BUILD/stringtemplate-3.1/build.xml:98: Problem: failed to create
task or type antlr
Cause: the class org.apache.tools.ant.taskdefs.optional.ANTLR was not found.
        This looks like one of Ant's optional components.
Action: Check that the appropriate optional JAR exists in
        -/usr/share/ant/lib
        -/builddir/.ant/lib
        -a directory added on the command line with the -lib argument
Do not panic, this is a common problem.
The commonest cause is a missing JAR.
This is not a bug; it is a configuration problem
Total time: 0 seconds
error: Bad exit status from /var/tmp/rpm-tmp.71988 (%build)


Comment 2 Colin Walters 2008-04-04 17:15:12 UTC
Thanks, I cleaned up the build deps:

http://cdn.verbum.org/stringtemplate.spec
http://cdn.verbum.org/stringtemplate-3.1-1.fc9.src.rpm

Comment 3 Jason Tibbitts 2008-04-04 21:38:09 UTC
Yes, much better now.  rpmlint says:

  stringtemplate.noarch: W: no-documentation
There seems to be quite a bit of documentation in the package, including some
license text.  Certainly the three .txt files need to be included, and at least
doc.html in the doc subdirectory seems to be useful as well.

  stringtemplate.noarch: W: no-version-in-last-changelog
Please follow one of the standard formats for changelog entries:
http://fedoraproject.org/wiki/Packaging/Guidelines#Changelogs

I need to whip up a review template for Java; I'll get on that now.

Comment 4 Jason Tibbitts 2008-04-04 22:27:23 UTC
I noticed something that looks like a test suite; it is possible to run it at
build time?

The package seems to be missing a versioned dependency on java as required by
the guidelines.

* source files match upstream:
   59fa7e74646ef4767a6d55356c580d5f24d1392ef89fbd0c435c6426353aaf7c  
   stringtemplate-3.1.tar.gz
* package meets naming and versioning guidelines.
* specfile is properly named, is cleanly written and uses macros consistently.
* summary is OK.
* description is OK.
* dist tag is present.
* build root is OK.
* license field matches the actual license.
* license is open source-compatible.
X license text in tarball but not included in package.
* latest version is being packaged.
* BuildRequires are proper.
* %clean is present.
* package builds in mock (rawhide, x86_64).
* package installs properly
X rpmlint has valid complaints.
X final provides and requires not quite correct:
   stringtemplate = 3.1-1.fc9
  =
   jpackage-utils
   (no java dependency)
? %check is not present, but there seems to be a test suite upstream.  I've no 
   idea how to run it, though.
* owns the directories it creates.
* doesn't own any directories it shouldn't.
* no duplicates in %files.
* file permissions are appropriate.
* no scriptlets present.
* code, not content.
* %docs are not necessary for the proper functioning of the package.

Java-specific bits:
* no pre-built jars
* single jar, named after the package
* jarfiles are under _javadir.

Comment 5 Colin Walters 2008-04-04 23:44:56 UTC
* On the tests, I just created two patches (both sent upstream).  The first adds
a convenient "ant test" target, and the second disables some of the tests which
upstream had either left broken, or as far as I could tell the test was actually
itself broken.  The vast majority of tests pass.
* Fixed license.
* Fixed requires.

New versions:
http://cdn.verbum.org/stringtemplate.spec
http://cdn.verbum.org/stringtemplate-3.1-1.fc9.src.rpm

Comment 6 Jason Tibbitts 2008-04-05 00:13:19 UTC
This seems to have cropped up, or did I somehow miss it earlier:
  stringtemplate.src:42: W: rpm-buildroot-usage %build rm -rf $RPM_BUILD_ROOT
Normally you don't need to erase the build root in %build, because it should be
empty before %install.  Why do you need to do that?

Otherwise, things look good:

The license text is present.
The dependencies look correct:
  stringtemplate-3.1-1.fc9.noarch.rpm
   stringtemplate = 3.1-1.fc9
  =
   java >= 1:1.6.0
   jpackage-utils

  stringtemplate-javadoc-3.1-1.fc9.noarch.rpm
   stringtemplate-javadoc = 3.1-1.fc9
  =
   java-javadoc

%check is now present, and the tests pass:
    [junit] Tests run: 279, Failures: 0, Errors: 0, Time elapsed: 0.28 sec

So, because another round trip probably isn't productive, I'll approve this on
the condition that you remove the "rm -rf $RPM_BUILD_ROOT" bit from %build.  Or,
if you need it for something, let's investigate why.

APPROVE

Comment 7 Colin Walters 2008-04-05 00:21:34 UTC
Oops, thanks.  Yeah I think that was there before.  Will fix before commit.

Comment 8 Colin Walters 2008-04-05 00:22:26 UTC
New Package CVS Request
=======================
Package Name: stringtemplate
Short Description: A Java template engine
Owners: walters,konradm
Branches: F-8 EL-5
InitialCC: 
Cvsextras Commits: yes

Comment 9 Kevin Fenzi 2008-04-05 16:47:00 UTC
cvs done.