<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">For a bit more context, the removed headers disappeared in this commit<div><br></div><div><a href="https://github.com/libgeos/geos/commit/f92d697680a281f8cc26d5591b42ffa8efc7818b">https://github.com/libgeos/geos/commit/f92d697680a281f8cc26d5591b42ffa8efc7818b</a></div><div><br></div><div>and the added headers came from this one</div><div><br></div><div><a href="https://github.com/libgeos/geos/pull/1239">https://github.com/libgeos/geos/pull/1239</a></div><div><br></div><div>Probably the removals were unnecessary, so “future learnings” maybe don’t remove files in stable branches just on principle. But from a practical perspective, no body will be harmed by the change, so I remain sanguine.</div><div><br></div><div>P<br id="lineBreakAtBeginningOfMessage"><div><br><blockquote type="cite"><div>On Mar 4, 2025, at 7:39 AM, Paul Ramsey <pramsey@cleverelephant.ca> wrote:</div><br class="Apple-interchange-newline"><div><div><br><blockquote type="cite">On Mar 4, 2025, at 5:33 AM, Greg Troxel <gdt@lexort.com> wrote:<br><br> - the headers are part of the C++ API which is defined not to be<br>   stable, and not part of the C API, and therefore this is not an API<br>   break to the part of the API that is documented as usable?  (or<br>   something like that, that I am not understanding)<br></blockquote><br>1> Somewhat this, but not really. ABI stability has only been promised on the CAPI and as a result the vast majority of usage has been via CAPI. Anyone dropping a build package into a running system that is using the C++ ABI is sticking their fingers into the gears and might lose a digit.<br><br>2> Somewhat this, but not really. There are a billion C++ headers, but the “public API” does not, realistically, include all billion of them. Fixes of some issues resulted in headers moving around and some being taken out. <br><br><blockquote type="cite"> - the headers should not be installed because they aren't actually a<br>   public API?<br></blockquote><br>Well, ideally we might try and figure out which are the “public” C++ API and which aren’t but practically nobody has done that and inevitably as soon as you did that someone would show up complaining about the thing you took away that they absolutely require (not in this case though).<br><br><blockquote type="cite"> - we believe that no depending programs use these and therefore there<br>   won't be trouble?<br></blockquote><br>That’s the core of it.<br><br><blockquote type="cite"> - we don't expect changes on stable branches to be micro releases, and<br>   therefore they are not suitable for updates within packaging<br>   systems?<br></blockquote><br>At this point we are talking philosophy so I have nothing to offer. Your questions above hopefully clarify my nonchalance.<br><br>ATB,<br><br>P<br><br><blockquote type="cite"><br>I wonder about Debian, in terms of being willing to apply this update.<br><br>Specifically, 4 include files in include/geos/operation/overlay are no<br>longer present.<br><br>Index: PLIST<br>===================================================================<br>RCS file: /cvsroot/pkgsrc/geography/geos/PLIST,v<br>retrieving revision 1.28<br>diff -u -p -r1.28 PLIST<br>--- PLIST<span class="Apple-tab-span" style="white-space:pre">  </span>8 Sep 2024 00:51:56 -0000<span class="Apple-tab-span" style="white-space:pre">   </span>1.28<br>+++ PLIST<span class="Apple-tab-span" style="white-space:pre">     </span>4 Mar 2025 13:24:59 -0000<br>@@ -44,6 +44,7 @@ include/geos/algorithm/hull/ConcaveHull.<br>include/geos/algorithm/hull/ConcaveHullOfPolygons.h<br>include/geos/algorithm/hull/HullTri.h<br>include/geos/algorithm/hull/HullTriangulation.h<br>+include/geos/algorithm/hull/OuterShellsExtracter.h<br>include/geos/algorithm/locate/IndexedPointInAreaLocator.h<br>include/geos/algorithm/locate/PointOnGeometryLocator.h<br>include/geos/algorithm/locate/SimplePointInAreaLocator.h<br>@@ -295,14 +296,18 @@ include/geos/operation/GeometryGraphOper<br>include/geos/operation/buffer/BufferBuilder.h<br>include/geos/operation/buffer/BufferCurveSetBuilder.h<br>include/geos/operation/buffer/BufferInputLineSimplifier.h<br>+include/geos/operation/buffer/BufferNodeFactory.h<br>include/geos/operation/buffer/BufferOp.h<br>include/geos/operation/buffer/BufferParameters.h<br>include/geos/operation/buffer/BufferSubgraph.h<br>+include/geos/operation/buffer/MaximalEdgeRing.h<br>+include/geos/operation/buffer/MinimalEdgeRing.h<br>include/geos/operation/buffer/OffsetCurve.h<br>include/geos/operation/buffer/OffsetCurveBuilder.h<br>include/geos/operation/buffer/OffsetCurveSection.h<br>include/geos/operation/buffer/OffsetSegmentGenerator.h<br>include/geos/operation/buffer/OffsetSegmentString.h<br>+include/geos/operation/buffer/PolygonBuilder.h<br>include/geos/operation/buffer/RightmostEdgeFinder.h<br>include/geos/operation/buffer/SegmentMCIndex.h<br>include/geos/operation/buffer/SubgraphDepthLocater.h<br>@@ -332,10 +337,6 @@ include/geos/operation/linemerge/LineMer<br>include/geos/operation/linemerge/LineMergeGraph.h<br>include/geos/operation/linemerge/LineMerger.h<br>include/geos/operation/linemerge/LineSequencer.h<br>-include/geos/operation/overlay/MaximalEdgeRing.h<br>-include/geos/operation/overlay/MinimalEdgeRing.h<br>-include/geos/operation/overlay/OverlayNodeFactory.h<br>-include/geos/operation/overlay/PolygonBuilder.h<br>include/geos/operation/overlay/snap/GeometrySnapper.h<br>include/geos/operation/overlay/snap/LineStringSnapper.h<br>include/geos/operation/overlay/snap/SnapOverlayOp.h<br>@@ -519,8 +520,8 @@ lib/cmake/GEOS/geos-config.cmake<br>lib/cmake/GEOS/geos-targets-release.cmake<br>lib/cmake/GEOS/geos-targets.cmake<br>lib/libgeos.so<br>-lib/libgeos.so.3.13.0<br>+lib/libgeos.so.${PKGVERSION}<br>lib/libgeos_c.so<br>lib/libgeos_c.so.1<br>-lib/libgeos_c.so.1.19.0<br>+lib/libgeos_c.so.1.19.2<br>lib/pkgconfig/geos.pc<br>Index: Makefile<br>===================================================================<br>RCS file: /cvsroot/pkgsrc/geography/geos/Makefile,v<br>retrieving revision 1.51<br>diff -u -p -r1.51 Makefile<br>--- Makefile<span class="Apple-tab-span" style="white-space:pre">    </span>8 Sep 2024 00:51:56 -0000<span class="Apple-tab-span" style="white-space:pre">   </span>1.51<br>+++ Makefile<span class="Apple-tab-span" style="white-space:pre">  </span>4 Mar 2025 13:24:59 -0000<br>@@ -1,6 +1,6 @@<br># $NetBSD: Makefile,v 1.51 2024/09/08 00:51:56 gdt Exp $<br><br>-VERSION_BASE=<span class="Apple-tab-span" style="white-space:pre">      </span>3.13.0<br>+VERSION_BASE=<span class="Apple-tab-span" style="white-space:pre">      </span>3.13.1<br># Accomodate testing unreleased versions.<br>VERSION_RC=<br>VERSION=<span class="Apple-tab-span" style="white-space:pre">    </span>${VERSION_BASE}${VERSION_RC}<br>Index: distinfo<br>===================================================================<br>RCS file: /cvsroot/pkgsrc/geography/geos/distinfo,v<br>retrieving revision 1.51<br>diff -u -p -r1.51 distinfo<br>--- distinfo<span class="Apple-tab-span" style="white-space:pre"> </span>8 Sep 2024 00:51:56 -0000<span class="Apple-tab-span" style="white-space:pre">   </span>1.51<br>+++ distinfo<span class="Apple-tab-span" style="white-space:pre">  </span>4 Mar 2025 13:24:59 -0000<br>@@ -1,6 +1,6 @@<br>$NetBSD: distinfo,v 1.51 2024/09/08 00:51:56 gdt Exp $<br><br>-BLAKE2s (geos-3.13.0.tar.bz2) = 862b31b01bcae17488f24133f4205afdf3729b30cc5b654d3dba3697244a44a9<br>-SHA512 (geos-3.13.0.tar.bz2) = 8ffaa3f49a8365db693ac948e9d66cf55321eb12151734c7da2775070b7804ffa607de2474b7019d6ea2a99d5e037fb1e8561bf9025e65ddd4bd1ba049382b28<br>-Size (geos-3.13.0.tar.bz2) = 6801211 bytes<br>+BLAKE2s (geos-3.13.1.tar.bz2) = 78b9673090509c94aebb1fef4c1f2714ff004d2fd92ba1916bbe179e36c9a777<br>+SHA512 (geos-3.13.1.tar.bz2) = 38a6d8bb05b374160c6e5eb82e5f601915ee44e75bdba0414bb7b1096a62f3cdfbb877389998bd3ff4c77c98927ce95a8d8298dd599a0fcb8ea0e83f174f1744<br>+Size (geos-3.13.1.tar.bz2) = 6839955 bytes<br>SHA1 (patch-ae) = 253ae5cf5c2705a80d89d996507e3e94f2a11296<br></blockquote><br></div></div></blockquote></div><br></div></body></html>