Fix Windows build: Ensure that libsvn_subr exports the svn_packed__* API.

* build.conf
  (libsvn_subr): add svn_packed_data.h to msvc-exports

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1509927 13f79535-47bb-0310-9956-ffa450edef68
Add the usual header controls.  No functional change.

* subversion/include/private/svn_packed_data.h
  (): add #include blocker and extern "C" definition

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1509928 13f79535-47bb-0310-9956-ffa450edef68
Make sure FSX builds with older versions of APR as well by
including our dependency compatibility header.

* subversion/libsvn_fs_x/index.c,
  subversion/libsvn_fs_x/noderevs.c,
  subversion/libsvn_fs_x/string_table.c
  (): #include svn_dep_compat.h


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1509950 13f79535-47bb-0310-9956-ffa450edef68
Add missing include blockers and 'extern "C"' statements to FSX headers.

* subversion/libsvn_fs_x/low_level.h
  subversion/libsvn_fs_x/revprops.h
  (): add header controls

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1509952 13f79535-47bb-0310-9956-ffa450edef68
Fix compiler warnings: make FSX headers end with newlines.
No functional change.

* subversion/libsvn_fs_x/cached_data.h,
  subversion/libsvn_fs_x/changes.h,
  subversion/libsvn_fs_x/noderevs.h,
  subversion/libsvn_fs_x/reps.h,
  subversion/libsvn_fs_x/transaction.h,
  subversion/libsvn_fs_x/util.h
  (): add \n to the last line


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1509953 13f79535-47bb-0310-9956-ffa450edef68
The structure of FSX is nowhere near its completion.

So, remove everything *not* currently applying to FSX from the
'structure' file carried over from FSFS, put a disclaimer at
the top and mark the mostly empty sections as TBD.

* subversion/libsvn_fs_x/structure
  (): add disclaimer
  (Design,
   Filesystem formats,
   Revision file format): put a "TDB" in here and remove most text
  (Packing revision*): drop entirely
  (Layout of the FS directory,
   Node-revision IDs,
   Transaction layout): update to reflect the current state of FSX
  (Locks layout): s/FSFS/FSX/


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510158 13f79535-47bb-0310-9956-ffa450edef68
Fix 'make install' broken by faulty FS_X install dependency.

* configure.ac
  (SVN_LIBSVN_FS_LINKS_FS_X): remove bogus dependency;
                              add comment about the correct one

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510427 13f79535-47bb-0310-9956-ffa450edef68
Build UI fix. No function change.

* build.conf
  (fs-x-pack-test): fix typo in description

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510428 13f79535-47bb-0310-9956-ffa450edef68
Minor tweaks to spillbuf naming and docstrings. No functional change.

* subversion/libsvn_subr/spillbuf.c
  (svn_spillbuf_t::spill_all_contents): Extend docstring to make it clearer
   that as long as all data fit into memory, no spill file will be created.
  (svn_spillbuf_t::filename): Renamed from svn_spillbuf_t::temp_path.
  (svn_spillbuf__get_filename, svn_spillbuf__write): Reflect the rename.
  (svn_spillbuf__write): Do not check if we have a memory buffer; it's redundant.
   Explain why we don't just discard the in-memory buffer if all contents were
   spilled to a file.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510435 13f79535-47bb-0310-9956-ffa450edef68
Teach the JavaHL native bindings to create property maps from arrays,
not just from hashes; the RA API uses that to represent property diffs.

* subversion/bindings/javahl/native/CreateJ.h
  (CreateJ::PropertyMap, CreateJ::FillPropertyMap): Add variant overloads
   for apr_array_header_t* (i.e., arrays of svn_prop_t*).

* subversion/bindings/javahl/native/CreateJ.cpp
  (fill_property_map, property_map): New helpers with common implementation.
  (CreateJ::PropertyMap, CreateJ::FillPropertyMap): Reimplement with helpers.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510485 13f79535-47bb-0310-9956-ffa450edef68
Implement svn_ra_get_file_revs in JavaHL.

