svn commit: r1885965 - in /subversion/branches/1.10.x: ./ STATUS subversion/tests/cmdline/merge_tests.py

2021-01-27 Thread svn-role
Author: svn-role
Date: Thu Jan 28 04:00:24 2021
New Revision: 1885965

URL: http://svn.apache.org/viewvc?rev=1885965&view=rev
Log:
Merge the r1881985 group from trunk:

 * r1881985, r1882105
   Follow up to r1880192: Fix an EOL issue in test on Windows.
   Justification:
 We should test correctly on Windows environment, too.
   Depends:
 r1880192
   Votes:
 +1: jcorvel, stsp, hartmannathan

Modified:
subversion/branches/1.10.x/   (props changed)
subversion/branches/1.10.x/STATUS
subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py

Propchange: subversion/branches/1.10.x/
--
  Merged /subversion/trunk:r1881985,1882105

Modified: subversion/branches/1.10.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/STATUS?rev=1885965&r1=1885964&r2=1885965&view=diff
==
--- subversion/branches/1.10.x/STATUS (original)
+++ subversion/branches/1.10.x/STATUS Thu Jan 28 04:00:24 2021
@@ -48,12 +48,3 @@ Veto-blocked changes:
 
 Approved changes:
 =
-
- * r1881985, r1882105
-   Follow up to r1880192: Fix an EOL issue in test on Windows.
-   Justification:
- We should test correctly on Windows environment, too.
-   Depends:
- r1880192
-   Votes:
- +1: jcorvel, stsp, hartmannathan

Modified: subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py?rev=1885965&r1=1885964&r2=1885965&view=diff
==
--- subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py 
(original)
+++ subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py Thu Jan 
28 04:00:24 2021
@@ -18669,11 +18669,18 @@ def merge_deleted_folder_with_mergeinfo_
)
 
   # verify that mergeinfo is set/changed on A/D, A/D/G, A/D/G2.
