Checkout Tools
  • last updated 3 hours ago
Constraints: committers
Constraints: files
Constraints: dates
Increment the trunk version number to 1.14, and introduce a new CHANGES

section, following the creation of the 1.13.x release branch.

* subversion/include/svn_version.h,



(SVN_VER_MINOR): Increment to 14.

* CHANGES: New section for 1.14.0.

  1. … 3 more files in changeset.
Increment the trunk version number to 1.13, and introduce a new CHANGES

section, following the creation of the 1.12.x release branch.

* subversion/include/svn_version.h,



(SVN_VER_MINOR): Increment to 13.

* CHANGES: New section for 1.13.0.

  1. … 3 more files in changeset.
Expose the output arguments of svn_client_blame6 in JavaHL.

[in subversion/bindings/javahl/src/org/apache/subversion]

* callback/ New callback for ISVNClient.blame.

* callback/ Remove unused import.


(ISVNClient.blame): Add range callback parameter. Update docstring.


(SVNClient.blame): Update wrapper and native method declaration.

[in subversion/bindings/javahl/native]

* BlameCallback.h

(BlameCallback::BlameCallback): Change constructor signature.

(BlameCallback::get_start_revnum_p, BlameCallback::get_end_revnum_p): New.

(BlameCallback::setRange): New.

(BlameCallback::m_start_revnum, BlameCallback::m_start_revnum,

BlameCallback::m_range_callback_invoked, BlameCallback::m_range_callback): New.

(BlameCallback::m_line_callback): Renamed from m_callback.

* BlameCallback.cpp: Include svn_private_config.h.

(BlameCallback::BlameCallback): Update constructor implementation.

(BlameCallback::callback): Update static callback implementation.

(BlameCallback::setRange): Implement.

(BlameCallback::singleLine): Notice changed member variable name.

* SVNClient.cpp

(SVNClient::blame): Set blame output arguments from the callback.

* org_apache_subversion_javahl_SVNClient.cpp

(Java_org_apache_subversion_javahl_SVNClient_blame): Update native method.

[in subversion/bindings/javahl/tests/org/apache/subversion/javahl]


(BlameRangeCallbackImpl): New helper class.

(testBinaryBlame): Also test the returned revision range.


(testBlameCallback): Check that a null range callback doesn't cause exceptions.

    • ?
Follow up to r1851268: our coding guidelines say that output parameters

should come first in the function argument list.

* subversion/include/svn_client.h

(svn_client_blame6): Move start_revnum_p and end_revnum_p to the

beginning of the argument list and update the docstring to say that

either of these may be NULL.

* subversion/libsvn_client/blame.c

(svn_client_blame6): Update signature.

* subversion/svn/blame-cmd.c (svn_cl__blame),

subversion/libsvn_client/deprecated.c (svn_client_blame5),

subversion/bindings/javahl/native/SVNClient.cpp (SVNClient::blame):

Update all callers.

  1. … 4 more files in changeset.
Fix issue #4801: Make JavaHL blame return byte[] file contents in the

blame callback instead of assuming they can be converted to String.

[in subversion/bindings/javahl/src/org/apache/subversion/javahl]


(ISVNClient.blame): Add a new overload that uses the new BlameLineCallback.

Deprecate the other two overloads that use BlameCallback.


(SVNClient.blame): Implement new native overload and deprecate the old ones.

(SVNClient.BlameCallbackAdapter): New helper class.

* callback/

(BlameCallback): Deprecated.

* callback/

(BlameLineCallback): New, replaces BlameCallback.

[in subversion/bindings/javahl/tests/org/apache/subversion/javahl]


(testBasicBlame, testBlameWithDiffOptions): Suppress deprecation warnings

as these tests use the old API, and should continue to do so in order to

test the callback adapter.

(testBinaryBlame): New test case.

(collectBlameLines, BlameCallbackImpl): Suppress deprecation warnings.

(BlameLineCallbackImpl): New helper class.


(testBlameCallback): Use the new API in this test case.

[in subversion/bindings/javahl/native]

* org_apache_subversion_javahl_SVNClient.cpp

(Java_org_apache_subversion_javahl_SVNClient_blame): Update parameter order.

* BlameCallback.cpp

(BlameCallback::singleLine): Use BlameLineCallback instead of BlameCallback.

    • ?
Move misplaced parameters out of the blame callback.

