Bug 227040

Summary: Review Request: batik - Scalable Vector Graphics for Java
Product: [Fedora] Fedora Reporter: Rafael H. Schloming <rafaels>
Component: Package ReviewAssignee: Thomas Fitzsimmons <fitzsim>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Package Reviews List <fedora-package-review>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: langel, tbento, tross
Target Milestone: ---Flags: fitzsim: 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: 2007-11-23 21:52:35 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 Rafael H. Schloming 2007-02-02 17:30:35 UTC
Spec URL: http://people.redhat.com/rafaels/specs/batik-1.6-2jpp.spec
SRPM URL: ftp://jpackage.hmdc.harvard.edu/JPackage/1.7/generic/SRPMS.free/batik-1.6-2jpp.src.rpm
Description: Batik is a Java(tm) technology based toolkit for applications that want
to use images in the Scalable Vector Graphics (SVG) format for various
purposes, such as viewing, generation or manipulation.
The project's ambition is to give developers a set of core modules
which can be used together or individually to support specific SVG
solutions. Example modules are, SVG parsers, SVG generators and SVG DOM
implementations. Another ambition for the Batik project is to make it
highly extensible (for example, Batik allows the developer to handle
custom SVG tags). Even though the goal of the project is to provide a
set of core modules, one of the deliverables is a full fledged SVG
browser implementation which validates the various modules and their
interoperability.

The Squiggle SVG Browser lets you view SVG file, zoom, pan and rotate
in the content and select text items in the image and much more.

The SVG Pretty Printer lets developers "pretty-up" their SVG files and
get their tabulations and other cosmetic parameters in order. It can
also be used to modify the DOCTYPE declaration on SVG files.

The SVG Font Converter lets developers convert character ranges from
the True Type Font format to the SVG Font format to embed in SVG
documents. This allows SVG document to be fully self-contained be
rendered exactly the same on all systems.

The SVG Rasterizer is a utility that can convert SVG files to a raster
format. The tool can convert individual files or sets of files, making
it easy to convert entire directories of SVG files. The supported
formats are JPEG, PNG, and TIFF, however the design allows new formats
to be added easily.

Batik SVG slideshow.

Documentation for batik.

Javadoc for batik.

Demonstrations and samples for batik.

Comment 1 Jason Tibbitts 2007-06-21 20:39:20 UTC
Did anything ever happen here?  fedora-review was set to '?' back in February
but there have been no further comments.

Comment 2 Thomas Fitzsimmons 2007-10-15 17:50:32 UTC
*** Bug 332851 has been marked as a duplicate of this bug. ***

Comment 3 Lillian Angel 2007-10-15 18:06:27 UTC
Updated to the new upstream release:
http://langel.fedorapeople.org/batik/batik-1.7-1.src.rpm
http://langel.fedorapeople.org/batik/batik.spec

Comment 4 Lillian Angel 2007-11-22 21:33:38 UTC
Files listed above updated again.
Note: Not able to run testsuite in %build.

Comment 5 Thomas Fitzsimmons 2007-11-22 23:28:38 UTC
- rpmlint:

$ rpmlint batik-1.7-1.src.rpm

$ rpmlint RPMS/noarch/batik-1.7-1.noarch.rpm
batik.noarch: W: non-standard-group Multimedia/Graphics

Fix.

batik.noarch: W: invalid-license Apache Software License

Fix.

batik.noarch: W: obsolete-not-provided batik-monolithic

OK.

$ rpmlint RPMS/noarch/batik-demo-1.7-1.noarch.rpm
batik-demo.noarch: W: no-documentation

OK.

batik-demo.noarch: E: zero-length
/usr/share/batik/test-resources/org/apache/batik/apps/rasterizer/readOnly.png

Check if this is valid.  If the file is not needed it can be removed.

batik-demo.noarch: E: non-executable-script
/usr/share/batik/contrib/rasterizertask/build.sh 0644

Fix.  Users should be able to run this script to run the demos.

batik-demo.noarch: E: non-executable-script
/usr/share/batik/contrib/charts/convert.sh 0644

Fix.

batik-demo.noarch: E: zero-length
/usr/share/batik/resources/org/apache/batik/ext/awt/image/codec/properties

Fix.

batik-demo.noarch: W: non-standard-group Development/Documentation

Fix.

batik-demo.noarch: W: invalid-license Apache Software License

Fix.

$ rpmlint RPMS/noarch/batik-javadoc-1.7-1.noarch.rpm
batik-javadoc.noarch: W: non-standard-group Development/Documentation
batik-javadoc.noarch: W: invalid-license Apache Software License
batik-javadoc.noarch: W: dangerous-command-in-%post rm

Fix all of these.

$ rpmlint RPMS/noarch/batik-rasterizer-1.7-1.noarch.rpm
batik-rasterizer.noarch: W: no-documentation

OK.

batik-rasterizer.noarch: W: non-standard-group Multimedia/Graphics
batik-rasterizer.noarch: W: invalid-license Apache Software License
batik-rasterizer.noarch: W: class-path-in-manifest
/usr/share/java/batik-rasterizer.jar

Fix all of these.

$ rpmlint RPMS/noarch/batik-slideshow-1.7-1.noarch.rpm
batik-slideshow.noarch: W: no-documentation

OK.

batik-slideshow.noarch: W: non-standard-group Multimedia/Graphics
batik-slideshow.noarch: W: invalid-license Apache Software License
batik-slideshow.noarch: W: class-path-in-manifest
/usr/share/java/batik-slideshow.jar
$ rpmlint RPMS/noarch/batik-squiggle-1.7-1.noarch.rpm
batik-squiggle.noarch: W: no-documentation

OK.

batik-squiggle.noarch: W: non-standard-group Multimedia/Graphics

Fix.

batik-squiggle.noarch: W: invalid-license Apache Software License

Fix.

batik-squiggle.noarch: W: obsolete-not-provided batik-svgbrowser

OK.

batik-squiggle.noarch: W: class-path-in-manifest /usr/share/java/batik-squiggle.jar

Fix.

$ rpmlint RPMS/noarch/batik-svgpp-1.7-1.noarch.rpm
batik-svgpp.noarch: W: no-documentation

OK.

batik-svgpp.noarch: W: non-standard-group Multimedia/Graphics
batik-svgpp.noarch: W: invalid-license Apache Software License
batik-svgpp.noarch: W: class-path-in-manifest /usr/share/java/batik-svgpp.jar

Fix all of these.

$ rpmlint RPMS/noarch/batik-ttf2svg-1.7-1.noarch.rpm
batik-ttf2svg.noarch: W: no-documentation

OK.

batik-ttf2svg.noarch: W: non-standard-group Multimedia/Graphics
batik-ttf2svg.noarch: W: invalid-license Apache Software License
batik-ttf2svg.noarch: W: class-path-in-manifest /usr/share/java/batik-ttf2svg.jar

Fix all of these.

- package name fine

- spec file name matches package name

- package meets packaging guidelines

The BuildRoot line is non-standard.

The base package description is too long.

See above rpmlint errors.

- package meets licensing guidelines

Remove the Epoch line and all references to %{epoch}.

- license field matches actual license

- license marked %doc

- spec file uses American English

- spec file legible

%define section free

Remove the top two lines.

(cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}*; do ln -sf ${jar}
`echo $jar| sed "s|-%{version}||g"`; done)

This should be done as a pushd/popd block.  In general, spec file lines should
wrap at the 80th column.  Likewise, this line should be wrapped:

cp -pr %{name}-%{version}/docs/javadoc/*
$RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}

- source and upstream md5sum match

The spec file source zip's (batik-src-1.7.zip) md5sum matches
batik-src-1.7beta1.zip's md5sum.  Renaming tarballs causes confusion.  Instead,
keep the tarball name, and change the release string to:

0.1beta1

Also, make sure that the Source0 URL actually exists.

- package builds successfully on i386

- all build requirements listed

- no locales

- no shared libraries for ldconfig

- not relocatable

- directories:
  - owns %{_javadocdir}/%{name}-%{version} and %{_datadir}/batik, which
    it creates
  - requires jpackage-utils for %{_javadir} into which it installs jar files

- no duplicate files

- permissions

Replace 0644 and 0755 in the %defattr lines with - to use the default values.

- %clean section fine

- consistent use of macros

- contains code

- doc subpackage

- docs don't affect runtime

- no header files

- no static libraries

- no pkgconfig files

- no library files

- no devel package

- no .la files

- no desktop files

- doesn't own other packages' directories

- removes buildroot at start of %install

- filenames valid UTF-8

- license text included

- no description/summary translations available

- builds in mock on i386

- other architectures not tested but this is a noarch package

- squiggle works fine

- no scriptlets

- all subpackages require current version of base package

- no pkgconfig files

- packages required, rather than individual files

Comment 7 Thomas Fitzsimmons 2007-11-23 19:46:40 UTC
In Comment #5,

0.1beta1

should have been:

0.1.beta1

See:

http://fedoraproject.org/wiki/Packaging/NamingGuidelines#head-d97a3f40b6dd9d2288206ac9bd8f1bf9b791b22a


Comment 8 Thomas Fitzsimmons 2007-11-23 19:51:29 UTC
$ rpmlint /notnfs/fitzsim/rpmbuild/SRPMS/batik-1.7-0.1beta1.src.rpm
batik.src: W: mixed-use-of-spaces-and-tabs (spaces: line 1, tab: line 16)

$ rpmlint RPMS/noarch/batik-1.7-0.1beta1.noarch.rpm

$ rpmlint RPMS/noarch/batik-demo-1.7-0.1beta1.noarch.rpm
batik-demo.noarch: W: no-documentation

$ rpmlint RPMS/noarch/batik-javadoc-1.7-0.1beta1.noarch.rpm

$ rpmlint RPMS/noarch/batik-rasterizer-1.7-0.1beta1.noarch.rpm
batik-rasterizer.noarch: W: no-documentation

$ rpmlint RPMS/noarch/batik-slideshow-1.7-0.1beta1.noarch.rpm
batik-slideshow.noarch: W: no-documentation

$ rpmlint RPMS/noarch/batik-squiggle-1.7-0.1beta1.noarch.rpm
batik-squiggle.noarch: W: no-documentation

$ rpmlint RPMS/noarch/batik-svgpp-1.7-0.1beta1.noarch.rpm
batik-svgpp.noarch: W: no-documentation

$ rpmlint RPMS/noarch/batik-ttf2svg-1.7-0.1beta1.noarch.rpm
batik-ttf2svg.noarch: W: no-documentation


Comment 9 Thomas Fitzsimmons 2007-11-23 19:52:30 UTC
Approved.

Before committing please fix the release string and the mixed use of spaces and
tabs.

Comment 10 Lillian Angel 2007-11-23 19:56:21 UTC
New Package CVS Request
=======================
Package Name: batik
Short Description: Scalable Vector Graphics for Java
Owners: langel
Branches: F-8
InitialCC: fitzsim
Cvsextras Commits: yes

Comment 12 Kevin Fenzi 2007-11-23 21:29:50 UTC
cvs done. 
Note: I corrected the Summary here to allow for easier tracking.