Skip to content

Display PostgreSQL definitions in the standard Moose Source Text browser - #27

Open
deem0n wants to merge 4 commits into
fix/12-source-anchor-protocolfrom
fix/14-sql-source-browser
Open

deem0n wants to merge 4 commits into
fix/12-source-anchor-protocolfrom
fix/14-sql-source-browser

Conversation

@deem0n

@deem0n deem0n commented Sep 20, 2026

Copy link
Copy Markdown
Owner

Problem and resulting behavior

The Source Text browser accepted SQL routines/views but selected the null source adapter and failed while creating highlights. SQL definitions live in model entities rather than indexed files.

The optional FmxSQLSourceTextAdapter participates in MooseIDE's existing adapter discovery. It displays routine/view source and translates AST source intervals relative to the displayed definition or query fragment. Invalid, unrelated and outside-fragment anchors return no highlight; unanchored definitions display as plain text. Original SQL and model relationships are unchanged.

Packaging and dependencies

Adds optional MooseIDE/MooseIDETests groups for a preinstalled Moose 13 image. Core stays usable in plain Pharo without UI classes. The ready-made Moose CI job loads the optional test group through .smalltalk.moose.ston; the plain Pharo job keeps the Core test configuration.

Stacked PR: base is #25's source-anchor branch, keeping that implementation out of this diff. This change also pins Famix to b0a762751dd06ebe46f98d016943613d28c18d82, the separately reviewed scalar-containment fix in deem0n/Famix#2. That traversal fix is required by Source Text highlighting of SQL views. The final release gate will consolidate dependency pins.

Validation

4 tests passed, 0 failures/errors in an isolated Pharo 13 / Moose 13 image. They cover adapter discovery, plain source fallback, fragment offset translation, unrelated/invalid intervals, and opening the actual standard browser on routines and scalar-query views with exact displayed-text comparison. git diff --check passed. The new CI job must pass before merge.

Addresses #14. See docs/mooseide-integration.md for loading and behavior. This is v3 development work, not a published release.

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