+
+  # NOTE: When writing out multi-line prop values in svn:* props, the
+  # client converts to local encoding and local eol style.
+  # Therefore, the expected output must contain the right kind of eoln
+  # strings. That's why we use os.linesep in the tests below, not just
+  # plain '\n'.
+
   expected_mergeinfo = [
 ('A',   ['/branch_A:3-7']),
-('A/D', ['/branch_A/D:5-7\n', '/branch_B/C:1*']),
-('A/D/G',   ['/branch_A/D/G:5-7\n', '/branch_B/C/G:1*']),
-('A/D/G2',  ['/branch_A/D/G2:5-7\n', '/branch_B/C/G2:1*']),
+('A/D', ['/branch_A/D:5-7'+os.linesep, '/branch_B/C:1*']),
+('A/D/G',   ['/branch_A/D/G:5-7'+os.linesep, '/branch_B/C/G:1*']),
+('A/D/G2',  ['/branch_A/D/G2:5-7'+os.linesep, '/branch_B/C/G2:1*']),
 ]
   for path, mergeinfo in expected_mergeinfo:
 svntest.actions.check_prop('svn:mergeinfo', sbox.ospath(path),




svn commit: r1885964 - in /subversion/branches/1.10.x: ./ STATUS subversion/libsvn_client/merge.c subversion/tests/cmdline/merge_tests.py

2021-01-27 Thread svn-role
Author: svn-role
Date: Thu Jan 28 04:00:18 2021
New Revision: 1885964

URL: http://svn.apache.org/viewvc?rev=1885964&view=rev
Log:
Merge r1880192 from trunk:

 * r1880192
   Fix issue #4862 "Merge: the resulting mergeinfo is non-deterministic".
   Justification:
 Non-deterministic merge result is bad.
   Depends:
 r1878997, r1879192, r1879474, r1879959 (Fix issue #4859)
   Votes:
 +1: julianfoad, stsp, jcorvel

Modified:
subversion/branches/1.10.x/   (props changed)
subversion/branches/1.10.x/STATUS
subversion/branches/1.10.x/subversion/libsvn_client/merge.c
subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py

Propchange: subversion/branches/1.10.x/
--
  Merged /subversion/trunk:r1880192

Modified: subversion/branches/1.10.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/STATUS?rev=1885964&r1=1885963&r2=1885964&view=diff
==
--- subversion/branches/1.10.x/STATUS (original)
+++ subversion/branches/1.10.x/STATUS Thu Jan 28 04:00:18 2021
@@ -49,15 +49,6 @@ Veto-blocked changes:
 Approved changes:
 =
 
- * r1880192
-   Fix issue #4862 "Merge: the resulting mergeinfo is non-deterministic".
-   Justification:
- Non-deterministic merge result is bad.
-   Depends:
- r1878997, r1879192, r1879474, r1879959 (Fix issue #4859)
-   Votes:
- +1: julianfoad, stsp, jcorvel
-
  * r1881985, r1882105
Follow up to r1880192: Fix an EOL issue in test on Windows.
Justification:

Modified: subversion/branches/1.10.x/subversion/libsvn_client/merge.c
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/subversion/libsvn_client/merge.c?rev=1885964&r1=1885963&r2=1885964&view=diff
==
--- subversion/branches/1.10.x/subversion/libsvn_client/merge.c (original)
+++ subversion/branches/1.10.x/subversion/libsvn_client/merge.c Thu Jan 28 
04:00:18 2021
@@ -7875,18 +7875,23 @@ process_children_with_new_mergeinfo(merg
 apr_pool_t *pool)
 {
   apr_pool_t *iterpool;
-  apr_hash_index_t *hi;
+  apr_array_header_t *a;
+  int i;
 
   if (!merge_b->paths_with_new_mergeinfo || merge_b->dry_run)
 return SVN_NO_ERROR;
 
   /* Iterate over each path with explicit mergeinfo added by the merge. */
+  /* Iterate over the paths in a parent-to-child order so that inherited
+   * mergeinfo is propagated consistently from each parent path to its
+   * children. (Issue #4862) */
+  a = svn_sort__hash(merge_b->paths_with_new_mergeinfo,
+ svn_sort_compare_items_as_paths, pool);
   iterpool = svn_pool_create(pool);
-  for (hi = apr_hash_first(pool, merge_b->paths_with_new_mergeinfo);
-   hi;
-   hi = apr_hash_next(hi))
+  for (i = 0; i < a->nelts; i++)
 {
-  const char *abspath_with_new_mergeinfo = apr_hash_this_key(hi);
+  svn_sort__item_t *item = &APR_ARRAY_IDX(a, i, svn_sort__item_t);
+  const char *abspath_with_new_mergeinfo = item->key;
   svn_mergeinfo_t path_inherited_mergeinfo;
   svn_mergeinfo_t path_explicit_mergeinfo;
   svn_client__merge_path_t *new_child;

Modified: subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py?rev=1885964&r1=1885963&r2=1885964&view=diff
==
--- subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py 
(original)
+++ subversion/branches/1.10.x/subversion/tests/cmdline/merge_tests.py Thu Jan 
28 04:00:18 2021
@@ -18639,12 +18639,12 @@ def merge_deleted_folder_with_mergeinfo_
 'A/D/G2' : Item(status='A '),
 })
   # verify that mergeinfo is set/changed on A/D, A/D/G, A/D/G2.
-  #expected_mergeinfo_output = wc.State(sbox.ospath(''), {
-  #  'A'  : Item(status=' U'),
-  #  'A/D': Item(status=' G'),
-  #  'A/D/G'  : Item(status=' G'),  # varies, G or U: see issue #4862
-  #  'A/D/G2' : Item(status=' G'),  # varies, G or U: see issue #4862
-  #  })
+  expected_mergeinfo_output = wc.State(sbox.ospath(''), {
+'A'  : Item(status=' U'),
+'A/D': Item(status=' G'),
+'A/D/G'  : Item(status=' G'),
+'A/D/G2' : Item(status=' G'),
+})
   expected_status = svntest.actions.get_virginal_state(sbox.ospath('A'), 
7).subtree('A')
   expected_status.tweak_some(
 lambda path, item: [True] if path.split('/')[0] == 'D' else [],
@@ -18658,7 +18658,7 @@ def merge_deleted_folder_with_mergeinfo_
   svntest.actions.run_and_verify_merge(sbox.ospath('A'), None, None,
'^/branch_A', None,
expected_output,
-   None, #expected_mergeinfo_output
+   e

svn commit: r1885963 - in /subversion/branches/1.10.x: ./ STATUS autogen.sh

2021-01-27 Thread svn-role
Author: svn-role
Date: Thu Jan 28 04:00:12 2021
New Revision: 1885963

URL: http://svn.apache.org/viewvc?rev=1885963&view=rev
Log:
Merge r1875726 from trunk:

 * r1875726
   Error out if generating SWIG-related files fails in autogen.sh --release
   Justification:
 release.py didn't catch this error when 1.14.0-rc1 release was created
   Votes:
 +1: stsp, jamessan, hartmannathan

Modified:
subversion/branches/1.10.x/   (props changed)
subversion/branches/1.10.x/STATUS
subversion/branches/1.10.x/autogen.sh

Propchange: subversion/branches/1.10.x/
--
  Merged /subversion/trunk:r1875726

Modified: subversion/branches/1.10.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/STATUS?rev=1885963&r1=1885962&r2=1885963&view=diff
==
--- subversion/branches/1.10.x/STATUS (original)
+++ subversion/branches/1.10.x/STATUS Thu Jan 28 04:00:12 2021
@@ -49,13 +49,6 @@ Veto-blocked changes:
 Approved changes:
 =
 
- * r1875726
-   Error out if generating SWIG-related files fails in autogen.sh --release
-   Justification:
- release.py didn't catch this error when 1.14.0-rc1 release was created
-   Votes:
- +1: stsp, jamessan, hartmannathan
-
  * r1880192
Fix issue #4862 "Merge: the resulting mergeinfo is non-deterministic".
Justification:

Modified: subversion/branches/1.10.x/autogen.sh
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/autogen.sh?rev=1885963&r1=1885962&r2=1885963&view=diff
==
--- subversion/branches/1.10.x/autogen.sh (original)
+++ subversion/branches/1.10.x/autogen.sh Thu Jan 28 04:00:12 2021
@@ -176,7 +176,7 @@ if test -n "$RELEASE_MODE"; then
   "$PYTHON" ./gen-make.py build.conf || gen_failed=1
 
   # Build the SWIG-related files
-  make -f autogen-standalone.mk autogen-swig
+  make -f autogen-standalone.mk autogen-swig || gen_failed=1
 
   # Remove the .swig_checked file
   rm -f .swig_checked




svn commit: r1885962 - in /subversion/branches/1.10.x: ./ STATUS subversion/libsvn_auth_kwallet/kwallet.cpp

2021-01-27 Thread svn-role
Author: svn-role
Date: Thu Jan 28 04:00:07 2021
New Revision: 1885962

URL: http://svn.apache.org/viewvc?rev=1885962&view=rev
Log:
Merge r1875680 from trunk:

 * r1875680
   Construct KAboutData using QString rather than QStringLiteral
   Justification:
 Fixes a crash seen when using git-svn with kwallet
   Votes:
 +1: jamessan, stsp, hartmannathan

Modified:
subversion/branches/1.10.x/   (props changed)
subversion/branches/1.10.x/STATUS
subversion/branches/1.10.x/subversion/libsvn_auth_kwallet/kwallet.cpp

Propchange: subversion/branches/1.10.x/
--
  Merged /subversion/trunk:r1875680

Modified: subversion/branches/1.10.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/STATUS?rev=1885962&r1=1885961&r2=1885962&view=diff
==
--- subversion/branches/1.10.x/STATUS (original)
+++ subversion/branches/1.10.x/STATUS Thu Jan 28 04:00:07 2021
@@ -49,13 +49,6 @@ Veto-blocked changes:
 Approved changes:
 =
 
- * r1875680
-   Construct KAboutData using QString rather than QStringLiteral
-   Justification:
- Fixes a crash seen when using git-svn with kwallet
-   Votes:
- +1: jamessan, stsp, hartmannathan
-
  * r1875726
Error out if generating SWIG-related files fails in autogen.sh --release
Justification:

Modified: subversion/branches/1.10.x/subversion/libsvn_auth_kwallet/kwallet.cpp
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/subversion/libsvn_auth_kwallet/kwallet.cpp?rev=1885962&r1=1885961&r2=1885962&view=diff
==
--- subversion/branches/1.10.x/subversion/libsvn_auth_kwallet/kwallet.cpp 
(original)
+++ subversion/branches/1.10.x/subversion/libsvn_auth_kwallet/kwallet.cpp Thu 
Jan 28 04:00:07 2021
@@ -227,10 +227,10 @@ kwallet_password_get(svn_boolean_t *done
   KLocalizedString::setApplicationDomain("subversion"); /* translation domain 
*/
 
   /* componentName appears in KDE GUI prompts */
-  KAboutData aboutData(QStringLiteral("subversion"), /* componentName */
+  KAboutData aboutData(QString("subversion"),/* componentName */
i18n(get_application_name(parameters,
  pool)), /* displayName */
-   QStringLiteral(SVN_VER_NUMBER));
+   QString(SVN_VER_NUMBER));
   KAboutData::setApplicationData(aboutData);
 #else
   KCmdLineArgs::init(q_argc, q_argv,
@@ -309,10 +309,10 @@ kwallet_password_set(svn_boolean_t *done
   KLocalizedString::setApplicationDomain("subversion"); /* translation domain 
*/
 
   /* componentName appears in KDE GUI prompts */
-  KAboutData aboutData(QStringLiteral("subversion"), /* componentName */
+  KAboutData aboutData(QString("subversion"),/* componentName */
i18n(get_application_name(parameters,
  pool)), /* displayName */
-   QStringLiteral(SVN_VER_NUMBER));
+   QString(SVN_VER_NUMBER));
   KAboutData::setApplicationData(aboutData);
 #else
   KCmdLineArgs::init(q_argc, q_argv,




svn commit: r1885961 - /subversion/branches/1.14.x/STATUS

2021-01-27 Thread hartmannathan
Author: hartmannathan
Date: Thu Jan 28 03:55:24 2021
New Revision: 1885961

URL: http://svn.apache.org/viewvc?rev=1885961&view=rev
Log:
* 1.14.x/STATUS: Re-nominate r1881534 via 1.14.x-r1881534-no-crlf branch

Modified:
subversion/branches/1.14.x/STATUS

Modified: subversion/branches/1.14.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1885961&r1=1885960&r2=1885961&view=diff
==
--- subversion/branches/1.14.x/STATUS (original)
+++ subversion/branches/1.14.x/STATUS Thu Jan 28 03:55:24 2021
@@ -38,6 +38,18 @@ Candidate changes:
Votes:
  +1: futatuki, stsp
 
+ * r1881534 (without CRLF problem)
+   Fix issue #4864 "build/ac-macros/macosx.m4: workaround AC_RUN_IFELSE"
+   Justification:
+ Unblocks cross-compiling SVN.
+   Notes:
+ Replacement for veto-blocked r1881534 group (see below) without the
+ inconsistent line endings that instigated said veto blockage.
+   Branch:
+ 1.14.x-r1881534-no-crlf
+   Votes:
+ +1: hartmannathan
+
 Veto-blocked changes:
 =
 




svn commit: r1885960 - /subversion/branches/1.14.x-r1881534-no-crlf/build/ac-macros/macosx.m4

2021-01-27 Thread hartmannathan
Author: hartmannathan
Date: Thu Jan 28 03:38:39 2021
New Revision: 1885960

URL: http://svn.apache.org/viewvc?rev=1885960&view=rev
Log:
On the 1.14.x-r1881534-no-crlf backport branch:

Merge r1881534 from trunk, but manually fix the line endings (replace several
accidental CRLF with LF).

Modified:
subversion/branches/1.14.x-r1881534-no-crlf/build/ac-macros/macosx.m4

Modified: subversion/branches/1.14.x-r1881534-no-crlf/build/ac-macros/macosx.m4
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.14.x-r1881534-no-crlf/build/ac-macros/macosx.m4?rev=1885960&r1=1885959&r2=1885960&view=diff
==
--- subversion/branches/1.14.x-r1881534-no-crlf/build/ac-macros/macosx.m4 
(original)
+++ subversion/branches/1.14.x-r1881534-no-crlf/build/ac-macros/macosx.m4 Thu 
Jan 28 03:38:39 2021
@@ -23,22 +23,25 @@ dnl SVN_LIB_MACHO_ITERATE
 dnl Check for _dyld_image_name and _dyld_image_header availability
 AC_DEFUN(SVN_LIB_MACHO_ITERATE,
 [
-  AC_MSG_CHECKING([for Mach-O dynamic module iteration functions])
-  AC_RUN_IFELSE([AC_LANG_PROGRAM([[
-#include 
-#include 
-  ]],[[
-const struct mach_header *header = _dyld_get_image_header(0);
-const char *name = _dyld_get_image_name(0);
-if (name && header) return 0;
-return 1;
-  ]])],[
+  AC_CACHE_CHECK([for Mach-O dynamic module iteration functions],
+[ac_cv_mach_o_dynamic_module_iteration_works], [
+AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+  #include 
+  #include 
+]],[[
+  const struct mach_header *header = _dyld_get_image_header(0);
+  const char *name = _dyld_get_image_name(0);
+  if (name && header) return 0;
+  return 1;
+]])],
+[ac_cv_mach_o_dynamic_module_iteration_works=yes],
+[ac_cv_mach_o_dynamic_module_iteration_works=no],
+[ac_cv_mach_o_dynamic_module_iteration_works=no])
+  ])
+  if test "$ac_cv_mach_o_dynamic_module_iteration_works" = yes; then
 AC_DEFINE([SVN_HAVE_MACHO_ITERATE], [1],
   [Is Mach-O low-level _dyld API available?])
-AC_MSG_RESULT([yes])
-  ],[
-AC_MSG_RESULT([no])
-  ])
+  fi
 ])
 
 dnl SVN_LIB_MACOS_PLIST




svn commit: r1885959 - /subversion/branches/1.14.x-r1881534-no-crlf/

2021-01-27 Thread hartmannathan
Author: hartmannathan
Date: Thu Jan 28 03:25:41 2021
New Revision: 1885959

URL: http://svn.apache.org/viewvc?rev=1885959&view=rev
Log:
Create the 1.14.x-r1881534-no-crlf backport branch.

This is an attempt to workaround the issue discussed in the 14-Nov-2020 dev@
mail "Re: svn commit: r1881534 - /subversion/trunk/build/ac-macros/macosx.m4"
archived at:

https://mail-archives.apache.org/mod_mbox/subversion-dev/202011.mbox/%3c01e94589-8ce8-ca43-ad24-530454410...@apache.org%3e

Added:
subversion/branches/1.14.x-r1881534-no-crlf/   (props changed)
  - copied from r1885958, subversion/branches/1.14.x/

Propchange: subversion/branches/1.14.x-r1881534-no-crlf/
--
--- svn:auto-props (added)
+++ svn:auto-props Thu Jan 28 03:25:41 2021
@@ -0,0 +1,13 @@
+*.c = svn:eol-style=native
+*.cpp = svn:eol-style=native
+*.h = svn:eol-style=native
+*.hpp = svn:eol-style=native
+*.java = svn:eol-style=native
+*.py = svn:eol-style=native
+*.pl = svn:eol-style=native
+*.rb = svn:eol-style=native
+*.sql = svn:eol-style=native
+*.txt = svn:eol-style=native
+README = svn:eol-style=native
+BRANCH-README = svn:eol-style=native
+STATUS = svn:eol-style=native

Propchange: subversion/branches/1.14.x-r1881534-no-crlf/
--
--- svn:ignore (added)
+++ svn:ignore Thu Jan 28 03:25:41 2021
@@ -0,0 +1,58 @@
+ChangeLog*
+Makefile
+config.cache
+config.log
+config.nice
+config.status
+configure
+libtool
+.gdb_history
+.swig_checked
+*.orig
+*.rej
+TAGS
+tags
+neon
+build-outputs.mk
+autogen-standalone.mk
+autom4te.cache
+gen-make.opts
+tests.log*
+fails.log*
+db4-win32
+db
+*.o
+*~
+.*~
+apr
+apr-util
+apr-iconv
+Release
+Debug
+ipch
+subversion_msvc.dsw
+subversion_msvc.ncb
+subversion_msvc.opt
+subversion_msvc.plg
+subversion_vcnet.*
+mkmf.log
+.project
+.classpath
+.cdtproject
+.settings
+.cproject
+py3c
+zlib
+sqlite-amalgamation
+serf
+googlemock
+.git
+.gitignore
+.idea
+compile_commands.json
+.kdev4
+*.kdev4
+.vs
+.swig_pl_checked
+.swig_py_checked
+.swig_rb_checked

Propchange: subversion/branches/1.14.x-r1881534-no-crlf/
--
--- svn:mergeinfo (added)
+++ svn:mergeinfo Thu Jan 28 03:25:41 2021
@@ -0,0 +1,108 @@
+/subversion/branches/1.10-cache-improvements:1669168-1694487
+/subversion/branches/1.11.x:1841316,1841548
+/subversion/branches/1.14.x-r1880374-fsfs:1880459-1880915
+/subversion/branches/1.5.x-r30215:870312
+/subversion/branches/1.7.x-fs-verify:1146708,1161180
+/subversion/branches/1.9-cache-improvements:1678948-1679863
+/subversion/branches/1.9.x:1735680
+/subversion/branches/10Gb:1388102,1388163-1388190,1388195,1388202,1388205,1388211,1388276,1388362,1388375,1388394,1388636,1388639-1388640,1388643-1388644,1388654,1388720,1388789,1388795,1388801,1388805,1388807,1388810,1388816,1389044,1389276,1389289,1389662,1389867,1390017,1390209,1390216,1390407,1390409,1390414,1390419,1390955
+/subversion/branches/atomic-revprop:965046-1000689
+/subversion/branches/authzperf:1613053-1776831
+/subversion/branches/auto-props-sdc:1384106-1401643
+/subversion/branches/bdb-reverse-deltas:872050-872529
+/subversion/branches/cache-server:1458643-1476567
+/subversion/branches/decouple-shelving-cli:1874630-1875035
+/subversion/branches/diff-callbacks3:870059-870761
+/subversion/branches/diff-optimizations:1031270-1037352
+/subversion/branches/diff-optimizations-bytes:1037353-1067789
+/subversion/branches/dont-save-plaintext-passwords-by-default:870728-871118
+/subversion/branches/double-delete:870511-872970
+/subversion/branches/dump-load-cross-check:1654853-1657295
+/subversion/branches/ev2-export:1325914,1332738,1413107
+/subversion/branches/explore-wc:875486,875493,875497,875507,875511,875514,875559,875580-875581,875584,875587,875611,875627,875647,875667-875668,875711-875712,875733-875734,875736,875744-875748,875751,875758,875782,875795-875796,875830,875836,875838,875842,875852,875855,875864,875870,875873,875880,875885-875888,875890,875897-875898,875905,875907-875909,875935,875943-875944,875946,875979,875982-875983,875985-875986,875990,875997
+/subversion/branches/file-externals:871779-873302
+/subversion/branches/fs-rep-sharing:869036-873803
+/subversion/branches/fsfs-format7:1426304,1430673,1433848,1438408,1438982,1441129,1442051,1442068,1442504,1442910,1443171,1443803,1444690,1444693,1444695,1445040,1445080,1446103,1451129,1453590,1454307,1460579,1461851,1461865,1462837,1462904,1463120,1467362,1467382,1469487,1471208,1477166,1478055,1481447,1489817,1489949,1490673-1490674,1491784,1493042,1498029,1498103,1498155,1500054,1507729-1507731,1507735-1507736
+/subversion/branches/fsfs-improvements:1499981-1547039
+/subversion/branches/fsfs-lock-many:1571740-1577217
+/subversion/branches/fsfs-pack:873717-874575
+/subversion/branches/fsx:1507845-1509914
+/subversion/branches/fsx-1.10:1658219-1694500
+/subversion/branches/fsx-

svn commit: r1885955 - /subversion/branches/javahl-1.14-fixes/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java

2021-01-27 Thread amiloslavskiy
Author: amiloslavskiy
Date: Thu Jan 28 00:13:48 2021
New Revision: 1885955

URL: http://svn.apache.org/viewvc?rev=1885955&view=rev
Log:
JavaHL: Trivial changes in tests

Improved code formatting and code comments according to code review.

Modified:

subversion/branches/javahl-1.14-fixes/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java

Modified: 
subversion/branches/javahl-1.14-fixes/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
URL: 
http://svn.apache.org/viewvc/subversion/branches/javahl-1.14-fixes/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java?rev=1885955&r1=1885954&r2=1885955&view=diff
==
--- 
subversion/branches/javahl-1.14-fixes/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
 (original)
+++ 
subversion/branches/javahl-1.14-fixes/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
 Thu Jan 28 00:13:48 2021
@@ -4449,7 +4449,7 @@ public class BasicTests extends SVNTests
 String error = null;
 ReadableByteChannel request;
 WritableByteChannel response;
-
+
 final CloseTunnelCallback closeTunnelCallback = () ->
 {
 if ((flags & FLAG_ECHO) != 0)
@@ -4484,23 +4484,23 @@ public class BasicTests extends SVNTests
 }
 
 private String readClient(ByteBuffer readBuffer)
-   throws IOException
-   {
-   readBuffer.reset();
-   request.read(readBuffer);
-
-   final int offset = readBuffer.arrayOffset();
-   return new String(readBuffer.array(),
-   offset,
-   readBuffer.position() - offset);
-   }
-
-   private void emulateServer(String serverMessage)
-   throws IOException
-   {
-   final byte[] responseBytes = serverMessage.getBytes();
-   response.write(ByteBuffer.wrap(responseBytes));
-   }
+throws IOException
+{
+readBuffer.reset();
+request.read(readBuffer);
+
+final int offset = readBuffer.arrayOffset();
+return new String(readBuffer.array(),
+offset,
+readBuffer.position() - offset);
+}
+
+private void emulateServer(String serverMessage)
+throws IOException
+{
+final byte[] responseBytes = serverMessage.getBytes();
+response.write(ByteBuffer.wrap(responseBytes));
+}
 
 private void doScriptItem(ScriptItem scriptItem, ByteBuffer readBuffer)
 throws Exception
@@ -4523,8 +4523,8 @@ public class BasicTests extends SVNTests
 System.err.flush();
 
 // Unblock the SVN thread by emulating a server error
-   final String serverError = "( success ( 
( ) 0: ) ) ( failure ( ( 16 39:Test script received unexpected request 0: 0 
) ) ) ";
-   emulateServer(serverError);
+final String serverError = "( success ( ( ) 0: ) ) ( 
failure ( ( 16 39:Test script received unexpected request 0: 0 ) ) ) ";
+emulateServer(serverError);
 
 fail("Unexpected client request");
 }
