Source: svnkit
Version: 1.10.3-2build1
Severity: important
Tags: ftbfs upstream
Subversion 1.15 was recently uploaded to experimental and svnkit FTBFS
with that version.
The immediate failure reported is
[javac]
/build/package/package/svnkit-javahl16/src/main/java/org/apache/subversion/javahl/SVNClient.java:14:
error: SVNClient is not abstract and does not override abstract method
defaultWcVersion() in ISVNClient
[javac] public class SVNClient implements ISVNClient {
[javac] ^
[javac]
/build/package/package/svnkit-javahl16/src/main/java/org/tmatesoft/svn/core/javahl17/SVNClientImpl.java:38:
error: SVNClientImpl is not abstract and does not override abstract method
defaultWcVersion() in ISVNClient
[javac] public class SVNClientImpl implements ISVNClient {
[javac] ^
however there are other new APIs also added to ISVNClient. I've attached
the ISVNClient diff.
Cheers,
--
James (he/him)
GPG Key: 4096R/91BF BF4D 6956 BD5D F7B7 2D23 DFE6 91AE 331B A3DB
diff --git
a/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
b/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
index aade3b54..e176b141 100644
---
a/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
+++
b/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
@@ -1,5 +1,4 @@
-/**
- * @copyright
+/*
* ====================================================================
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
@@ -18,7 +17,6 @@
* specific language governing permissions and limitations
* under the License.
* ====================================================================
- * @endcopyright
*/
package org.apache.subversion.javahl;
@@ -33,7 +31,7 @@ import java.util.Set;
import java.util.Map;
/**
- * This interface is the commom interface for all subversion
+ * This interface is the common interface for all subversion
* operations. It is implemented by SVNClient
*
* @since 1.7
@@ -65,7 +63,7 @@ public interface ISVNClient
* @return The name of the working copy's administrative
* directory, which is usually <code>.svn</code>.
* @see <a
- *
href="http://svn.apache.org/repos/asf/subversion/trunk/notes/asp-dot-net-hack.txt">
+ *
href="https://svn.apache.org/repos/asf/subversion/trunk/notes/asp-dot-net-hack.txt">
* Instructions on changing this as a work-around for the behavior of
* ASP.Net on Windows.</a>
*/
@@ -89,7 +87,7 @@ public interface ISVNClient
* has effect when <code>onServer</code> is
* <code>true</code>.
* @param getAll get status for uninteresting (unchanged) files.
- * @param noIgnore get status for normaly ignored files and directories.
+ * @param noIgnore get status for normally ignored files and
directories.
* @param ignoreExternals if externals are ignored during status
* @param depthAsSticky When set, interpret <code>depth</code> as
* the ambient depth of the working copy.
@@ -246,7 +244,23 @@ public interface ISVNClient
* @param depth how deep to checkout files recursively.
* @param ignoreExternals if externals are ignored during checkout
* @param allowUnverObstructions allow unversioned paths that obstruct adds
+ * @param wcFormatVersion desired WC compatibiliy version or NULL default
+ * @param storePristines whether to store pristine files
* @throws ClientException
+ * @since 1.15
+ */
+ long checkout(String moduleName, String destPath, Revision revision,
+ Revision pegRevision, Depth depth,
+ boolean ignoreExternals,
+ boolean allowUnverObstructions,
+ Version wcFormatVersion,
+ Tristate storePristines) throws ClientException;
+
+ /**
+ * Executes a revision checkout.
+ * <p>
+ * Behaves like the 1.15 version with <code>wcFormatVersion = null</code>
+ * and <code>storePristines = Tristate.Unknown</code>
*/
long checkout(String moduleName, String destPath, Revision revision,
Revision pegRevision, Depth depth,
@@ -300,7 +314,22 @@ public interface ISVNClient
* from the reverted paths.
* @param metadataOnly Revert just the metadata (including conflict data)
* and not the working files/dirs
+ * @param addedKeepLocal With metadataOnly, keep locally added files.
* @throws ClientException
+ * @since 1.15
+ */
+ void revert(Set<String> paths, Depth depth,
+ Collection<String> changelists,
+ boolean clearChangelists,
+ boolean metadataOnly,
+ boolean addedKeepLocal)
+ throws ClientException;
+
+ /**
+ * Reverts set of files or directories to a pristine state.
+ * <p>
+ * Behaves like the 1.15 version with <code>addedKeepLocal</code>
+ * set to <code>true</code>;
* @since 1.9
*/
void revert(Set<String> paths, Depth depth,
@@ -633,7 +662,7 @@ public interface ISVNClient
* @param noIgnore whether to add files matched by ignore patterns
* @param noAutoProps if true, ignore any auto-props configuration
* @param ignoreUnknownNodeTypes whether to ignore files which
- * the node type is not konwn, just as pipes
+ * the node type is not known, just as pipes
* @param revpropTable A string-to-string mapping of revision properties
* to values which will be set if this operation
* results in a commit.
@@ -664,7 +693,7 @@ public interface ISVNClient
* @param depth depth to traverse into subdirectories
* @param noIgnore whether to add files matched by ignore patterns
* @param ignoreUnknownNodeTypes whether to ignore files which
- * the node type is not konwn, just as pipes
+ * the node type is not known, just as pipes
* @param revpropTable A string-to-string mapping of revision properties
* to values which will be set if this operation
* results in a commit.
@@ -922,6 +951,7 @@ public interface ISVNClient
* @param revision2 second revision
* @param relativeToDir index path is relative to this path
* @param outStream the stream to which difference are written
+ * @param errStream the stream to which error messages are written
* @param depth how deep to traverse into subdirectories
* @param ignoreAncestry ignore if files are not related
* @param noDiffDeleted no output on deleted files
@@ -932,6 +962,23 @@ public interface ISVNClient
* @param propsOnly show property changes only
* @param options additional options for controlling the output
* @throws ClientException
+ * @since 1.15
+ * @see svn_client_diff7
+ */
+ void diff(String target1, Revision revision1, String target2,
+ Revision revision2, String relativeToDir,
+ OutputStream outStream, OutputStream errStream,
+ Depth depth, Collection<String> changelists,
+ boolean ignoreAncestry, boolean noDiffDeleted, boolean force,
+ boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly,
+ DiffOptions options)
+ throws ClientException;
+
+ /**
+ * Display the differences between two paths
+ * <p>
+ * Behaves exactly like the 1.15 version except that it discards stderr.
+ * @throws ClientException
* @since 1.8
*/
void diff(String target1, Revision revision1, String target2,
@@ -950,6 +997,7 @@ public interface ISVNClient
* @param revision2 second revision
* @param relativeToDir index path is relative to this path
* @param outFileName file name where difference are written
+ * @param errFileName file name where error messages are written
* @param depth how deep to traverse into subdirectories
* @param ignoreAncestry ignore if files are not related
* @param noDiffDeleted no output on deleted files
@@ -960,6 +1008,23 @@ public interface ISVNClient
* @param propsOnly show property changes only
* @param options additional options for controlling the output
* @throws ClientException
+ * @since 1.15
+ * @see svn_client_diff7
+ */
+ void diff(String target1, Revision revision1, String target2,
+ Revision revision2, String relativeToDir,
+ String outFileName, String errFileName,
+ Depth depth, Collection<String> changelists,
+ boolean ignoreAncestry, boolean noDiffDeleted, boolean force,
+ boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly,
+ DiffOptions options)
+ throws ClientException;
+
+ /**
+ * Display the differences between two paths
+ * <p>
+ * Behaves exactly like the 1.15 version except that it discards stderr.
+ * @throws ClientException
* @since 1.8
*/
void diff(String target1, Revision revision1, String target2,
@@ -1028,6 +1093,7 @@ public interface ISVNClient
* @param endRevision second Revision to compare
* @param relativeToDir index path is relative to this path
* @param outStream the stream to which difference are written
+ * @param errStream the stream to which error messages are written
* @param depth how deep to traverse into subdirectories
* @param changelists if non-null, filter paths using changelists
* @param ignoreAncestry ignore if files are not related
@@ -1039,6 +1105,23 @@ public interface ISVNClient
* @param propsOnly show property changes only
* @param options additional options for controlling the output
* @throws ClientException
+ * @since 1.15
+ * @see svn_client_diff_peg7
+ */
+ void diff(String target, Revision pegRevision, Revision startRevision,
+ Revision endRevision, String relativeToDir,
+ OutputStream outStream, OutputStream errStream,
+ Depth depth, Collection<String> changelists,
+ boolean ignoreAncestry, boolean noDiffDeleted, boolean force,
+ boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly,
+ DiffOptions options)
+ throws ClientException;
+
+ /**
+ * Display the differences between two paths
+ * <p>
+ * Behaves exactly like the 1.15 version except that it discards stderr.
+ * @throws ClientException
* @since 1.8
*/
void diff(String target, Revision pegRevision, Revision startRevision,
@@ -1057,6 +1140,7 @@ public interface ISVNClient
* @param endRevision second Revision to compare
* @param relativeToDir index path is relative to this path
* @param outFileName file name where difference are written
+ * @param errFileName file name where error messages are written
* @param depth how deep to traverse into subdirectories
* @param changelists if non-null, filter paths using changelists
* @param ignoreAncestry ignore if files are not related
@@ -1068,6 +1152,23 @@ public interface ISVNClient
* @param propsOnly show property changes only
* @param options additional options for controlling the output
* @throws ClientException
+ * @since 1.15
+ * @see svn_client_diff_peg7
+ */
+ void diff(String target, Revision pegRevision, Revision startRevision,
+ Revision endRevision, String relativeToDir,
+ String outFileName, String errFileName,
+ Depth depth, Collection<String> changelists,
+ boolean ignoreAncestry, boolean noDiffDeleted, boolean force,
+ boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly,
+ DiffOptions options)
+ throws ClientException;
+
+ /**
+ * Display the differences between two paths
+ * <p>
+ * Behaves exactly like the 1.15 version except that it discards stderr.
+ * @throws ClientException
* @since 1.8
*/
void diff(String target, Revision pegRevision, Revision startRevision,
@@ -1604,12 +1705,22 @@ public interface ISVNClient
/**
* Recursively upgrade a working copy to a new metadata storage format.
- * @param path path of the working copy
+ * @param path the working copy path
+ * @param targetWcVersion the working copy version to upgrade to
* @throws ClientException
+ * @since 1.15
*/
- void upgrade(String path)
+ Version upgrade(String path, Version targetWcVersion)
throws ClientException;
+ /**
+ * Recursively upgrade a working copy to a new metadata storage format.
+ * <p>
+ * Behaves like the 1.15 version with <code>targetWcVersion = null</code>.
+ */
+ void upgrade(String path) throws ClientException;
+
+
/**
* Apply a unidiff patch.
* @param patchPath the path of the patch
@@ -1658,6 +1769,8 @@ public interface ISVNClient
boolean includeExternals)
throws ClientException;
+ Version defaultWcVersion() throws ClientException;
+
/**
* Open a persistent session to a repository.
* <p>