Repository navigation
chore(ci): Bump versions - #184
Merged
Merged
Conversation
tomasfarias
force-pushed
the
chore/bump-supported-python-to-3.14
branch
from
September 28, 2026 21:24
cef39df to
ca7dc60
Compare
FreshnessTask.__init__ started requiring a catalogs argument in dbt-core 1.12, unlike its sibling ConfiguredTask subclasses which default it to None.
dbt-core <1.12 pins mashumaro<3.15, which doesn't support Python 3.14 (added only in mashumaro 3.17). Those combinations can't install and would just fail on every run. Also drops a stale beta-era comment now that dbt 1.12 has a stable release.
DagBag dropped the include_examples parameter in Airflow 3.3, breaking every matrix combination using that version. Add AIRFLOW_V_3_3_PLUS and only pass it on older Airflow. Also fixes two mypy errors that surfaced once the previously-broken mypy job condition started actually running mypy again: a possibly None connection type passed where dict.get expects str, and a conditional-import fallback assigning an incompatible type. While at it, point the mypy job condition at Python 3.14, the latest version in the matrix.
Airflow <3.3 (fixed upstream by apache/airflow#68840) schedules the FastAPI execution API app's lifespan startup via asyncio.run_coroutine_threadsafe without waiting for it, so a dag.test() task run can race ahead of app.state.svcs_registry being set and fail with AttributeError. We patch in_process_api_server() to hand out a pre-warmed transport that waits for lifespan startup, mirroring the upstream fix, since InProcessExecutionAPI is an attrs-slotted class we can't otherwise safely monkeypatch.
tomasfarias
force-pushed
the
chore/bump-supported-python-to-3.14
branch
from
September 28, 2026 21:54
5a7f9ea to
12495f0
Compare
We'll decide later how to handle these in the future For now, just get CI working
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.
This is the minimal changes to support Python 3.14, dbt 1.12, and Airlfow 3.3.
Cherry-picked a few commits from #182 as that branch includes a broader discussion around handling of dbt flags.
Most of the lines of code are just the uv.lock update.
There are two big changes outside of that: one of them is a new function authored by @millin to get around a lifetime issue in Airflow, I have not reviewed the issue in depth, but the problem appears to be fixed. Since 3.2 is going to be dropped soon (MWAA and Google Cloud are already on 3.3), I don't really care much about it as we can drop the dependency + the function altogether soon.
The other one is a switch to packaging for detecting dependencies. This avoids the heavy import of a bunch of dbt stuff, so I do like the change.
Credit goes to @millin too, although it seems that one of my rebases erased this from the commit, so I'll re-add you as author. Credit where credit is due.Nevermind, upon reviewing the git history to restore authorship, I realized I authored this in cc90386. Keeping myself as author.