PrefectHQ
prefect
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Optimizations
Branches
Benchmarks
Runs
Performance History
Latest Results
Tighten Git cache population and eviction policy
feat/git-pull-cache
11 hours ago
Xfail block logo checks for the disabled Sanity project
feat/git-pull-cache
12 hours ago
Add opt-in local Git object caching for pull steps
feat/git-pull-cache
12 hours ago
Check that the Docker test image matches uv.lock in CI The Docker test job only ran `prefect version` inside the built image, so nothing would notice if the image drifted from the lockfile again. Run `uv sync --check` inside the built image against the checkout, with the image's system environment as the target. It exits non-zero and prints the differing packages if the installed set does not match the lockfile. Against the published 3.8.7 image it reports SQLAlchemy 2.1.1 where the lock has 2.0.45, so it would have caught #23199.
jasperchan:jc/dockerfile-locked-constraints
14 hours ago
Check that the Docker test image matches uv.lock in CI The Docker test job only ran `prefect version` inside the built image, so nothing would notice if the image drifted from the lockfile again. Export uv.lock the same way the Dockerfile does and run a small script inside the image that compares `uv pip freeze` against it. Markers are evaluated by the image's own interpreter, so one export serves every Python lane. Any locked package at a different version fails the job and is listed by name. Against the published 3.8.7 image this reports 72 packages that differ from the lockfile, SQLAlchemy 2.1.1 among them.
jasperchan:jc/dockerfile-locked-constraints
15 hours ago
Install locked dependency versions in the Docker image The final image stage installed Prefect from the sdist with a plain `uv pip install`, resolving every dependency against PyPI on build day under the loose ranges in pyproject.toml. CI installs with `uv sync --locked`, so the published image and the tested environment could diverge without anything noticing. That is how the 3.8.7 images shipped with SQLAlchemy 2.1.1 (#23199): uv.lock pins 2.0.45, SQLAlchemy 2.1.0 was released two days before the build, and the server's scheduler fails on every tick under 2.1. Export the lockfile as a constraints file in the builder stage and pass it to the existing install. The sdist and PREFECT_EXTRAS are unchanged; only versions are pinned, to what CI already tests. EXTRA_PIP_PACKAGES stays unconstrained so downstream images can still layer newer packages.
jasperchan:jc/dockerfile-locked-constraints
15 hours ago
Test subtracted cache policy locks and persists as configured Run a task whose policy is `INPUTS.configure(...) - "y"` with a real `MemoryLockManager` and `tmp_path` key storage, and check that the lock is held during the run and the cache record is written to the configured storage.
MohammadHijjawi97:fix-cache-policy-subtraction-config
17 hours ago
Preserve cache policy configuration when excluding inputs Subtracting an input name from an `Inputs` or `CompoundCachePolicy` built a fresh policy and dropped any `key_storage`, `isolation_level` and `lock_manager` set with `.configure()`, so e.g. `INPUTS.configure(isolation_level="SERIALIZABLE", ...) - "client"` silently ran without locking. Use `dataclasses.replace` so the configuration is carried over.
MohammadHijjawi97:fix-cache-policy-subtraction-config
18 hours ago
Latest Branches
CodSpeed Performance Gauge
0%
Add opt-in local Git object caching for pull steps
#23226
11 hours ago
c7a1185
feat/git-pull-cache
CodSpeed Performance Gauge
0%
Install locked dependency versions in the Docker image
#23225
14 hours ago
ceb2a0e
jasperchan:jc/dockerfile-locked-constraints
CodSpeed Performance Gauge
0%
Preserve cache policy configuration when excluding inputs
#23224
17 hours ago
7ad3b21
MohammadHijjawi97:fix-cache-policy-subtraction-config
© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs