Bug 465511 - (itext) Review Request: itext - A Free Java-PDF library
Review Request: itext - A Free Java-PDF library
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Mamoru TASAKA
Fedora Extras Quality Assurance
: Reopened
Depends On: 465203 bouncycastle-mail pdf-renderer
Blocks: 720156
  Show dependency treegraph
 
Reported: 2008-10-03 13:24 EDT by Orcan Ogetbil
Modified: 2011-07-12 23:13 EDT (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-10-14 01:04:21 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
mtasaka: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)
License analysis (1.78 KB, text/plain)
2008-10-09 14:04 EDT, Mamoru TASAKA
no flags Details

  None (edit)
Description Orcan Ogetbil 2008-10-03 13:24:22 EDT
Spec URL: http://oget.fedorapeople.org/review/itext.spec
SRPM URL: http://oget.fedorapeople.org/review/itext-2.1.3-1.fc10.src.rpm
Description: 
iText is a library that allows you to generate
PDF files on the fly. The iText classes are very
useful for people who need to generate read-only,
platform independent documents containing text,
lists, tables and images. The library is especially
useful in combination with Java(TM) technology-based
Servlets: The look and feel of HTML is browser
dependent; with iText and PDF you can control
exactly how your servlet's output will look.
------------------------------------------------------------------------

This package had licensing problems in the past (
https://bugzilla.redhat.com/show_bug.cgi?id=176981
and especially
https://bugzilla.redhat.com/show_bug.cgi?id=236309
) which seem to be resolved according to the upstream author. The story can be found in the core/com/lowagie/text/misc_licenses.txt file inside the tarball.
Comment 1 Tom "spot" Callaway 2008-10-03 14:59:33 EDT
Nope. Licensing issues not resolved. Still has:

 * You acknowledge that this software is not designed or intended for
 * use in the design, construction, operation or maintenance of any
 * nuclear facility.

in:

src/core/com/lowagie/text/pdf/LZWDecoder.java
src/core/com/lowagie/text/pdf/codec/TIFFFaxDecoder.java
src/core/com/lowagie/text/pdf/codec/PngImage.java
src/core/com/lowagie/text/pdf/codec/TIFFDirectory.java
src/core/com/lowagie/text/pdf/codec/BmpImage.java
src/core/com/lowagie/text/pdf/codec/TIFFField.java
src/core/com/lowagie/text/pdf/codec/TIFFLZWDecoder.java

That clause is a use-restriction, which makes itext non-free.

Blocking FE-Legal.
Comment 2 Orcan Ogetbil 2008-10-03 15:40:42 EDT
I wasn't sure about the words "designed" or "intended". It used to be "licensed" and now it sounds more relaxed. 

But apparently it still is an issue. I am closing the bug and I'll submit the package to rpmfusion-nonfree.
Comment 3 Tom "spot" Callaway 2008-10-03 16:13:15 EDT
Well, wait, let me see what RH Legal thinks.
Comment 4 Tom "spot" Callaway 2008-10-03 16:36:17 EDT
I talked with RH Legal about it and we're now in agreement that the clause has been effectively altered to be a form of "warranty disclaimer".

Lifting FE-Legal, you should be okay from a licensing perspective.
Comment 5 Orcan Ogetbil 2008-10-03 17:29:55 EDT
Oops, sorry, I pulled the package from rpmfusion. 
It can be reviewed in here now.
And thanks for your time.
Comment 6 Mamoru TASAKA 2008-10-09 14:04:50 EDT
Created attachment 319888 [details]
License analysis

Well,

* About itext-no-rups.patch:
  - Would you explain what "it depends on proprietary com.sun classes"
    means?
    I am not familiar with Java, however as far as I checked quickly

    * About pdf-renderer.jar:
      Is it different from the below?
      https://pdf-renderer.dev.java.net/
      https://pdf-renderer.dev.java.net/files/documents/6008/113009/PDFRenderer-2008_10_05-src.zip
      It is available under LGPLv2+
    * About dom4j-1.6.1.jar
      Fedora has "dom4j" rpm, of which the license says BSD

