Read the catalog's own word for what is internal - #348
Merged
estebanzimanyi merged 1 commit intoAug 28, 2026
Merged
Conversation
The catalog states each function's classification in `api`, derived from its @InGroup tag: public where a group exists and is not an internal one, internal otherwise, and a function stating no group at all is internal. Deciding the same question here by matching the group's NAME re-derives that rule and gets the no-group case backwards — the string test finds nothing to match, so an internal function reads as public. That is how a call to trgeometry_merge reached the generated surface: the function states no group, the catalog calls it internal, the name test let it through, and the extension failed to compile against a symbol only a private MEOS header declares. supported() now reads the field the catalog computed. The emitted surface is unchanged at the recorded _MEOS_REF — the same 5851 registrations and not one SQL name added or removed — and on a newer catalog supported() answers `internal` for trgeometry_merge where it answered nothing before, while temporal_merge stays emittable.
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.
The catalog states each function's classification in
api, derived from its @InGroup tag: public where a group exists and is not an internal one, internal otherwise, and a function stating no group at all is internal. Deciding the same question here by matching the group's NAME re-derives that rule and gets the no-group case backwards — the string test finds nothing to match, so an internal function reads as public. That is how a call to trgeometry_merge reaches the generated surface: the function states no group, the catalog calls it internal, the name test lets it through, and the extension fails to compile against a symbol only a private MEOS header declares (run 33159507103). supported() reads the field the catalog computed. The emitted surface is unchanged at the recorded _MEOS_REF — the same 5851 registrations, not one SQL name added or removed — and against a newer catalog supported() answers internal for trgeometry_merge where it answers nothing today, while temporal_merge stays emittable.