Bump GoMEOS to MEOS 1.4#3
Open
estebanzimanyi wants to merge 5 commits into
Open
Conversation
Vendor the MEOS 1.4 IDL (3544 functions, +1149 over 1.3) and the three new public headers (meos_cbuffer.h, meos_pose.h, meos_rgeo.h) to HEADER_FILES. Regenerate the tools/_preview/ wrappers against the new catalog. Update the hand-written wrappers in main_tpoint.go to match the MEOS 1.4 signatures: the tspatial-rel family (tcontains/tdisjoint/tdwithin/ tintersects/ttouches) dropped the restr/atvalue parameters and tpoint_at_geom/tpoint_minus_geom dropped the trailing z-span filter.
The previous IDL was parsed from the MobilityDB source tree which duplicates GSERIALIZED across build/postgis headers. Libclang canonicalised the type to int * for ~400 geometry-bearing functions. Regenerated against /usr/local/include and the codegen now emits proper GSERIALIZED * wrappers. TODO counts on the public surface dropped: meos_geo.h: 200 -> 0 meos.h: 157 -> 10 meos_internal.h: 22 -> 13 meos_internal_geo.h: 12 -> 0 meos_npoint.h: 15 -> 0 The remaining cbuffer/pose TODOs need shape metadata in MEOS-API for the *_in/_out/_round families before they can be wrapped without human intervention.
The MEOS 1.4 surface adds the cbuffer, pose, and rgeo temporal type families. Add them to WRAPPER_TYPES so the generator emits proper *Cbuffer / *Pose / *Rgeo wrappers instead of leaving 277 TODO stubs. TODO counts on the new headers drop to: meos_cbuffer.h: 105 -> 1 meos_pose.h: 77 -> 2 meos_rgeo.h: 1 -> 0 The three remaining (cbufferset_values, poseset_values, pose_orientation) need shape metadata in MEOS-API before they can be wrapped without hand-rolling the length-from-accessor pattern.
MEOS-API now carries arrayReturn metadata for cbufferset_values and poseset_values, mirroring geoset_values. cbuffer TODO drops 1 -> 0; pose TODO drops 2 -> 1 (only pose_orientation remains, which returns a fixed-size 4-element quaternion that needs its own shape kind).
State that GoMEOS tracks MEOS 1.4 and that the wrappers are generated from the MEOS-API meos-idl.json catalog, pointing at tools/README.md for regeneration, and fix the MobilityDB link to the source repository.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Vendors the MEOS 1.4 IDL (3544 functions, +1149 over 1.3) on top of #2 and adds meos_cbuffer.h, meos_pose.h, and meos_rgeo.h to the codegen header list. Regenerates tools/_preview/ against the new catalog. Updates the hand-written wrappers in main_tpoint.go to match the MEOS 1.4 signatures: the tspatial-rel family (tcontains/tdisjoint/tdwithin/tintersects/ttouches) dropped the restr and atvalue parameters, and tpoint_at_geom/tpoint_minus_geom dropped the trailing z-span filter.