* License
  - My analysis attached.
    The license tag should be
    "(LGPLv2+ or MPLv1.1) and and ASL2.0 and BSD and MIT"
     ( + "+ LGPLv2+ and CC-BY" if you build rups part)

* SourceURL
  - Please consider to use %version macro. With using this macro
    you probably won't have to change SourceURL when version 
    is upgraded.
    https://fedoraproject.org/wiki/Packaging/SourceURL#Using_.25.7Bversion.7D

* Requires
  - bouncycastle-mail Requires bouncycastle so
    "Requires: bouncycastle" is not needed.

* Provides
  - For upgrade path and so on, this type of Provides (Provides: iText)
    should be full EVR (Epoch-Version-Release) specific.

* GCJ AOT
  - For (Build)Requires/Scriptlets, please follow:
    https://fedoraproject.org/wiki/Packaging/GCJGuidelines

  ! By the way
--------------------------------------------------
%post -p %{_bindir}/rebuild-gcj-db
--------------------------------------------------
    cannot be used because this is a shell script.

* %prep
--------------------------------------------------
%prep
%setup -c -T -n %{name}-%{version}
gzip -dc %{SOURCE0} | tar xf -
--------------------------------------------------
  - can be:
--------------------------------------------------
%prep
%setup -q -c -T -a 0
--------------------------------------------------

* %defattr
  - We recommend %defattr(-,root,root,-)


* -javadoc subpackage
  - As javadoc package is for documentation, there is no need
    to mark %{_javadocdir}/%{name}-%{version} as %doc explicitly.

  - For Requires of javadoc subpackage please follow 
    %package javadoc section of
    https://fedoraproject.org/wiki/Packaging/Java#ant_2
Comment 7 Orcan Ogetbil 2008-10-09 23:04:51 EDT
Thank you for the review.

