Repository navigation
Releases: deem0n/FAMIXNGSQL
Releases · deem0n/FAMIXNGSQL
Release list
FAMIXNGSQL 2.0.0 - Pharo 13 / Moose 13
This is the Pharo 13 / Moose 13 migration of FAMIXNGSQL. It supersedes the
historical Pharo 7 release; the v1.0.0 tag remains unchanged.
Breaking changes
- Use
github://deem0n/FAMIXNGSQL:v2.0.0/srcto install the release. Packages use
Tonel undersrc; historical/repositoryloading instructions do not apply. - Use
FmxSQLModelin place of the historicalFmxSQLMooseModel. - Generated classes and traits target the current Famix infrastructure. Pharo 7,
Pharo 10 and older Moose versions are not supported by this release's tests. - The default group is
Core. Historical GT/Telescope/connection-manager UI
packages are isolated inLegacyUIand are not validated for this release. - Regenerated containment and source-anchor relations may differ from older
MSE exports. Cross-version import of historical MSE files is not guaranteed.
Model and importer
- Restore namespace ownership, association direction and source-holder/anchor
relationships on the current metamodel builder. - Preserve CHECK and exclusion constraint calls to routines and inverse links.
- Integrate updated PgMetadata extraction through upstream P3 code, including
materialized views, partitioned/foreign tables, routine OIDs/languages,
parameter order/modes and trigger ownership on tables or views. - Read catalogs in a read-only, repeatable-read transaction and close the
metadata connection after extraction. - Use separate SQL and PL/pgSQL parser entry points. Preserve source when
syntax, language or name resolution is unsupported. - Record per-object analysis status, diagnostics and timeouts. Ambiguous calls
retain candidate routines; runtime-dependent dynamic SQL targets are not guessed. - Preserve entity identity, inverse relations and source anchors through MSE
export/import. Export diagnostics separately as JSON. - Exclude the abstract structural base generator from global regeneration.
Tests and continuous integration
- Share smalltalkCI configuration between Travis CI and GitHub Actions.
- Test both a plain Pharo 13 image and the ready-made Moose 13 / Pharo 13 image
against a disposable PostgreSQL 15 service. - Run importer, metamodel-generator selection and PgMetadata suites. Fixtures
create unique schemas and clean them up after each scenario.
Known limits
- SQL/PL/pgSQL parsing and semantic analysis are incomplete. The documented
mi
import retained 70,143 unique entities but still reported 520 parser syntax
failures and additional reference-resolution errors. Consult the analysis
report rather than treating a completed import as complete source coverage. - The upstream Moose 13 image is a rolling development build. Other runtime
combinations andLegacyUIremain unvalidated. - Some transitive dependencies still follow upstream branches; the dependency
stack is not fully frozen by the FAMIXNGSQL tag alone. - Package ownership after metamodel regeneration remains tracked in issue #8.
See README for installation and examples, and the
migration audit for detailed evidence.
Validation: GitHub Actions, 65 tests on each of Pharo64-13 and Moose64-13 with PostgreSQL 15. JUnit reports are attached to the workflow run. GitHub Actions is sufficient for this release; the optional Travis configuration is supplied but has not been validated on Travis.
Metacello new
baseline: 'FAMIXNGSQL';
repository: 'github://deem0n/FAMIXNGSQL:v2.0.0/src';
load: 'Core'.