subversion

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

Changeset 1863286 is being indexed.

Merge r1856397 from trunk:

* r1856397

Allow generating Visual Studio 2019 projects

Justification:

Makes it easier to build Subversion on Windows. Simple local fix.

Votes:

+1: rhuijben

Merge r1855419 from trunk:

* r1855419

Fix conflict resolver bug where local and incoming edits got swapped.

Justification:

Bug breaks text conflict resolution.

User complained: https://svn.haxx.se/dev/archive-2019-03/0012.shtml

Votes:

+1: stsp

+0: rhuijben

Mark all non-contentious nominated backports as approved, following our

silence-implies-consent decision.

Mark all non-contentious nominated backports as approved, following our

silence-implies-consent decision.

Mark all non-contentious nominated backports as approved, following our

silence-implies-consent decision.

On '1.10.x' branch: Backport r1863262 (Do not print password to screen in

svn_load_dirs.pl). A contrib script, so backported without voting.

This commit adds the missing mergeinfo.

On '1.12.x' branch: Backport r1863262 (Do not print password to screen in

svn_load_dirs.pl). A contrib script, so backported without voting.

This commit adds the missing mergeinfo.

On '1.10.x' branch: Backport r1863262 (Do not print password to screen in

svn_load_dirs.pl). A contrib script, so backported without voting.

On '1.12.x' branch: Backport r1863262 (Do not print password to screen in

svn_load_dirs.pl). A contrib script, so backported without voting.

Do not print password to screen in svn_load_dirs.pl.

* contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in

(sanitize_pwd): New function.

(safe_read_from_pipe, read_from_process): Update the sites printing

the command line to screen to use sanitize_pwd.

(usage): Warn that other local OS users may be able to see the

password passed on the command-line.

Fix indentation; that is, replace the 2 tab occurrences by 8 spaces.

Patch by: Geoffrey Alary <geoffrey.alary{_AT_}gmail.com>

On branch swig-py3: Fix test after merging shelving-v3

* subversion/bindings/swig/python/tests/client.py:

(SubversionClientTestCase.test_shelf): Relax assert condition to be suitable

for changed behavior of shelved_func callback in

svn_client__shelf_save_new_version3().

Win32: tweak the SSL certificate validation override to avoid hitting the wire

for URL based objects and revocation checks.

The primary purpose of this callback is to resolve SVN_AUTH_SSL_UNKNOWNCA

failures using CryptoAPI and Windows local certificate stores. To do so, we

should be fine with just using the immediately available data on the local

machine.

Doing the opposite of that appears to be troublesome, as always connecting

to remote CRL and OCSP endpoints can result in spurious errors or significant

(user-reported) network stalls caused by timeouts if the endpoints are

inaccessible or unreliable.

The new approach should also be in par with the default basic behavior of

several major browsers, for example:

https://chromium.googlesource.com/chromium/src/net/+/3d1dad1c17ae3ff59e7c35841af94b66f4bca1ba/cert/cert_verify_proc_win.cc#919

* subversion/libsvn_subr/win32_crypto.c

(windows_validate_certificate): Use the CERT_CHAIN_CACHE_ONLY_URL_RETRIEVAL

and CERT_CHAIN_REVOCATION_CHECK_CACHE_ONLY flags when preparing the

certificate chain. Ignore errors in obtaining valid revocation information

when verifying the chain, as they could be induced by the new cache-only

behavior.

On branch swig-py3: avoid crash when status is NULL

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c

(svn_swig_py_client_status_func) Allow NULL for status.

On branch swig-py3: Catchup to trunk @r1862753.
  1. … 166 more files in changeset.
* STATUS: Vote for r1860936 group.

* STATUS (r1860936 group): Point to a backport branch which resolves a trivial merge conflict, and so should allow the backports buildbot to test it.
Create a backport branch for the r1860936 group, with its three revisions merged and the trivial conflict resolved.
* STATUS: Nominate r1860936, r1860951, r1860958.
* STATUS: Nominate r1860936, r1860951, r1860958.
* STATUS: Nominate r1860936, r1860951, r1860958.
In svnserve, consistently handle errors in opening a repository.

These errors are still logged and reported to the client, as they were

before, but now it is done in the same way as everywhere else. (The error

logging now happens higher up the call stack.)

* subversion/svnserve/serve.c

After reporting an error to the client, don't log it explicity here and

then clear it; instead return it so the caller can do so.

Adjust expectations of a new test to account for differences between RA

layers. A follow-up to r1860936.

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

(test_get_deleted_rev_errors): Expect a generic error code when running

over HTTP, otherwise the specific error code for this error case.

Provide a way for svnserve's 'get-deleted-rev' API to return 'not deleted'.

Previously the answer 'not deleted' was indistinguishable from an error when

using the svnserve protocol.

The standard 'svn' client software does not appear to invoke this case, but

it is meant to be a valid answer and is supported by the other repository

access protocols.

To work around the problem without changing the protocol, we re-purpose the

obsolete error code 'SVN_ERR_ENTRY_MISSING_REVISION' to communicate this

'not deleted' reply to the client.

(Re-purposing an old error code was not essential. An alternative would be

to create a new error code which would become part of the public API in the

next minor release, but would be deemed non-public when backported to older

release lines.)

Behaviour changes:

- With a new client against a new server, such queries are now handled

correctly.

- With an old client against a new server, the client will report a more

informative error message.

- With a new client against an old server, there is no improvement.

* subversion/svnserve/serve.c

(get_deleted_rev): If the answer is SVN_INVALID_REVNUM, return a

SVN_ERR_ENTRY_MISSING_REVISION error to the client.

* subversion/libsvn_ra_svn/client.c

(ra_svn_get_deleted_rev): Convert the error SVN_ERR_ENTRY_MISSING_REVISION

back to a response of SVN_INVALID_REVNUM.

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

(commit_two_changes): New.

(test_get_deleted_rev_no_delete,

test_get_deleted_rev_errors): New tests.

(test_funcs): Run them.

Update table of contents to match actual section names in INSTALL.

* STATUS: Remove accidental double nomination.
* STATUS: Nominate VS2019 build support.
* STATUS: Nominate VS2019 build support.
* STATUS: Nominate VS2019 build support.
* STATUS: Cast vote.
* STATUS: Propose r1859732, r1859734 for backport to 1.12.x (

io: Implement the functions that check for node existence using

the native Win32 APIs on Windows).