(In reply to comment #6)
> Created an attachment (id=319888) [details]
> License analysis
> 
> Well,
> 
> * About itext-no-rups.patch:
>   - Would you explain what "it depends on proprietary com.sun classes"
>     means?
>     I am not familiar with Java, however as far as I checked quickly
> 
>     * About pdf-renderer.jar:
>       Is it different from the below?
>       https://pdf-renderer.dev.java.net/
>      
> https://pdf-renderer.dev.java.net/files/documents/6008/113009/PDFRenderer-2008_10_05-src.zip
>       It is available under LGPLv2+
>     * About dom4j-1.6.1.jar
>       Fedora has "dom4j" rpm, of which the license says BSD
> 
First I thought the com.sun classes the program depends were internal java classes. But further investigation showed that these are actually pdf-renderer dependencies. I packaged pdf-renderer (Bug #466394) and made it block itext. I also enabled compilation of the rups libraries.

Thank you for pointing this out.

> * License
>   - My analysis attached.
>     The license tag should be
>     "(LGPLv2+ or MPLv1.1) and and ASL2.0 and BSD and MIT"
>      ( + "+ LGPLv2+ and CC-BY" if you build rups part)
> 
I made it (with rups) :
   License: (LGPLv2+ or MPLv1.1) and ASL 2.0 and BSD and MIT and LGPLv2+ and CC-BY

> * Provides
>   - For upgrade path and so on, this type of Provides (Provides: iText)
>     should be full EVR (Epoch-Version-Release) specific.
>
This package does not have a specified epoch, so I just changed it to
   Provides:   iText == %{version}-%{release}
Is this good enough?
-----------------------------------------------------------------------------

I fixed everything else you asked. The updated files are:

SPEC: http://oget.fedorapeople.org/review/itext.spec
SRPM: http://oget.fedorapeople.org/review/itext-2.1.3-2.fc10.src.rpm

Note that you need to build and install bouncycastle bouncycastle-mail from rawhide and pdf-renderer from Bug #466394 to build itext now.

There are some warnings while building the debuginfo package but I don't know if those are important. Are those fixable?
Comment 8 Mamoru TASAKA 2008-10-10 10:42:23 EDT
(In reply to comment #7)
> (In reply to comment #6)
> > * Provides
> >   - For upgrade path and so on, this type of Provides (Provides: iText)
> >     should be full EVR (Epoch-Version-Release) specific.
> >
> This package does not have a specified epoch, so I just changed it to
>    Provides:   iText == %{version}-%{release}
> Is this good enough?
  - Yes.

> There are some warnings while building the debuginfo package but I don't know
> if those are important. Are those fixable?
  - Well, I don't know what aot-compile-rpm is doing exactly, so
    I don't know how to suppress these warnings for now...

Then:
* License
  - Please add the following files to %doc
-------------------------------------------------------------
rups/com/lowagie/rups/view/icons/copyright_notice.txt (CC-BY)
-------------------------------------------------------------

* native2ascii
  - mock build shows:
-------------------------------------------------------------
  2991  DEBUG: + find src/rtf/com/lowagie/text/rtf/parser/destinations/ -name '*.java' -exec native2ascii '{}' '{}' ';'
  2992  DEBUG: find: `native2ascii': Permission denied
  2993  DEBUG: find: `native2ascii': Permission denied
  2994  DEBUG: find: `native2ascii': Permission denied
  2995  DEBUG: find: 
  2996  DEBUG: `native2ascii': Permission denied
-------------------------------------------------------------
    Can these messages be ignored?

Other things seem okay, so I think I can approve this
package once pdf-renderer is approved.
Comment 9 Orcan Ogetbil 2008-10-10 17:08:44 EDT
* Added that copyright notice file

* Those messages can be ignored since the files that need to get fixed are getting fixed as far as the encoding is concerned.

The updated files are:
SPEC: http://oget.fedorapeople.org/review/itext.spec
SRPM: http://oget.fedorapeople.org/review/itext-2.1.3-3.fc10.src.rpm
Comment 10 Mamoru TASAKA 2008-10-11 03:27:14 EDT
Okay. Now I wait for bug 466394 side.
Comment 11 Mamoru TASAKA 2008-10-11 10:01:08 EDT
One misc issue
-----------------------------------------------------------
itext.i386: W: wrong-file-end-of-line-encoding /usr/share/doc/itext-2.1.3/copyright_notice.txt
-----------------------------------------------------------
- Please fix the window's-like end-of-line encoding of this file.
  "sed -i -e 's|\r||' <file>" or "dos2unix <file> (this case BR: dos2unix
  is needed) will fix this.

-----------------------------------------------------------
     This package (itext) is APPROVED by mtasaka
-----------------------------------------------------------
Comment 12 Orcan Ogetbil 2008-10-11 15:14:22 EDT
Oops, forgot to check the rpmlint in the last build. All fixed now.

New Package CVS Request
=======================
Package Name: itext
Short Description: A Free Java-PDF library
Owners: oget
Branches:
InitialCC:
Comment 13 Kevin Fenzi 2008-10-12 22:07:30 EDT
cvs done.
Comment 14 Rex Dieter 2008-10-13 13:47:55 EDT
looks kosher, unblocking pkg.
Comment 15 Mamoru TASAKA 2008-10-14 01:04:21 EDT
Now closing because this is requested for F-10 (for now) and
F-10 build is done by the submitter.
Comment 16 Susi Lehtola 2009-10-05 18:15:48 EDT
Can you build this for EL-5? I need it to update jmol to the 11.8 series.
Comment 17 Orcan Ogetbil 2009-10-05 22:06:11 EDT
Feel free to take it in EL. I have no interest in EL-*.
Comment 18 Susi Lehtola 2009-12-23 15:10:56 EST
Whoops, this slipped under my radar.

I had a look at the requirements: to build itext in EL-5 three more packages would have to be built. Looks like too much work, I'll just have to deal with an older release of jmol in EL-5 for good.

Sorry for bothering you.
Comment 19 Jochen Schmitt 2011-07-12 11:52:47 EDT
Package Change Request
======================
Package Name: itext
New Branches: el5 el6
Owners: s4504kr
Comment 20 Gwyn Ciesla 2011-07-12 23:13:54 EDT
Git done (by process-git-requests).

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