The svn_client_blame_receiver4_t parameters "start_revnum" and "end_revnum"

do not really belong here because they are not per-line data. They are the

"resolved" versions of the input revnums to svn_client_blame6(). This patch

moves them to svn_client_blame6() output parameters.

* subversion/bindings/javahl/native/BlameCallback.h,



singleLine): Drop the start/end parameters.

* subversion/bindings/javahl/native/SVNClient.cpp

(blame): Adjust the call to svn_client_blame6(). Don't provide access to

the start/end parameters here, as we weren't providing access to them

through the callback. We could add them later.

* subversion/svn/blame-cmd.c


blame_receiver): Don't expect and process start/end revnums here.

(svn_cl__blame): Handle them here instead.

  1. … 1 more file in changeset.
Update callers to use the newly revved svn_client_blame6() API.

* subversion/bindings/javahl/native/BlameCallback.h,



singleLine): Expect 'svn_string_t *' instead of 'char *'.

* subversion/bindings/javahl/native/SVNClient.cpp

(blame): Update the call to use svn_client_blame6.

* subversion/svn/blame-cmd.c


blame_receiver): Expect 'line' to be an svn_string_t.

(svn_cl__blame): Update to use svn_client_blame6 and


  1. … 1 more file in changeset.
Follow up to r1849080: move a private function out of a public header.

* subversion/include/svn_dirent_uri.h: Update file-level docstrin.

(svn_relpath__internal_style): Removed.

* subversion/include/private/svn_dirent_uri_private.h: New file.

(svn_relpath__make_internal): Renamed from svn_relpath__internal_style.

* subversion/libsvn_subr/dirent_uri.c,




Include private/svn_dirent_uri_private.h and use svn_relpath__make_internal

instead of svn_relpath__internal_style.

* subversion/bindings/swig/python/svn/

(__all__): Remove mention of svn_relpath__internal_style from the comment.

  1. … 6 more files in changeset.
Fix various warnings in javahl

[in subversion/bindings/javahl]

* src/org/apache/subversion/javahl/types/,



Use "Long.valueOf(long)" instead of deprecated "new Long(long)"

* native/RemoteSession.cpp, native/RemoteSession.h,



native/org_apache_subversion_javahl_util_PropLib.cpp: Rename "jvalue"

variables to fix -Wshadow warnings for jvalue symbol in jni.h

    • ?
    • ?
    • ?
Make JavaHL use std::unique_ptr when compiled as C++11 and later instead

of the deprecated (and removed in C++17) std::auto_ptr.

* subversion/bindings/javahl/native/CxxCompat.hpp: New.

(JavaHL::cxx::owned_ptr): New; alias for std::unique_ptr or std::auto_ptr.

(JavaHL::cxx::move): New; aliased or faked std::move.

* subversion/bindings/javahl/native/EditorProxy.cpp,

* subversion/bindings/javahl/native/EditorProxy.h,

* subversion/bindings/javahl/native/OperationContext.cpp,

* subversion/bindings/javahl/native/OperationContext.h,

* subversion/bindings/javahl/native/Prompter.cpp,

* subversion/bindings/javahl/native/Prompter.h,

* subversion/bindings/javahl/native/RemoteSession.cpp,

* subversion/bindings/javahl/native/RemoteSessionContext.cpp,

* subversion/bindings/javahl/native/RemoteSessionContext.h,

* subversion/bindings/javahl/native/StateReporter.cpp,

* subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp,

* subversion/bindings/javahl/native/org_apache_subversion_javahl_util_SubstLib.cpp,

* subversion/bindings/javahl/native/jniwrapper/jni_class_cache.cpp,

* subversion/bindings/javahl/native/jniwrapper/jni_io_stream.cpp:

Replace std::auto_ptr with JavaHL::cxx:owned_ptr, using JavaHL::cxx::move()

where nedessary to make stuff work when we're actually using std::unique_ptr.

    • ?
    • ?
Switch default C++ language level to C++11 on Unix.

- "Modern" C++ (C++11 and later) has become ubiquitous.

- We already need C++11 to compile the KWallet plugin.

- JavaHL compiles in C++11 mode, otherwise it would not build on Windows

with newer versions of MSVC.

- Our core code is not affected at all.

* Display the C and C++ language level flags.

* build/ac-macros/compiler.m4

(SVN_CXX_MODE_SETUP): Switch to C++11.

(SVN_CXX_MODE_SETUP11): Remove; it's now obsolete.

* build/ac-macros/kwallet.m4

(SVN_LIB_KWALLET): Remove reference to SVN_CXX_MODE_SETUP11.

* subversion/bindings/javahl/native/RemoteSession.cpp

(compare_c_strings::operator()): Make this method const to avoid a warning.

  1. … 3 more files in changeset.
Change a private function's signature to prevent potential assertions.

* subversion/include/svn_dirent_uri.h

(svn_relpath__internal_style): Change prototype so that the function can

return an error instead of aborting if anything goes wrong.

* subversion/libsvn_subr/dirent_uri.c

(svn_relpath__internal_style): Update the implementation.

* subversion/bindings/javahl/native/Path.cpp (Relpath::initfunc),

* subversion/svndumpfilter/svndumpfilter.c (sub_main),

* subversion/tests/libsvn_subr/dirent_uri-test.c (test_relpath_internal_style):

Updated all callers.

  1. … 4 more files in changeset.
Prevent some coredumps when using JavaHL SVNClient::diff().

* subversion/bindings/javahl/native/SVNClient.cpp

(SVNClient::diff): Replace NULL stderr stream in calls to

svn_client_diff_peg6() and svn_client_diff6() with

calls to svn_stream_empty().

Patch by: Matthew Burt

Increment the trunk version number to 1.12, and introduce a new CHANGES

section, following the creation of the 1.11.x release branch.

* subversion/include/svn_version.h,



(SVN_VER_MINOR): Increment to 12.

* CHANGES: New section for 1.12.0.

  1. … 3 more files in changeset.
Fix a potential crash in JavaHL.

* subversion/bindings/javahl/native/JNIUtil.cpp

(JNIUtil::wrappedCreateClientException): Don't store an invalid pointer to

out-of-scope std::streambuf contents.

Found by: David Binderman

Fixes #4764

Bump minimum JDK version required for JavaHL to 1.8, in preparation for the

changes needed to support Java 10

* subversion/bindings/javahl/README

(): Update JDK version requirements.



* build/ac-macros/java.m4

(SVN_FIND_JDK): Set Java source version to 1.8.

* build/generator/

(get_proj_sources): Set Java source and target version to 1.8.

  1. … 3 more files in changeset.
Add @Native annotations to ensure header files are generated when using "javac -h".

Unlike javah, which generates header files corresponding to all of the classes

it's pointed at, "javac -h" only generates a header file if there is native


[in subversion/bindings/src/org/apache/subversion/javahl]


(): Add @Native annotation to all flags

* callback/

(Reject, AcceptTemporary, AcceptPermanently): Add @Native annotation

* types/

(SVN_INVALID_REVNUM): Add @Native annotation

Patch by: Emmanuel Bourg <ebourg_{AT}>

Update issue tracker links in comments, from Tigris (issuezilla) to Apache (Jira).

URL fragment identifiers like '#desc5' are left in place, not yet updated.

This is a merge of r1828508 from the 'shelve-checkpoint' branch where I

committed it by mistake.

  1. … 42 more files in changeset.
Fix a local refs capacity warning when unparsing externals.

* subversion/bindings/javahl/native/jniwrapper/jni_list.hpp

(ImmutableList::for_each): Use a local frame to avoid acccumulating

local refs from constructors.

Fix deprecation warning in JavaHL's SVNRepos API.

[in subversion/bindings/javahl]

* src/org/apache/subversion/javahl/ (ISVNRepos.load):

Add new overload that includes the normalizeProps parameter.

* src/org/apache/subversion/javahl/ (SVNRepos.load):

Update native method signature and add compatibility wrapper.

* native/org_apache_subversion_javahl_SVNRepos.cpp

(Java_org_apache_subversion_javahl_SVNRepos_load): Update native method.

* native/SVNRepos.h (SVNRepos::load): Update signature.

* native/SVNRepos.cpp (SVNRepos::load): Update implementation.

    • ?
Fix a JavaHL bug in the prompting for SSL server trust: attempting to

temporarily accept failures would lead to reject behaviour.

* subversion/bindings/javahl/native/Prompter.cpp

(Prompter::dispatch_ssl_server_trust_prompt): Always set accepted_failures

in returned credentials, this matches the behaviour of the standard


* tools/examples/

