Author: rinrab
Date: Mon Dec 15 22:00:03 2025
New Revision: 1930607

Log:
Exclude the svn_xml_make_parse_stream() function from the public API by making
it private.

- This function does not have any real usages (yet). That's why we don't want
  to include it into 1.15 public API. Let's keep it simple.

- This change also renames svn_xml_make_parse_stream to
  svn_xml__make_parse_stream to match naming conventions.

- The function has never been officially released, which justfies its removal
  from the public API.

* subversion/include/private/svn_xml_private.h
  (): New header file.
  (svn_xml__make_parse_stream): New function.

* subversion/include/svn_xml.h
  (svn_xml_make_parse_stream): Remove function.

* subversion/libsvn_subr/xml_stream.c
  (includes): Add private/svn_xml_private.h
  (svn_xml_make_parse_stream): Adjust name.

* subversion/tests/libsvn_subr/xml-test.c
  (includes): Add private/svn_xml_private.h
  (...): Adjust usages.

Added:
   subversion/trunk/subversion/include/private/svn_xml_private.h   (contents, 
props changed)
Modified:
   subversion/trunk/subversion/include/svn_xml.h
   subversion/trunk/subversion/libsvn_subr/xml_stream.c
   subversion/trunk/subversion/tests/libsvn_subr/xml-test.c

Added: subversion/trunk/subversion/include/private/svn_xml_private.h
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ subversion/trunk/subversion/include/private/svn_xml_private.h       Mon Dec 
15 22:00:03 2025        (r1930607)
@@ -0,0 +1,46 @@
+/**
+ * @copyright
+ * ====================================================================
+ *    Licensed to the Apache Software Foundation (ASF) under one
+ *    or more contributor license agreements.  See the NOTICE file
+ *    distributed with this work for additional information
+ *    regarding copyright ownership.  The ASF licenses this file
+ *    to you under the Apache License, Version 2.0 (the
+ *    "License"); you may not use this file except in compliance
+ *    with the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *    Unless required by applicable law or agreed to in writing,
+ *    software distributed under the License is distributed on an
+ *    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *    KIND, either express or implied.  See the License for the
+ *    specific language governing permissions and limitations
+ *    under the License.
+ * ====================================================================
+ * @endcopyright
+ *
+ * @file svn_xml_private.h
+ * @brief Private XML API.
+ */
+
+#include <apr.h>
+#include <apr_pools.h>
+
+#include "svn_io.h"     /* for svn_stream_t */
+#include "svn_xml.h"
+
+/** Create a stream that wraps the XML parser described at @a parser.
+ *
+ * The stream produced will implement 'write' and 'close' methods. It
+ * will push the data to the parser on write operation, and flush it on
+ * close.
+ *
+ * This stream can be used as a generic writable stream, so the callers
+ * may pipe any data there, for example, using the svn_stream_copy3
+ * function, in case of a file source.
+ */
+svn_stream_t *
+svn_xml__make_parse_stream(svn_xml_parser_t *parser,
+                           apr_pool_t *result_pool);
+

Modified: subversion/trunk/subversion/include/svn_xml.h
==============================================================================
--- subversion/trunk/subversion/include/svn_xml.h       Mon Dec 15 20:03:17 
2025        (r1930606)
+++ subversion/trunk/subversion/include/svn_xml.h       Mon Dec 15 22:00:03 
2025        (r1930607)
@@ -33,7 +33,6 @@
 
 #include "svn_types.h"
 #include "svn_string.h"
-#include "svn_io.h" /* for svn_stream_t */
 
 #ifdef __cplusplus
 extern "C" {
@@ -192,22 +191,6 @@ void
 svn_xml_free_parser(svn_xml_parser_t *svn_parser);
 
 
-/** Create a stream that wraps the XML parser described at @a parser.
- *
- * The stream produced will implement 'write' and 'close' methods. It
- * will push the data to the parser on write operation, and flush it on
- * close.
- *
- * This stream can be used as a generic writable stream, so the callers
- * may pipe any data there, for example, using the svn_stream_copy3
- * function, in case of a file source.
- *
- * @since New in 1.15.
- */
-svn_stream_t *
-svn_xml_make_parse_stream(svn_xml_parser_t *parser,
-                          apr_pool_t *result_pool);
-
 
 /** Push @a len bytes of xml data in @a buf at @a svn_parser.
  *

Modified: subversion/trunk/subversion/libsvn_subr/xml_stream.c
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/xml_stream.c        Mon Dec 15 
20:03:17 2025        (r1930606)
+++ subversion/trunk/subversion/libsvn_subr/xml_stream.c        Mon Dec 15 
22:00:03 2025        (r1930607)
@@ -25,6 +25,7 @@
 
 /*** Includes. ***/
 
+#include "private/svn_xml_private.h"
 #include "svn_error.h"
 #include "svn_io.h"
 #include "svn_xml.h"
@@ -94,7 +95,7 @@ xml_stream_close(void *baton)
 /* Public Interface */
 
 svn_stream_t *
-svn_xml_make_parse_stream(svn_xml_parser_t *parser,
+svn_xml__make_parse_stream(svn_xml_parser_t *parser,
                           apr_pool_t *result_pool)
 {
   svn_stream_t *result;

Modified: subversion/trunk/subversion/tests/libsvn_subr/xml-test.c
==============================================================================
--- subversion/trunk/subversion/tests/libsvn_subr/xml-test.c    Mon Dec 15 
20:03:17 2025        (r1930606)
+++ subversion/trunk/subversion/tests/libsvn_subr/xml-test.c    Mon Dec 15 
22:00:03 2025        (r1930607)
@@ -22,6 +22,7 @@
 
 #include <apr.h>
 
+#include "private/svn_xml_private.h"
 #include "svn_pools.h"
 #include "svn_string.h"
 #include "svn_xml.h"
@@ -343,7 +344,7 @@ test_xml_parse_stream(apr_pool_t *pool)
   b.buf = svn_stringbuf_create_empty(pool);
   b.parser = svn_xml_make_parser(&b, strbuf_start_elem, strbuf_end_elem,
                                  strbuf_cdata, pool);
-  stream = svn_xml_make_parse_stream(b.parser, pool);
+  stream = svn_xml__make_parse_stream(b.parser, pool);
 
   SVN_ERR(svn_stream_puts(stream, xml));
   SVN_ERR(svn_stream_close(stream));
@@ -366,7 +367,7 @@ test_xml_parse_stream_invalid_xml(apr_po
   b.buf = svn_stringbuf_create_empty(pool);
   b.parser = svn_xml_make_parser(&b, strbuf_start_elem, strbuf_end_elem,
                                  strbuf_cdata, pool);
-  stream = svn_xml_make_parse_stream(b.parser, pool);
+  stream = svn_xml__make_parse_stream(b.parser, pool);
 
   err = svn_error_compose_create(svn_stream_puts(stream, xml),
                                  svn_stream_close(stream));

Reply via email to