subversion-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From br...@apache.org
Subject svn commit: r1494635 - in /subversion/branches/javahl-1.8-extensions: ./ subversion/bindings/swig/ruby/test/ subversion/include/ subversion/libsvn_fs_fs/ subversion/libsvn_subr/ subversion/svn/ subversion/tests/libsvn_subr/ tools/client-side/svn-bench/...
Date Wed, 19 Jun 2013 14:15:16 GMT
Author: brane
Date: Wed Jun 19 14:15:15 2013
New Revision: 1494635

URL: http://svn.apache.org/r1494635
Log:
On the javahl-1.8-extensions branch: Sync with 1.8.x up to r1494630.

Modified:
    subversion/branches/javahl-1.8-extensions/   (props changed)
    subversion/branches/javahl-1.8-extensions/CHANGES   (contents, props changed)
    subversion/branches/javahl-1.8-extensions/STATUS
    subversion/branches/javahl-1.8-extensions/subversion/bindings/swig/ruby/test/util.rb
    subversion/branches/javahl-1.8-extensions/subversion/include/svn_version.h
    subversion/branches/javahl-1.8-extensions/subversion/libsvn_fs_fs/fs_fs.c
    subversion/branches/javahl-1.8-extensions/subversion/libsvn_subr/io.c
    subversion/branches/javahl-1.8-extensions/subversion/svn/mergeinfo-cmd.c
    subversion/branches/javahl-1.8-extensions/subversion/tests/libsvn_subr/io-test.c
    subversion/branches/javahl-1.8-extensions/tools/client-side/svn-bench/help-cmd.c
    subversion/branches/javahl-1.8-extensions/tools/server-side/fsfs-stats.c
    subversion/branches/javahl-1.8-extensions/win-tests.py

Propchange: subversion/branches/javahl-1.8-extensions/
------------------------------------------------------------------------------
  Merged /subversion/branches/1.8.x:r1491753-1494630
  Merged /subversion/trunk:r1490679,1491499,1491770,1492005,1492145,1492164,1492295,1493951

