As reported by Graham Inggs in Debian Bug #977868, the osmcoastline package fails to build in Debian unstable due to test-invalid-complex-overlap failing:
1/19 Test #1: test-invalid-complex-overlap .............................***Failed 0.36 sec
+ cat
+ /build/osmcoastline-2.2.4/obj-x86_64-linux-gnu/src/osmcoastline --verbose --overwrite --output-database=/build/osmcoastline-2.2.4/obj-x86_64-linux-gnu/test/invalid-complex-overlap.db /build/osmcoastline-2.2.4/obj-x86_64-linux-gnu/test/invalid-complex-overlap.opl
+ RC=139
+ set -e
+ test 139 -eq 2
A possible cause is the upgrade of GEOS to 3.9.0.
Output of the test command:
[ 0:00] Started osmcoastline version 2.2.4 / libosmium version 2.15.6
[ 0:00] Using SRS 4326 for output. (Change with the --srs/s option.)
[ 0:00] Writing to output database '/build/osmcoastline-2.2.4/obj-x86_64-linux-gnu/test/invalid-complex-overlap.db'. (Was set with the --output-database/-o option.)
[ 0:00] Removing database output file (if it exists) (because you told me to with --overwrite/-f).
[ 0:00] Will create geometry index. (If you do not want an index use --no-index/-i.)
- 'VirtualXPath' [XML Path Language - XPath]
[ 0:00] Reading from file '/build/osmcoastline-2.2.4/obj-x86_64-linux-gnu/test/invalid-complex-overlap.opl'.
[ 0:00] Reading ways (1st pass through input file)...
[ 0:00] There are 2 nodes where the coastline is not closed.
[ 0:00] There are 2 coastline rings (0 from a single closed way and 2 others).
[ 0:00] Memory used: current: 320 MBytes, peak: 385 MBytes
[ 0:00] Reading nodes (2nd pass through input file)...
[ 0:00] Checking for missing locations...
[ 0:00] All locations are there.
[ 0:00] Memory used: current: 328 MBytes, peak: 385 MBytes
[ 0:00] Check line segments for intersections and overlaps...
[ 0:00] Trying to close Antarctica ring...
[ 0:00] Did not find open Antarctica ring.
[ 0:00] Close broken rings... (Use --close-distance/-c 0 if you do not want this.)
[ 0:00] Closing if distance between nodes smaller than 1. (Set this with --close-distance/-c.)
[ 0:00] Closed 1 rings. This left 0 nodes where the coastline could not be closed.
[ 0:00] Not writing out rings. (Use option --output-rings/-r if you want the rings.)
[ 0:00] Create polygons...
Warning 1: Self-intersection at or near point 1 1.05
Segmentation fault
Backtraces:
(gdb) bt
#0 0x00005555555a92da in is_valid_polygon (geometry=0x555555add0e0) at ./src/coastline_ring_collection.cpp:135
#1 0x00005555555aa6e7 in CoastlineRingCollection::add_polygons_to_vector (this=0x7fffffffd870) at ./src/coastline_ring_collection.cpp:152
#2 0x000055555557ade7 in create_polygons (coastline_rings=..., output=..., warnings=0x7fffffffd7b8, errors=0x7fffffffd7bc) at ./src/osmcoastline.cpp:76
#3 0x0000555555576dd8 in main (argc=<optimized out>, argv=<optimized out>) at /usr/include/c++/10/bits/unique_ptr.h:173
As reported by Graham Inggs in Debian Bug #977868, the osmcoastline package fails to build in Debian unstable due to
test-invalid-complex-overlap
failing:A possible cause is the upgrade of GEOS to 3.9.0.
Output of the test command:
Backtraces: