Use the Docker API instead of shelling out to podman; fix schema-appl…#11
Merged
Conversation
…y retry and dependency parsing - container.py: replace subprocess calls to the podman CLI with the docker package's client (docker.from_env(), falling back to Podman's rootful/rootless socket). Works against a real Docker daemon or Podman transparently, and needs no CLI binary or CI setup step - ubuntu-latest's preinstalled Docker daemon just works. - schema.py apply_schema(): loop the failed-file retry until a full pass makes no more progress, instead of a single extra pass in original order - a multi-level dependency chain (e.g. view -> view -> table) could still raise on an item whose dependency hadn't had its own retry yet. - schema.py _get_sql_deps(): pass error_level=IGNORE to sqlglot.parse() so one statement it can't fully parse (e.g. a schema-qualified DROP TRIGGER ... ON schema.table) doesn't lose every other statement's dependency info in the same file: fall back further to a regex scan if sqlglot still raises. This only feeds ordering, not execution, so an approximation is an acceptable fallback.
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.
…y retry and dependency parsing