Skip to content

feat(meos): regenerate the IDL at pin 588768d7ab and add the shared org.mobilitydb.meos facade (stacks on #23)#24

Open
estebanzimanyi wants to merge 5 commits into
MobilityDB:mainfrom
estebanzimanyi:feat/bump-pin-588768d7
Open

feat(meos): regenerate the IDL at pin 588768d7ab and add the shared org.mobilitydb.meos facade (stacks on #23)#24
estebanzimanyi wants to merge 5 commits into
MobilityDB:mainfrom
estebanzimanyi:feat/bump-pin-588768d7

Conversation

@estebanzimanyi
Copy link
Copy Markdown
Member

Regenerates codegen/input/meos-idl.json against the consolidated ecosystem pin 588768d7ab (3031 bound functions: the set-set spatial-join family, the mindistance_tgeoarr_tgeoarr rename, trgeometry analytics, tpose/tnpoint accessors, tcbuffer traversed-area, aggregate combine functions) and adds a tier-aware MeosOps* facade (62 classes) under org.mobilitydb.meos so every JVM binding inherits one canonical Java idiom from the shared jar: each method forwards to functions.GeneratedFunctions under a package-private MeosOpsRuntime probe gated by -Dmeos.enabled, with engine-neutral javadoc. The maintained generator (regen_facade_from_jar plus the gap/sql/tbigint/h3 emitters, parity_audit and meos-ref) lives under jmeos-core/tools and regenerates the facade idempotently; the full jmeos-core suite is green against the pinned libmeos.

… surface

Bump codegen/input/meos-idl.json to the MEOS-API IDL and regenerate
functions.GeneratedFunctions over the full consolidated superset: mul_* (incl.
tbigint); minDistance; the circular-buffer and network-point MF-JSON readers; the
ever- and always-covers families (ecovers_*/acovers_*); trgeo_*; the H3 /
th3index family (ever_eq_h3indexset_th3index, h3index_in/out, H3Index lowered to
long); PostgreSQL type I/O; tgeogpoint_great_circle_distance;
meos_initialize_noexit_error_handler. 2916 functions.
…ld flags

The functions.GeneratedFunctions facade is generated at build time from the MEOS
IDL with the optional type families selected by the same flag names and ON|OFF
(also 1|0) values as the MobilityDB/MEOS build: -DCBUFFER, -DNPOINT, -DPOSE,
-DRGEO, -DH3. Every family is included by default; passing -DCBUFFER=OFF (or =0)
drops that family's functions from the generated binding so a subset jar ships
without it (RGEO needs POSE). FunctionsGenerator maps each function's source
header to its family and omits excluded families; jmeos-core runs the generator
at generate-sources (so the flag flows through mvn) and compiles the generated
functions.GeneratedFunctions.
…try C API

MobilityDB #1137 renamed the public rigid-geometry C API from trgeo to
trgeometry. The MEOS IDL the facade is generated from adopts the new names
(verified 1:1 against the master meos_rgeo.h: 67 trgeo->trgeometry; the
trgeoinst_make instant constructor is unchanged, matching master), so the
generated functions.GeneratedFunctions and the bundled jar resolve against a
post-#1137 libmeos.
Bumps codegen/input/meos-idl.json to the public+bound MEOS surface of the
ecosystem pin: the set-set spatial-join family (edwithin/tdwithin/adisjoint
_tgeoarr_tgeoarr), the mindistance_tgeoarr_tgeoarr rename, the trgeometry
analytics (frechet/hausdorff/dyntimewarp/centroid/length/speed), tpose and
tnpoint value accessors, tcbuffer traversed-area, and the aggregate combine
functions. 3031 bound functions (was 2916).
Hoists the tier-aware MeosOps* facade (62 classes) into JMEOS so every
JVM binding inherits the one canonical Java idiom from the shared jar
instead of duplicating it per engine. The facade forwards to
functions.GeneratedFunctions under a package-private MeosOpsRuntime probe
gated by the canonical -Dmeos.enabled property; javadoc is engine-neutral.
Relocates the maintained generator (regen_facade_from_jar + the gap / sql /
tbigint / h3 emitters + parity_audit + meos-ref) under jmeos-core/tools so
the facade stays regenerated, not hand-edited; regeneration is idempotent
against the pin jar.
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