Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package pdftk for openSUSE:Factory checked 
in at 2023-10-27 22:29:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pdftk (Old)
 and      /work/SRC/openSUSE:Factory/.pdftk.new.17445 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "pdftk"

Fri Oct 27 22:29:12 2023 rev:9 rq:1120810 version:3.3.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/pdftk/pdftk.changes      2022-09-23 
14:16:18.634133297 +0200
+++ /work/SRC/openSUSE:Factory/.pdftk.new.17445/pdftk.changes   2023-10-27 
22:29:51.391174724 +0200
@@ -1,0 +2,17 @@
+Fri Oct 27 13:30:22 UTC 2023 - Fridrich Strba <fst...@suse.com>
+
+- Use SOURCE_DATE_EPOCH for reproducible timestamps
+
+-------------------------------------------------------------------
+Fri Oct 27 11:36:14 UTC 2023 - Fridrich Strba <fst...@suse.com>
+
+- Build using maven and install as maven artifact
+- Generate the javadoc and package it in a separate sub-package
+- Craft the script using the %%jpackage_script macro
+- Added patch:
+  * pdftk-bc175.patch
+    + fix build with bouncycastle 1.75+ with some deprecated methods
+      now removed
+    + fixes build in Factory after bouncycastle upgrade
+
+-------------------------------------------------------------------

New:
----
  pdftk-bc175.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ pdftk.spec ++++++
--- /var/tmp/diff_new_pack.y9pijf/_old  2023-10-27 22:29:51.843191302 +0200
+++ /var/tmp/diff_new_pack.y9pijf/_new  2023-10-27 22:29:51.847191449 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package pdftk
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
 # Copyright (c) 2020 Franz Sirl (fsirl)
 #
 # All modifications and additions to the file contributed by third parties
@@ -25,12 +25,17 @@
 Group:          Productivity/Publishing/PDF
 URL:            https://www.pdflabs.com/
 Source0:        
https://gitlab.com/pdftk-java/pdftk/-/archive/v%{version}/pdftk-v%{version}.tar.bz2
-BuildRequires:  ant
-BuildRequires:  apache-commons-lang3
-BuildRequires:  bouncycastle
+Patch0:         %{name}-bc175.patch
+BuildRequires:  fdupes
+BuildRequires:  java-devel >= 1.8
+BuildRequires:  maven-local
+BuildRequires:  mvn(biz.aQute.bnd:bnd-maven-plugin)
+BuildRequires:  mvn(org.apache.commons:commons-lang3)
+BuildRequires:  mvn(org.bouncycastle:bcprov-jdk18on)
 Requires:       apache-commons-lang3
 Requires:       bouncycastle
-Requires:       jre >= 11
+# needed for the startscript
+Requires:       javapackages-tools
 BuildArch:      noarch
 
 %description
@@ -55,29 +60,42 @@
   * Uncompress and Re-Compress Page Streams
   * Repair Corrupted PDF (Where Possible)
 
+%package javadoc
+Summary:        API documentation for %{name}
+Group:          Documentation/HTML
+
+%description javadoc
+API documentation for %{name}.
+
 %prep
 %setup -q -n %{name}-v%{version}
-mkdir lib
-ln -s %{_javadir}/bcprov.jar %{_javadir}/commons-lang3.jar -t lib
+%patch0 -p1
+
+%pom_remove_plugin :jacoco-maven-plugin
+
+%{mvn_file} : %{name}
 
 %build
-%{ant} jar
+%{mvn_build} -f -- \
+    -Dproject.build.outputTimestamp=$(date -u -d @${SOURCE_DATE_EPOCH:-$(date 
+%%s)} +%%Y-%%m-%%dT%%H:%%M:%%SZ) \
+    -Dsource=8
 
 %install
-install -dm0755 %{buildroot}%{_bindir} %{buildroot}%{_javadir} 
%{buildroot}%{_mandir}/man1
-install -m0644 build/jar/pdftk.jar %{buildroot}%{_javadir}
-install -m0644 pdftk.1 -t %{buildroot}%{_mandir}/man1
+%mvn_install
+%fdupes -s %{buildroot}%{_javadocdir}/%{name}
+
 # startscript
-cat >%{buildroot}%{_bindir}/%{name} << EOF
-#!/bin/sh
-exec %{_bindir}/java -cp 
%{_javadir}/%{name}.jar:%{_javadir}/bcprov.jar:%{_javadir}/commons-lang3.jar 
com.gitlab.pdftk_java.pdftk "\$@"
-EOF
-chmod 0755 %{buildroot}%{_bindir}/%{name}
+%jpackage_script com.gitlab.pdftk_java.pdftk "" "" 
%{name}:bcprov:commons-lang3 %{name} true
+# manpage
+install -dm 0755 %{buildroot}%{_mandir}/man1
+install -pm 0644 pdftk.1 -t %{buildroot}%{_mandir}/man1
 
-%files
-%license license_gpl_pdftk/*.txt license_gpl_pdftk/*/*.txt
+%files -f .mfiles
+%license LICENSE
 %doc CHANGELOG.md README.md
 %{_bindir}/%{name}
 %{_mandir}/man1/%{name}.1%{?ext_man}
-%{_javadir}/%{name}.jar
+
+%files javadoc -f .mfiles-javadoc
+%license LICENSE
 

++++++ pdftk-bc175.patch ++++++
--- pdftk-v3.3.3/java/com/gitlab/pdftk_java/com/lowagie/text/pdf/PdfPKCS7.java  
2023-10-27 13:23:34.491764952 +0200
+++ pdftk-v3.3.3/java/com/gitlab/pdftk_java/com/lowagie/text/pdf/PdfPKCS7.java  
2023-10-27 13:26:30.713026680 +0200
@@ -225,7 +225,7 @@
         ASN1ObjectIdentifier objId = 
(ASN1ObjectIdentifier)signedData.getObjectAt(0);
         if (!objId.getId().equals(ID_PKCS7_SIGNED_DATA))
             throw new SecurityException("Not a valid PKCS#7 object - not 
signed data");
-        ASN1Sequence content = 
(ASN1Sequence)((DERTaggedObject)signedData.getObjectAt(1)).getObject();
+        ASN1Sequence content = 
(ASN1Sequence)((DERTaggedObject)signedData.getObjectAt(1)).getBaseObject();
         // the positions that we care are:
         //     0 - version
         //     1 - digestAlgorithms
@@ -258,7 +258,7 @@
         // the possible ID_PKCS7_DATA
         ASN1Sequence rsaData = (ASN1Sequence)content.getObjectAt(2);
         if (rsaData.size() > 1) {
-            DEROctetString rsaDataContent = 
(DEROctetString)((DERTaggedObject)rsaData.getObjectAt(1)).getObject();
+            DEROctetString rsaDataContent = 
(DEROctetString)((DERTaggedObject)rsaData.getObjectAt(1)).getBaseObject();
             RSAdata = rsaDataContent.getOctets();
         }
         
@@ -294,7 +294,7 @@
         next = 3;
         if (signerInfo.getObjectAt(next) instanceof ASN1TaggedObject) {
             ASN1TaggedObject tagsig = 
(ASN1TaggedObject)signerInfo.getObjectAt(next);
-            ASN1Sequence sseq = (ASN1Sequence)tagsig.getObject();
+            ASN1Sequence sseq = (ASN1Sequence)tagsig.getBaseObject();
             ByteArrayOutputStream bOut = new ByteArrayOutputStream();          
  
             ASN1OutputStream dout = ASN1OutputStream.create(bOut);
             try {

Reply via email to