(ExampleAuthn.sslServerTrustPrompt): Basic r/t implementation.

  1. … 1 more file in changeset.
* subversion/bindings/javahl/src/org/apache/subversion/javahl/

Consolidate two instances of the minor version number.

Patch by: danielsh

* subversion/bindings/javahl/src/org/apache/subversion/javahl/

Update the second instance of the minor version, following r1817837.

Found by: danielsh

Increment the trunk version number, and introduce a new CHANGES

section for the upcoming 1.11.0 release.

c: [skip]

* subversion/bindings/javahl/src/org/apache/subversion/javahl/,

subversion/include/svn_version.h (SVN_VER_MINOR),

subversion/tests/cmdline/svntest/ (SVN_VER_MINOR):

Increment version number.

* CHANGES: New section for 1.11.0.

  1. … 3 more files in changeset.
Unbreak the JavaHL bindings after 'svnadmin dump include/exclude'.

(This does not yet expose the new capability.)

A follow-up to r1811992.

* subversion/bindings/javahl/native/SVNRepos.cpp

(dump): Supply null arguments for the new 'filter' parameters.

Add exception checks to some of the JavaHL native code to avoid JVM

warnings about JNI problems of the form:

WARNING in native method: JNI call made without checking exceptions when required to

* subversion/bindings/javahl/native/Array.cpp

(Array::init): Add exception check.

* subversion/bindings/javahl/native/CreateJ.cpp

(CreateJ::Mergeinfo): Add exception check.

* subversion/bindings/javahl/native/Iterator.cpp

(init_iterator, Iterator::next): Add exception check.

* subversion/bindings/javahl/native/OperationContext.cpp

(OperationContext::closeTunnel): Add exception check.

* subversion/bindings/javahl/native/RemoteSession.cpp

(build_string_array, long_iterable_to_revnum_array,

location_hash_to_map): Add exception check.

* subversion/bindings/javahl/native/RevisionRangeList.cpp

(RevisionRangeList::RevisionRangeList): Add exception check.

Fix a bug in JavaHL that caused the RA connect logic to ignore redirects.

* subversion/bindings/javahl/native/RemoteSession.cpp

(RemoteSession::RemoteSession): Follow redirects during connect.

Found by: Marc Strapetz

Expose svn_client_list4() in JavaHL.

[in subversion/bindings/javahl]

* src/org/apache/subversion/javahl/

(ISVNClient.list): Add new overload and deprecate the old variant.

* src/org/apache/subversion/javahl/

(SVNClient.list): Update the native method signature and reimplement

the old overloaded variant as a wrapper for the new native method.

* src/org/apache/subversion/javahl/callback/

New callback interface for ISVNClient.list.

* native/org_apache_subversion_javahl_SVNClient.cpp

(Java_org_apache_subversion_javahl_SVNClient_list): Update native method.

* native/SVNClient.h (SVNClient::list): Update method prototype.

* native/SVNClient.cpp (SVNClient::list): Update implementation.

* native/ListCallback.h (ListCallback::doList): Update prototype.

* native/ListCallback.cpp

(ListCallback::doList): Update implementation.

(ListCallback::callback): Pass externals info to doList.

    • ?
Make JavaHL's native StringArray container nullable.

* subversion/bindings/javahl/native/Array.h

(Array::isNull): New method.

* subversion/bindings/javahl/native/StringArray.h

(StringArray::isNull): New method.

* subversion/bindings/javahl/native/StringArray.cpp

(StringArray::StringArray): Leave the contents of the container empty if

the underlying Java object is null.

(StringArray::array): Return a null APR array if the Java object is null.

Add an overload to JavaHL's ISVNClient.logMessages() that allows

the API user to retreive all revision properties with each log message.

[in subversion/bindings/javahl/]

* src/org/apache/subversion/javahl/

(ISVNClient.logMessages): Add new overload for 1.10.

* src/org/apache/subversion/javahl/

(ISVNClient.logMessages): Update native signature. Implement the old,

deprecated method.

* native/org_apache_subversion_javahl_SVNClient.cpp


Update implementation of native method.

* native/SVNClient.h (SVNClient::logMessages): Update signature.

* native/SVNClient.cpp (SVNClient::logMessages): Update implementation.

* tests/org/apache/subversion/javahl/,

tests/org/apache/subversion/javahl/ Use the new overload.

    • ?