Description of problem: pdftk seems to pull in a huge number of dependencies, I wonder if they're really necessary: # yum install pdftk Loaded plugins: fastestmirror, merge-conf, refresh-packagekit, remove-with-leaves, verify Loading mirror speeds from cached hostfile updates/metalink | 22 kB 00:00 * fedora: mirror.sov.uk.goscomb.net * updates: mirror.sov.uk.goscomb.net adobe-linux-i386 | 951 B 00:00 updates | 4.4 kB 00:00 updates/primary_db | 4.8 MB 00:00 Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package pdftk.x86_64 0:1.41-21.fc11 set to be updated adobe-linux-i386/filelists | 138 kB 00:00 fedora/filelists_db | 15 MB 00:01 updates/filelists_db | 7.4 MB 00:00 --> Processing Dependency: itext >= 2.1.7-1 for package: pdftk-1.41-21.fc11.x86_64 --> Processing Dependency: /usr/lib64/gcj/itext/itext-2.1.7.jar.so for package: pdftk-1.41-21.fc11.x86_64 --> Running transaction check ---> Package itext.x86_64 0:2.1.7-1.fc11 set to be updated --> Processing Dependency: pdf-renderer for package: itext-2.1.7-1.fc11.x86_64 --> Processing Dependency: bouncycastle-tsp for package: itext-2.1.7-1.fc11.x86_64 --> Processing Dependency: dom4j for package: itext-2.1.7-1.fc11.x86_64 --> Running transaction check ---> Package bouncycastle-tsp.x86_64 0:1.43-3.fc11 set to be updated --> Processing Dependency: bouncycastle-mail = 1.43 for package: bouncycastle-tsp-1.43-3.fc11.x86_64 --> Processing Dependency: junit4 for package: bouncycastle-tsp-1.43-3.fc11.x86_64 ---> Package dom4j.noarch 0:1.6.1-4.fc11 set to be updated --> Processing Dependency: jaxp = 1.2 for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: jaxen-bootstrap >= 1.1-0.b7 for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: isorelax for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: xpp2 for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: bea-stax for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: relaxngDatatype for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: bea-stax-api for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: msv-xsdlib for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: ws-jaxme for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: xpp3 for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: xerces-j2 for package: dom4j-1.6.1-4.fc11.noarch --> Processing Dependency: msv-msv for package: dom4j-1.6.1-4.fc11.noarch ---> Package pdf-renderer.x86_64 0:0-0.5.20090405cvs.fc11 set to be updated --> Running transaction check ---> Package bea-stax.x86_64 0:1.2.0-0.4.rc1.fc11 set to be updated ---> Package bea-stax-api.x86_64 0:1.2.0-0.4.rc1.fc11 set to be updated ---> Package bouncycastle-mail.x86_64 0:1.43-2.fc11 set to be updated --> Processing Dependency: bouncycastle = 1.43 for package: bouncycastle-mail-1.43-2.fc11.x86_64 --> Processing Dependency: javamail for package: bouncycastle-mail-1.43-2.fc11.x86_64 ---> Package isorelax.noarch 1:0-0.3.release20050331.fc11 set to be updated ---> Package jaxen.noarch 0:1.1.1-2.1.fc11 set to be updated --> Processing Dependency: xom for package: jaxen-1.1.1-2.1.fc11.noarch ---> Package junit4.x86_64 0:4.5-4.1.fc11 set to be updated --> Processing Dependency: hamcrest for package: junit4-4.5-4.1.fc11.x86_64 ---> Package msv-msv.x86_64 1:1.2-0.2.20050722.3.4.fc10 set to be updated --> Processing Dependency: xml-commons-resolver for package: 1:msv-msv-1.2-0.2.20050722.3.4.fc10.x86_64 --> Processing Dependency: servlet for package: 1:msv-msv-1.2-0.2.20050722.3.4.fc10.x86_64 ---> Package msv-xsdlib.x86_64 1:1.2-0.2.20050722.3.4.fc10 set to be updated ---> Package relaxngDatatype.noarch 0:1.0-4.2.fc11 set to be updated ---> Package ws-jaxme.noarch 0:0.5.1-3.4.fc11 set to be updated --> Processing Dependency: log4j for package: ws-jaxme-0.5.1-3.4.fc11.noarch --> Processing Dependency: xmldb-api-sdk for package: ws-jaxme-0.5.1-3.4.fc11.noarch --> Processing Dependency: junit for package: ws-jaxme-0.5.1-3.4.fc11.noarch --> Processing Dependency: xmldb-api for package: ws-jaxme-0.5.1-3.4.fc11.noarch --> Processing Dependency: antlr for package: ws-jaxme-0.5.1-3.4.fc11.noarch --> Processing Dependency: jakarta-commons-codec for package: ws-jaxme-0.5.1-3.4.fc11.noarch --> Processing Dependency: hsqldb for package: ws-jaxme-0.5.1-3.4.fc11.noarch ---> Package xerces-j2.x86_64 0:2.7.1-11.3.fc11 set to be updated ---> Package xml-commons-apis12.x86_64 0:1.2.04-2.5.fc11 set to be updated ---> Package xpp2.noarch 0:2.1.10-7.2.fc11 set to be updated ---> Package xpp3.noarch 0:1.1.3.8-2.2.fc11 set to be updated --> Running transaction check ---> Package antlr.x86_64 0:2.7.7-5.fc11 set to be updated ---> Package bouncycastle.x86_64 0:1.43-3.fc11 set to be updated ---> Package classpathx-mail.x86_64 0:1.1.1-8.1.fc11 set to be updated --> Processing Dependency: jaf >= 1.0 for package: classpathx-mail-1.1.1-8.1.fc11.x86_64 ---> Package hamcrest.x86_64 0:1.1-8.1.fc11 set to be updated --> Processing Dependency: qdox for package: hamcrest-1.1-8.1.fc11.x86_64 ---> Package hsqldb.x86_64 1:1.8.0.10-2.fc11 set to be updated --> Processing Dependency: servletapi5 for package: 1:hsqldb-1.8.0.10-2.fc11.x86_64 --> Processing Dependency: servletapi5 for package: 1:hsqldb-1.8.0.10-2.fc11.x86_64 ---> Package jakarta-commons-codec.x86_64 0:1.3-10.4.fc11 set to be updated ---> Package junit.x86_64 0:3.8.2-5.4.fc11 set to be updated ---> Package log4j.x86_64 0:1.2.14-5.3.fc11 set to be updated ---> Package tomcat6-servlet-2.5-api.noarch 0:6.0.18-9.2.fc11 set to be updated ---> Package xml-commons-resolver.x86_64 0:1.1-3.15.fc11 set to be updated ---> Package xmldb-api.x86_64 1:0.1-0.3.20011111cvs.1.3.fc11 set to be updated ---> Package xmldb-api-sdk.x86_64 1:0.1-0.3.20011111cvs.1.3.fc11 set to be updated ---> Package xom.noarch 0:1.0-4.5.fc11 set to be updated --> Processing Dependency: icu4j for package: xom-1.0-4.5.fc11.noarch --> Running transaction check ---> Package classpathx-jaf.x86_64 0:1.0-14.3.fc11 set to be updated ---> Package icu4j.x86_64 0:3.8.1-5.fc11 set to be updated ---> Package qdox.x86_64 0:1.6.1-6.2.fc11 set to be updated ---> Package tomcat5-servlet-2.4-api.noarch 0:5.5.27-6.2.fc11 set to be updated --> Finished Dependency Resolution Dependencies Resolved =========================================================================================================== Package Arch Version Repository Size =========================================================================================================== Installing: pdftk x86_64 1.41-21.fc11 updates 91 k Installing for dependencies: antlr x86_64 2.7.7-5.fc11 fedora 1.4 M bea-stax x86_64 1.2.0-0.4.rc1.fc11 fedora 404 k bea-stax-api x86_64 1.2.0-0.4.rc1.fc11 fedora 59 k bouncycastle x86_64 1.43-3.fc11 updates 4.7 M bouncycastle-mail x86_64 1.43-2.fc11 updates 802 k bouncycastle-tsp x86_64 1.43-3.fc11 updates 146 k classpathx-jaf x86_64 1.0-14.3.fc11 updates 109 k classpathx-mail x86_64 1.1.1-8.1.fc11 fedora 1.2 M dom4j noarch 1.6.1-4.fc11 fedora 294 k hamcrest x86_64 1.1-8.1.fc11 fedora 356 k hsqldb x86_64 1:1.8.0.10-2.fc11 fedora 2.1 M icu4j x86_64 3.8.1-5.fc11 fedora 4.0 M isorelax noarch 1:0-0.3.release20050331.fc11 fedora 70 k itext x86_64 2.1.7-1.fc11 updates 3.4 M jakarta-commons-codec x86_64 1.3-10.4.fc11 fedora 106 k jaxen noarch 1.1.1-2.1.fc11 fedora 203 k junit x86_64 3.8.2-5.4.fc11 fedora 322 k junit4 x86_64 4.5-4.1.fc11 fedora 381 k log4j x86_64 1.2.14-5.3.fc11 fedora 763 k msv-msv x86_64 1:1.2-0.2.20050722.3.4.fc10 fedora 1.2 M msv-xsdlib x86_64 1:1.2-0.2.20050722.3.4.fc10 fedora 280 k pdf-renderer x86_64 0-0.5.20090405cvs.fc11 fedora 917 k qdox x86_64 1.6.1-6.2.fc11 fedora 223 k relaxngDatatype noarch 1.0-4.2.fc11 fedora 15 k tomcat5-servlet-2.4-api noarch 5.5.27-6.2.fc11 fedora 116 k tomcat6-servlet-2.5-api noarch 6.0.18-9.2.fc11 fedora 85 k ws-jaxme noarch 0.5.1-3.4.fc11 fedora 1.2 M xerces-j2 x86_64 2.7.1-11.3.fc11 fedora 9.7 M xml-commons-apis12 x86_64 1.2.04-2.5.fc11 fedora 260 k xml-commons-resolver x86_64 1.1-3.15.fc11 fedora 164 k xmldb-api x86_64 1:0.1-0.3.20011111cvs.1.3.fc11 fedora 25 k xmldb-api-sdk x86_64 1:0.1-0.3.20011111cvs.1.3.fc11 fedora 60 k xom noarch 1.0-4.5.fc11 fedora 183 k xpp2 noarch 2.1.10-7.2.fc11 fedora 246 k xpp3 noarch 1.1.3.8-2.2.fc11 fedora 296 k Transaction Summary =========================================================================================================== Install 36 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 36 M Version-Release number of selected component (if applicable): pdftk.x86_64 0:1.41-21.fc11
(In reply to comment #0) > Description of problem: > pdftk seems to pull in a huge number of dependencies, I wonder if they're > really necessary: > Yes, they are. Most deps come through itext. There is not much we can do about it. Jochen, any opinions?
Because the most depedencies are coming from itext I have reassign the bug to itext. I'm wondering, why we have junit as a dependencies for itext. So I think any research may be helpful.
There was a junit4 dependency that came through bouncycastle which got removed recently. New bouncycastle packages without junit4 dependency should be in updates-testing by now. This will shave off a few (2-3) dependencies from pdftk's chain, unless there is something else along the way that requires junit4. On the other hand, the major part of the above deps comes through the junit side. junit dependency comes through the itext->dom4j->ws-jaxme->xmldb-api-sdk->xmldb-api->junit chain. I don't have control on this chain including and beyond dom4j. dom4j itself is pulling 29 packages. I am passing the ball to the dom4j maintainer.
I'm reassigning the bug to myself. After doing a deeper research, I noticed that itext separates its dom4j&pdf-renderer dependent modules into different jar files. By throwing these modules into subpackages, we will get rid of the large dependency chain from the main itext package and hence from pdftk (and everything that depends on the main itext package.) I made a scratch build on koji: http://koji.fedoraproject.org/koji/taskinfo?taskID=1721924 I tested this with pdftk and tuxguitar and it works as expected. I am going to submit this build now.
itext-2.1.7-5.fc11 has been submitted as an update for Fedora 11. http://admin.fedoraproject.org/updates/itext-2.1.7-5.fc11
itext-2.1.7-5.fc11 has been pushed to the Fedora 11 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update itext'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-10253
No complaints. I sent this to stable.
itext-2.1.7-5.fc11 has been pushed to the Fedora 11 stable repository. If problems still persist, please make note of it in this bug report.