ci: add Dependabot config for uv and Docker dependencies - #120
Merged
Merged
Conversation
Monthly grouped updates for the uv lock (Wednesday, 7-day cooldown) and the root Dockerfile (Tuesday), each capped at 5 open PRs. Two ignore rules on the uv ecosystem: - datajoint >=2.0: 2.x renamed its config file to datajoint.json and ignores the dj_local_conf.json the BrainCOGS repos ship. - setuptools >=82: datajoint <2.0 imports pkg_resources on every import; setuptools 83 removed it with no installable replacement. No github-actions entry (no .github/workflows/ exists) and no pip entry for requirements.txt (legacy; nothing in the repo consumes it, and it would duplicate the uv PRs). Assisted-by: ClaudeCode:claude-opus-5
tabedzki
force-pushed
the
tabedzki/ci/dependabot-config
branch
from
September 21, 2026 16:21
b89c920 to
e4dac69
Compare
tabedzki
added a commit
that referenced
this pull request
Sep 21, 2026
The `groups` added in #120 only batch scheduled version updates; a group defaults to `applies-to: version-updates`, and security updates are grouped independently. That is why the alert-driven fixes still arrive as one PR per package. Add an explicit `security-updates` group to both the uv and docker entries (and make the existing groups' scope explicit) so each ecosystem's security fixes land as one PR. Assisted-by: ClaudeCode:claude-opus-5
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.
🤖 Human guided, AI assisted PR (using this skill). AI text below. 🤖
What changed
Adds
.github/dependabot.yml(the repo had Dependabot alerts and automated security fixes enabled, but no config file), modeled on the sibling configs in BrainCOGS/tech_calendar_streamlit#111, BrainCOGS/WaterPubsGUI#4 and BrainCOGS/U19-Data-Viewer#15.uv/python),deps:prefix, limit 5docker/docker),docker:prefix, limit 5Ignore rules on
uv(each commented inline with when to remove it):datajoint >=2.0— 2.x renamed its config file todatajoint.jsonand ignores thedj_local_conf.jsonthe BrainCOGS repos ship.pyproject.tomlalready pinsdatajoint<2.0.0.setuptools >=82— datajoint <2.0 doesimport pkg_resourcesinplugin.py, whichconnection.pyimports on everyimport datajoint. setuptools 83.0.0 removedpkg_resourcesentirely and there is no installable replacement (pkg_resourceswas never published separately;importlib.metadatahas no equivalent for theegg_infopath datajoint uses). In a clean venv the import fails withModuleNotFoundError: No module named 'pkg_resources'— verified in BrainCOGS/tech_calendar_streamlit#110. Consequently the setuptools alert (GHSA-h35f-9h28-mq5c) is being dismissed as tolerable risk rather than fixed; low exposure (ReDoS over trusted package metadata).Deliberately omitted:
github-actions—.github/workflows/does not exist in this repo. Add a Monday-slot entry if workflows are introduced.pipforrequirements.txt— nothing in the repo consumes it (README instructsuv sync;Dockerfiledoespip install -e; no script references it). It's legacy, and apipentry alongsideuvwould just produce duplicate PRs. Deleting the file is a separate decision.Why this PR first
Automated security fixes are already on. The ignore rules need to reach
masterbefore the lock-upgrade PR lands, otherwise Dependabot will keep regenerating an unmergeable setuptools 81→83 bump.Verification
uv run --isolated --no-project --with pyyaml python -c "import yaml; ..."— parses; printsdocker / 5 []anduv / 5 ['datajoint', 'setuptools'].gh pr list --author app/dependabot --state open: Bump anyio from 4.13.0 to 4.14.2 #119 anyio, Bump soupsieve from 2.8.4 to 2.9 #118 soupsieve, Bump gitpython from 3.1.50 to 3.1.59 #116 gitpython, Bump cryptography from 48.0.0 to 50.0.0 #115 cryptography, Bump tornado from 6.5.6 to 6.5.8 #113 tornado, Bump icalendar from 7.1.2 to 7.1.3 #110 icalendar, Bump pydantic-settings from 2.14.1 to 2.14.2 #93 pydantic-settings — no setuptools PR to close. The others will be superseded by the follow-upfix(deps)lock-upgrade PR.Assisted-by: ClaudeCode:claude-opus-5