Checkout Tools
  • last updated 3 hours ago
Constraints: committers
Constraints: files
Constraints: dates

Changeset 1875634 is being indexed.

* tools/dist/ Correct & clarify error message reference to --branch option.
Tagging release 1.14.0-rc1
* CHANGES (1.14.x): Merge updates from trunk; leave the 1.15 section out

* CHANGES: set the tentative 1.14.0 release date to end of April 2020

CHANGES: Update for 1.14.0

* branches/1.14.x/STATUS: New file.
Increment the trunk version number to 1.15, and introduce a new CHANGES

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

* subversion/include/svn_version.h,



(SVN_VER_MINOR): Increment to 15.

* CHANGES: New section for 1.15.0.

Create the 1.14.x release branch.
Ignore files related to bindings tests and created by our Makefile machinery.

* (svn:ignore): Add .swig_pl_checked, ,swig_py_checked, and .swig_rb_checked.

* subversion/tests/cmdline/

(load_normalize_node_props): Restore intended trailing whitespace which

was removed in r1875617.

Update svn_ra_open4() to svn_ra_open5() across the tree.

Most of these changes are mechanical. JavaHL gains a redirect cycle fix.

The set_svn_ra_open() callback gets updated to the new API.

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

(open_callback_session): Use svn_ra_open5() and show the redirected URL in

an error message.

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

(RemoteSession::RemoteSession): Use svn_ra_open5() and detect redirect

cycles based on the actual redirection URL sent by the server.

* subversion/libsvn_client/ra.c

(svn_client__open_ra_session_internal): Use svn_ra_open5().

* subversion/libsvn_ra/ra_loader.c

(svn_ra_open5): Pass svn_ra_open5 to the svn_svn_ra_open() callback.

* subversion/libsvn_ra/ra_loader.h

(svn_ra__open_func_t): Update to match svn_ra_open5().

* subversion/libsvn_ra_serf/serf.c

(svn_ra_serf__open): Update comment referring to svn_ra_open4().

* subversion/svnsync/svnsync.c

(do_initialize, open_source_session,

open_target_session): Update to svn_ra_open5().

* subversion/tests/cmdline/atomic-ra-revprop-change.c

(change_rev_prop): Update to svn_ra_open5().

* subversion/tests/libsvn_ra/ra-test.c

(make_and_open_repos, check_tunnel_callback_test, tunnel_callback_test,

tunnel_run_checkout, commit_locked_file): Update to svn_ra_open5().

Add missing SVN_DEPRECATED tags on functions being deprecated for 1.14.

* subversion/include/svn_ra.h

(svn_ra_open4): Mark deprecated.

* everywhere: Run tools/dev/ to remove

trailing whitespace before we branch 1.14.

  1. … 91 more files in changeset.
* tools/dist/release-lines.yaml: Declare build deps for 1.14 (same as 1.13)

Remove incorrect include paths from svn_cv_ruby_includes.

Files under ruby/ and ruby/backward/ should be included using "#include

<ruby/...>", if needed, instead of adding those directories to the include


* build/ac-macros/swig.m4

(SVN_FIND_SWIG): Remove "-I$rbconfig_rubyhdrdir/ruby


1.14 release notes: Improve #editor-filename-escaping and add example

Follow-up to r1875312.

Mailing list thread "svn commit: r1875312..." on 17 Mar 2020, archived here:

* docs/release-notes/1.14.html

(editor-filename-escaping): Implementing suggested improvements.

Specifically, as danielsh points out, $SVN_EDITOR is only one of several

ways to configure a user-defined editor. Also, add example CLI

"screenshot" provided by danielsh (text conflict which leads to launching

the editor).

Suggested by: danielsh

* .editorconfig

