Repository navigation
refactor: move compile-path logic out of executor and user-code shims - #1113
Merged
Merged
Conversation
…ompile and CLI callers Rust compile, plan and CLI paths no longer round-trip through executor Python to render SQL test comparison and difference-sample SQL, describe missing expected columns, build scenario comparison SQL or format SQL test and audit resource ids. Planner, rules and refactor type comparisons call the native type normaliser directly instead of the Python types_equal wrapper.
Planner scenario naming no longer calls back into Python to fit artifact logical names; the executor imports the native fitting functions. The executor's raw microbatch interval merge uses the native cursor algebra in place of the duplicate Python implementation.
Raw-query diff validation parses with the native SQL library instead of the Python binding of the same library, and row-diff tolerance and sampling configuration is resolved by native functions shared by the CLI and the executor.
CLI result documents no longer import executor Python to recount a partial build; the native aggregation is shared with the executor.
The Dagster integration resolves SQLBuild selectors over the DAG artifact with the native selector parser and graph closures instead of a Python re-implementation, and Dagster and Rivers share one native DAG artifact loader in place of two duplicated Python copies.
… shim Discovered Python node records, decorator identity configuration, dependency resolution and graph indexes are built natively; Python keeps only the shim that reads provider annotations, identities and decorated dependency names from loaded user functions. Native compile, plan, check, dag and build callers no longer round-trip through Python graph entry points.
The synthetic package digest, parent package set and dependency-first execution order of project macro modules come from a native planner; Python keeps only the shim that installs modules and executes user macro code.
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.
Why
Logic that was exempt from the Rust move because it lived in executor, adapter or user-code areas should move unless it is executor runtime, the user-code shim, a public facade or third-party glue.
Changes
Verification