Repository navigation
chore(deps): consolidate dependabot updates - #1573
Merged
Merged
Conversation
Updates from Dependabot PRs (taken to latest where newer): - all-minor-patch group (#1572): 35 frontend packages incl. next 16.4.2, @mui/material/system 9.5.0, @tanstack/react-query 5.104.4, posthog-js 1.438.12, @amplitude/unified 1.1.42, vite 8.3.4, vitest 5.0.5, storybook 10.6.2, playwright 1.64.1, @biomejs/biome 2.5.15 - @sentry/nextjs 10.74.0 -> 11.8.0 (#1571) - @sentry/react 10.74.0 -> 11.8.0 (#1570; kept on the same major as nextjs) - msw 2.15.0 -> 3.0.3 (#1569): onUnhandledRequest -> onUnhandledFrame, regenerated public/mockServiceWorker.js Audit-driven updates included: - happy-dom 20.14.5 -> 21.0.3 (major; CSS/iframe loading now opt-in) - react / react-dom 19.3.0 -> 19.3.1 - @testing-library/user-event 14.6.7 -> 14.6.8 - typedoc-plugin-markdown 4.13.1 -> 4.14.0 - transitive security refreshes: dompurify 3.4.17, markdown-it 14.3.3, fast-uri 4.2.2, brace-expansion 5.0.12 - uv.lock refreshed to latest within pyproject ranges (deepdiff held at 8.x: 9.x forces dbt-core back to 1.8); fixes mcp CVE-2026-59951 and jaraco-context CVE-2026-23949 - sqlglot capped <30.22: 30.22 stops attributing unqualified columns to the sole source table, breaking column-level lineage - drop unused pytest-flake8 (incompatible with pytest 9.1) Other: - pnpm-workspace overrides moved in lockstep with the bumps - @datarecce/ui optional peer @sentry/react widened to ^10 || ^11 - biome guard EXPECTED_BIOME -> 2.5.15 after macOS arm64 re-verification Refs: #1569, #1570, #1571, #1572 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Jared Scott <jared.scott@datarecce.io>
Codecov Report✅ All modified and coverable lines are covered by tests.
... and 3 files with indirect coverage changes 🚀 New features to boost your workflow:
|
Add a github-actions ecosystem to dependabot.yml so workflow actions (floating tags and SHA pins) are tracked going forward. GitHub Actions: - actions/checkout v4/v6 -> v7 - actions/cache v4 -> v6 - actions/setup-python v5 -> v7 - actions/upload-artifact v4 -> v7, actions/download-artifact v4 -> v8 - actions/create-github-app-token v2 -> v3 - astral-sh/setup-uv v4 -> v10.3.0 (SHA-pinned; setup-uv no longer publishes floating major tags). uv cache kept off in release/nightly. - codecov/codecov-action v5 -> v7 - getsentry/action-release v1 -> v3 (deprecated `version` -> `release`) - stefanzweifel/git-auto-commit-action v4 -> v7 (drop `token`, which the action never accepted; the push authenticates via checkout) - pnpm/setup v2.0.2 -> v3.1.1 (SHA): `package-json-file` -> `working-directory: js`; `node-version-file: false` so setup-node stays the only Node installer - actions/stale v10.2.0 -> v11.0.0 (SHA) - recce_cloud README CI example: checkout v7, setup-python v7 pre-commit hooks: - pre-commit-hooks v5.0.0 -> v6.0.0 - black 26.3.1 -> 26.10.1 - isort 6.0.1 -> 9.0.2 (reflows one import in recce/cli.py) - flake8 7.2.0 -> 7.4.1 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Jared Scott <jared.scott@datarecce.io>
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.
PR checklist
What type of PR is this?
chore (dependencies)
What this PR does / why we need it:
This PR consolidates the 4 open Dependabot PRs and takes each to the newest version that passed this run's checks. It also applies the updates Dependabot missed. Those include the whole Python lockfile: Dependabot only edits
pyproject.toml, souv.lockhad drifted behind what a freshpip install recceresolves.Dependabot-driven changes (npm)
@sentry/nextjsso the family stays on one major.Audit-driven changes
uv.lock(~110 packages)pyproject.tomlranges. Includes fastapi 0.146, pydantic 2.14.1, posthog 7.71, sentry-sdk 2.72, boto3 1.43.114, dbt-core 1.12.6, and mcp 1.28.1 → 2.3.0 (fixes CVE-2026-59951). Also jaraco-context 6.0.1 → 6.1.2 (fixes CVE-2026-23949).<31.0(locked 30.11.0)<30.22(locked 30.21.0)PluginValidationError).Security: npm audit goes from 17 findings on
mainto 1. The one left isbraces, via@tailwindcss/cli→@parcel/watcher, and has no patched release. pip-audit goes from 2 CVEs to 0.Deferred / separate PRs recommended
minimumReleaseAge. Dependabot will pick it up next cycle..github/dependabot.yml, so skipped.GitHub Actions + pre-commit (second commit)
A new
github-actionsecosystem in.github/dependabot.ymlnow tracks these going forward, covering both floating tags and SHA pins.pull_request_target/workflow_run;release-uionly runs from nightly/release, so no impact.app-idis kept: it's deprecated in favor ofclient-idbut still supported. See notes.enable-cache: falsekeepsrelease.yaml/nightly.yaml(publishing) uncached as before.versionrenamed torelease. v3's debug-IDinjectonly acts whensourcemapsis set, which we don't pass.tokeninput: no version of this action has accepted it, and the push authenticates via checkout's app token, as it has since checkout@v6 (2025-12).package-json-file→working-directory: js.node-version-file: falsestops v3 auto-installing a second Node fromjs/.nvmrcon top of setup-node.Verification:
with:key in every step was checked against the target version'saction.yml: no unknown or missing-required inputs remain.main, all pre-existing shellcheck style notes, and nothing new.recce_cloud/README.mdCI example was bumped to checkout v7 and setup-python v7.autoupdatepicked 10.0.0b1; pinned to latest stable instead)The only reformatting the new hook versions cause is one isort reflow in
recce/cli.py. To isolate it, I formatted the repo with the old hooks and the new hooks on identical trees and diffed the results.pre-commit run --all-filesalso surfaces pre-existing whitespace/black drift in about 40 files, including test fixtures andrecce/event/SENTRY_DNS. Those files were left untouched because that drift exists under the old versions too. The locked dev tools (black 26.10.1, isort 9.0.2, flake8 7.4.1) now match the hook revisions.Which issue(s) this PR fixes:
Closes #1569
Closes #1570
Closes #1571
Closes #1572
Follow-up: DRC-4901 (lift the sqlglot cap)
Special notes for your reviewer:
sqlglot cap (
<30.22) restores product behavior. Starting with 30.22.0 (2026-10-09),qualify()stops attributing an unqualified column to the sole source table when that table has no schema entry. It raisesColumn 'a' could not be resolvedinstead. 35 of the 50tests/util/test_cll.pytests fail. In production, CLL fails for any model whose upstream table is missing fromcatalog.json. The old<31.0range meant fresh installs were already pulling 30.23, and our toxdbtlatestenv (which resolves fresh) would have gone red on its next run. DRC-4901 tracks adaptingcll()and lifting the cap.Sentry 11. The OSS app never calls
Sentry.initorwithSentryConfig. It only usescaptureException,ErrorBoundaryandFallbackRender, and none of those changed in v11. v11's new data-collection defaults therefore don't apply here.@datarecce/uiconsumer contract. The optional peer@sentry/reactis widened from^10.0.0to^10.0.0 || ^11.0.0, so consumers on 10 aren't broken. Caret floors in uidependenciesare deliberately left alone, andpnpm dedupekeeps a single copy of each package in the monorepo. The exact pins (@amplitude/unified,posthog-js,@zumer/snapdom) move in lockstep with the root overrides, as in previous consolidations.msw 3:
worker.start({ onUnhandledRequest })is renamed toonUnhandledFrame.public/mockServiceWorker.jswas regenerated, and it's byte-identical to the msw 3.0.3 package copy.Biome guard: 2.5.15 was re-verified on macOS arm64 (708-file
pnpm lintplusbiome check src/, no stack overflow), andEXPECTED_BIOMEwas bumped in this same commit.New transitive packages reviewed for supply-chain risk.
sentryis Sentry's new CLI SDK, which replaces@sentry/cli. It's maintained byzeegandsentry-botand has no install scripts.yuku-*arrives viatsdown→rolldown-plugin-dts0.28.8. It's a declared dependency, build-time only, with no install scripts.mcp2.x (httpx2,mcp-types,truststore),mypy,toxandtox-uv.Pre-existing, not caused by this PR:
main, and the suite isn't run in CI.black --checkflags the same 22 files under the pinned 26.3.1 and the newly locked 26.10.1.Late-arriving Dependabot PRs: daily-release packages (boto3, posthog, Sentry, AWS SDKs) may get re-filed shortly after merge. That's expected churn, not an audit miss.
Release-path workflows can't run in PR CI.
release,nightly,release-ui,bump,staleandaddress-dependabottrigger only on tags, schedules or dispatch. Their action changes were verified statically (inputs checked againstaction.yml, plus actionlint), so watch the next nightly run.Follow-up: an org secret
RECCE_ACTION_BOT_CLIENT_IDexists, socreate-github-app-tokencould switch fromapp-idtoclient-id. I didn't make that switch because I couldn't confirm the secret's value and repo visibility from a PR run, and a wrong value would only show up as a failed release. Switch it once someone can test it with a manualaddress-dependabotdispatch.Test plan
pnpm lint(708 files),pnpm type:check,pnpm test: 211 files, 4444 passedpnpm --filter @datarecce/ui build+pnpm test:dist(19/19),pnpm buildCI=true pnpm install --frozen-lockfilemainpytest tests/: 2034 passed, 5 skipped;pytest recce_cloud/tests: 361 passeduv run flake8(recce, tests, recce_cloud);uv lock --checkpnpm audit,pip-auditon the exported lockgh pr checkson commit 1: all green (tox for every dbt/Python version, MCP smoke tests on mcp 1.29/2.0, CodeQL, codecov)pre-commit runwith the new hook versions on all changed files;pytest tests/test_cli.py(23 passed) after the isort reflowgh pr checkson commit 2 (new action versions)Does this PR introduce a user-facing change?:
🤖 Generated with Claude Code