Author: brane
Date: Sun May 10 07:43:30 2026
New Revision: 1934026
Log:
On the javahl-1.15 branch: Upgrade the native implementation to use
svn_client_revert4. Do not deprecate previou ISVNClient.checkout and
ISVNClient.upgrade methods, they provide reasonable defaults.
* BRANCH-README: Update TODO and DONE lists.
[in subversion/bindings/javahl/native/]
* SVNClient.h (SVNClient::revert),
SVNClient.cpp (SVNClient::revert): Update prototype and implementaiton.
* org_apache_subversion_javahl_SVNClient.cpp
(Java_org_apache_subversion_javahl_SVNClient_revert): Update native method.
[in subversion/bindings/javahl/src/org/apache/subversion/javahl/]
* ISVNClient.java
(ISVNClient.revert): Add new overload.
(ISVNClient.checkout, ISVNClient.upgrade): Do not deprecate previous versions.
* SVNClient.java
(ISVNClient.revert): Add new native method and compatibility wrapper.
(SVNClient.checkout, SVNClient.upgrade): Do not deprecate previous versions.
Modified:
subversion/branches/javahl-1.15/BRANCH-README
subversion/branches/javahl-1.15/subversion/bindings/javahl/native/SVNClient.cpp
subversion/branches/javahl-1.15/subversion/bindings/javahl/native/SVNClient.h
subversion/branches/javahl-1.15/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
subversion/branches/javahl-1.15/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
subversion/branches/javahl-1.15/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
Modified: subversion/branches/javahl-1.15/BRANCH-README
==============================================================================
--- subversion/branches/javahl-1.15/BRANCH-README Sun May 10 07:38:44 2026 (r1934025)
+++ subversion/branches/javahl-1.15/BRANCH-README Sun May 10 07:43:30 2026 (r1934026)
@@ -7,7 +7,6 @@ TODO:
* Update use of deprecated Subversion APIs:
- svn_client_diff6 -> svn_client_diff7
- svn_client_diff_peg6 -> svn_client_diff_peg7
- - svn_client_revert3 -> svn_client_revert4
* Add Java wrappers for some new functionality
* Update use of deprecated JavaHL APIs
* Fix Java warnings where possible without breaking the JRE ABI
@@ -16,6 +15,7 @@ DONE:
* Update use of deprecated Subversion APIs:
- svn_client_checkout3 -> svn_client_checkout4
- svn_client_upgrade -> svn_client_upgrade2
+ - svn_client_revert3 -> svn_client_revert4
* Add Java wrappers for some new functionality
- .types.VersionNumber extends Version (package scope)
- .types.Version::getInstance(int major, int minor, int patch)
Modified: subversion/branches/javahl-1.15/subversion/bindings/javahl/native/SVNClient.cpp
==============================================================================
--- subversion/branches/javahl-1.15/subversion/bindings/javahl/native/SVNClient.cpp Sun May 10 07:38:44 2026 (r1934025)
+++ subversion/branches/javahl-1.15/subversion/bindings/javahl/native/SVNClient.cpp Sun May 10 07:43:30 2026 (r1934026)
@@ -359,7 +359,8 @@ void SVNClient::remove(Targets &targets,
void SVNClient::revert(StringArray &paths, svn_depth_t depth,
StringArray &changelists,
bool clear_changelists,
- bool metadata_only)
+ bool metadata_only,
+ bool added_keep_local)
{
SVN::Pool subPool(pool);
@@ -369,10 +370,11 @@ void SVNClient::revert(StringArray &path
Targets targets(paths, subPool);
SVN_JNI_ERR(targets.error_occurred(), );
- SVN_JNI_ERR(svn_client_revert3(targets.array(subPool), depth,
+ SVN_JNI_ERR(svn_client_revert4(targets.array(subPool), depth,
changelists.array(subPool),
clear_changelists,
metadata_only,
+ added_keep_local,
ctx, subPool.getPool()), );
}
Modified: subversion/branches/javahl-1.15/subversion/bindings/javahl/native/SVNClient.h
==============================================================================
--- subversion/branches/javahl-1.15/subversion/bindings/javahl/native/SVNClient.h Sun May 10 07:38:44 2026 (r1934025)
+++ subversion/branches/javahl-1.15/subversion/bindings/javahl/native/SVNClient.h Sun May 10 07:43:30 2026 (r1934026)
@@ -163,7 +163,7 @@ class SVNClient :public SVNBase
void add(const char *path, svn_depth_t depth, bool force,
bool no_ignore, bool no_autoprops, bool add_parents);
void revert(StringArray &paths, svn_depth_t depth, StringArray &changelists,
- bool clear_changelists, bool metadata_only);
+ bool clear_changelists, bool metadata_only, bool added_keep_local);
void remove(Targets &targets, CommitMessage *message, bool force,
bool keep_local, PropertyTable &revprops,
CommitCallback *callback);
Modified: subversion/branches/javahl-1.15/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
==============================================================================
--- subversion/branches/javahl-1.15/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp Sun May 10 07:38:44 2026 (r1934025)
+++ subversion/branches/javahl-1.15/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp Sun May 10 07:43:30 2026 (r1934026)
@@ -463,7 +463,8 @@ Java_org_apache_subversion_javahl_SVNCli
JNIEXPORT void JNICALL
Java_org_apache_subversion_javahl_SVNClient_revert
(JNIEnv *env, jobject jthis, jobject jpaths, jobject jdepth,
- jobject jchangelists, jboolean jclear_changelists, jboolean jmetadata_only)
+ jobject jchangelists, jboolean jclear_changelists,
+ jboolean jmetadata_only, jboolean jadded_keep_local)
{
JNIEntry(SVNClient, revert);
SVNClient *cl = SVNClient::getCppObject(jthis);
@@ -483,7 +484,8 @@ Java_org_apache_subversion_javahl_SVNCli
return;
cl->revert(paths, EnumMapper::toDepth(jdepth),
- changelists, bool(jclear_changelists), bool(jmetadata_only));
+ changelists, bool(jclear_changelists),
+ bool(jmetadata_only), bool(jadded_keep_local));
}
JNIEXPORT void JNICALL
Modified: subversion/branches/javahl-1.15/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
==============================================================================
--- subversion/branches/javahl-1.15/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java Sun May 10 07:38:44 2026 (r1934025)
+++ subversion/branches/javahl-1.15/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java Sun May 10 07:43:30 2026 (r1934026)
@@ -237,19 +237,6 @@ public interface ISVNClient
/**
* Executes a revision checkout.
- * <p>
- * Behaves like the 1.15 version with <code>wcFormatVersion = null</code>
- * and <code>storePristines = Tristate.Unknown</code>
- * @deprecated
- */
- @Deprecated
- long checkout(String moduleName, String destPath, Revision revision,
- Revision pegRevision, Depth depth,
- boolean ignoreExternals,
- boolean allowUnverObstructions) throws ClientException;
-
- /**
- * Executes a revision checkout.
* @param moduleName name of the module to checkout.
* @param destPath destination directory for checkout.
* @param revision the revision to checkout.
@@ -260,6 +247,7 @@ public interface ISVNClient
* @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,
@@ -269,6 +257,17 @@ public interface ISVNClient
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,
+ boolean ignoreExternals,
+ boolean allowUnverObstructions) throws ClientException;
+
+ /**
* Sets the notification callback used to send processing information back
* to the calling program.
* @param notify listener that the SVN library should call on many
@@ -315,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,
@@ -1619,16 +1633,6 @@ public interface ISVNClient
/**
* Recursively upgrade a working copy to a new metadata storage format.
- * <p>
- * Behaves like the 1.15 version with <code>targetWcVersion = null</code>.
- * @deprecated
- */
- @Deprecated
- void upgrade(String path) throws ClientException;
-
-
- /**
- * Recursively upgrade a working copy to a new metadata storage format.
* @param path the working copy path
* @param targetWcVersion the working copy version to upgrade to
* @throws ClientException
@@ -1638,6 +1642,14 @@ public interface ISVNClient
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
* @param targetPath the path to be patched
Modified: subversion/branches/javahl-1.15/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
==============================================================================
--- subversion/branches/javahl-1.15/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java Sun May 10 07:38:44 2026 (r1934025)
+++ subversion/branches/javahl-1.15/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java Sun May 10 07:43:30 2026 (r1934026)
@@ -204,7 +204,15 @@ public class SVNClient implements ISVNCl
long limit, LogMessageCallback callback)
throws ClientException;
- @Deprecated
+ @Override
+ public native long checkout(String moduleName, String destPath,
+ Revision revision, Revision pegRevision,
+ Depth depth, boolean ignoreExternals,
+ boolean allowUnverObstructions,
+ Version wcFormatVersion,
+ Tristate storePristines)
+ throws ClientException;
+
@Override
public long checkout(String moduleName, String destPath,
Revision revision, Revision pegRevision,
@@ -218,15 +226,6 @@ public class SVNClient implements ISVNCl
null, Tristate.Unknown);
}
- @Override
- public native long checkout(String moduleName, String destPath,
- Revision revision, Revision pegRevision,
- Depth depth, boolean ignoreExternals,
- boolean allowUnverObstructions,
- Version wcFormatVersion,
- Tristate storePristines)
- throws ClientException;
-
public void notification2(ClientNotifyCallback notify)
{
clientContext.notify = notify;
@@ -251,9 +250,21 @@ public class SVNClient implements ISVNCl
public native void revert(Set<String> paths, Depth depth,
Collection<String> changelists,
boolean clearChangelists,
- boolean metadataOnly)
+ boolean metadataOnly,
+ boolean addedKeepLocal)
throws ClientException;
+
+ public void revert(Set<String> paths, Depth depth,
+ Collection<String> changelists,
+ boolean clearChangelists,
+ boolean metadataOnly)
+ throws ClientException
+ {
+ revert(paths, depth, changelists, clearChangelists,
+ metadataOnly, true);
+ }
+
public void revert(Set<String> paths, Depth depth,
Collection<String> changelists)
throws ClientException
@@ -789,17 +800,16 @@ public class SVNClient implements ISVNCl
boolean lastChanged)
throws ClientException;
- @Deprecated
+ @Override
+ public native Version upgrade(String path, Version targetWcVersion)
+ throws ClientException;
+
@Override
public void upgrade(String path) throws ClientException
{
upgrade(path, (Version) null);
}
- @Override
- public native Version upgrade(String path, Version targetWcVersion)
- throws ClientException;
-
/**
* Enable logging in the JNI-code
* @param logLevel the level of information to log (See
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.