(**/Makefile*,, New stanzas.

* publish/faq.html (#svn-editor): Fix a typo (us -> use)

1.14 release notes: Document escaping of pathname args to $SVN_EDITOR

* docs/release-notes/1.14.html

(editor-filename-escaping): New section. Documents the pathname escaping

implemented in r1874057, r1874093, and r1875230.

Followup to r1874093, add Windows-specific argument escaping

Rather than directly using apr_pescape_shell(), use apr_escape_shell() to give

an indication whether escaping is needed. If APR reports no escaping is

needed, simply surround the argument in double-quotes to handle any embedded


When escaping is needed, on Unix we continue to use APR's escaping +

post-processing for whitespace. On Windows, perform the escaping ourselves per

these rules:

1. Surround the string with double-quotes

2. Escape any double-quotes or backslashes preceding a double-quote

3. Escape any metacharacters, including double-quotes, with ^

* subversion/libsvn_subr/cmdline.c

(escape_path): Refactored as above

1.14 release notes: Fix title capitalization of one h2 heading

* docs/release-notes/1.14.html

(issues): All other h2 headings use title case. Now "Known Issues in the

Release" does, too.

1.14 release notes: A bit more hierarchical organization near end of document

* docs/release-notes/1.14.html

(support): New h2 section "Support and Release Planning."

(lts-release, svn-1.10-old-stable, svn-1.9-deprecation): Demote from h2 to

h3 within #support.

(enthusiastic-contributors): The above change makes the final "Enthusiastic

Contributors Welcome!" section stand out a bit more. Mention finishing

the Shelving and Checkpointing features among the things that people

could contribute to.

1.14 release notes: Refactor to put all experimental features in one area

Instead of scattering text about experimental features all over the release

notes, create a new h2 section, "Experimental Features," and consolidate all

such subsections there.

In particular, consolidate all sections related to shelving and

checkpointing, as a single subsection of Experimental Features.

This refactoring has the side benefit of eliminating numerous yellow

"Warning" boxes scattered throughout. Now there is just one such box at the

beginning of the Experimental Features section.

This refactoring incorporates some of the suggestions made by danielsh in

dev@ thread "Re: svn commit: r1875127..." on 2020/03/12, archived here:

* docs/release-notes/1.14.html

(compatibility-shelving): New subsection, replacing #shelving-transition

with much shorter text and links to consolidated shelving section.

(experimental): New h2 section to contain all experimental feature and API


(shelving): Promote from h4 to h3 per danielsh's suggestion and place

within experimental. Collect all shelving and checkpointing related text

here and rearrange for improved flow.

(shelving-enabling, shelving-v2, shelving-v3): New h4 subsections within

#shelving, to offer more structure to the existing text.

(shelving-transition): Move from Compatibility Concerns and demote to h4

within #shelving. Make title explicitly about upgrading 1.10 thru 1.13

shelves per danielsh's suggestion.

(shelving-checkpointing): Make this a h4 inside #shelving per danielsh's


(viewspec-output): Move this section into #experimental.

Suggested by: danielsh

(portions; not including the new Experimental Features section; that's

entirely my fault :-)

* tools/buildbot/slaves/bb-openbsd/ Detect skipped

Python bindings tests and do not flag the tests as failed if they occur.

* libsvn_subr/mergeinfo-test.c

(test_rangelist_merge_random_non_validated_inputs): Indentation fix.

Plug error leaks in newly added mergeinfo tests.

Found by: svn-bb-openbsd buildbot


subversion/tests/svn_test_main.c:475: (apr_err=SVN_ERR_TEST_FAILED)

svn_tests: E200006: Test crashed (run in debugger with '--allow-segfaults')

FAIL: mergeinfo-test 25: test rangelist merge random non-validated inputs


Core was generated by `mergeinfo-test'.

Program terminated with signal SIGABRT, Aborted.

#0 *_libc_abort () at /usr/src/lib/libc/stdlib/abort.c:57

57 memset(&sa, 0, sizeof(sa));

(gdb) up

#1 0x0000010070bcff68 in err_abort (data=0x10022671880)

156 abort();

(gdb) list

151 {

152 svn_error_t *err = data; /* For easy viewing in a debugger */

153 SVN_UNUSED(err);


155 if (!getenv("SVN_DBG_NO_ABORT_ON_ERROR_LEAK"))

156 abort();

157 return APR_SUCCESS;

158 }

159 #endif


(gdb) p *err

$3 = {apr_err = 235000,

message = 0x1001bc9c280 "In file 'subversion/libsvn_subr/mergeinfo.c' line 1096: assertion failed (rangelist_is_sorted(chg))", child = 0x0,

pool = 0x10085adbc00,

file = 0x10070d799b0 "subversion/libsvn_subr/mergeinfo.c", line = 1096}


* subversion/tests/libsvn_subr/mergeinfo-test.c

(clear_failure_mode_errors): New helper function. Clears errors accumulated

during a test run.



test_rangelist_merge_random_non_validated_inputs): Clear accumulated errors.

HACKING: Document rolling dependencies.

* docs/community-guide/releasing.part.html

(#before-release-dependencies): New h4 under #before-release.

(#before-release-pristine-tools): New h4 for the preexisting content

of #before-release.

1.14 release notes: Shelving CLI is disabled by default.

* docs/release-notes/1.14.html

(shelving): Fix wrong row in table that documents SVN_EXPERIMENTAL_COMMANDS

and adjust text in paragraph above it accordingly. This text was based on

r1875037 but didn't take r1875039 into account.

Found by: danielsh

Another follow-up to r1875129:

* tools/dev/unix-build/Makefile.svn: Drop a ruby patch which isn't useful.

Follow up to r1875122: Actually fix (some of?) the crashes in Ruby.

* tools/dev/unix-build/Makefile.svn: Add more fixes I came up with while

debugging Ruby crashes. Patches still relevant to current versions of

Ruby (we're still on 2.4) have been submitted upstream.

Also, re-create the ruby patch properly instead of appending to an

existing patch file if already present.