[in subversion/bindings/javahl/src/org/apache/subversion/javahl]
* ISVNRemote.java (ISVNRemote.FileRevision): New nested class.
  (ISVNRemote.getFileRevisions): New.
* remote/RemoteSession.java (ISVNRemote.getFileRevisions): Declare native.

[in subversion/bindings/javahl/native]

* RemoteSession.h (RemoteSession::getFileRevisions): New prototype.
* RemoteSession.cpp (FileRevisionHandler): New helper class.
  (RemoteSession::getFileRevisions): Implement.
* org_apache_subversion_javahl_remote_RemoteSession.cpp
  (Java_org_apache_subversion_javahl_remote_RemoteSession_getFileRevisions)
   Native wrapper for ISVNRemote.getFileRevisions.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510494 13f79535-47bb-0310-9956-ffa450edef68
Add JavaHL tests for svn_ra_get_file_revs.

* subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNRemoteTests.java
  (SVNRemoteTests.testGetFileRevisions): New test case.

* subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNRemote.java
  (ISVNRemote.FileRevision.getPropertiesDelta): Fix docstring.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510503 13f79535-47bb-0310-9956-ffa450edef68
Add callback-based variants of the svn_ra_get_location_segments and
svn_ra_get_file_revs wrappers to JavaHL.

[in subversion/bindings/javahl/src/org/apache/subversion/javahl]
* callback/RemoteFileRevisionsCallback.java,
  callback/RemoteLocationSegmentsCallback.java: New interfaces.
* ISVNRemote.java (getLocationSegments, getFileRevisions): Added new
   overloads that drive their respective callbacks.
* remote/RemoteSession.java (getLocationSegments, getFileRevisions):
   Made the new overloads native, and implement the list-based ones in
   terms of the callback-based ones.

[in subversion/bindings/javahl/native]
* org_apache_subversion_javahl_remote_RemoteSession.cpp
  (Java_org_apache_subversion_javahl_remote_RemoteSession_getLocationSegments,
   Java_org_apache_subversion_javahl_remote_RemoteSession_getFileRevisions):
   Updated signatures and implementation of JNI wrappers.
* RemoteSession.h (getLocationSegments, getFileRevisions): Update prototypes.
* RemoteSession.cpp (getLocationSegments, getFileRevisions,
   LocationSegmentHandler, FileRevisionHandler): Update implementation.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510909 13f79535-47bb-0310-9956-ffa450edef68
Fix thinko bug in JavaHL: Use correct signature in callback method lookup.

* subversion/bindings/javahl/native/RemoteSession.cpp
  (LocationSegmentHandler::LocationSegmentHandler): Fix signature of the
   RemoteLocationSegmentCallback.doSegment callback method.
  (FileRevisionHandler::FileRevisionHandler): Fix signature of the
   RemoteFileRevisionsCallback.doRevision callback method.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510923 13f79535-47bb-0310-9956-ffa450edef68
Remove redundant public interface method declaration in JavaHL.

[in subversion/bindings/javahl/src/org/apache/subversion/javahl]
* callback/RemoteFileRevisionsCallback.java
  (RemoteFileRevisionsCallback.doRevision): Remove public declaration from
   interface method -- it's the defult.
* callback/RemoteLocationSegmentsCallback.java
  (RemoteLocationSegmentsCallback.doSegment): Remove public declaration from
   interface method -- it's the defult.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1510925 13f79535-47bb-0310-9956-ffa450edef68
Fix issue 4044 in ra_serf: return the right error code if the server doesn't
support a particular feature, so that callers of the ra layer can enable a
fallback mechanism or report a meaningful error to the user.

* subversion/libsvn_ra_serf/util.c
  (svn_ra_serf__error_on_status): When the server returns a 501 Not Implemented
      status code, create an SVN_ERR_UNSUPPORTED_FEATURE error.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1511057 13f79535-47bb-0310-9956-ffa450edef68
On the fsfs-improvements branch: sync with /trunk up to r1511145.
No conflicts.

git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/fsfs-improvements@1511147 13f79535-47bb-0310-9956-ffa450edef68