Fridrich Strba 2019-02-25 11:05:40 +00:00 committed by Git OBS Bridge
parent 1a991072f9
commit 49800d0a2a
6 changed files with 368 additions and 69 deletions

View File

@ -1,46 +0,0 @@
--- commons-digester-1.8-src/build.xml 2006-11-29 20:57:04.000000000 +0100
+++ commons-digester-1.8-src/build.xml 2018-12-21 21:10:27.168434135 +0100
@@ -53,6 +53,7 @@
<property name="commons.home" value=".."/>
<property name="beanutils.home" value="${commons.home}/beanutils"/>
<property name="logging.home" value="${commons.home}/logging"/>
+ <property name="collections.home" value="${commons.home}/collections"/>
<!-- ========== Derived Values ============================================ -->
@@ -66,6 +67,8 @@
<property name="commons-beanutils.jar" value="${beanutils.home}/dist/commons-beanutils.jar"/>
<property name="commons-logging.api" value="${logging.home}/dist/docs/api"/>
<property name="commons-logging.jar" value="${logging.home}/dist/commons-logging.jar"/>
+ <property name="commons-collections.api" value="${collections.home}/dist/docs/api"/>
+ <property name="commons-collections.jar" value="${collections.home}/dist/commons-collections.jar"/>
<!-- ========== Component Declarations ==================================== -->
@@ -118,6 +121,7 @@
<pathelement location="${jaxp.parser.jar}"/>
<pathelement location="${commons-beanutils.jar}"/>
<pathelement location="${commons-logging.jar}"/>
+ <pathelement location="${commons-collections.jar}"/>
<pathelement location="${junit.jar}"/>
</path>
@@ -142,6 +146,7 @@
<pathelement location="${jaxp.parser.jar}"/>
<pathelement location="${commons-beanutils.jar}"/>
<pathelement location="${commons-logging.jar}"/>
+ <pathelement location="${commons-collections.jar}"/>
</path>
<!-- Should all tests fail if one does? -->
@@ -248,10 +253,6 @@
doctitle="&lt;h1&gt;${component.title} (Version ${component.version})&lt;/h1&gt;"
windowtitle="${component.title} (Version ${component.version})"
bottom='Copyright 2001-2005 The Apache Software Foundation.'>
- <link offline="true" packagelistLoc="${commons-beanutils.api}"
- href="http://jakarta.apache.org/commons/beanutils/api/"/>
- <link offline="true" packagelistLoc="${commons-logging.api}"
- href="http://jakarta.apache.org/commons/logging/api/"/>
<classpath refid="compile.classpath"/>
</javadoc>
</target>

View File

