Skip to content

Bump pinned MEOS to 008ef1c2a5 (ecosystem-pin-2026-06-18b)#204

Open
estebanzimanyi wants to merge 5 commits into
MobilityDB:mainfrom
estebanzimanyi:feat/pin-2026-06-18b
Open

Bump pinned MEOS to 008ef1c2a5 (ecosystem-pin-2026-06-18b)#204
estebanzimanyi wants to merge 5 commits into
MobilityDB:mainfrom
estebanzimanyi:feat/pin-2026-06-18b

Conversation

@estebanzimanyi

Copy link
Copy Markdown
Member

Advance the MEOS vcpkg pin from d94af2d2c9 to 008ef1c2a5 (ecosystem-pin-2026-06-18b, 2026-06-18). The two portfile patches that worked around upstream gaps — the QUADBIN PROJECT_OBJECTS→MEOS_OBJECTS redirect and the basetype_byvalue dead-code removal — are applied directly in the new pin and are removed from portfile.cmake. Four remaining patches (T_JSONB temporal parse, pq_sendint elog→meos_error, pg_timestamp.h cross-guard, postgres_ext_defs.in.h add_*) are still needed and unchanged. The MOBILITYDUCK_MEOS_PIN constant in mobilityduck_extension.cpp is updated to match.

@estebanzimanyi estebanzimanyi force-pushed the feat/pin-2026-06-18b branch 2 times, most recently from 795765f to 3994c78 Compare June 18, 2026 13:50
estebanzimanyi added a commit to MobilityDB/MobilityDB that referenced this pull request Jun 20, 2026
The bundled `cmake/FindGEOS.cmake` resolves `libgeos_c` by absolute path
and links it directly. Under **vcpkg manifest mode on macOS**, ninja
reports that absolute `.dylib` as a missing, unbuildable input and the
link of `libmeos.dylib` fails:

```
ninja: error: '.../vcpkg_installed/x64-osx-release/lib/libgeos_c.dylib',
       needed by 'libmeos.dylib', missing and no known rule to make it
```

The same pin links GEOS cleanly on Linux and all Wasm triplets — only
macOS/vcpkg fails (MobilityDB/MobilityDuck#204).

**Fix:** GEOS (upstream, and via vcpkg) ships a CMake CONFIG package
exporting the `GEOS::geos_c` imported target with correct per-platform
library handling. Prefer it when present (deriving the `GEOS_VERSION_*`
components from the config version), and fall back to the bundled
`FindGEOS` module for system installs without a CMake config.

**Verified on Linux** (which also ships the GEOS CMake config, so it
exercises the new path): `Found GEOS 3.12.1 via CONFIG (GEOS::geos_c)`,
`POSTGIS_GEOS_VERSION: 31201`, full all-families build of both `libmeos`
and the extension green. macOS/vcpkg is confirmed by the MobilityDuck
#204 matrix.
Register the quadbin / tquadbin cell-index types and their cast, accessor, and operator surface, with the rtree index module and build wiring.
… 1.4.4

DuckDB runs scalar, cast and table-function bodies on worker threads whose MEOS thread-local state is uninitialised; initialize MEOS once per worker thread at the registration chokepoints and table-function Init bodies, and consume the DuckDB 1.4.4 unique_ptr_cast Copy signature.
The restrict argument was dropped from the spatiotemporal relationships in the 1.4 orthogonalization; drop the non-canonical 3-arg overloads and use the 2-arg form in the tests.
Refresh expecteds that drifted with the pin: share-inclusive span adjacency, ln/log10/exp densification, and right-open step segment-duration bounds, all matching MobilityDB canonical output.
Pin the MEOS vcpkg port to ecosystem-pin-2026-06-22a (043d5e72), carrying the GEOS CMake CONFIG-target fix for the macOS build. Consume the pgtypes public leaf headers for date/timestamp arithmetic and drop the obsolete source patches the clean MEOS-only surface makes unnecessary.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant