Merge ~nacc/ubuntu/+source/commons-vfs:merge into ~ubuntu-server-dev/ubuntu/+source/commons-vfs:ubuntu/devel

Proposed by Nish Aravamudan
Status: Merged
Merged at revision: b3f7b41277ab4ae1234bd52cd4e292eeb0c2061f
Proposed branch: ~nacc/ubuntu/+source/commons-vfs:merge
Merge into: ~ubuntu-server-dev/ubuntu/+source/commons-vfs:ubuntu/devel
Diff against target: 392 lines (+252/-12) (has conflicts)
11 files modified
debian/build-classpath (+4/-0)
debian/build.properties (+4/-0)
debian/changelog (+60/-0)
debian/compat (+1/-1)
debian/control (+21/-5)
debian/copyright (+1/-1)
debian/maven.ignoreRules (+1/-2)
debian/maven.rules (+0/-1)
debian/patches/cherrypick-VFS-521.patch (+145/-0)
debian/patches/series (+1/-0)
debian/rules (+14/-2)
Conflict in debian/build-classpath
Conflict in debian/build.properties
Conflict in debian/changelog
Conflict in debian/control
Conflict in debian/rules
Reviewer Review Type Date Requested Status
James Page Needs Fixing
Review via email: mp+286404@code.launchpad.net

Description of the change

commons-vfs (2.0-7ubuntu1) xenial; urgency=medium

  * Merge from Debian unstable (LP: #1546717). Remaining changes:
    - Use ant build system:
      + d/control: Drop B-D's on maven-debian-helper + cdbs and add
        B-D on maven-ant-helper, maven-repo-helper.
      + d/rules, d/build-classpath, d/build.xml, d/build.properties:
        Configure build to use customized version of maven-ant-helper
        build.xml + debhelper.
      + d/libcommons-vfs-java.poms: Update to pickup build artifacts
        and remove surplus pom files.
      + d/libcommons-vfs-java-doc.install: Pickup documentation
        from core component instead of aggregated javadoc.
      + d/control: Manually set dependencies for binary packages.
    - Enabled test suite:
      + d/patches/disable_webdav_provider.diff: Update patch to
        fix test that checks for webdav support
      + d/build.xml: Ignore webdav when running tests.
  * Cherry-pick fix for VFS-521 from http://svn.apache.org/r1636224.

To post a comment you must log in.
Revision history for this message
James Page (james-page) wrote :

libjackrabbit-java is in main - can you check that is is actually needed (I remember patching some tests/support out a while back).

review: Needs Fixing
Revision history for this message
Nish Aravamudan (nacc) wrote :

On Mon, Mar 7, 2016 at 6:47 AM, James Page <email address hidden> wrote:
> Review: Needs Fixing
>
> libjackrabbit-java is in main - can you check that is is actually needed (I remember
> patching some tests/support out a while back).

To be clear, you mean libjackrabbit-java is in universe & commons-vfs
is in main, right? It seems to be something was added in 2.0-6. I'll
check on removing it now.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/debian/build-classpath b/debian/build-classpath
2index 2eff1e8..3285de4 100644
3--- a/debian/build-classpath
4+++ b/debian/build-classpath
5@@ -2,7 +2,11 @@
6 /usr/share/java/ant-junit4.jar
7 /usr/share/java/junit4.jar
8 /usr/share/java/commons-logging.jar
9+<<<<<<< debian/build-classpath
10 /usr/share/java/commons-net2.jar
11+=======
12+/usr/share/java/commons-net.jar
13+>>>>>>> debian/build-classpath
14 /usr/share/java/commons-httpclient.jar
15 /usr/share/java/commons-compress.jar
16 /usr/share/java/jsch.jar
17diff --git a/debian/build.properties b/debian/build.properties
18index b554138..206cbad 100644
19--- a/debian/build.properties
20+++ b/debian/build.properties
21@@ -2,7 +2,11 @@ build.javaVersion=1.5
22 # Generate javadoc and link to required API packages
23 javadoc.generate=true
24 dependency=libcommons-logging-java
25+<<<<<<< debian/build.properties
26 dependency2=libcommons-net2-java
27+=======
28+dependency2=libcommons-net-java
29+>>>>>>> debian/build.properties
30 dependency3=libcommons-collections3-java
31 dependency4=libcommons-httpclient-java
32 maven.test.exclude=**/RunTest.java
33diff --git a/debian/changelog b/debian/changelog
34index 46f163f..28bb27a 100644
35--- a/debian/changelog
36+++ b/debian/changelog
37@@ -1,3 +1,63 @@
38+<<<<<<< debian/changelog
39+=======
40+commons-vfs (2.0-7ubuntu1) xenial; urgency=medium
41+
42+ * Merge from Debian unstable (LP: #1546717). Remaining changes:
43+ - Use ant build system:
44+ + d/control: Drop B-D's on maven-debian-helper + cdbs and add
45+ B-D on maven-ant-helper, maven-repo-helper.
46+ + d/rules, d/build-classpath, d/build.xml, d/build.properties:
47+ Configure build to use customized version of maven-ant-helper
48+ build.xml + debhelper.
49+ + d/libcommons-vfs-java.poms: Update to pickup build artifacts
50+ and remove surplus pom files.
51+ + d/libcommons-vfs-java-doc.install: Pickup documentation
52+ from core component instead of aggregated javadoc.
53+ + d/control: Manually set dependencies for binary packages.
54+ - Enabled test suite:
55+ + d/patches/disable_webdav_provider.diff: Update patch to
56+ fix test that checks for webdav support
57+ + d/build.xml: Ignore webdav when running tests.
58+ * Cherry-pick fix for VFS-521 from http://svn.apache.org/r1636224.
59+
60+ -- Nishanth Aravamudan <nish.aravamudan@canonical.com> Wed, 17 Feb 2016 12:18:20 -0800
61+
62+commons-vfs (2.0-7) unstable; urgency=medium
63+
64+ * Team upload.
65+ * Fixed the build failure with commons-parent 39 (enables the OSGI metadata)
66+ (Closes: #811259)
67+
68+ -- Emmanuel Bourg <ebourg@apache.org> Mon, 18 Jan 2016 08:59:11 +0100
69+
70+commons-vfs (2.0-6) unstable; urgency=medium
71+
72+ * Team upload.
73+ * Added the missing dependency on libjackrabbit-java (Closes: #808638)
74+
75+ -- Emmanuel Bourg <ebourg@apache.org> Wed, 30 Dec 2015 17:45:54 +0100
76+
77+commons-vfs (2.0-5) unstable; urgency=medium
78+
79+ * Team upload.
80+ * Depend on libcommons-net-java instead of libcommons-net2-java
81+ (Closes: #800761)
82+ * Build with the DH sequencer instead of CDBS
83+
84+ -- Emmanuel Bourg <ebourg@apache.org> Mon, 07 Dec 2015 11:34:18 +0100
85+
86+commons-vfs (2.0-4) unstable; urgency=medium
87+
88+ * Team upload.
89+ * Ignore the dependency on maven-scm (Closes: #797459)
90+ * Standards-Version updated to 3.9.6 (no changes)
91+ * Use canonical URLs for the Vcs-* fields
92+ * Switch to debhelper level 9
93+ * debian/copyright: Updated the Format URI
94+
95+ -- Emmanuel Bourg <ebourg@apache.org> Mon, 31 Aug 2015 16:07:05 +0200
96+
97+>>>>>>> debian/changelog
98 commons-vfs (2.0-3ubuntu1) quantal; urgency=low
99
100 * Merge from Debian unstable. Remaining changes:
101diff --git a/debian/compat b/debian/compat
102index 7f8f011..ec63514 100644
103--- a/debian/compat
104+++ b/debian/compat
105@@ -1 +1 @@
106-7
107+9
108diff --git a/debian/control b/debian/control
109index ebf5a10..e7ad195 100644
110--- a/debian/control
111+++ b/debian/control
112@@ -13,17 +13,25 @@ Build-Depends-Indep: ant-doc,
113 libcommons-httpclient-java-doc,
114 libcommons-logging-java,
115 libcommons-logging-java-doc,
116- libcommons-net2-java,
117- libcommons-net2-java-doc,
118- libcommons-parent-java,
119+ libcommons-net-java,
120+ libcommons-net-java-doc,
121+ libcommons-parent-java (>= 39),
122+ libjackrabbit-java,
123 libjdom1-java-doc,
124+<<<<<<< debian/control
125 libjsch-java
126 Build-Depends: debhelper (>= 7.0.50~), default-jdk, maven-ant-helper,
127 maven-repo-helper (>= 1.5~)
128 Standards-Version: 3.9.3
129+=======
130+ libjsch-java,
131+Build-Depends: debhelper (>= 9), default-jdk, maven-ant-helper,
132+ maven-repo-helper (>= 1.5~)
133+Standards-Version: 3.9.6
134+Vcs-Svn: svn://anonscm.debian.org/pkg-java/trunk/commons-vfs
135+Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-java/trunk/commons-vfs
136+>>>>>>> debian/control
137 Homepage: http://commons.apache.org/vfs/
138-Vcs-Svn: svn://svn.debian.org/svn/pkg-java/trunk/commons-vfs
139-Vcs-Browser: http://svn.debian.org/wsvn/pkg-java/trunk/commons-vfs
140
141 Package: libcommons-vfs-java
142 Architecture: all
143@@ -31,7 +39,11 @@ Depends: libcommons-logging-java, ${misc:Depends}
144 Recommends: ant,
145 libcommons-collections3-java,
146 libcommons-httpclient-java,
147+<<<<<<< debian/control
148 libcommons-net2-java,
149+=======
150+ libcommons-net-java,
151+>>>>>>> debian/control
152 libjsch-java
153 Suggests: libcommons-vfs-java-doc
154 Description: Java API for accessing various filesystems
155@@ -48,7 +60,11 @@ Section: doc
156 Depends: libcommons-collections3-java-doc,
157 libcommons-httpclient-java-doc,
158 libcommons-logging-java-doc,
159+<<<<<<< debian/control
160 libcommons-net2-java-doc,
161+=======
162+ libcommons-net-java-doc,
163+>>>>>>> debian/control
164 ${misc:Depends}
165 Recommends: default-jdk-doc
166 Suggests: libcommons-vfs-java
167diff --git a/debian/copyright b/debian/copyright
168index f8d4a63..828ff1a 100644
169--- a/debian/copyright
170+++ b/debian/copyright
171@@ -1,4 +1,4 @@
172-Format: http://dep.debian.net/deps/dep5/
173+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
174 Upstream-Name: Apache Commons VFS
175 Upstream-Contact: http://commons.apache.org/vfs/
176 Source: http://www.apache.org/dist/commons/vfs/
177diff --git a/debian/maven.ignoreRules b/debian/maven.ignoreRules
178index 3bd654c..db4af2b 100644
179--- a/debian/maven.ignoreRules
180+++ b/debian/maven.ignoreRules
181@@ -17,6 +17,5 @@
182 org.codehaus.mojo findbugs-maven-plugin * * * *
183 org.apache.maven.plugins maven-checkstyle-plugin * * * *
184 org.apache.maven.plugins maven-changes-plugin * * * *
185+org.apache.maven.scm maven-scm* * * * *
186 org.apache.commons commons-build-plugin * * * *
187-
188-org.apache.jackrabbit jackrabbit-webdav * * * *
189\ No newline at end of file
190diff --git a/debian/maven.rules b/debian/maven.rules
191index a3477a4..e91928a 100644
192--- a/debian/maven.rules
193+++ b/debian/maven.rules
194@@ -3,5 +3,4 @@ s/ant/org.apache.ant/ * * s/.*/debian/
195 commons-collections commons-collections jar s/3\..*/3.x/
196 s/jdom/org.jdom/ * * s/.*/debian/
197 commons-httpclient commons-httpclient jar s/.*/3.x/
198-commons-net commons-net jar s/2\..*/2.x/
199 org.apache.commons commons-parent pom s/.*/debian/ * *
200diff --git a/debian/patches/cherrypick-VFS-521.patch b/debian/patches/cherrypick-VFS-521.patch
201new file mode 100644
202index 0000000..bb5881f
203--- /dev/null
204+++ b/debian/patches/cherrypick-VFS-521.patch
205@@ -0,0 +1,145 @@
206+Description: Fix CustomRamProviderTest with Java 8
207+ The testcase currently fails in Xenial with:
208+
209+ Testsuite: org.apache.commons.vfs2.provider.ram.test.CustomRamProviderTest
210+ Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.058 sec
211+
212+ Testcase: testRootFolderExists took 0.048 sec
213+ Testcase: testSmallFS took 0.005 sec
214+ Caused an ERROR
215+ Self-suppression not permitted
216+ java.lang.IllegalArgumentException: Self-suppression not permitted
217+ at java.lang.Throwable.addSuppressed(Throwable.java:1043)
218+ at java.io.FilterOutputStream.close(FilterOutputStream.java:159)
219+ at org.apache.commons.vfs2.util.MonitorOutputStream.close(MonitorOutputStream.java:56)
220+ at org.apache.commons.vfs2.provider.DefaultFileContent$FileContentOutputStream.close(DefaultFileContent.java:690)
221+ at org.apache.commons.vfs2.provider.ram.test.CustomRamProviderTest.testSmallFS(CustomRamProviderTest.java:100)
222+Caused by: java.io.IOException: FileSystem capacity (10) exceeded.
223+ at org.apache.commons.vfs2.provider.ram.RamFileObject.resize(RamFileObject.java:278)
224+ at org.apache.commons.vfs2.provider.ram.RamFileOutputStream.write(RamFileOutputStream.java:68)
225+ at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
226+ at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
227+ at org.apache.commons.vfs2.util.MonitorOutputStream.flush(MonitorOutputStream.java:116)
228+ at java.io.FilterOutputStream.close(FilterOutputStream.java:158)
229+
230+ Upstream fixed this issue in rev. 1636224:
231+ http://svn.apache.org/viewvc?view=revision&revision=r1636224, referenced
232+ from: https://issues.apache.org/jira/browse/VFS-521.
233+ .
234+Author: Nishanth Aravamudan <nish.aravamudan@canonical.com>
235+
236+---
237+The information above should follow the Patch Tagging Guidelines, please
238+checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
239+are templates for supplementary fields that you might want to add:
240+
241+Origin: http://svn.apache.org/viewvc?view=revision&revision=r1636224.
242+Bug-Ubuntu: https://launchpad.net/bugs/1546717.
243+Last-Update: <2016-02-17>
244+
245+Index: gitwd/core/src/main/java/org/apache/commons/vfs2/util/MonitorOutputStream.java
246+===================================================================
247+--- gitwd.orig/core/src/main/java/org/apache/commons/vfs2/util/MonitorOutputStream.java
248++++ gitwd/core/src/main/java/org/apache/commons/vfs2/util/MonitorOutputStream.java
249+@@ -19,6 +19,7 @@ package org.apache.commons.vfs2.util;
250+ import java.io.BufferedOutputStream;
251+ import java.io.IOException;
252+ import java.io.OutputStream;
253++import java.util.concurrent.atomic.AtomicBoolean;
254+
255+ import org.apache.commons.vfs2.FileSystemException;
256+
257+@@ -30,7 +31,7 @@ import org.apache.commons.vfs2.FileSyste
258+ public class MonitorOutputStream
259+ extends BufferedOutputStream
260+ {
261+- private boolean finished;
262++ private final AtomicBoolean finished = new AtomicBoolean(false);
263+
264+ public MonitorOutputStream(final OutputStream out)
265+ {
266+@@ -39,21 +40,42 @@ public class MonitorOutputStream
267+
268+ /**
269+ * Closes this output stream.
270++ * <p>
271++ * This makes sure the buffers are flushed, close the output
272++ * stream and it will call {@linek #onClose()}
273++ * and re-throw last exception from any of the three.
274++ * <p>
275++ * This does nothing if the stream is closed already.
276++ *
277+ * @throws IOException if an error occurs.
278+ */
279+ @Override
280+ public void close() throws IOException
281+ {
282+- if (finished)
283++ // do not use super.close()
284++ // on Java 8 it might throw self suppression, see JDK-8042377
285++ // in older Java it silently ignores flush() errors
286++ if (finished.getAndSet(true))
287+ {
288+ return;
289+ }
290+
291+- // Close the output stream
292+ IOException exc = null;
293++
294++ // flush the buffer and out stream
295++ try
296++ {
297++ super.flush();
298++ }
299++ catch (final IOException ioe)
300++ {
301++ exc = ioe;
302++ }
303++
304++ // close the out stream without using super.close()
305+ try
306+ {
307+- super.close();
308++ super.out.close();
309+ }
310+ catch (final IOException ioe)
311+ {
312+@@ -70,8 +92,6 @@ public class MonitorOutputStream
313+ exc = ioe;
314+ }
315+
316+- finished = true;
317+-
318+ if (exc != null)
319+ {
320+ throw exc;
321+@@ -132,12 +152,12 @@ public class MonitorOutputStream
322+ * check if file is still open. <br />
323+ * This is a workaround for an oddity with Java's BufferedOutputStream where you can write to
324+ * even if the stream has been closed
325+- * @throws FileSystemException if an error occurs.
326++ * @throws FileSystemException if already closed.
327+ * @since 2.0
328+ */
329+ protected void assertOpen() throws FileSystemException
330+ {
331+- if (finished)
332++ if (finished.get())
333+ {
334+ throw new FileSystemException("vfs.provider/closed.error");
335+ }
336+Index: gitwd/src/changes/changes.xml
337+===================================================================
338+--- gitwd.orig/src/changes/changes.xml
339++++ gitwd/src/changes/changes.xml
340+@@ -23,6 +23,10 @@
341+
342+ <body>
343+ <release version="2.0" date="" description="Backwards incompatible update of Commons VFS to Java 5">
344++ <action issue="VFS-521" dev="ecki" type="fix">
345++ [Ram][Tests] Make RAM provider test pass on Java 8
346++ (JDK-8042377, self-suppression not permitted, MonitorOutputStream#close()).
347++ </action>
348+ <action issue="VFS-348" dev="rgoers" type="fix" due-to="Stefan Bodewig">
349+ Update the version of commons-net.
350+ </action>
351diff --git a/debian/patches/series b/debian/patches/series
352index 48211a1..adf6f3e 100644
353--- a/debian/patches/series
354+++ b/debian/patches/series
355@@ -1,2 +1,3 @@
356 disable_webdav_provider.diff
357 skip_examples.diff
358+cherrypick-VFS-521.patch
359diff --git a/debian/rules b/debian/rules
360index 17f3e2a..5cb61fa 100755
361--- a/debian/rules
362+++ b/debian/rules
363@@ -1,6 +1,6 @@
364 #!/usr/bin/make -f
365-# debian/rules for commons-vfs
366
367+<<<<<<< debian/rules
368 PACKAGE := $(shell dpkg-parsechangelog | grep '^Source:' | cut -f 2 -d ' ')
369 VERSION := $(shell dpkg-parsechangelog | egrep '^Version:' | cut -f 2 -d ' ' | cut -d: -f2- | sed 's/-[^-]*$$//')
370
371@@ -12,8 +12,20 @@ export ANT_ARGS=-Dbasedir=$(realpath .)/core -Dpackage=$(PACKAGE) \
372 -propertyfile debian/build.properties \
373 -f debian/build.xml
374
375+=======
376+export JAVA_HOME = /usr/lib/jvm/default-java
377+PACKAGE := $(shell dpkg-parsechangelog | grep '^Source:' | cut -f 2 -d ' ')
378+VERSION := $(shell dpkg-parsechangelog | egrep '^Version:' | cut -f 2 -d ' ' | cut -d: -f2- | sed 's/-[^-]*$$//')
379+export CLASSPATH=$(shell for jar in `cat debian/build-classpath`; do if [ -f "$$jar" ]; then echo -n "$${jar}:"; fi; done)
380+export ANT_ARGS=-Dbasedir=$(realpath .)/core -Dpackage=$(PACKAGE) \
381+ -Dversion=$(VERSION) -Dbin.package=lib$(PACKAGE)-java \
382+ -Dpom.file=$(realpath .)/core/pom.xml -Ddebian.dir=$(realpath .)/debian \
383+ -propertyfile debian/build.properties \
384+ -f debian/build.xml
385+
386+>>>>>>> debian/rules
387 %:
388 dh $@ --buildsystem=ant --with maven_repo_helper
389
390 get-orig-source:
391- uscan --force-download --rename
392+ uscan --download-current-version --force-download --rename

Subscribers

People subscribed via source and target branches