Author: brane
Date: Tue Jan 2 19:52:28 2018
New Revision: 1819877
URL: http://svn.apache.org/viewvc?rev=1819877&view=rev
Log:
On the better-pristines branch: Sync with trunk up to r1819868.
Added:
subversion/branches/better-pristines/notes/api-errata/1.10/ra001.txt
- copied unchanged from r1819868,
subversion/trunk/notes/api-errata/1.10/ra001.txt
subversion/branches/better-pristines/subversion/libsvn_client/shelve.c
- copied unchanged from r1819868,
subversion/trunk/subversion/libsvn_client/shelve.c
subversion/branches/better-pristines/subversion/libsvn_ra_serf/list.c
- copied unchanged from r1819868,
subversion/trunk/subversion/libsvn_ra_serf/list.c
subversion/branches/better-pristines/subversion/mod_dav_svn/reports/list.c
- copied unchanged from r1819868,
subversion/trunk/subversion/mod_dav_svn/reports/list.c
subversion/branches/better-pristines/subversion/svn/shelve-cmd.c
- copied unchanged from r1819868,
subversion/trunk/subversion/svn/shelve-cmd.c
subversion/branches/better-pristines/subversion/tests/cmdline/shelve_tests.py
- copied unchanged from r1819868,
subversion/trunk/subversion/tests/cmdline/shelve_tests.py
subversion/branches/better-pristines/subversion/tests/templates/empty-fsfs-v1.zip
- copied unchanged from r1819868,
subversion/trunk/subversion/tests/templates/empty-fsfs-v1.zip
subversion/branches/better-pristines/subversion/tests/templates/empty-fsfs-v2.zip
- copied unchanged from r1819868,
subversion/trunk/subversion/tests/templates/empty-fsfs-v2.zip
subversion/branches/better-pristines/subversion/tests/templates/empty-fsfs-v3.zip
- copied unchanged from r1819868,
subversion/trunk/subversion/tests/templates/empty-fsfs-v3.zip
subversion/branches/better-pristines/subversion/tests/templates/empty-fsfs-v7.zip
- copied unchanged from r1819868,
subversion/trunk/subversion/tests/templates/empty-fsfs-v7.zip
subversion/branches/better-pristines/subversion/tests/templates/greek-fsfs-v1.zip
- copied unchanged from r1819868,
subversion/trunk/subversion/tests/templates/greek-fsfs-v1.zip
subversion/branches/better-pristines/subversion/tests/templates/greek-fsfs-v2.zip
- copied unchanged from r1819868,
subversion/trunk/subversion/tests/templates/greek-fsfs-v2.zip
subversion/branches/better-pristines/subversion/tests/templates/greek-fsfs-v3.zip
- copied unchanged from r1819868,
subversion/trunk/subversion/tests/templates/greek-fsfs-v3.zip
subversion/branches/better-pristines/subversion/tests/templates/greek-fsfs-v7.zip
- copied unchanged from r1819868,
subversion/trunk/subversion/tests/templates/greek-fsfs-v7.zip
subversion/branches/better-pristines/tools/dist/create-minor-release-branch.py
- copied unchanged from r1819868,
subversion/trunk/tools/dist/create-minor-release-branch.py
subversion/branches/better-pristines/tools/dist/edit-N-log-messages
- copied unchanged from r1819868,
subversion/trunk/tools/dist/edit-N-log-messages
Removed:
subversion/branches/better-pristines/build/generator/util/executable.py
subversion/branches/better-pristines/notes/commit-access-templates/contrib-committer.tmpl
Modified:
subversion/branches/better-pristines/ (props changed)
subversion/branches/better-pristines/CHANGES
subversion/branches/better-pristines/COMMITTERS
subversion/branches/better-pristines/INSTALL
subversion/branches/better-pristines/Makefile.in
subversion/branches/better-pristines/NOTICE
subversion/branches/better-pristines/build.conf
subversion/branches/better-pristines/build/ac-macros/lz4.m4
subversion/branches/better-pristines/build/ac-macros/utf8proc.m4
subversion/branches/better-pristines/build/generator/gen_base.py
subversion/branches/better-pristines/build/generator/gen_win_dependencies.py
subversion/branches/better-pristines/build/generator/swig/__init__.py
subversion/branches/better-pristines/build/generator/swig/checkout_swig_header.py
subversion/branches/better-pristines/build/generator/swig/external_runtime.py
subversion/branches/better-pristines/build/run_tests.py
subversion/branches/better-pristines/configure.ac
subversion/branches/better-pristines/get-deps.sh
subversion/branches/better-pristines/notes/commit-access-templates/partial-committer.tmpl
subversion/branches/better-pristines/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeResources.java
subversion/branches/better-pristines/subversion/bindings/swig/perl/native/t/3client.t
subversion/branches/better-pristines/subversion/include/private/svn_element.h
subversion/branches/better-pristines/subversion/include/private/svn_ra_svn_private.h
subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h
subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h
subversion/branches/better-pristines/subversion/include/svn_client.h
subversion/branches/better-pristines/subversion/include/svn_dav.h
subversion/branches/better-pristines/subversion/include/svn_delta.h
subversion/branches/better-pristines/subversion/include/svn_diff.h
subversion/branches/better-pristines/subversion/include/svn_io.h
subversion/branches/better-pristines/subversion/include/svn_types.h
subversion/branches/better-pristines/subversion/include/svn_version.h
subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c
subversion/branches/better-pristines/subversion/libsvn_client/patch.c
subversion/branches/better-pristines/subversion/libsvn_delta/element.c
subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs.h
subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs_fs.c
subversion/branches/better-pristines/subversion/libsvn_fs_fs/low_level.c
subversion/branches/better-pristines/subversion/libsvn_fs_fs/pack.c
subversion/branches/better-pristines/subversion/libsvn_fs_fs/rep-cache-db.sql
subversion/branches/better-pristines/subversion/libsvn_fs_fs/rep-cache.c
subversion/branches/better-pristines/subversion/libsvn_fs_fs/structure
subversion/branches/better-pristines/subversion/libsvn_fs_fs/transaction.c
subversion/branches/better-pristines/subversion/libsvn_fs_x/ (props
changed)
subversion/branches/better-pristines/subversion/libsvn_fs_x/changes.c
subversion/branches/better-pristines/subversion/libsvn_fs_x/low_level.c
subversion/branches/better-pristines/subversion/libsvn_fs_x/pack.c
subversion/branches/better-pristines/subversion/libsvn_fs_x/transaction.c
subversion/branches/better-pristines/subversion/libsvn_ra_local/ra_plugin.c
subversion/branches/better-pristines/subversion/libsvn_ra_serf/commit.c
subversion/branches/better-pristines/subversion/libsvn_ra_serf/options.c
subversion/branches/better-pristines/subversion/libsvn_ra_serf/ra_serf.h
subversion/branches/better-pristines/subversion/libsvn_ra_serf/serf.c
subversion/branches/better-pristines/subversion/libsvn_ra_serf/stat.c
subversion/branches/better-pristines/subversion/libsvn_ra_serf/util.c
subversion/branches/better-pristines/subversion/libsvn_ra_svn/editorp.c
subversion/branches/better-pristines/subversion/libsvn_ra_svn/marshal.c
subversion/branches/better-pristines/subversion/libsvn_ra_svn/protocol
subversion/branches/better-pristines/subversion/libsvn_repos/list.c
subversion/branches/better-pristines/subversion/libsvn_repos/load-fs-vtable.c
subversion/branches/better-pristines/subversion/libsvn_repos/reporter.c
subversion/branches/better-pristines/subversion/libsvn_subr/compress_lz4.c
subversion/branches/better-pristines/subversion/libsvn_subr/config_file.c
subversion/branches/better-pristines/subversion/libsvn_subr/io.c
subversion/branches/better-pristines/subversion/libsvn_subr/mergeinfo.c
subversion/branches/better-pristines/subversion/libsvn_subr/object_pool.c
subversion/branches/better-pristines/subversion/libsvn_subr/sqlite.c
subversion/branches/better-pristines/subversion/libsvn_subr/stream.c
subversion/branches/better-pristines/subversion/libsvn_subr/sysinfo.c
subversion/branches/better-pristines/subversion/libsvn_subr/utf8proc/
(props changed)
subversion/branches/better-pristines/subversion/libsvn_subr/utf8proc.c
subversion/branches/better-pristines/subversion/libsvn_subr/version.c
subversion/branches/better-pristines/subversion/libsvn_wc/wc_db.c
subversion/branches/better-pristines/subversion/libsvn_wc/wcroot_anchor.c
subversion/branches/better-pristines/subversion/mod_dav_svn/dav_svn.h
subversion/branches/better-pristines/subversion/mod_dav_svn/liveprops.c
subversion/branches/better-pristines/subversion/mod_dav_svn/util.c
subversion/branches/better-pristines/subversion/mod_dav_svn/version.c
subversion/branches/better-pristines/subversion/svn/cl.h
subversion/branches/better-pristines/subversion/svn/conflict-callbacks.c
subversion/branches/better-pristines/subversion/svn/help-cmd.c
subversion/branches/better-pristines/subversion/svn/list-cmd.c
subversion/branches/better-pristines/subversion/svn/notify.c
subversion/branches/better-pristines/subversion/svn/svn.c
subversion/branches/better-pristines/subversion/svn/util.c
subversion/branches/better-pristines/subversion/svnadmin/svnadmin.c
subversion/branches/better-pristines/subversion/svnbench/svnbench.c
subversion/branches/better-pristines/subversion/svnfsfs/load-index-cmd.c
subversion/branches/better-pristines/subversion/svnmucc/svnmucc.c
subversion/branches/better-pristines/subversion/svnrdump/svnrdump.c
subversion/branches/better-pristines/subversion/svnserve/serve.c
subversion/branches/better-pristines/subversion/tests/cmdline/basic_tests.py
subversion/branches/better-pristines/subversion/tests/cmdline/diff_tests.py
subversion/branches/better-pristines/subversion/tests/cmdline/getopt_tests_data/svn--help_stdout
subversion/branches/better-pristines/subversion/tests/cmdline/getopt_tests_data/svn_help_log_switch_stdout
subversion/branches/better-pristines/subversion/tests/cmdline/getopt_tests_data/svn_help_stdout
subversion/branches/better-pristines/subversion/tests/cmdline/svnadmin_tests.py
subversion/branches/better-pristines/subversion/tests/cmdline/svntest/__init__.py
subversion/branches/better-pristines/subversion/tests/cmdline/svntest/main.py
subversion/branches/better-pristines/subversion/tests/cmdline/svntest/verify.py
subversion/branches/better-pristines/subversion/tests/cmdline/svntest/wc.py
subversion/branches/better-pristines/subversion/tests/cmdline/update_tests.py
subversion/branches/better-pristines/subversion/tests/libsvn_client/conflicts-test.c
subversion/branches/better-pristines/subversion/tests/libsvn_fs_fs/fs-fs-pack-test.c
subversion/branches/better-pristines/subversion/tests/libsvn_ra/ra-test.c
subversion/branches/better-pristines/subversion/tests/libsvn_repos/authz-test.c
subversion/branches/better-pristines/subversion/tests/libsvn_repos/dump-load-test.c
subversion/branches/better-pristines/subversion/tests/libsvn_subr/config-test.c
subversion/branches/better-pristines/subversion/tests/libsvn_subr/config-test.cfg
subversion/branches/better-pristines/subversion/tests/libsvn_subr/mergeinfo-test.c
subversion/branches/better-pristines/subversion/tests/libsvn_subr/priority-queue-test.c
subversion/branches/better-pristines/subversion/tests/libsvn_subr/subst_translate-test.c
subversion/branches/better-pristines/tools/client-side/bash_completion
subversion/branches/better-pristines/tools/client-side/bash_completion_test
subversion/branches/better-pristines/tools/client-side/svn-mergeinfo-normalizer/svn-mergeinfo-normalizer.c
subversion/branches/better-pristines/tools/client-side/svnconflict/svnconflict.c
subversion/branches/better-pristines/tools/dev/svnmover/svnmover.c
subversion/branches/better-pristines/tools/dev/unix-build/Makefile.svn
subversion/branches/better-pristines/tools/dist/backport.pl
subversion/branches/better-pristines/tools/dist/release.py
subversion/branches/better-pristines/win-tests.py
Propchange: subversion/branches/better-pristines/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jan 2 19:52:28 2018
@@ -75,6 +75,8 @@
/subversion/branches/revprop-cache:1298521-1326293
/subversion/branches/revprop-caching-ng:1620597,1620599
/subversion/branches/revprop-packing:1143907,1143971,1143997,1144017,1144499,1144568,1146145
+/subversion/branches/shelve:1802592-1815226
+/subversion/branches/shelve-checkpoint:1801593-1801923,1801970,1817320
/subversion/branches/subtree-mergeinfo:876734-878766
/subversion/branches/svn-auth-x509:1603509-1655900
/subversion/branches/svn-info-detail:1660035-1662618
@@ -97,4 +99,4 @@
/subversion/branches/verify-at-commit:1462039-1462408
/subversion/branches/verify-keep-going:1439280-1546110
/subversion/branches/wc-collate-path:1402685-1480384
-/subversion/trunk:1807118-1812890
+/subversion/trunk:1807118-1819868
Modified: subversion/branches/better-pristines/CHANGES
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/CHANGES?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/CHANGES (original)
+++ subversion/branches/better-pristines/CHANGES Tue Jan 2 19:52:28 2018
@@ -1,3 +1,8 @@
+Version 1.11.0
+(?? ??? 20XX, from /branches/1.11.x)
+http://svn.apache.org/repos/asf/subversion/tags/1.11.0
+
+
Version 1.10.0
(?? ??? 2017, from /branches/1.10.x)
http://svn.apache.org/repos/asf/subversion/tags/1.10.0
@@ -9,11 +14,14 @@ the 1.9 release: https://subversion.apa
- Major new features:
* Better interactive conflict resolution for tree conflicts (r1687489 et
al)
* New and improved implementation of path-based authorization (r1776832)
+ * New experimental 'svn shelve' command (r1815228 et al)
- Minor new features and improvements:
* svnbench: Show wall-clock time when done (r1703383)
* svnbench: Show number of bytes transferred across the network (r1710586)
* svnbench: Actually evaluate the '--with-no-revprops' option (r1709593)
* New 'svnadmin dump' options to include/exclude paths (r1811992)
+ * New 'svnadmin load' options to include/exclude paths (r1811992 et al)
+ * New '--normalize-props` option for 'svnadmin dump'(r1807836 et al)
* New 'svnadmin load-revprops' subcommand (r1694191)
* New 'svnadmin dump-revprops' subcommand (r1694225)
* New '--no-flush-to-disk' option for 'svnadmin load' (r1736357, -7357)
@@ -31,6 +39,8 @@ the 1.9 release: https://subversion.apa
* diff3: Reduce processing time and memory usage (r1731659)
* ra_serf: Adjustments for serf versions with HTTP/2 support (r1716400)
* ra_serf: Send svndiff1 deltas during commit (r1704317, r1704613,
r1791290)
+ * ra_serf: Stream svndiff deltas w/o creating temporary files (r1803143 et
al)
+ * ra_serf: Don't necessarily request full MERGE reponses (r1806017 et al)
* 'svn patch': Parse binary diffs in git-style patches (r1703925)
* 'svnadmin info' now reports latest revision in the repository (r1697953)
* ra_svn: Various performance-related tweaks (r1694490)
@@ -58,6 +68,7 @@ the 1.9 release: https://subversion.apa
* FSFS: Warn if a possible rep-cache SHA1 collision is detected (r1674673)
* FSFS: Optimize revprop cache filling strategy under high load (r1795324)
* FSFS: New "verify-before-commit" fsfs.conf option (r1795351)
+ * FSFS: New format 8 with various performance improvements (r1801940 et al)
* FSFS/FSX: Chunked read support for changed paths lists (r1746026, -4987)
* FSFS/FSX: Several improvements made to cache implementation (r1694489)
* FSX: Add checksums to packed revprop manifests and files (r1713132,
-9717)
@@ -73,26 +84,34 @@ the 1.9 release: https://subversion.apa
* svnsync: Fix assertion failure with up-to-date repositories (r1727140)
* ra_serf: Parallel requests for text and property changes (r1716575)
* svnserve: Remove disk I/O to TMPDIR during first commit (r1716240)
- * 'svn blame': Optimize a bit on the server side (r1711666)
* Triple performance of URI escaping (r1710099, -103)
+ * 'svn blame': Optimize a bit on the server side (r1711666)
+ * 'svn cleanup': Add --vacuum-pristines option (r1802787 et al)
* 'svn diff --git': Show diffs of symlinks like git and hg (r1706372)
* 'svn patch': Capable of handling git-like symlink changes (r1706446)
* 'svn patch': Improve detection of additions and deletions (r1706623)
+ * 'svn patch': Handle zero-byte files vs deleted files (r1705856)
* 'svn diff --git': Produce 'rename from/to' headers (r1706855)
* 'svn diff --git': Produce proper mode headers (r1706041)
- * 'svn patch': Handle zero-byte files vs deleted files (r1705856)
+ * 'svn lock', 'svn unlock': Take the -q option (r1796288)
+ * 'svn help': improved wording and consistency (r1802989 et al)
+ * 'svn': Add a new '--accept recommended' option. (r1805623)
+ * 'svn': --non-interactive uses recommended tree conflict resolution
(r1805620)
* Evaluate 'old mode' and 'new mode' lines from git-syle diffs (r1705391)
* svnrdump, svndumpfilter: Enable buffered stdin (r1703074)
* ra_serf: Receive svndiff1 and gzip compressed deltas (r1781282, -3, -4)
- * 'svn lock', 'svn unlock': Take the -q option (r1796288)
* svnadmin: 'lock', 'unlock', 'rmlocks': Take the -q option (r1796406)
* New svndiff2 binary delta format using lz4 compression (r1801938, et al)
* gpg-agent: Support gpg â¥2.1.13 and unset GPG_AGENT_INFO (r1795087)
+ * Add 'http-compression=auto' client config option as default (r1803899 et
al)
+ * Speed up processing of mergeinfo (r1802470 et al)
+ * Check for invalid 'xt' fields in x509 certs (r1809290)
- Client-side bugfixes:
* ra_serf: Fix segfault when running over HTTP v1 (r1766089)
* ra_serf: Keep small svndiffs in memory during commit (r1724455)
* ra_serf: Improve error messages related to lock operations (r1716450)
* ra_serf: Work around a bug in serf bucket handling (r1714806)
+ * ra_serf: Fix lock token handling for file-path commits (r1815799 et al)
* Raise a malfunction instead of segfaulting with corrupt wc.db (r1749887)
* Fix check for unversioned obstructions blocking file externals (r1735932)
* 'svn patch' bugfixes:
@@ -119,6 +138,7 @@ the 1.9 release: https://subversion.apa
+ Fix problems with --git diffs applied in reverse (r1704854, -88)
+ Fix removal of EOL if final patch context line has no EOL (#4315)
* 'svn diff --git': Fix file permission modes to match git and hg
(r1695384)
+ * 'svn diff --git': added/deleted filenames are never /dev/null (issue
#4689)
* Fix a problem with relocating some externals (r1723385)
* Fix 'svn diff URL@REV WC' wrongly looks up URL@HEAD (issue #4597)
* Fix 'svn diff --no-diff-added' shows properties as added (issue #4596)
@@ -126,6 +146,7 @@ the 1.9 release: https://subversion.apa
* Fix 'svn diff' with local directories marked incomplete (r1674413 et al)
* ra_svn/ra_serf: Make negative log limits work as documented (r1665530)
* ra_svn: Eliminate unnecessary URL reparenting (r1779611, r1779611)
+ * ra_svn: Use svndiff2 deltas when supported on both ends (r1803269 et al)
* Handle invalid revision numbers consistently across RA layers (r1665328)
* Handle commits to revs > HEAD consistently across RA layers (r1664698)
* Eliminate one client/server roundtrip from checkouts of HEAD (r1779620)
@@ -148,6 +169,7 @@ the 1.9 release: https://subversion.apa
* FSFS: Fix false positive "Not a directory" error involving file moved and
replaced by dir (issue #4677)
* FSFS: Fix crash accessing revprops with --memory-cache-size=0 (r1795164)
+ * FSFS: Fix issue #4623 for FSFS. (r1813794 et al)
* mod_dav_svn: Omit Cache-Control HTTP header for HEAD URLs (issue #4514)
* mod_dav_svn: Reduced memory consumption for DAV merge responses
(r1727790)
* mod_dav_svn: Don't set a Last-Modified header in GET responses (r1724790)
@@ -156,13 +178,16 @@ the 1.9 release: https://subversion.apa
* Fix insertion of very large items into the membuffer cache (r1717337, -8)
* Fix capacity check of the membuffer cache's prefix pool (r1714356)
* Prevent paths containing newlines from being committed (r1662585)
+ * Fix for properties: Null updates break last-changed-revision (issue
#4700)
* 'svnfsfs stats': Fix false positive checksum errors reading old revisions
(r1785904)
+ * 'svnfsfs stats': Fix support for pre-v4 FSFS repositories. (r1816966)
* svnadmin, svnfsfs: Detect invalid arguments to -M (r1787023, r1787045)
* svnlook, svnserve: Detect invalid arguments to -M (r1787023, r1787045)
* svnadmin: Output locked paths in canonical form (r1796420)
* svnadmin: Output locked paths correctly encoded (r1797122)
* svn: propdel, propset: Transcode property names on output (r1797186)
+ * svnserve: Make use-sasl=true a fatal error in SASL-less builds.
(r1803188)
- Client-side and server-side bugfixes:
* Fix integer overflow check with >= 1G mergeinfo ranges per path
(r1714380)
* Fix integer overflow checks on WoW64 platforms (r1714372)
@@ -172,7 +197,9 @@ the 1.9 release: https://subversion.apa
* FSFS: Improve error messages when DAG lookup fails (r1795120)
* Transcode command-line arguments to UTF-8 (r1797190, r1797362, et al)
* Fix segfault on x509 certificate with empty name (r1798157)
- - Other tool improvements and bugfixes:
+ * Fix segfault with invalid URLs in svn:externals (r1803471)
+ * Windows: Failure to write files might remain undetected (r1806014)
+- Other tool improvements and bugfixes:
* New svn-mergeinfo-normalizer tool (r1695992 et al)
* Allow configuring mailer.py to use SMTP SSL (r1777846)
* svnmucc can now delete directories with deleted children (issue #4666)
@@ -182,6 +209,8 @@ the 1.9 release: https://subversion.apa
* bash_completion: Add 1.10 options (r1802196)
* fsfs-stats: Following rename to svnfsfs in r1594860, install a wrapper
for compatibility (r1802032)
+ * Drop support for upgrading working copies created with Subversion 1.7
+ (r1807584 et al)
Developer-visible changes:
- General:
@@ -192,11 +221,16 @@ the 1.9 release: https://subversion.apa
* get-deps.sh: download Googlemock and Googletest from GitHub (r1746303)
* windows: Add autodetection for 'zlibstat.lib' (r1783704)
* windows: Compile libsvn_fs_* as DLLs (r1696758, -83)
+ * windows: Allow building against OpenSSL 1.1.0 (r1814724 et al)
* OS X: Silence compile-time deprecation warnings with SASL (r1739649)
+ * OS X: Silence ranlib warnings about disabled WIN32 code (r1809792)
* 'make check GLOBAL_SCHEDULER=1' will run many tests in parallel
(r1716399)
* unix: New '--enable-apache-whitelist' configure script option (r1732294)
* OS X: Support 'configure --enable-runtime-module-search' (r1677273)
* tests: Allow tests to be run over HTTP/2 (r1710707)
+ * tests: httpd compile-time and run-time version may differ (r1808955 et
al)
+ * tests: Add pre-cooked repos for all FSFS versions. (r1816402 et al)
+ * tests: Add FSFS_DIR_DELTIFICATION option. (r1813897)
* Add basic tests for svn_xml_parser_t API (r1765214)
* Unbreak the test suite on Python 3 (r1743034, -81, et al)
* Make the test suite work when checked out of a git repository (r1771118)
@@ -211,12 +245,19 @@ the 1.9 release: https://subversion.apa
* gnome-keyring: Support libsecret in preference to libgnome-keyring
(r1798004)
* kwallet: Support KDE 5 in preference to KDE 4 (r1798731)
+ * kwallet: Fix KDE5 support with clang 3.8 (r1802536 et al)
+ * kwallet: Add --with-kwallet=INCDIR:LIBDIR build option (r1802646)
* Rename cxxhl bindings 'make tests' to avoid confusion with 'make test'
(r1800849)
* 'make check': Allow testing with FSFS compression (r1801936)
* svnserveautocheck.sh: Support out-of-tree builds when running a single
test file (r1802081)
* Distribution artifacts now prepared with swig 3.0.10 (r1802135)
+ * SQLite: Use https:// links to download amalgamation sources (r1817043)
+ * Create reproducible tarballs (r1804618 et al)
+ * Disable static builds of the apache and auth provider modules (r1802612)
+ * utf8proc: Update to version 2.1.0 (r1809090 et al)
+ * utf8proc: Build against the system library by default (r1803210 et al)
- API changes:
* New svn_client_conflict_* API functions for the new conflict resolver.
* New svn_repos_fs_get_mergeinfo2() with streamy access (r1780810 et al)
@@ -236,7 +277,10 @@ the 1.9 release: https://subversion.apa
* New svn_error_quick_wrapf() API function (r1662668)
* New svn_repos_path_change_t type (r1802114)
* New svn_repos_log_entry_t type (r1802114)
+ * New svn_cstring_join2() API (r1806041)
+ * New svn_txdelta_to_svndiff_stream() API (r1803140 et al)
* svn_repos_parse_dumpstream3() now accepts NULL pointers (r1700180)
+ * Return resettable streams from svn_stream_checksummed2(). (r1804807)
* Fix svnserveautocheck&davautocheck when time is only a built-in
(r1665652)
- Bindings:
* Configure the swig bindings only if swig has been enabled (r1751167)
@@ -249,6 +293,8 @@ the 1.9 release: https://subversion.apa
* Disable some swig wrappers that aren't working (r1700966)
* JavaHL: Make StringArray nullable (r1785429)
* JavaHL: Add missing exception checks (r1801108)
+ * Ruby: Fix handling of NULL MD5 digests (r1811786)
+ * Ruby: Detect versions up to 2.4 (r1806570)
Version 1.9.7
Modified: subversion/branches/better-pristines/COMMITTERS
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/COMMITTERS?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/COMMITTERS [UTF-8] (original)
+++ subversion/branches/better-pristines/COMMITTERS [UTF-8] Tue Jan 2 19:52:28
2018
@@ -47,7 +47,7 @@ Blanket commit access:
kou Kouhei Sutou <[email protected]>
danielsh Daniel Shahaf <[email protected]>
peters Peter Samuelson <[email protected]>
- rhuijben Bert Huijben <[email protected]>
+ rhuijben Bert Huijben <[email protected]>
stylesen Senthil Kumaran S <[email protected]>
steveking Stefan Küng <[email protected]>
neels Neels J. Hofmeyr <[email protected]>
@@ -103,6 +103,7 @@ Commit access for specific areas:
rschupp Roderich Schupp <[email protected]> (Swig bindings)
stilor Alexey Neyman <[email protected]> (Python bindings,
svn-vendor.py)
+ troycurtisjr Troy Curtis, Jr <[email protected]> (Swig bindings)
Packages:
@@ -168,6 +169,7 @@ Commit access for specific areas:
prabhugs Prabhu Gnana Sundar <[email protected]>
(verify-keep-going)
schabi Markus Schaber <[email protected]> (testsuite)
gbg Gabriela Gibson <[email protected]> (gtest)
+ lyalyakin Pavel Lyalyakin <[email protected]> (site)
Translation of message files:
Modified: subversion/branches/better-pristines/INSTALL
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/INSTALL?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/INSTALL (original)
+++ subversion/branches/better-pristines/INSTALL Tue Jan 2 19:52:28 2018
@@ -430,7 +430,7 @@ I. INTRODUCTION
12. SQLite (REQUIRED)
- Subversion requires SQLite version 3.7.12 or above. You can meet this
+ Subversion requires SQLite version 3.8.2 or above. You can meet this
dependency several ways:
* Use an SQLite amalgamation file.
* Specify an SQLite installation to use.
@@ -527,6 +527,19 @@ I. INTRODUCTION
$ ./get-dep.sh gmock
+ 22. LZ4 (OPTIONAL)
+
+ Subversion uses LZ4 compression libary version r129 or above. Configure
+ will attempt to locate the system library by default using pkg-config
+ and known paths.
+
+ If it is installed in a non-standard location, then use:
+
+ --with-lz4=/path/to/liblz4
+
+ If configure should use the version bundled with the sources, use:
+ --with-lz4=internal
+
D. Documentation
The primary documentation for Subversion is the free book
@@ -727,8 +740,8 @@ II. INSTALLATION
1.3 or later (1.2 for apr-iconv). If you are building from a Subversion
checkout and have not downloaded Apache 2, then get these 3 libraries
from https://www.apache.org/dist/apr/.
- * SQLite 3.7.12 or higher from https://www.sqlite.org/download.html
- (3.8.0 or higher recommended)
+ * SQLite 3.8.2 or higher from https://www.sqlite.org/download.html
+ (3.8.11.1 or higher recommended)
* ZLib 1.2 or higher is required and can be obtained from
http://www.zlib.net/
* Either a Subversion client binary from
Modified: subversion/branches/better-pristines/Makefile.in
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/Makefile.in?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/Makefile.in (original)
+++ subversion/branches/better-pristines/Makefile.in Tue Jan 2 19:52:28 2018
@@ -190,7 +190,10 @@ CXXMAINTAINERFLAGS = @CXXMAINTAINERFLAGS
CPPFLAGS = @CPPFLAGS@ $(EXTRA_CPPFLAGS)
LDFLAGS = @LDFLAGS@ $(EXTRA_LDFLAGS)
SWIG_LDFLAGS = @SWIG_LDFLAGS@ $(EXTRA_SWIG_LDFLAGS)
-SWIG_CPPFLAGS = @SWIG_CPPFLAGS@ $(EXTRA_CPPFLAGS)
+SWIG_FEATURES = @SWIG_FEATURES@
+SWIG_PY_FEATURES = @SWIG_PY_FEATURES@
+SWIG_PL_FEATURES = @SWIG_PL_FEATURES@
+SWIG_RB_FEATURES = @SWIG_RB_FEATURES@
COMPILE = $(CC) $(CMODEFLAGS) $(CPPFLAGS) $(CMAINTAINERFLAGS) $(CFLAGS)
$(INCLUDES)
COMPILE_NOWARN = $(CC) $(CMODEFLAGS) $(CPPFLAGS) $(CNOWARNFLAGS) $(CFLAGS)
$(INCLUDES)
@@ -595,6 +598,9 @@ check: bin @TRANSFORM_LIBTOOL_SCRIPTS@ $
if test "$(FSFS_COMPRESSION)" != ""; then \
flags="--fsfs-compression $(FSFS_COMPRESSION) $$flags"; \
fi; \
+ if test "$(FSFS_DIR_DELTIFICATION)" != ""; then \
+ flags="--fsfs-dir-deltification $(FSFS_DIR_DELTIFICATION) $$flags";\
+ fi; \
LD_LIBRARY_PATH='$(auth_plugin_dirs):$(LD_LIBRARY_PATH)' \
$(PYTHON) $(top_srcdir)/build/run_tests.py \
--config-file $(top_srcdir)/subversion/tests/tests.conf \
Modified: subversion/branches/better-pristines/NOTICE
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/NOTICE?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/NOTICE (original)
+++ subversion/branches/better-pristines/NOTICE Tue Jan 2 19:52:28 2018
@@ -1,5 +1,5 @@
Apache Subversion
-Copyright 2017 The Apache Software Foundation
+Copyright 2018 The Apache Software Foundation
This product includes software developed by many people, and distributed
under Contributor License Agreements to The Apache Software Foundation
Modified: subversion/branches/better-pristines/build.conf
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/build.conf?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/build.conf (original)
+++ subversion/branches/better-pristines/build.conf Tue Jan 2 19:52:28 2018
@@ -98,9 +98,9 @@ test-scripts =
bdb-test-scripts =
-swig-python-opts = $(SWIG_CPPFLAGS) -python -classic
-swig-perl-opts = $(SWIG_CPPFLAGS) -perl -nopm -noproxy
-swig-ruby-opts = $(SWIG_CPPFLAGS) -ruby
+swig-python-opts = $(SWIG_FEATURES) -python $(SWIG_PY_FEATURES) -classic
+swig-perl-opts = $(SWIG_FEATURES) -perl $(SWIG_PL_FEATURES) -nopm -noproxy
+swig-ruby-opts = $(SWIG_FEATURES) -ruby $(SWIG_RB_FEATURES)
swig-languages = python perl ruby
swig-dirs =
subversion/bindings/swig/python
@@ -1471,8 +1471,7 @@ external-lib = $(SVN_SASL_LIBS)
[openssl]
type = lib
-external-lib = $(SVN_OPENSSL_LIBS)
-msvc-libs = ssleay32.lib libeay32.lib
+external-lib = $(SVN_OPENSSL_LIBS) $(SVN_LIBCRYPTO_LIBS)
[intl]
type = lib
Modified: subversion/branches/better-pristines/build/ac-macros/lz4.m4
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/ac-macros/lz4.m4?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/build/ac-macros/lz4.m4 (original)
+++ subversion/branches/better-pristines/build/ac-macros/lz4.m4 Tue Jan 2
19:52:28 2018
@@ -28,7 +28,15 @@ AC_DEFUN(SVN_LZ4,
AC_ARG_WITH([lz4],
[AS_HELP_STRING([--with-lz4=PREFIX|internal],
[look for lz4 in PREFIX or use the internal code])],
- [lz4_prefix="$withval"],
+ [
+ if test "$withval" = internal; then
+ lz4_prefix=internal
+ elif test "$withval" = yes; then
+ lz4_prefix=std
+ else
+ lz4_prefix="$withval"
+ fi
+ ],
[lz4_prefix=std])
if test "$lz4_prefix" = "internal"; then
@@ -42,28 +50,36 @@ AC_DEFUN(SVN_LZ4,
SVN_LZ4_PREFIX
fi
if test "$lz4_found" != "yes"; then
- AC_MSG_ERROR([Subversion requires LZ4])
+ AC_MSG_ERROR([Subversion requires LZ4 >= r129, or use
--with-lz4=internal])
fi
fi
AC_SUBST(SVN_LZ4_INCLUDES)
AC_SUBST(SVN_LZ4_LIBS)
])
+dnl LZ4 changed versioning schemes after r131, the next version being 1.7.3, so
+dnl we need to check for both schemes. We can't use "--atleast-version=1.7.3"
+dnl because that will result in a >= 1 check for the older versioning scheme.
+dnl Instead, fallback to --max-version=3 if the old scheme fails. This gives a
+dnl little room for major version changes, but won't falsely identify old
+dnl versions as supported.
AC_DEFUN(SVN_LZ4_STD,
[
if test -n "$PKG_CONFIG"; then
AC_MSG_CHECKING([for lz4 library via pkg-config])
- if $PKG_CONFIG liblz4 --exists; then
+ if $PKG_CONFIG liblz4 --atleast-version=129 || $PKG_CONFIG liblz4
--max-version=3; then
AC_MSG_RESULT([yes])
lz4_found=yes
SVN_LZ4_INCLUDES=`$PKG_CONFIG liblz4 --cflags`
SVN_LZ4_LIBS=`$PKG_CONFIG liblz4 --libs`
SVN_LZ4_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS($SVN_LZ4_LIBS)`"
+ else
+ AC_MSG_RESULT([no])
fi
- else
+ fi
+ if test "$lz4_found" != "yes"; then
AC_MSG_NOTICE([lz4 configuration without pkg-config])
- AC_CHECK_LIB(lz4, LZ4_decompress_safe, [
- AC_MSG_RESULT([yes])
+ AC_CHECK_LIB(lz4, LZ4_compress_default, [
lz4_found=yes
SVN_LZ4_LIBS="-llz4"
])
@@ -77,8 +93,7 @@ AC_DEFUN(SVN_LZ4_PREFIX,
CPPFLAGS="$CPPFLAGS -I$lz4_prefix/include"
save_ldflags="$LDFLAGS"
LDFLAGS="$LDFLAGS -L$lz4_prefix/lib"
- AC_CHECK_LIB(lz4, LZ4_decompress_safe, [
- AC_MSG_RESULT([yes])
+ AC_CHECK_LIB(lz4, LZ4_compress_default, [
lz4_found=yes
SVN_LZ4_INCLUDES="-I$lz4_prefix/include"
SVN_LZ4_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS(-L$lz4_prefix/lib)` -llz4"
Modified: subversion/branches/better-pristines/build/ac-macros/utf8proc.m4
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/ac-macros/utf8proc.m4?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/build/ac-macros/utf8proc.m4 (original)
+++ subversion/branches/better-pristines/build/ac-macros/utf8proc.m4 Tue Jan 2
19:52:28 2018
@@ -28,7 +28,15 @@ AC_DEFUN(SVN_UTF8PROC,
AC_ARG_WITH([utf8proc],
[AS_HELP_STRING([--with-utf8proc=PREFIX|internal],
[look for utf8proc in PREFIX or use the internal code])],
- [utf8proc_prefix="$withval"],
+ [
+ if test "$withval" = internal; then
+ utf8proc_prefix=internal
+ elif test "$withval" = yes; then
+ utf8proc_prefix=std
+ else
+ utf8proc_prefix="$withval"
+ fi
+ ],
[utf8proc_prefix=std])
if test "$utf8proc_prefix" = "internal"; then
@@ -53,7 +61,6 @@ AC_DEFUN(SVN_UTF8PROC_STD,
[
AC_MSG_NOTICE([utf8proc configuration without pkg-config])
AC_CHECK_LIB(utf8proc, utf8proc_version, [
- AC_MSG_RESULT([yes])
utf8proc_found=yes
SVN_UTF8PROC_LIBS="-lutf8proc"
])
@@ -67,7 +74,6 @@ AC_DEFUN(SVN_UTF8PROC_PREFIX,
save_ldflags="$LDFLAGS"
LDFLAGS="$LDFLAGS -L$utf8proc_prefix/lib"
AC_CHECK_LIB(utf8proc, utf8proc_version, [
- AC_MSG_RESULT([yes])
utf8proc_found=yes
SVN_UTF8PROC_INCLUDES="-I$utf8proc_prefix/include"
SVN_UTF8PROC_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS(-L$utf8proc_prefix/lib)`
-lutf8proc"
Modified: subversion/branches/better-pristines/build/generator/gen_base.py
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/generator/gen_base.py?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/build/generator/gen_base.py (original)
+++ subversion/branches/better-pristines/build/generator/gen_base.py Tue Jan 2
19:52:28 2018
@@ -331,7 +331,8 @@ class GeneratorBase:
'\n'.join(lines))
def errno_filter(self, codes):
- return codes
+ # list() to force the generator under python3
+ return list(codes)
class FileSectionOptionEnum(object):
# These are accessed via getattr() later on
Modified:
subversion/branches/better-pristines/build/generator/gen_win_dependencies.py
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/generator/gen_win_dependencies.py?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/build/generator/gen_win_dependencies.py
(original)
+++
subversion/branches/better-pristines/build/generator/gen_win_dependencies.py
Tue Jan 2 19:52:28 2018
@@ -878,16 +878,26 @@ class GenDependenciesBase(gen_base.Gener
int(vermatch.group(4)))
openssl_version = vermatch.group(1)
+ libcrypto = 'libcrypto'
+ libssl = 'libssl'
+ versuffix = '-%d_%d' % version[0:2]
+ if version < (1, 1, 0):
+ libcrypto = 'libeay32'
+ libssl = 'ssleay32'
+ versuffix = ''
+
self._libraries['openssl'] = SVNCommonLibrary('openssl', inc_dir, lib_dir,
- 'ssleay32.lib',
+ '%s.lib' % (libssl,),
openssl_version,
- dll_name='ssleay32.dll',
+ dll_name='%s%s.dll' %
+ (libssl, versuffix),
dll_dir=bin_dir)
- self._libraries['libeay32'] = SVNCommonLibrary('openssl', inc_dir, lib_dir,
- 'libeay32.lib',
+ self._libraries['libcrypto'] = SVNCommonLibrary('openssl', inc_dir,
lib_dir,
+ '%s.lib' % (libcrypto,),
openssl_version,
- dll_name='libeay32.dll',
+ dll_name='%s%s.dll' %
+ (libcrypto, versuffix),
dll_dir=bin_dir)
def _find_perl(self, show_warnings):
@@ -1373,7 +1383,7 @@ class GenDependenciesBase(gen_base.Gener
def _find_sqlite(self, show_warnings):
"Find the Sqlite library and version"
- minimal_sqlite_version = (3, 7, 12)
+ minimal_sqlite_version = (3, 8, 2)
# For SQLite we support 3 scenarios:
# - Installed in standard directory layout
Modified: subversion/branches/better-pristines/build/generator/swig/__init__.py
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/generator/swig/__init__.py?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/build/generator/swig/__init__.py
(original)
+++ subversion/branches/better-pristines/build/generator/swig/__init__.py Tue
Jan 2 19:52:28 2018
@@ -25,7 +25,7 @@
import os
import re
import shutil
-import generator.util.executable as _exec
+import subprocess
from generator.gen_base import _collect_paths
try:
# Python >=3.0
@@ -59,14 +59,19 @@ class Generator:
# Calculate SWIG paths
self.swig_path = swig_path
- self.swig_libdir = _exec.output([self.swig_path, "-swiglib"], strip=1)
+ if os.access(self.swig_path, os.X_OK):
+ # ### TODO: What's the reason for this os.access() check? It was added
+ # ### in r873265 (== r33191).
+ self.swig_libdir = subprocess.check_output([self.swig_path,
"-swiglib"]).strip()
+ else:
+ self.swig_libdir = None
_swigVersion = None
def version(self):
"""Get the version number of SWIG"""
if not self._swigVersion:
- swig_version = _exec.output([self.swig_path, "-version"])
+ swig_version = subprocess.check_output([self.swig_path, "-version"])
m = re.search("Version (\d+).(\d+).(\d+)", swig_version)
if m:
self._swigVersion = tuple(map(int, m.groups()))
Modified:
subversion/branches/better-pristines/build/generator/swig/checkout_swig_header.py
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/generator/swig/checkout_swig_header.py?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/build/generator/swig/checkout_swig_header.py
(original)
+++
subversion/branches/better-pristines/build/generator/swig/checkout_swig_header.py
Tue Jan 2 19:52:28 2018
@@ -23,13 +23,12 @@
# Checkout files from the SWIG library into Subversion's proxy directory
#
-import sys, os, re, fileinput, shutil
+import sys, os, re, fileinput, shutil, subprocess
if __name__ == "__main__":
parent_dir = os.path.dirname(os.path.abspath(os.path.dirname(sys.argv[0])))
sys.path[0:0] = [ parent_dir, os.path.dirname(parent_dir) ]
import generator.swig
from gen_base import build_path_splitfile, build_path_join
-from generator.util.executable import run
class Generator(generator.swig.Generator):
@@ -63,7 +62,7 @@ class Generator(generator.swig.Generator
elif self.version() == (1, 3, 24):
shutil.copy(build_path_join(self.swig_libdir, path), out)
else:
- run("%s -o %s -co %s" % (self.swig_path, out, path))
+ subprocess.check_call([self.swig_path, "-o", out, "-co", path])
def _skip_checkout(self, path):
"""Should we skip this checkout?"""
Modified:
subversion/branches/better-pristines/build/generator/swig/external_runtime.py
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/generator/swig/external_runtime.py?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/build/generator/swig/external_runtime.py
(original)
+++
subversion/branches/better-pristines/build/generator/swig/external_runtime.py
Tue Jan 2 19:52:28 2018
@@ -29,13 +29,12 @@ import os
import re
import fileinput
import filecmp
+import subprocess
if __name__ == "__main__":
parent_dir = os.path.dirname(os.path.abspath(os.path.dirname(sys.argv[0])))
sys.path[0:0] = [ parent_dir, os.path.dirname(parent_dir) ]
import generator.swig
-import generator.util.executable
-_exec = generator.util.executable
class Generator(generator.swig.Generator):
"""Generate external runtime files for SWIG"""
@@ -82,7 +81,7 @@ class Generator(generator.swig.Generator
out_file.write(open("%s/runtime.swg" % self.proxy_dir).read())
out_file.close()
else:
- _exec.run("%s -%s -external-runtime %s" % (self.swig_path, lang, out))
+ subprocess.check_call([self.swig_path, "-"+lang, "-external-runtime",
out])
# SWIG 1.3.24-27 should include rubyhead.swg in their
# external runtime, but they don't.
Modified: subversion/branches/better-pristines/build/run_tests.py
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/run_tests.py?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/build/run_tests.py (original)
+++ subversion/branches/better-pristines/build/run_tests.py Tue Jan 2 19:52:28
2018
@@ -33,7 +33,7 @@
[--httpd-version=<version>] [--httpd-whitelist=<version>]
[--config-file=<file>] [--ssl-cert=<file>]
[--exclusive-wc-locks] [--memcached-server=<url:port>]
- [--fsfs-compression=<type>]
+ [--fsfs-compression=<type>] [--fsfs-dir-deltification=<true|false>]
<abs_srcdir> <abs_builddir>
<prog ...>
@@ -278,6 +278,8 @@ class TestHarness:
cmdline.append('--memcached-server=%s' % self.opts.memcached_server)
if self.opts.fsfs_compression is not None:
cmdline.append('--fsfs-compression=%s' % self.opts.fsfs_compression)
+ if self.opts.fsfs_dir_deltification is not None:
+ cmdline.append('--fsfs-dir-deltification=%s' %
self.opts.fsfs_dir_deltification)
self.py_test_cmdline = cmdline
@@ -424,7 +426,7 @@ class TestHarness:
os.write(sys.stdout.fileno(), b'.' * job.test_count())
- def _run_global_sheduler(self, testlist, has_py_tests):
+ def _run_global_scheduler(self, testlist, has_py_tests):
# Collect all tests to execute (separate jobs for each test in python
# test cases, one job for each c test case). Do that concurrently to
# mask latency. This takes .5s instead of about 3s.
@@ -576,7 +578,7 @@ class TestHarness:
if self.opts.global_scheduler is None:
failed = self._run_local_schedulers(testlist)
else:
- failed = self._run_global_sheduler(testlist, len(py_tests) > 0)
+ failed = self._run_global_scheduler(testlist, len(py_tests) > 0)
# Open the log again to for filtering.
if self.logfile:
@@ -1028,6 +1030,8 @@ def create_parser():
help='Use memcached server at specified URL (FSFS only)')
parser.add_option('--fsfs-compression', action='store', type='str',
help='Set compression type (for fsfs)')
+ parser.add_option('--fsfs-dir-deltification', action='store', type='str',
+ help='Set directory deltification option (for fsfs)')
parser.set_defaults(set_log_level=None)
return parser
@@ -1036,7 +1040,9 @@ def main():
(opts, args) = create_parser().parse_args(sys.argv[1:])
if len(args) < 3:
- print(__doc__)
+ print("{}: at least three positional arguments required; got {!r}".format(
+ os.path.basename(sys.argv[0]), args
+ ))
sys.exit(2)
if opts.log_to_stdout:
Modified: subversion/branches/better-pristines/configure.ac
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/configure.ac?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/configure.ac (original)
+++ subversion/branches/better-pristines/configure.ac Tue Jan 2 19:52:28 2018
@@ -152,9 +152,11 @@ SVN_FIND_APACHE(20051115, $apache_whitel
dnl Search for SQLite. If you change SQLITE_URL from a .zip to
dnl something else also update build/ac-macros/sqlite.m4 to reflect
dnl the correct command to unpack the downloaded file.
-SQLITE_MINIMUM_VER="3.7.12"
-SQLITE_RECOMMENDED_VER="3.7.15.1"
-SQLITE_URL="http://www.sqlite.org/sqlite-amalgamation-$(printf %d%02d%02d%02d
$(echo ${SQLITE_RECOMMENDED_VER} | sed -e 's/\./ /g')).zip"
+SQLITE_MINIMUM_VER="3.8.2"
+SQLITE_RECOMMENDED_VER="3.8.11.1"
+dnl Used to construct the SQLite download URL.
+SQLITE_RECOMMENDED_VER_REL_YEAR="2015"
+SQLITE_URL="https://www.sqlite.org/$SQLITE_RECOMMENDED_VER_REL_YEAR/sqlite-amalgamation-$(printf
%d%02d%02d%02d $(echo ${SQLITE_RECOMMENDED_VER} | sed -e 's/\./ /g')).zip"
SVN_LIB_SQLITE(${SQLITE_MINIMUM_VER}, ${SQLITE_RECOMMENDED_VER},
${SQLITE_URL})
@@ -1358,6 +1360,10 @@ if test "$RUBY" != "none"; then
fi
SVN_CHECK_SWIG
+AC_ARG_VAR(SWIG_FEATURES, [SWIG feature flags common to all bindings])
+AC_ARG_VAR(SWIG_RB_FEATURES, [SWIG feature flags specific to Ruby bindings])
+AC_ARG_VAR(SWIG_PL_FEATURES, [SWIG feature flags specific to Perl bindings])
+AC_ARG_VAR(SWIG_PY_FEATURES, [SWIG feature flags specific to Python bindings])
SVN_CHECK_CTYPESGEN
@@ -1534,12 +1540,6 @@ if test "$CC" = "clang"; then
SVN_STRIP_FLAG(CPPFLAGS, [-no-cpp-precomp ])
fi
-# Need to strip '-no-cpp-precomp' from CPPFLAGS for SWIG as well.
-SWIG_CPPFLAGS="$CPPFLAGS"
-SVN_STRIP_FLAG(SWIG_CPPFLAGS, [-no-cpp-precomp ])
-SVN_STRIP_FLAG(SWIG_CPPFLAGS, [-Wdate-time ])
-AC_SUBST([SWIG_CPPFLAGS])
-
dnl Since this is used only on Unix-y systems, define the path separator as '/'
AC_DEFINE_UNQUOTED(SVN_PATH_LOCAL_SEPARATOR, '/',
[Defined to be the path separator used on your local filesystem])
Modified: subversion/branches/better-pristines/get-deps.sh
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/get-deps.sh?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/get-deps.sh (original)
+++ subversion/branches/better-pristines/get-deps.sh Tue Jan 2 19:52:28 2018
@@ -35,7 +35,9 @@ APR_VERSION=${APR_VERSION:-"1.4.6"}
APU_VERSION=${APU_VERSION:-"1.5.1"}
SERF_VERSION=${SERF_VERSION:-"1.3.8"}
ZLIB_VERSION=${ZLIB_VERSION:-"1.2.8"}
-SQLITE_VERSION=${SQLITE_VERSION:-"3.7.15.1"}
+SQLITE_VERSION=${SQLITE_VERSION:-"3.8.11.1"}
+# Used to construct the SQLite download URL.
+SQLITE_VERSION_REL_YEAR=2015
GTEST_VERSION=${GMOCK_VERSION:-"1.7.0"}
GMOCK_VERSION=${GMOCK_VERSION:-"1.7.0"}
HTTPD_VERSION=${HTTPD_VERSION:-"2.4.10"}
@@ -116,7 +118,7 @@ get_sqlite() {
test -d $BASEDIR/sqlite-amalgamation && return
cd $TEMPDIR
- $HTTP_FETCH http://www.sqlite.org/$SQLITE.zip
+ $HTTP_FETCH https://www.sqlite.org/$SQLITE_VERSION_REL_YEAR/$SQLITE.zip
cd $BASEDIR
unzip -q $TEMPDIR/$SQLITE.zip
Modified:
subversion/branches/better-pristines/notes/commit-access-templates/partial-committer.tmpl
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/commit-access-templates/partial-committer.tmpl?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/notes/commit-access-templates/partial-committer.tmpl
(original)
+++
subversion/branches/better-pristines/notes/commit-access-templates/partial-committer.tmpl
Tue Jan 2 19:52:28 2018
@@ -15,18 +15,20 @@ Hi New Partial Committer,
The other committers and I would like to offer you partial commit
access for maintenance of the Subversion FROBLINGS area.
-If you already have partial commit access to another area, you can
+#ifdef THE_INVITEE_ALREADY_HAS_PARTIAL_COMMIT_ACCESS_TO_ANOTHER_AREA
+Since you already have partial commit access to another area, you can
accept this offer by simply replying to this mail. We'll update the
COMMITTERS file (or you can do it yourself, that's fine too).
-If you do not already have partial commit access, you can accept this
-offer by replying to this mail and following the instructions at
-<http://www.apache.org/dev/new-committers-guide.html#cla>. You will
-receive an email with details on how to access your account. Once you
-have access to your account, you are encouraged to modify the COMMITTERS
-file appropriately, which also serves as a test of your new username and
-password.
+#else
+You can accept this offer by replying to this mail and following the
+instructions at <http://www.apache.org/dev/new-committers-guide.html#cla>.
+You will receive an email with details on how to access your account.
+Once you have access to your account, you are encouraged to modify the
+COMMITTERS file appropriately, which also serves as a test of your new
+username and password.
+#endif
Remember that you can still post patches for review before committing,
when you want to. Commit access just means that you can rely on your
own judgment to decide when something is ready for commit. Also, if
Modified:
subversion/branches/better-pristines/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeResources.java
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeResources.java?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeResources.java
(original)
+++
subversion/branches/better-pristines/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeResources.java
Tue Jan 2 19:52:28 2018
@@ -141,12 +141,15 @@ public class NativeResources
*/
private static final void init()
{
+ final int SVN_VER_MAJOR = 1;
+ final int SVN_VER_MINOR = 11;
initNativeLibrary();
version = new Version();
- if (!version.isAtLeast(1, 10, 0))
+ if (!version.isAtLeast(SVN_VER_MAJOR, SVN_VER_MINOR, 0))
{
throw new LinkageError("Native library version must be at least " +
- "1.10.0, but is only " + version);
+ SVN_VER_MAJOR + "." + SVN_VER_MINOR + ".0,"
+
+ "but is only " + version);
}
runtimeVersion = new RuntimeVersion();
Modified:
subversion/branches/better-pristines/subversion/bindings/swig/perl/native/t/3client.t
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/bindings/swig/perl/native/t/3client.t?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/subversion/bindings/swig/perl/native/t/3client.t
(original)
+++
subversion/branches/better-pristines/subversion/bindings/swig/perl/native/t/3client.t
Tue Jan 2 19:52:28 2018
@@ -1091,8 +1091,8 @@ isa_ok($dirents->{'dir1'},'_p_svn_dirent
is($dirents->{'dir1'}->kind(),$SVN::Core::node_dir,
'kind() returns a dir node');
# TEST
-is($dirents->{'dir1'}->size(),0,
- 'size() returns 0 for a directory');
+is($dirents->{'dir1'}->size(), -1,
+ 'size() returns -1 for a directory');
# TEST
is($dirents->{'dir1'}->has_props(),1,
'has_props() returns true');
Modified:
subversion/branches/better-pristines/subversion/include/private/svn_element.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/private/svn_element.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/subversion/include/private/svn_element.h
(original)
+++
subversion/branches/better-pristines/subversion/include/private/svn_element.h
Tue Jan 2 19:52:28 2018
@@ -348,7 +348,7 @@ svn_element__content_t *
svn_element__tree_get(const svn_element__tree_t *tree,
int eid);
-svn_error_t *
+void
svn_element__tree_set(svn_element__tree_t *tree,
int eid,
const svn_element__content_t *element);
Modified:
subversion/branches/better-pristines/subversion/include/private/svn_ra_svn_private.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/private/svn_ra_svn_private.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/subversion/include/private/svn_ra_svn_private.h
(original)
+++
subversion/branches/better-pristines/subversion/include/private/svn_ra_svn_private.h
Tue Jan 2 19:52:28 2018
@@ -127,6 +127,11 @@ svn_error_t *
svn_ra_svn__set_capabilities(svn_ra_svn_conn_t *conn,
const svn_ra_svn__list_t *list);
+/** Returns the preferred svndiff version to be used with connection @a conn.
+ */
+int
+svn_ra_svn__svndiff_version(svn_ra_svn_conn_t *conn);
+
/**
* Set the shim callbacks to be used by @a conn to @a shim_callbacks.
Modified:
subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h
(original)
+++
subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h
Tue Jan 2 19:52:28 2018
@@ -738,6 +738,14 @@ const char *svn_zlib__compiled_version(v
/* Return the zlib version we run against. */
const char *svn_zlib__runtime_version(void);
+/* Return the lz4 version we compiled against. */
+const char *svn_lz4__compiled_version(void);
+
+/* Return the lz4 version we run against as a composed value:
+ * major * 100 * 100 + minor * 100 + release
+ */
+int svn_lz4__runtime_version(void);
+
#ifdef __cplusplus
}
#endif /* __cplusplus */
Modified:
subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
---
subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h
(original)
+++
subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h
Tue Jan 2 19:52:28 2018
@@ -348,6 +348,20 @@ svn_wc__get_wcroot(const char **wcroot_a
apr_pool_t *result_pool,
apr_pool_t *scratch_pool);
+/** Set @a *dir to the abspath of the directory in which shelved patches
+ * are stored, which is inside the WC's administrative directory, and ensure
+ * the directory exists.
+ *
+ * @a local_abspath is any path in the WC, and is used to find the WC root.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_wc__get_shelves_dir(char **dir,
+ svn_wc_context_t *wc_ctx,
+ const char *local_abspath,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool);
+
/**
* The following are temporary APIs to aid in the transition from wc-1 to
* wc-ng. Use them for new development now, but they may be disappearing
Modified: subversion/branches/better-pristines/subversion/include/svn_client.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_client.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_client.h
(original)
+++ subversion/branches/better-pristines/subversion/include/svn_client.h Tue
Jan 2 19:52:28 2018
@@ -6767,6 +6767,212 @@ svn_client_cat(svn_stream_t *out,
+/** Shelving commands
+ *
+ * @defgroup svn_client_shelve_funcs Client Shelving Functions
+ * @{
+ */
+
+/** Shelve a change.
+ *
+ * Shelve as @a name the local modifications found by @a paths, @a depth,
+ * @a changelists. Revert the shelved change from the WC unless @a keep_local
+ * is true.
+ *
+ * If @a dry_run is true, don't actually do it.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelve(const char *name,
+ const apr_array_header_t *paths,
+ svn_depth_t depth,
+ const apr_array_header_t *changelists,
+ svn_boolean_t keep_local,
+ svn_boolean_t dry_run,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *pool);
+
+/** Unshelve the shelved change @a name.
+ *
+ * @a local_abspath is any path in the WC and is used to find the WC root.
+ * Rename the shelved patch to add a '.bak' extension unless @a keep is true.
+ *
+ * If @a dry_run is true, don't actually do it.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_unshelve(const char *name,
+ const char *local_abspath,
+ svn_boolean_t keep,
+ svn_boolean_t dry_run,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *pool);
+
+/** Delete the shelved patch @a name.
+ *
+ * @a local_abspath is any path in the WC and is used to find the WC root.
+ *
+ * If @a dry_run is true, don't actually do it.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelves_delete(const char *name,
+ const char *local_abspath,
+ svn_boolean_t dry_run,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *pool);
+
+/** Information about a shelved patch.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+typedef struct svn_client_shelved_patch_info_t
+{
+ const char *message; /* first line of log message */
+ const char *patch_path; /* abspath of the patch file */
+ svn_io_dirent2_t *dirent; /* info about the patch file */
+ apr_time_t mtime; /* a copy of dirent->mtime */
+} svn_client_shelved_patch_info_t;
+
+/** Set @a *shelved_patch_infos to a hash, keyed by patch name, of pointers to
+ * @c svn_client_shelved_patch_info_t structures.
+ *
+ * @a local_abspath is any path in the WC and is used to find the WC root.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelves_list(apr_hash_t **shelved_patch_infos,
+ const char *local_abspath,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool);
+
+/** Set @a *any_shelved to indicate if there are any shelved changes in this
WC.
+ *
+ * This shall provide the answer fast, regardless of how many changes
+ * are stored, unlike svn_client_shelves_list().
+ *
+ * ### Initial implementation isn't O(1) fast -- it just calls
+ * svn_client_shelves_list().
+ *
+ * @a local_abspath is any path in the WC and is used to find the WC root.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelves_any(svn_boolean_t *any_shelved,
+ const char *local_abspath,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *scratch_pool);
+
+/** Set @a *affected_paths to a hash with one entry for each path affected
+ * by the shelf @a name. The hash key is the old path and value is
+ * the new path, both relative to the WC root. The key and value are the
+ * same except when a path is moved or copied.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelf_get_paths(apr_hash_t **affected_paths,
+ const char *name,
+ const char *local_abspath,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool);
+
+/** Set @a *has_changes to indicate whether the shelf @a name
+ * contains any modifications, in other words if svn_client_shelf_get_paths()
+ * would return a non-empty set of paths.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelf_has_changes(svn_boolean_t *has_changes,
+ const char *name,
+ const char *local_abspath,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *scratch_pool);
+
+/** Write local changes to a patch file for shelved change @a name.
+ *
+ * @a message: An optional log message.
+ *
+ * @a wc_root_abspath: The WC root dir.
+ *
+ * @a overwrite_existing: If a file at @a patch_abspath exists, overwrite it.
+ *
+ * @a paths, @a depth, @a changelists: The selection of local paths to diff.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelf_write_patch(const char *name,
+ const char *message,
+ const char *wc_root_abspath,
+ svn_boolean_t overwrite_existing,
+ const apr_array_header_t *paths,
+ svn_depth_t depth,
+ const apr_array_header_t *changelists,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *scratch_pool);
+
+/** Apply the patch file for shelved change @a name to the WC.
+ *
+ * @a wc_root_abspath: The WC root dir.
+ *
+ * @a reverse: Apply the patch in reverse.
+ *
+ * @a dry_run: Don't really apply the changes, just notify what would be done.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelf_apply_patch(const char *name,
+ const char *wc_root_abspath,
+ svn_boolean_t reverse,
+ svn_boolean_t dry_run,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *scratch_pool);
+
+/** Delete the patch file for shelved change @a name.
+ *
+ * @a wc_root_abspath: The WC root dir.
+ *
+ * @since New in 1.10.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelf_delete_patch(const char *name,
+ const char *wc_root_abspath,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *scratch_pool);
+
+/** @} */
+
/** Changelist commands
*
* @defgroup svn_client_changelist_funcs Client Changelist Functions
Modified: subversion/branches/better-pristines/subversion/include/svn_dav.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_dav.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_dav.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_dav.h Tue Jan
2 19:52:28 2018
@@ -397,6 +397,15 @@ extern "C" {
/** Presence of this in a DAV header in an OPTIONS response indicates
* that the transmitter (in this case, the server) knows how to handle
+ * 'list' requests.
+ *
+ * @since New in 1.10.
+ */
+#define SVN_DAV_NS_DAV_SVN_LIST\
+ SVN_DAV_PROP_NS_DAV "svn/list"
+
+/** Presence of this in a DAV header in an OPTIONS response indicates
+ * that the transmitter (in this case, the server) knows how to handle
* svndiff2 format encoding.
*
* @since New in 1.10.
Modified: subversion/branches/better-pristines/subversion/include/svn_delta.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_delta.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_delta.h
(original)
+++ subversion/branches/better-pristines/subversion/include/svn_delta.h Tue Jan
2 19:52:28 2018
@@ -693,12 +693,11 @@ svn_txdelta_skip_svndiff_window(apr_file
/** A structure full of callback functions the delta source will invoke
* as it produces the delta.
*
- * @note Fields may be added to the end of this structure in future
- * versions. Therefore, users shouldn't allocate structures of this
- * type, to preserve binary compatibility.
- *
- * @note It is recommended to use svn_delta_default_editor() or some other
- * constructor, to ensure that unused slots are filled in with no-op functions.
+ * @note Don't try to allocate one of these yourself. Instead, always
+ * use svn_delta_default_editor() or some other constructor, to avoid
+ * backwards compatibility problems if the structure is extended in
+ * future releases and to ensure that unused slots are filled in with
+ * no-op functions.
*
* <h3>Function Usage</h3>
*
@@ -769,10 +768,11 @@ svn_txdelta_skip_svndiff_window(apr_file
*
* The @c add_file and @c open_file callbacks each return a baton
* for the file being created or changed. This baton can then be
- * passed to @c apply_textdelta to change the file's contents, or
- * @c change_file_prop to change the file's properties. When the
- * producer is finished making changes to a file, it should call
- * @c close_file, to let the consumer clean up and free the baton.
+ * passed to @c apply_textdelta or @c apply_textdelta_stream to change
+ * the file's contents, or @c change_file_prop to change the file's
+ * properties. When the producer is finished making changes to a
+ * file, it should call @c close_file, to let the consumer clean up
+ * and free the baton.
*
* The @c add_file and @c add_directory functions each take arguments
* @a copyfrom_path and @a copyfrom_revision. If @a copyfrom_path is
@@ -814,15 +814,16 @@ svn_txdelta_skip_svndiff_window(apr_file
* 5. When the producer calls @c open_file or @c add_file, either:
*
* (a) The producer must follow with any changes to the file
- * (@c change_file_prop and/or @c apply_textdelta, as applicable),
- * followed by a @c close_file call, before issuing any other file
- * or directory calls, or
+ * (@c change_file_prop and/or @c apply_textdelta /
+ * @c apply_textdelta_stream, as applicable), followed by
+ * a @c close_file call, before issuing any other file or
+ * directory calls, or
*
* (b) The producer must follow with a @c change_file_prop call if
* it is applicable, before issuing any other file or directory
* calls; later, after all directory batons including the root
- * have been closed, the producer must issue @c apply_textdelta
- * and @c close_file calls.
+ * have been closed, the producer must issue @c apply_textdelta /
+ * @c apply_textdelta_stream and @c close_file calls.
*
* 6. When the producer calls @c apply_textdelta, it must make all of
* the window handler calls (including the @c NULL window at the
@@ -831,7 +832,7 @@ svn_txdelta_skip_svndiff_window(apr_file
* So, the producer needs to use directory and file batons as if it
* is doing a single depth-first traversal of the tree, with the
* exception that the producer may keep file batons open in order to
- * make @c apply_textdelta calls at the end.
+ * make @c apply_textdelta / @c apply_textdelta_stream calls at the end.
*
*
* <h3>Pool Usage</h3>
@@ -855,12 +856,13 @@ svn_txdelta_skip_svndiff_window(apr_file
* Note that close_directory can be called *before* a file in that
* directory has been closed. That is, the directory's baton is
* closed before the file's baton. The implication is that
- * @c apply_textdelta and @c close_file should not refer to a parent
- * directory baton UNLESS the editor has taken precautions to
- * allocate it in a pool of the appropriate lifetime (the @a dir_pool
- * passed to @c open_directory and @c add_directory definitely does not
- * have the proper lifetime). In general, it is recommended to simply
- * avoid keeping a parent directory baton in a file baton.
+ * @c apply_textdelta / @c apply_textdelta_stream and @c close_file
+ * should not refer to a parent directory baton UNLESS the editor has
+ * taken precautions to allocate it in a pool of the appropriate
+ * lifetime (the @a dir_pool passed to @c open_directory and
+ * @c add_directory definitely does not have the proper lifetime).
+ * In general, it is recommended to simply avoid keeping a parent
+ * directory baton in a file baton.
*
*
* <h3>Errors</h3>
@@ -1008,7 +1010,8 @@ typedef struct svn_delta_editor_t
/** We are going to add a new file at @a path, a child of the
* directory represented by @a parent_baton. The callback can
* store a baton for this new file in @a **file_baton; whatever value
- * it stores there should be passed through to @c apply_textdelta.
+ * it stores there should be passed through to @c apply_textdelta or
+ * @c apply_textdelta_stream.
*
* If @a copyfrom_path is non-@c NULL, this add has history (i.e., is a
* copy), and the origin of the copy may be recorded as
@@ -1040,8 +1043,8 @@ typedef struct svn_delta_editor_t
*
* The callback can store a baton for this new file in @a **file_baton;
* whatever value it stores there should be passed through to
- * @c apply_textdelta. If a valid revnum, @a base_revision is the
- * current revision of the file.
+ * @c apply_textdelta or @c apply_textdelta_stream. If a valid revnum,
+ * @a base_revision is the current revision of the file.
*
* Allocations for the returned @a file_baton should be performed in
* @a result_pool. It is also typical to save this pool for later usage
@@ -1106,11 +1109,11 @@ typedef struct svn_delta_editor_t
* more, so whatever resources it refers to may now be freed.
*
* @a text_checksum is the hex MD5 digest for the fulltext that
- * resulted from a delta application, see @c apply_textdelta. The
- * checksum is ignored if NULL. If not null, it is compared to the
- * checksum of the new fulltext, and the error
- * SVN_ERR_CHECKSUM_MISMATCH is returned if they do not match. If
- * there is no new fulltext, @a text_checksum is ignored.
+ * resulted from a delta application, see @c apply_textdelta and
+ * @c apply_textdelta_stream. The checksum is ignored if NULL.
+ * If not null, it is compared to the checksum of the new fulltext,
+ * and the error SVN_ERR_CHECKSUM_MISMATCH is returned if they do
+ * not match. If there is no new fulltext, @a text_checksum is ignored.
*
* Any temporary allocations may be performed in @a scratch_pool.
*/
@@ -1147,6 +1150,7 @@ typedef struct svn_delta_editor_t
apr_pool_t *scratch_pool);
/** Apply a text delta stream, yielding the new revision of a file.
+ * This callback operates on the passed-in @a editor instance.
*
* @a file_baton indicates the file we're creating or updating, and the
* ancestor file on which it is based; it is the baton set by some
@@ -1166,6 +1170,8 @@ typedef struct svn_delta_editor_t
* empty string).
*
* Any temporary allocations may be performed in @a scratch_pool.
+ *
+ * @since New in 1.10.
*/
svn_error_t *(*apply_textdelta_stream)(
const struct svn_delta_editor_t *editor,
Modified: subversion/branches/better-pristines/subversion/include/svn_diff.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_diff.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_diff.h
(original)
+++ subversion/branches/better-pristines/subversion/include/svn_diff.h Tue Jan
2 19:52:28 2018
@@ -1246,6 +1246,9 @@ svn_diff_get_binary_diff_result_stream(c
/**
* Data type to manage parsing of patches.
+ *
+ * Represents a patch to one target file.
+ *
* API users should not allocate structures of this type directly.
*
* @since New in 1.7. */
@@ -1272,7 +1275,9 @@ typedef struct svn_patch_t {
svn_diff_operation_kind_t operation;
/**
- * Indicates whether the patch is being interpreted in reverse. */
+ * Indicates whether the patch is being interpreted in reverse.
+ * ### If so, how does this affect the interpretation of other fields?
+ */
svn_boolean_t reverse;
/**
Modified: subversion/branches/better-pristines/subversion/include/svn_io.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_io.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_io.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_io.h Tue Jan 2
19:52:28 2018
@@ -2633,6 +2633,15 @@ svn_io_file_readline(apr_file_t *file,
apr_pool_t *result_pool,
apr_pool_t *scratch_pool);
+/** Reads a string from stdin until a newline or EOF is found
+ *
+ * @since New in 1.10.
+ */
+svn_error_t *
+svn_io_stdin_readline(const char **result,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool);
+
/** @} */
#ifdef __cplusplus
Modified: subversion/branches/better-pristines/subversion/include/svn_types.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_types.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_types.h
(original)
+++ subversion/branches/better-pristines/subversion/include/svn_types.h Tue Jan
2 19:52:28 2018
@@ -652,7 +652,7 @@ typedef struct svn_dirent_t
/** node kind */
svn_node_kind_t kind;
- /** length of file text, or 0 for directories */
+ /** length of file text, otherwise SVN_INVALID_FILESIZE */
svn_filesize_t size;
/** does the node have props? */
Modified: subversion/branches/better-pristines/subversion/include/svn_version.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_version.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_version.h
(original)
+++ subversion/branches/better-pristines/subversion/include/svn_version.h Tue
Jan 2 19:52:28 2018
@@ -61,7 +61,7 @@ extern "C" {
* Modify when new functionality is added or new interfaces are
* defined, but all changes are backward compatible.
*/
-#define SVN_VER_MINOR 10
+#define SVN_VER_MINOR 11
/**
* Patch number.
Modified:
subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c
(original)
+++ subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c
Tue Jan 2 19:52:28 2018
@@ -5011,7 +5011,7 @@ conflict_tree_get_details_incoming_delet
conflict->tree_conflict_incoming_details = details;
- if (details->moves)
+ if (details && details->moves)
SVN_ERR(init_wc_move_targets(details, conflict, ctx, scratch_pool));
return SVN_NO_ERROR;
@@ -5711,15 +5711,12 @@ find_modified_rev(void *baton,
details->children_modified = svn_tristate_true;
}
- if (details)
- {
- if (b->node_kind == svn_node_dir &&
- details->children_modified == svn_tristate_unknown)
- details->children_modified = svn_tristate_false;
+ if (b->node_kind == svn_node_dir &&
+ details->children_modified == svn_tristate_unknown)
+ details->children_modified = svn_tristate_false;
- APR_ARRAY_PUSH(b->edits, struct conflict_tree_incoming_edit_details *) =
- details;
- }
+ APR_ARRAY_PUSH(b->edits, struct conflict_tree_incoming_edit_details *) =
+ details;
svn_pool_destroy(iterpool);
Modified: subversion/branches/better-pristines/subversion/libsvn_client/patch.c
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/libsvn_client/patch.c?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/libsvn_client/patch.c
(original)
+++ subversion/branches/better-pristines/subversion/libsvn_client/patch.c Tue
Jan 2 19:52:28 2018
@@ -2145,8 +2145,8 @@ reject_hunk(patch_target_t *target, targ
if (prop_name)
{
/* ### Print 'Added', 'Deleted' or 'Modified' instead of 'Property'. */
- svn_stream_printf(target->reject_stream,
- pool, "Property: %s" APR_EOL_STR, prop_name);
+ SVN_ERR(svn_stream_printf(target->reject_stream,
+ pool, "Property: %s" APR_EOL_STR, prop_name));
atat = prop_atat;
}
else
@@ -2511,7 +2511,8 @@ sort_matched_hunks(const void *a, const
* in RESULT_POOL. Use WC_CTX as the working copy context.
* STRIP_COUNT specifies the number of leading path components
* which should be stripped from target paths in the patch.
- * REMOVE_TEMPFILES, PATCH_FUNC, and PATCH_BATON as in svn_client_patch().
+ * REMOVE_TEMPFILES is as in svn_client_patch().
+ * TARGETS_INFO is for preserving info across calls.
* IGNORE_WHITESPACE tells whether whitespace should be considered when
* doing the matching.
* Call cancel CANCEL_FUNC with baton CANCEL_BATON to trigger cancellation.
Modified: subversion/branches/better-pristines/subversion/libsvn_delta/element.c
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/libsvn_delta/element.c?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/libsvn_delta/element.c
(original)
+++ subversion/branches/better-pristines/subversion/libsvn_delta/element.c Tue
Jan 2 19:52:28 2018
@@ -375,14 +375,12 @@ svn_element__tree_get(const svn_element_
return svn_eid__hash_get(tree->e_map, eid);
}
-svn_error_t *
+void
svn_element__tree_set(svn_element__tree_t *tree,
int eid,
const svn_element__content_t *element)
{
svn_eid__hash_set(tree->e_map, eid, element);
-
- return SVN_NO_ERROR;
}
void
Modified: subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs.h
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs.h?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs.h (original)
+++ subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs.h Tue Jan
2 19:52:28 2018
@@ -188,6 +188,18 @@ extern "C" {
/* The minimum format number that supports svndiff version 2. */
#define SVN_FS_FS__MIN_SVNDIFF2_FORMAT 8
+/* The minimum format number that supports the special notation ("-")
+ for optional values that are not present in the representation strings,
+ such as SHA1 or the uniquifier. For example:
+
+ 15 0 563 7809 28ef320a82e7bd11eebdf3502d69e608 - 14-g/_5
+ */
+#define SVN_FS_FS__MIN_REP_STRING_OPTIONAL_VALUES_FORMAT 8
+
+ /* The minimum format number that supports V2 schema of the rep-cache.db
+ database. */
+#define SVN_FS_FS__MIN_REP_CACHE_SCHEMA_V2_FORMAT 8
+
/* On most operating systems apr implements file locks per process, not
per file. On Windows apr implements the locking as per file handle
locks, so we don't have to add our own mutex for just in-process
Modified: subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs_fs.c
URL:
http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs_fs.c?rev=1819877&r1=1819876&r2=1819877&view=diff
==============================================================================
--- subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs_fs.c
(original)
+++ subversion/branches/better-pristines/subversion/libsvn_fs_fs/fs_fs.c Tue
Jan 2 19:52:28 2018
@@ -1470,7 +1470,10 @@ svn_fs_fs__min_unpacked_rev(svn_revnum_t
{
fs_fs_data_t *ffd = fs->fsap_data;
- SVN_ERR(svn_fs_fs__update_min_unpacked_rev(fs, pool));
+ /* Calling this for pre-v4 repos is illegal. */
+ if (ffd->format >= SVN_FS_FS__MIN_PACKED_FORMAT)
+ SVN_ERR(svn_fs_fs__update_min_unpacked_rev(fs, pool));
+
*min_unpacked = ffd->min_unpacked_rev;
return SVN_NO_ERROR;