@ -0,0 +1,274 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="commons-digester" default="package" basedir=".">
<!-- ====================================================================== -->
<!-- Build environment properties -->
<!-- ====================================================================== -->
<property file="build.properties"/>
<property name="project.groupId" value="commons-digester"/>
<property name="project.artifactId" value="commons-digester"/>
<property name="project.version" value="2.1"/>
<property name="project.name" value="Commons Digester"/>
<property name="project.organization.name" value="The Apache Software Foundation"/>
<property name="project.description" value="The Digester package lets you configure
an XML to Java object mapping module which triggers certain actions called rules
whenever a particular pattern of nested XML elements is recognized."/>
<property name="compiler.source" value="1.6"/>
<property name="compiler.target" value="${compiler.source}"/>
<property name="build.finalName" value="${project.artifactId}-${project.version}"/>
<property name="build.dir" value="target"/>
<property name="build.outputDir" value="${build.dir}/classes"/>
<property name="build.srcDir.0" value="src/main/java"/>
<property name="build.resourceDir.0" value="."/>
<property name="build.resourceDir.1" value="src/main/resources"/>
<property name="build.testOutputDir" value="${build.dir}/test-classes"/>
<property name="build.testDir.0" value="src/test/java"/>
<property name="build.testResourceDir.0" value="src/test/resources"/>
<property name="test.reports" value="${build.dir}/test-reports"/>
<property name="reporting.outputDirectory" value="${build.dir}/site"/>
<!-- ====================================================================== -->
<!-- Defining classpaths -->
<!-- ====================================================================== -->
<path id="build.classpath">
<fileset dir="lib">
<!-- commons-beanutils-1.8.3 commons-logging-1.1.1 -->
<include name="**/*.jar"/>
</fileset>
</path>
<path id="build.test.classpath">
<fileset dir="lib">
<!-- commons-beanutils-1.8.3 commons-logging-1.1.1 junit-4.8.1 -->
<include name="**/*.jar"/>
</fileset>
</path>
<!-- ====================================================================== -->
<!-- Cleaning up target -->
<!-- ====================================================================== -->
<target name="clean" description="Clean the output directory">
<delete dir="${build.dir}"/>
</target>
<!-- ====================================================================== -->
<!-- Compilation target -->
<!-- ====================================================================== -->
<target name="compile" description="Compile the code">
<mkdir dir="${build.outputDir}"/>
<javac destdir="${build.outputDir}"
encoding="iso-8859-1"
nowarn="false"
debug="true"
optimize="false"
deprecation="true"
target="${compiler.target}"
verbose="false"
fork="false"
source="${compiler.source}">
<src>
<pathelement location="${build.srcDir.0}"/>
</src>
<classpath refid="build.classpath"/>
</javac>
<mkdir dir="${build.outputDir}/META-INF"/>
<copy todir="${build.outputDir}/META-INF">
<fileset dir="${build.resourceDir.0}">
<include name="NOTICE.txt"/>
<include name="LICENSE.txt"/>
</fileset>
</copy>
<copy todir="${build.outputDir}">
<fileset dir="${build.resourceDir.1}">
<include name="**/*.dtd"/>
</fileset>
</copy>
</target>
<!-- ====================================================================== -->
<!-- Test-compilation target -->
<!-- ====================================================================== -->
<target name="compile-tests"
depends="compile"
description="Compile the test code"
unless="test.skip">
<mkdir dir="${build.testOutputDir}"/>
<javac destdir="${build.testOutputDir}"
encoding="iso-8859-1"
nowarn="false"
debug="true"
optimize="false"
deprecation="true"
target="${compiler.target}"
verbose="false"
fork="false"
source="${compiler.source}">
<src>
<pathelement location="${build.testDir.0}"/>
</src>
<classpath>
<path refid="build.test.classpath"/>
<pathelement location="${build.outputDir}"/>
</classpath>
</javac>
<copy todir="${build.testOutputDir}">
<fileset dir="${build.testResourceDir.0}">
<include name="**/*.xml"/>
<include name="**/*.xsd"/>
</fileset>
</copy>
</target>
<!-- ====================================================================== -->
<!-- Run all tests -->
<!-- ====================================================================== -->
<target name="test"
depends="compile-tests, junit-missing"
unless="junit.skipped"
description="Run the test cases">
<mkdir dir="${test.reports}"/>
<junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
<sysproperty key="basedir" value="."/>
<formatter type="xml"/>
<formatter type="plain" usefile="false"/>
<classpath>
<path refid="build.test.classpath"/>
<pathelement location="${build.outputDir}"/>
<pathelement location="${build.testOutputDir}"/>
</classpath>
<batchtest todir="${test.reports}" unless="test">
<fileset dir="${build.testDir.0}">
<include name="**/Test*.java"/>
<include name="**/*Test.java"/>
<include name="**/*TestCase.java"/>
<exclude name="**/TestBean.java"/>
<exclude name="**/TestRule.java"/>
<exclude name="**/TestRuleSet.java"/>
<exclude name="**/Test*$*.java"/>
<exclude name="**/Abstract*.java"/>
</fileset>
</batchtest>
<batchtest todir="${test.reports}" if="test">
<fileset dir="${build.testDir.0}">
<include name="**/${test}.java"/>
<exclude name="**/TestBean.java"/>
<exclude name="**/TestRule.java"/>
<exclude name="**/TestRuleSet.java"/>
<exclude name="**/Test*$*.java"/>
<exclude name="**/Abstract*.java"/>
</fileset>
</batchtest>
</junit>
</target>
<target name="test-junit-present">
<available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
</target>
<target name="test-junit-status"
depends="test-junit-present">
<condition property="junit.missing">
<and>
<isfalse value="${junit.present}"/>
<isfalse value="${test.skip}"/>
</and>
</condition>
<condition property="junit.skipped">
<or>
<isfalse value="${junit.present}"/>
<istrue value="${test.skip}"/>
</or>
</condition>
</target>
<target name="junit-missing"
depends="test-junit-status"
if="junit.missing">
<echo>=================================== WARNING ===================================</echo>
<echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
<echo>===============================================================================</echo>
</target>
<!-- ====================================================================== -->
<!-- Javadoc target -->
<!-- ====================================================================== -->
<target name="javadoc" description="Generates the Javadoc of the application">
<javadoc sourcepath="${build.srcDir.0}"
packagenames="*"
destdir="${reporting.outputDirectory}/apidocs"
access="protected"
classpathref="build.classpath"
verbose="false"
encoding="iso-8859-1"
version="true"
use="true"
author="true"
splitindex="false"
nodeprecated="false"
nodeprecatedlist="false"
notree="false"
noindex="false"
nohelp="false"
nonavbar="false"
serialwarn="false"
charset="ISO-8859-1"
source="${compiler.source}"
linksource="true"
breakiterator="false"/>
</target>
<!-- ====================================================================== -->
<!-- Package target -->
<!-- ====================================================================== -->
<target name="package" depends="compile,test" description="Package the application">
<jar jarfile="${build.dir}/${build.finalName}.jar"
compress="true"
index="false"
basedir="${build.outputDir}"
excludes="**/package.html">
<manifest>
<attribute name="Bundle-Description" value="${project.description}"/>
<attribute name="Bundle-DocURL" value="http://commons.apache.org/digester/"/>
<attribute name="Bundle-License" value="https://www.apache.org/licenses/LICENSE-2.0.txt"/>
<attribute name="Bundle-ManifestVersion" value="2"/>
<attribute name="Bundle-Name" value="${project.name}"/>
<attribute name="Bundle-SymbolicName" value="org.apache.commons.${project.artifactId}"/>
<attribute name="Bundle-Vendor" value="${project.organization.name}"/>
<attribute name="Bundle-Version" value="${project.version}.0"/>
<attribute name="Export-Package" value="org.apache.commons.digester;version=&quot;${project.version}&quot;,org.apache.commons.digester.annotations;version=&quot;${project.version}&quot;,org.apache.commons.digester.annotations.handlers;version=&quot;${project.version}&quot;,org.apache.commons.digester.annotations.internal;version=&quot;${project.version}&quot;,org.apache.commons.digester.annotations.providers;version=&quot;${project.version}&quot;,org.apache.commons.digester.annotations.reflect;version=&quot;${project.version}&quot;,org.apache.commons.digester.annotations.rules;version=&quot;${project.version}&quot;,org.apache.commons.digester.annotations.spi;version=&quot;${project.version}&quot;,org.apache.commons.digester.annotations.utils;version=&quot;${project.version}&quot;,org.apache.commons.digester.parser;version=&quot;${project.version}&quot;,org.apache.commons.digester.plugins;version=&quot;${project.version}&quot;,org.apache.commons.digester.plugins.strategies;version=&quot;${project.version}&quot;,org.apache.commons.digester.substitution;version=&quot;${project.version}&quot;,org.apache.commons.digester.xmlrules;version=&quot;${project.version}&quot;"/>
<attribute name="Implementation-Title" value="${project.name}"/>
<attribute name="Implementation-URL" value="http://commons.apache.org/digester/"/>
<attribute name="Implementation-Vendor" value="${project.organization.name}"/>
<attribute name="Implementation-Vendor-Id" value="org.apache"/>
<attribute name="Implementation-Version" value="${project.version}"/>
<attribute name="Import-Package" value="javax.xml.parsers,javax.xml.validation,org.apache.commons.beanutils,org.apache.commons.logging,org.apache.commons.logging.impl,org.w3c.dom,org.xml.sax,org.xml.sax.helpers"/>
<attribute name="Include-Resource" value="META-INF/NOTICE.txt=NOTICE.txt,META-INF/LICENSE.txt=LICENSE.txt,org/apache/commons/digester/xmlrules/digester-rules.dtd=src/main/resources/org/apache/commons/digester/xmlrules/digester-rules.dtd"/>
<attribute name="JavaPackages-ArtifactId" value="${project.artifactId}"/>
<attribute name="JavaPackages-GroupId" value="${project.groupId}"/>
<attribute name="JavaPackages-Version" value="${project.version}"/>
<attribute name="Require-Capability" value="osgi.ee;filter:=&quot;(&amp;(osgi.ee=JavaSE)(version=${compiler.target}))&quot;"/>
<attribute name="Specification-Title" value="${project.name}"/>
<attribute name="Specification-Vendor" value="${project.organization.name}"/>
<attribute name="Specification-Version" value="${project.version}"/>
</manifest>
</jar>
</target>
<!-- ====================================================================== -->
<!-- A dummy target for the package named after the type it creates -->
<!-- ====================================================================== -->
<target name="jar" depends="package" description="Builds the jar for the application"/>
</project>

