Repository navigation
v0.184.1
0.184.1 (2026-10-28)
Snowflake: fewer statements per model
Builds issue about a quarter to a third fewer statements, most of them housekeeping that queued for a warehouse behind model work.
- Models are replaced with
CREATE OR REPLACEand no pre-drop. Staging and delta tables are dropped only as the table kind SQLBuild created, and a microbatch delta is kept and replaced between batches. - Relation and retention lookups are answered from one
SHOW TABLES/SHOW VIEWSlisting per schema per run, which needs no warehouse, instead of oneinformation_schemaquery per table. The run's own DDL invalidates the listing. Session-only statements such asALTER SESSION SET QUERY_TAGandUSE WAREHOUSEkeep it. - If another session changes the destination just before promotion, promotion reads it again.
- The fingerprint table is set up once per build. A model whose identity hasn't changed writes no fingerprint row; rows stay append-only. Projects with model migration history keep writing every row.
COUNT(*)runs only when a statement reports no row count, and staging columns are read only for models with an enforced contract.- Scenario runs list their namespace once by prefix and reuse cleanup results.
Columns read for the schema-change check, and one information_schema read per build for source freshness, are kept.
Compile
- A compile whose Rules fail writes every model's SQL to
target/compiled-failed/, laid out liketarget/compiled/, with a not-buildable header on failing models, and leavestarget/compiled/as the last passing compile left it. The next passing compile removes the folder. The text report lists each failing model's SQL path; in--json,artifacts.compiled_sql_dirpoints at the failed folder andfailed_model_sqllists the files. target/compiled-models.txtfrom 0.184.0 is no longer written.- The compile after a Rules-failed compile runs in full rather than as a delta.
- A Rules-failed compile with
--manifestno longer reports writing a manifest; JSONartifacts.manifestisnull.
Fixes
- Concurrent models no longer set up the fingerprint table more than once on a first build.
Full change: 8d75270