Modified: subversion/branches/javahl-1.8-extensions/CHANGES
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/CHANGES?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/CHANGES (original)
+++ subversion/branches/javahl-1.8-extensions/CHANGES Wed Jun 19 14:15:15 2013
@@ -99,7 +99,6 @@ http://svn.apache.org/repos/asf/subversi
     * support ipv6 in URLs (e.g. http://[::1]/svn/repos) (r1454047)
     * conflict resolver now iterates paths in a sorted order (r1461820)
     * mod_dav_svn does keyword expansion with 'kw=1' query arg (r1466055)
-    * add support for custom keyword definitions (issue #890)
 
   - Minor new features and improvements (server-side):
     * improve performance of config file parsing (r1344347 et al)

Propchange: subversion/branches/javahl-1.8-extensions/CHANGES
------------------------------------------------------------------------------
  Merged /subversion/branches/1.8.x/CHANGES:r1491753-1494630
  Merged /subversion/trunk/CHANGES:r1491499

Modified: subversion/branches/javahl-1.8-extensions/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/STATUS?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/STATUS (original)
+++ subversion/branches/javahl-1.8-extensions/STATUS Wed Jun 19 14:15:15 2013
@@ -1,7 +1,6 @@
       * * * * * * * * * * * * * * * * * * * * * * * * * * * *
       *                                                     *
       *  THIS RELEASE STREAM IS OPEN TO BUG FIXES.          *
-      *  THIS RELEASE STREAM IS OPEN TO API CHANGES.        *
       *                                                     *
       * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 
@@ -11,7 +10,7 @@ See http://subversion.apache.org/docs/co
 for details on how release lines and voting work, what kinds of bugs can
 delay a release, etc.
 
-Status of 1.8.0:
+Status of 1.8.1:
 
 Candidate changes:
 ==================
@@ -51,14 +50,6 @@ Candidate changes:
    Votes:
      +0: rhuijben (Needs more work. Breaks JavaHL)
 
- * r1490679
-   Allow test suite to run properly on Windows.
-   Justification:
-     Fixes a (very) minor test setup failure when running the ra_serf tests on
-     Windows for the first time in a given environment.
-   Votes:
-     +1: pburba, rhuijben
-
  * r1489339
    Return 501/412 rather than 401 for lock errors.
    Justification:
@@ -75,7 +66,7 @@ Candidate changes:
    Justification:
      Not a client failure so 4xx is wrong.
    Votes:
-     +1: philip
+     +1: philip, rhuijben
 
  * r1491432
    Rename 'automatic merge' to 'complete merge' in the merge help text.
@@ -89,6 +80,8 @@ Candidate changes:
      versions will name the feature in different ways.
    Votes:
      +1: stsp
+     +1: danielsh (no opinion on the name of the feature; just confirming this
+                   patch does what it claims to)
 
  * r1491707
    Add version header to svnpubsub server.
@@ -98,17 +91,137 @@ Candidate changes:
    Votes:
      +1: danielsh, breser
 
+ * r1491739, r1491755, r1491762, r1492152, r1492670, r1492682
+   Improve interactive conflict resolution menu.
+   Justification:
+     The current menu is too hard to figure out for users.
+     See http://svn.haxx.se/dev/archive-2013-06/0147.shtml
+     and http://blog.elegosoft.com/?q=updating-moves-in-subversion-18-just-ask
+   Votes:
+     +1: stsp
+
+ * r1491816, r1494089
+   Add two additional options to interactive file merge.
+   Justification:
+     Usability enhancement for quicker conflict resolution in some cases.
+     Very simple change. Only affects interactive mode, not scripts.
+   Votes:
+     +1: stsp, danielsh
+
+ * r1491868
+   Add missing conflict callback invocations to the update editor.
+   Justification:
+     Resolver is not invoked after some updates which flag new tree conflicts.
+   Votes:
+     +1: stsp
+     -0: rhuijben (Working on a further review to avoid a possible duplicate
+                   callback call)
+
+ * r1478987, r1492020
+   Optimize some code that retrieves mergeinfo to obtain less unneeded
+   information from the repository.
+   Justification:
+     Simple fixes to improve performance.
+   Votes:
+     +1: rhuijben
+
+ * r1491756
+   Fix issue #4364: Correctly remove the stale entries from the lock table
+   when committing deletions.
+   Justification:
+     Keep wc.db as consistent and clean as possible.
+   Votes:
+     +1: rhuijben, stsp
+
+ * r1492148, r1493720
+   Don't try to use 'blame -r 5:1' against 1.7 servers.  Affects only users
+   of the RA API, not users of the client API or svn.
+   Justification:
+     1.7 servers would silently do the wrong thing.
+   Votes:
+     +1: danielsh, rhuijben
+
+ * r1493424
+   Remove unnecessary check for branches ancestry from 
+   command line client. All required checks are already performed in
+   libsvn_client.
+   Justification:
+     There is no reason to command line and third-party use different
+     codepath for ancestory checks. Simple performance fix.
+   Votes:
+     +1: ivan, rhuijben
+     +0: danielsh (note: svn_client__youngest_common_ancestor can be striken;
+                         no callers left)
+
+ * r1493475
+   Improve 'svn merge' performance over WAN: Use already fetched 
+   history-as-mergeinfo data to find youngest common ancestor in automatic 
+   merge.
+   Justification:
+     No reason to create an RA session or perform RA calls if the information
+     is already in memory.
+   Votes:
+     +1: rhuijben, ivan
+
+ * r1493703, r1494171
+   Fix upgrade notification for explicit upgrades of post-WC-NG working copies.
+   Justification:
+     Without this notification users can't see whether the upgrade was a no-op.
+   Votes:
+     +1: rhuijben, stsp
+
+ * r1494342
+   C tests: support --compatible-version=1.8.
+   Justification:
+     Enable running the tests with --compatible-version
+   Votes:
+     +1: danielsh
+
 Veto-blocked changes:
 =====================
 
-Approved for 1.8.1 or if soak is restarted for 1.8.0:
-====================================================
+ * r1493027, r1493028, r1493060
+   Make 'blame -r 5:4' work.
+   Justification:
+     Make it possible to track removed lines.
+   Notes:
+     r1493027 is the fix.
+     r1493028 is a typo fix.
+     r1493060 is a docstring change.  If this group is merged, that docstring
+       should be amended to say "1.8.1" rather than "1.9.0" (this amendment
+       does not require votes).
+   Votes:
+     -1: danielsh (doesn't resolve peg revisions correctly)
 
 Approved changes:
 =================
 
-# 1.8.0-rc3 is being voted on currently and as such 1.8.0 is in the soak phase.
-# Changes that are not intended for 1.8.0 should not be placed here and changes
-# that would restart the soak should not be added unless they are resolving
-# blocking issues.  If in doubt see this link for details:
-# http://subversion.apache.org/docs/community-guide/releasing.html#release-stabilization
+ * r1494287
+   Fix a "div-by-0" error when upgrading unsharded format 3+ FSFS repositories.
+   Justification:
+     Even if the format supports sharding, the actual repo may be unsharded.
+     The upgrade code simply needs to check for that condition and skip revprop
+     catch-up packing in that case.
+   Votes:
+     +1: stefan2, danielsh, ivan, philip
+
+ * r1494298, r1494318
+   Fix a FSFS data loss when aborting 'svnadmin upgrade' late in the process.
+   Justification:
+     This is a critical issue. People may actually abort the potentially long-
+     running 'svnadmin upgrade'.  If they do that after the actual packing
+     phase, they *will* lose data.
+     r1494318 is a follow-up that fixes a copy'n'pasto.
+   Notes:
+     Depends on r1494287 which must be merged first.
+   Votes:
+     +1: stefan2, danielsh, ivan
+
+ * r1494223
+   Forbid 'svnadmin create --fs-type=fsfs --compatible-version=1.0'.
+   Justification:
+     Well, I hope no one will actually run into this error in a situation
+     where it matters, but I'll sleep better knowing we're strict about
+     input validation.
+   Votes:
+     +1: danielsh, rhuijben, stsp

Modified: subversion/branches/javahl-1.8-extensions/subversion/bindings/swig/ruby/test/util.rb
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/subversion/bindings/swig/ruby/test/util.rb?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/subversion/bindings/swig/ruby/test/util.rb (original)
+++ subversion/branches/javahl-1.8-extensions/subversion/bindings/swig/ruby/test/util.rb Wed
Jun 19 14:15:15 2013
@@ -19,7 +19,41 @@
 
 require "fileutils"
 require "pathname"
-require "./svn/util"
+
+# Tale of a hack...
+#
+# Here we are, %SVN-WC-ROOT%/subversion/bindings/swig/ruby/test/util.rb,
+# trying to require %SVN-WC-ROOT%/subversion/bindings/swig/ruby/svn/util.rb,
+# all the while supporting both Ruby 1.8 and 1.9.  Simply using this,
+#
+#   require "svn/util"
+#
+# works for Ruby 1.8 if the CWD is subversion/bindings/swig/ruby
+# when we are running the tests, e.g.:
+#
+#   %SVN-WC-ROOT%/subversion/bindings/swig/ruby>ruby test\run-test.rb
+#
+# This is because the CWD is included in the load path when Ruby 1.8
+# searches for required files.  But this doesn't work for Ruby 1.9,
+# which doesn't include the CWD this way, so instead we could use this:
+#
+#   require "./svn/util"
+#
+# But that only works if ./svn/util is relative to the CWD (again if the
+# CWD is %SVN-WC-ROOT%/subversion/bindings/swig/ruby).  However, if we run
+# the tests from a different CWD and specify
+# %SVN-WC-ROOT%/subversion/bindings/swig/ruby as an additional $LOAD_PATH
+# using the ruby -I option, then that fails on both 1.8 and 1.9 with a
+# LoadError.
+#
+# The usual solution in a case like this is to use require_relative,
+#
+#  require_relative "../svn/util"
+#
+# But that's only available in Ruby 1.9.  We could require the backports gem
+# but there is a simple workaround, just calculate the full path of util:
+require File.join(File.dirname(__FILE__), '../svn/util')
+
 require "tmpdir"
 
 require "my-assertions"

Modified: subversion/branches/javahl-1.8-extensions/subversion/include/svn_version.h
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/subversion/include/svn_version.h?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/subversion/include/svn_version.h (original)
+++ subversion/branches/javahl-1.8-extensions/subversion/include/svn_version.h Wed Jun 19
14:15:15 2013
@@ -72,7 +72,7 @@ extern "C" {
  *
  * @since New in 1.1.
  */
-#define SVN_VER_PATCH      0
+#define SVN_VER_PATCH      1
 
 
 /** @deprecated Provided for backward compatibility with the 1.0 API. */

Modified: subversion/branches/javahl-1.8-extensions/subversion/libsvn_fs_fs/fs_fs.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/subversion/libsvn_fs_fs/fs_fs.c?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/subversion/libsvn_fs_fs/fs_fs.c (original)
+++ subversion/branches/javahl-1.8-extensions/subversion/libsvn_fs_fs/fs_fs.c Wed Jun 19 14:15:15
2013
@@ -3664,7 +3664,7 @@ parse_packed_revprops(svn_fs_t *fs,
   svn_string_t *compressed
       = svn_stringbuf__morph_into_string(revprops->packed_revprops);
   svn_stringbuf_t *uncompressed = svn_stringbuf_create_empty(pool);
-  SVN_ERR(svn__decompress(compressed, uncompressed, 0x1000000));
+  SVN_ERR(svn__decompress(compressed, uncompressed, APR_SIZE_MAX));
 
   /* read first revision number and number of revisions in the pack */
   stream = svn_stream_from_stringbuf(uncompressed, scratch_pool);

Modified: subversion/branches/javahl-1.8-extensions/subversion/libsvn_subr/io.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/subversion/libsvn_subr/io.c?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/subversion/libsvn_subr/io.c (original)
+++ subversion/branches/javahl-1.8-extensions/subversion/libsvn_subr/io.c Wed Jun 19 14:15:15
2013
@@ -3533,6 +3533,9 @@ svn_io_read_length_line(apr_file_t *file
       apr_size_t bytes_read = 0;
       char *eol;
 
+      if (to_read == 0)
+        break;
+
       /* read data block (or just a part of it) */
       SVN_ERR(svn_io_file_read_full2(file, buf, to_read,
                                      &bytes_read, &eof, pool));

Modified: subversion/branches/javahl-1.8-extensions/subversion/svn/mergeinfo-cmd.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/subversion/svn/mergeinfo-cmd.c?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/subversion/svn/mergeinfo-cmd.c (original)
+++ subversion/branches/javahl-1.8-extensions/subversion/svn/mergeinfo-cmd.c Wed Jun 19 14:15:15
2013
@@ -311,22 +311,32 @@ svn_cl__mergeinfo(apr_getopt_t *os,
   /* Do the real work, depending on the requested data flavor. */
   if (opt_state->show_revs == svn_cl__show_revs_merged)
     {
+      apr_array_header_t *revprops;
+
+      /* We need only revisions number, not revision properties. */
+      revprops = apr_array_make(pool, 0, sizeof(const char *));
+
       SVN_ERR(svn_client_mergeinfo_log2(TRUE, target, &tgt_peg_revision,
                                         source, &src_peg_revision,
                                         src_start_revision,
                                         src_end_revision,
                                         print_log_rev, NULL,
-                                        TRUE, depth, NULL, ctx,
+                                        TRUE, depth, revprops, ctx,
                                         pool));
     }
   else if (opt_state->show_revs == svn_cl__show_revs_eligible)
     {
+      apr_array_header_t *revprops;
+
+      /* We need only revisions number, not revision properties. */
+      revprops = apr_array_make(pool, 0, sizeof(const char *));
+
       SVN_ERR(svn_client_mergeinfo_log2(FALSE, target, &tgt_peg_revision,
                                         source, &src_peg_revision,
                                         src_start_revision,
                                         src_end_revision,
                                         print_log_rev, NULL,
-                                        TRUE, depth, NULL, ctx,
+                                        TRUE, depth, revprops, ctx,
                                         pool));
     }
   else

Modified: subversion/branches/javahl-1.8-extensions/subversion/tests/libsvn_subr/io-test.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/subversion/tests/libsvn_subr/io-test.c?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/subversion/tests/libsvn_subr/io-test.c (original)
+++ subversion/branches/javahl-1.8-extensions/subversion/tests/libsvn_subr/io-test.c Wed Jun
19 14:15:15 2013
@@ -481,6 +481,31 @@ test_three_file_content_comparison(apr_p
   return err;
 }
 
+static svn_error_t *
+read_length_line_shouldnt_loop(apr_pool_t *pool)
+{
+  const char *tmp_dir;
+  const char *tmp_file;
+  char buffer[4];
+  apr_size_t buffer_limit = sizeof(buffer);
+  apr_file_t *f;
+
+  SVN_ERR(svn_dirent_get_absolute(&tmp_dir, "read_length_tmp", pool));
+  SVN_ERR(svn_io_remove_dir2(tmp_dir, TRUE, NULL, NULL, pool));
+  SVN_ERR(svn_io_make_dir_recursively(tmp_dir, pool));
+  svn_test_add_dir_cleanup(tmp_dir);
+
+  SVN_ERR(svn_io_write_unique(&tmp_file, tmp_dir, "1234\r\n", 6,
+                              svn_io_file_del_on_pool_cleanup, pool));
+
+  SVN_ERR(svn_io_file_open(&f, tmp_file, APR_READ, APR_OS_DEFAULT, pool));
+
+  SVN_TEST_ASSERT_ERROR(svn_io_read_length_line(f, buffer, &buffer_limit,
+                                                pool), SVN_ERR_MALFORMED_FILE);
+  SVN_TEST_ASSERT(buffer_limit == 4);
+
+  return SVN_NO_ERROR;
+}
 
 
 /* The test table.  */
@@ -496,5 +521,7 @@ struct svn_test_descriptor_t test_funcs[
                    "three file size comparison"),
     SVN_TEST_PASS2(test_three_file_content_comparison,
                    "three file content comparison"),
+    SVN_TEST_PASS2(read_length_line_shouldnt_loop,
+                   "svn_io_read_length_line() shouldn't loop"),
     SVN_TEST_NULL
   };

Modified: subversion/branches/javahl-1.8-extensions/tools/client-side/svn-bench/help-cmd.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/tools/client-side/svn-bench/help-cmd.c?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/tools/client-side/svn-bench/help-cmd.c (original)
+++ subversion/branches/javahl-1.8-extensions/tools/client-side/svn-bench/help-cmd.c Wed Jun
19 14:15:15 2013
@@ -80,7 +80,7 @@ svn_cl__help(apr_getopt_t *os,
   SVN_ERR(svn_ra_print_modules(version_footer, pool));
 
   return svn_opt_print_help4(os,
-                             "svn",   /* ### erm, derive somehow? */
+                             "svn-bench",   /* ### erm, derive somehow? */
                              opt_state ? opt_state->version : FALSE,
                              opt_state ? opt_state->quiet : FALSE,
                              opt_state ? opt_state->verbose : FALSE,

Modified: subversion/branches/javahl-1.8-extensions/tools/server-side/fsfs-stats.c
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/tools/server-side/fsfs-stats.c?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/tools/server-side/fsfs-stats.c (original)
+++ subversion/branches/javahl-1.8-extensions/tools/server-side/fsfs-stats.c Wed Jun 19 14:15:15
2013
@@ -2169,13 +2169,13 @@ int main(int argc, const char *argv[])
   svn_err = read_revisions(&fs, repo_path, start_revision, memsize, pool);
   printf("\n");
 
-  print_stats(fs, pool);
-
   if (svn_err)
     {
       svn_handle_error2(svn_err, stdout, FALSE, ERROR_TAG);
       return 2;
     }
 
+  print_stats(fs, pool);
+
   return 0;
 }

Modified: subversion/branches/javahl-1.8-extensions/win-tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/javahl-1.8-extensions/win-tests.py?rev=1494635&r1=1494634&r2=1494635&view=diff
==============================================================================
--- subversion/branches/javahl-1.8-extensions/win-tests.py (original)
+++ subversion/branches/javahl-1.8-extensions/win-tests.py Wed Jun 19 14:15:15 2013
@@ -600,6 +600,12 @@ class Httpd:
 
   def _create_dontdothat_file(self):
     "Create empty mime.types file"
+    # If the tests have not previously been run or were cleaned
+    # up, then 'svn-test-work' does not exist yet.
+    parent_dir = os.path.dirname(self.dontdothat_file)
+    if not os.path.exists(parent_dir):
+      os.makedirs(parent_dir)
+
     fp = open(self.dontdothat_file, 'w')
     fp.write('[recursive-actions]\n')
     fp.write('/ = deny\n')



Mime
View raw message