View File

@ -1,3 +1,67 @@
-------------------------------------------------------------------
Mon Feb 25 10:38:45 UTC 2019 - Fridrich Strba <fstrba@suse.com>
- Upgrade to 2.1
* Breaking changes:
+ The minimum JDK requirement is now JDK 1.5. The provided
binaries will not work on lower JDKs. The source has been
updated to leverage Generics and other JDK 1.5 features where
possible, and requires JDK 1.5 to compile.
+ This release eliminates all dependencies on Commons
Collections classes. Previously, ArrayStack was used in the
Digester implementation and was exposed via protected fields
or inner classes of the following classes:
- org.apache.commons.digester.Digester,
- org.apache.commons.digester.CallParamRule, and
- org.apache.commons.digester.xmlrules.DigesterRuleParser
These classes now use java.util.Stack instead. Any subclasses
of the above using protected ArrayStack members will require
appropriate migration to use java.util.Stack instead before
they can be used with version 2.0 or later.
* Important changes:
+ The legacy schema support has been deprecated in favor of
javax.xml.validation.Schema support.
* New features:
+ Support for XML Schema validation using
javax.xml.validation.Schema has been added to Digester.
See Digester class Javadoc, and
Digester#setSchema(javax.xml.validation.Schema) method.
This allows usage of W3C XML Schema, Relax NG and Schematron
for validation of XML documents.
The legacy schema support has been deprecated (details below).
+ The underlying SAXParser factory can now be easily configured
to be XInclude aware. This allows for general purpose
inclusion of XML or text documents, for example, and
facilitates document modularity.
+ Added a new package 'annotations' that provides for Java5
Annotations meta-data based definition of rules for Digester.
This improves maintainability of both Java code and XML
documents, as rules are now defined in POJOs and generating
Digester parsers at runtime, avoiding manual updates.
* Bugs from previous release:
+ SetPropertyRule throws java.lang.IllegalArgumentException:
No name specified when matched element has no attributes.
[DIGESTER-114]
+ Missing unit tests using Ant and Maven. [DIGESTER-117]
+ Digesting XML content with NodeCreateRule swallows spaces.
[DIGESTER-120]
+ Potential NullPointerException if debug is enabled in
Digester#resolveEntity() [DIGESTER-122]
+ Clear inputSources list in method Digester.clear()
[DIGESTER-125]
+ Potential NullPointerException if debug is enabled in
FactoryCreateRule#begin() [DIGESTER-126]
* Improvements from previous release:
+ Null arguments to all Digester#parse() methods now throw an
IllegalArgumentException. [DIGESTER-111]
+ 'serialVersionUID' fields have been added to Serializable
classes.
- Generate ant build files that were removed in 2.1 by upstream
- Removed patch:
* apache-commons-digester-build.patch
+ the generated build is handling the build classpath
differently
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Dec 21 20:40:38 UTC 2018 - Fridrich Strba <fstrba@suse.com> Fri Dec 21 20:40:38 UTC 2018 - Fridrich Strba <fstrba@suse.com>