@@ -4536,7 +4536,7 @@ public class BasicTests extends SVNTests
 System.out.flush();
 }
 
-   emulateServer(scriptItem.value);
+emulateServer(scriptItem.value);
 break;
 case WAIT_TUNNEL:
 // The loop will end with an exception when tunnel is closed
@@ -4554,17 +4554,24 @@ public class BasicTests extends SVNTests
 
 for (ScriptItem scriptItem : script)
 {
-try {
+try
+{
 doScriptItem(scriptItem, readBuffer);
-} catch (ClosedChannelException ex) {
+}
+catch (ClosedChannelException ex)
+{
 // Expected when closed properly
-} catch (IOException e) {
+}
+catch (IOException e)
+{
 // IOException occurs when already-freed apr_file_t was 
lucky
 // to have reasonable fields to avoid the crash. It still
 // indicates a problem.
 error = "IOException was caught in run()";
 return;
-} catch (Throwable t) {
+}
+catch (Throwable t)
+{
 // No other exceptions are expected here.
 

svn commit: r1885953 - /subversion/trunk/subversion/libsvn_subr/cmdline.c

2021-01-27 Thread futatuki
Author: futatuki
Date: Wed Jan 27 23:47:43 2021
New Revision: 1885953

URL: http://svn.apache.org/viewvc?rev=1885953&view=rev
Log:
Follow up to r1882234, r1882235,r1882313: Fix file name encoding issue
when invoking editor on Windows.

* subversion/libsvn_subr/cmdline.c
  (): include apr_env.h for apr_env_get
  (find_editor_binary):
- Change the encoding to set to EDITOR, from active code page to
  UTF-8 on Windows.
  - Transcode editor_cmd to UTF-8.
  - Use apr_env_get() instead of getenv().
  - Transcode config setting for SVN_CONFIG_OPTION_EDITOR_CMD.
- Add pool argument for transcoding and getting environment variables.
  (svn_cmdline_edit_file_externally, svn_cmdline_edit_string_externally):
- Use _wsystem() instead of system() on Windows environment.
- Enclose whole command strings with double quotes[1] in _wsystem().

[1] 
https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/cmd

Suggested by: jun66j5
  (editor return value in find_editor_binary)

Modified:
subversion/trunk/subversion/libsvn_subr/cmdline.c

Modified: subversion/trunk/subversion/libsvn_subr/cmdline.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/cmdline.c?rev=1885953&r1=1885952&r2=1885953&view=diff
==
--- subversion/trunk/subversion/libsvn_subr/cmdline.c (original)
+++ subversion/trunk/subversion/libsvn_subr/cmdline.c Wed Jan 27 23:47:43 2021
@@ -47,6 +47,7 @@
 #endif
 #include /* for apr_initialize/apr_terminate */
 #include /* for apr_snprintf */
+#include /* for apr_env_get */
 #include 
 #include 
 
@@ -1240,38 +1241,84 @@ svn_cmdline__be_interactive(svn_boolean_
 
 
 /* Helper for the edit_externally functions.  Set *EDITOR to some path to an
-   editor binary.  Sources to search include: the EDITOR_CMD argument
-   (if not NULL), $SVN_EDITOR, the runtime CONFIG variable (if CONFIG
+   editor binary, in native C string on Unix/Linux platforms and in UTF-8
+   string on Windows platform.  Sources to search include: the EDITOR_CMD
+   argument (if not NULL), $SVN_EDITOR, the runtime CONFIG variable (if CONFIG
is not NULL), $VISUAL, $EDITOR.  Return
SVN_ERR_CL_NO_EXTERNAL_EDITOR if no binary can be found. */
 static svn_error_t *
 find_editor_binary(const char **editor,
const char *editor_cmd,
-   apr_hash_t *config)
+   apr_hash_t *config,
+   apr_pool_t *pool)
 {
   const char *e;
+  const char *e_cfg;
   struct svn_config_t *cfg;
+  apr_status_t status;
 
   /* Use the editor specified on the command line via --editor-cmd, if any. */
+#ifdef WIN32
+  /* On Windows, editor_cmd is transcoded to the system active code page
+ because we use main() as a entry point without APR's (or our own) wrapper
+ in command line tools. */
+  if (editor_cmd)
+{
+  SVN_ERR(svn_utf_cstring_to_utf8(&e, editor_cmd, pool));
+}
+  else
+{
+  e = NULL;
+}
+#else
   e = editor_cmd;
+#endif
 
   /* Otherwise look for the Subversion-specific environment variable. */
   if (! e)
-e = getenv("SVN_EDITOR");
+{
+  status = apr_env_get((char **)&e, "SVN_EDITOR", pool);
+  if (status || ! *e)
+{
+   e = NULL;
+}
+}
 
   /* If not found then fall back on the config file. */
   if (! e)
 {
   cfg = config ? svn_hash_gets(config, SVN_CONFIG_CATEGORY_CONFIG) : NULL;
-  svn_config_get(cfg, &e, SVN_CONFIG_SECTION_HELPERS,
+  svn_config_get(cfg, &e_cfg, SVN_CONFIG_SECTION_HELPERS,
  SVN_CONFIG_OPTION_EDITOR_CMD, NULL);
+#ifdef WIN32
+  if (e_cfg)
+{
+  /* On Windows, we assume that config values are set in system active
+ code page, so we need transcode it here. */
+  SVN_ERR(svn_utf_cstring_to_utf8(&e, e_cfg, pool));
+}
+#else
+  e = e_cfg;
+#endif
 }
 
   /* If not found yet then try general purpose environment variables. */
   if (! e)
-e = getenv("VISUAL");
+{
+  status = apr_env_get((char**)&e, "VISUAL", pool);
+  if (status || ! *e)
+{
+   e = NULL;
+}
+}
   if (! e)
-e = getenv("EDITOR");
+{
+  status = apr_env_get((char**)&e, "EDITOR", pool);
+  if (status || ! *e)
+{
+   e = NULL;
+}
+}
 
 #ifdef SVN_CLIENT_EDITOR
   /* If still not found then fall back on the hard-coded default. */
@@ -1406,13 +1453,16 @@ svn_cmdline__edit_file_externally(const
 {
   const char *editor, *cmd, *base_dir, *file_name, *base_dir_apr;
   const char *file_name_local;
+#ifdef WIN32
+  const WCHAR *wcmd;
+#endif
   char *old_cwd;
   int sys_err;
   apr_status_t apr_err;
 
   svn_dirent_split(&base_dir, &file_name, path, pool);
 
-  SVN_ERR(find_editor_binary(&editor, editor_cmd, config));
+  SVN_ERR(find_editor_binary(&editor, editor_cmd, config, pool));

svn propchange: r1882522 - svn:log

2021-01-27 Thread amiloslavskiy
Author: amiloslavskiy
Revision: 1882522
Modified property: svn:log

Modified: svn:log at Wed Jan 27 23:39:20 2021
--
--- svn:log (original)
+++ svn:log Wed Jan 27 23:39:20 2021
@@ -12,6 +12,11 @@ This crash is demonstrated by the follow
 [in subversion/bindings/javahl]
 * native/OperationContext.cpp
   (callCloseTunnelCallback): Extract function to facilitate changes in
- further commits.
-  (openTunnel):  Add NewGlobalRef() for kept jobject.
+further commits.
+  (openTunnel): Add NewGlobalRef() for kept jobject.
   (callCloseTunnelCallback): Add a matching DeleteGlobalRef().
+  (closeTunnel): Remove early return. This becomes necessary in next commit
+to make sure that every object is cleaned up regardless of errors in other
+   objects. Removing early return in this commit reduces patch sizes. Extra
+   JNIUtil calls are merely a very small performance change in an unlikely
+   scenario.



svn propchange: r1882523 - svn:log

2021-01-27 Thread amiloslavskiy
Author: amiloslavskiy
Revision: 1882523
Modified property: svn:log

Modified: svn:log at Wed Jan 27 21:42:33 2021
--
--- svn:log (original)
+++ svn:log Wed Jan 27 21:42:33 2021
@@ -17,6 +17,8 @@ subsequent commits as well.
 
 [in subversion/bindings/javahl]
 * native/OperationContext.cpp
+  (jrequest,jresponse): Keep references to tunnels to inform them later
+  (create_Channel): Keeping a reference requires NewGlobalRef()
   (close_TunnelChannel): New function to inform Java side.
   (openTunnel): Keep references to Java tunnel objects.
   (closeTunnel): Inform Java side when tunnel is closed.



svn commit: r1885949 - /subversion/branches/1.10.x/STATUS

2021-01-27 Thread hartmannathan
Author: hartmannathan
Date: Wed Jan 27 18:32:12 2021
New Revision: 1885949

URL: http://svn.apache.org/viewvc?rev=1885949&view=rev
Log:
* 1.10.x/STATUS: Move r1880192 and the r1881985 group to Approved

Modified:
subversion/branches/1.10.x/STATUS

Modified: subversion/branches/1.10.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/STATUS?rev=1885949&r1=1885948&r2=1885949&view=diff
==
--- subversion/branches/1.10.x/STATUS (original)
+++ subversion/branches/1.10.x/STATUS Wed Jan 27 18:32:12 2021
@@ -32,24 +32,6 @@ Candidate changes:
Votes:
  +1: jamessan, stsp
 
- * r1880192
-   Fix issue #4862 "Merge: the resulting mergeinfo is non-deterministic".
-   Justification:
- Non-deterministic merge result is bad.
-   Depends:
- r1878997, r1879192, r1879474, r1879959 (Fix issue #4859)
-   Votes:
- +1: julianfoad, stsp, jcorvel
-
- * r1881985, r1882105
-   Follow up to r1880192: Fix an EOL issue in test on Windows.
-   Justification:
- We should test correctly on Windows environment, too.
-   Depends:
- r1880192
-   Votes:
- +1: jcorvel, stsp, hartmannathan
-
  * r1835049, r1882326
Fix issue #4762 "authz doesn't combine global and repository rules"
Justification:
@@ -80,3 +62,21 @@ Approved changes:
  release.py didn't catch this error when 1.14.0-rc1 release was created
Votes:
  +1: stsp, jamessan, hartmannathan
+
+ * r1880192
+   Fix issue #4862 "Merge: the resulting mergeinfo is non-deterministic".
+   Justification:
+ Non-deterministic merge result is bad.
+   Depends:
+ r1878997, r1879192, r1879474, r1879959 (Fix issue #4859)
+   Votes:
+ +1: julianfoad, stsp, jcorvel
+
+ * r1881985, r1882105
+   Follow up to r1880192: Fix an EOL issue in test on Windows.
+   Justification:
+ We should test correctly on Windows environment, too.
+   Depends:
+ r1880192
+   Votes:
+ +1: jcorvel, stsp, hartmannathan




svn commit: r1885948 - /subversion/branches/1.10.x/STATUS

2021-01-27 Thread hartmannathan
Author: hartmannathan
Date: Wed Jan 27 18:29:51 2021
New Revision: 1885948

URL: http://svn.apache.org/viewvc?rev=1885948&view=rev
Log:
* 1.10.x/STATUS: Convert jcorvel's vote on r1880192 to +1 (See r1884585 log)

Modified:
subversion/branches/1.10.x/STATUS

Modified: subversion/branches/1.10.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/STATUS?rev=1885948&r1=1885947&r2=1885948&view=diff
==
--- subversion/branches/1.10.x/STATUS (original)
+++ subversion/branches/1.10.x/STATUS Wed Jan 27 18:29:51 2021
@@ -39,9 +39,7 @@ Candidate changes:
Depends:
  r1878997, r1879192, r1879474, r1879959 (Fix issue #4859)
Votes:
- +1: julianfoad, stsp
- -1: jcorvel (test FAIL on Windows;
-  +1 if r1881985 group (see below) is backported too)
+ +1: julianfoad, stsp, jcorvel
 
  * r1881985, r1882105
Follow up to r1880192: Fix an EOL issue in test on Windows.




svn commit: r1885947 - /subversion/branches/1.10.x/STATUS

2021-01-27 Thread hartmannathan
Author: hartmannathan
Date: Wed Jan 27 18:26:43 2021
New Revision: 1885947

URL: http://svn.apache.org/viewvc?rev=1885947&view=rev
Log:
* 1.10.x/STATUS: Vote for r1881985 group

Modified:
subversion/branches/1.10.x/STATUS

Modified: subversion/branches/1.10.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.10.x/STATUS?rev=1885947&r1=1885946&r2=1885947&view=diff
==
--- subversion/branches/1.10.x/STATUS (original)
+++ subversion/branches/1.10.x/STATUS Wed Jan 27 18:26:43 2021
@@ -50,7 +50,7 @@ Candidate changes:
Depends:
  r1880192
Votes:
- +1: jcorvel, stsp
+ +1: jcorvel, stsp, hartmannathan
 
  * r1835049, r1882326
Fix issue #4762 "authz doesn't combine global and repository rules"