View File

@ -1,7 +1,7 @@
# #
# spec file for package apache-commons-digester # spec file for package apache-commons-digester
# #
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -18,30 +18,32 @@
%define base_name digester %define base_name digester
%define short_name commons-%{base_name} %define short_name commons-%{base_name}
%bcond_with tests
Name: apache-commons-digester Name: apache-commons-digester
Version: 1.8 Version: 2.1
Release: 0 Release: 0
Summary: Jakarta Commons Digester Package Summary: Jakarta Commons Digester Package
License: Apache-2.0 License: Apache-2.0
Group: Development/Libraries/Java Group: Development/Libraries/Java
URL: http://apache.apache.org/commons/digester/ URL: http://apache.apache.org/commons/digester/
Source0: https://archive.apache.org/dist/commons/%{base_name}/source/%{short_name}-%{version}-src.tar.gz Source0: https://archive.apache.org/dist/commons/%{base_name}/source/%{short_name}-%{version}-src.tar.gz
Patch0: %{name}-build.patch Source1: %{name}-build.xml
BuildRequires: ant BuildRequires: ant
BuildRequires: commons-beanutils BuildRequires: commons-beanutils
BuildRequires: commons-collections BuildRequires: commons-logging
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: java-devel
BuildRequires: javapackages-local BuildRequires: javapackages-local
BuildRequires: xml-commons-apis Requires: mvn(commons-beanutils:commons-beanutils)
Requires: apache-commons-parent Requires: mvn(commons-logging:commons-logging)
Requires: commons-beanutils >= 1.7
Requires: commons-logging >= 1.0
Provides: %{short_name} = %{version}-%{release} Provides: %{short_name} = %{version}-%{release}
Obsoletes: %{short_name} < %{version}-%{release} Obsoletes: %{short_name} < %{version}-%{release}
Provides: jakarta-%{short_name} = %{version}-%{release} Provides: jakarta-%{short_name} = %{version}-%{release}
Obsoletes: jakarta-%{short_name} < %{version}-%{release} Obsoletes: jakarta-%{short_name} < %{version}-%{release}
BuildArch: noarch BuildArch: noarch
%if %{with tests}
BuildRequires: ant-junit
BuildRequires: commons-collections
%endif
%description %description
The goal of the Jakarta Commons Digester project is to create and The goal of the Jakarta Commons Digester project is to create and
@ -62,22 +64,27 @@ Digester Package.
%prep %prep
%setup -q -n %{short_name}-%{version}-src %setup -q -n %{short_name}-%{version}-src
%patch0 -p1 cp %{SOURCE1} build.xml
mkdir -p lib
build-jar-repository -s lib commons-beanutils commons-logging
%if %{with tests}
build-jar-repository -s lib commons-collections
%endif
%pom_remove_parent
%build %build
#cp LICENSE.txt ../LICENSE ant \
ant -v \ %if %{without tests}
-Dant.build.javac.source=1.6 -Dant.build.javac.target=1.6 \ -Dtest.skip=true \
-Djunit.jar=$(build-classpath junit) \ %endif
-Dcommons-beanutils.jar=$(build-classpath commons-beanutils) \ jar javadoc
-Dcommons-collections.jar=$(build-classpath commons-collections) \
-Dcommons-logging.jar=$(build-classpath commons-logging) \
dist
%install %install
# jars # jars
install -d -m 0755 %{buildroot}%{_javadir} install -d -m 0755 %{buildroot}%{_javadir}
install -pm 644 dist/%{short_name}.jar %{buildroot}%{_javadir}/%{name}.jar install -pm 644 target/%{short_name}-%{version}.jar %{buildroot}%{_javadir}/%{name}.jar
ln -s %{name}.jar %{buildroot}%{_javadir}/%{short_name}.jar ln -s %{name}.jar %{buildroot}%{_javadir}/%{short_name}.jar
# pom # pom
install -d -m 0755 %{buildroot}%{_mavenpomdir} install -d -m 0755 %{buildroot}%{_mavenpomdir}
@ -85,7 +92,7 @@ install -pm 644 pom.xml %{buildroot}%{_mavenpomdir}/%{name}.pom
%add_maven_depmap %{name}.pom %{name}.jar -a org.apache.commons:%{short_name} %add_maven_depmap %{name}.pom %{name}.jar -a org.apache.commons:%{short_name}
# javadoc # javadoc
install -d -m 0755 %{buildroot}%{_javadocdir}/%{name} install -d -m 0755 %{buildroot}%{_javadocdir}/%{name}
cp -pr dist/docs/api*/* %{buildroot}%{_javadocdir}/%{name}/ cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}/
%fdupes -s %{buildroot}%{_javadocdir}/%{name}/ %fdupes -s %{buildroot}%{_javadocdir}/%{name}/
%files -f .mfiles %files -f .mfiles

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d9a965c82828a881d2ab6256fba7076f62815a9545b3af9d553dc5271577182b
size 279771

BIN
commons-digester-2.1-src.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.