Skip to content

ci: bump bandit to 1.9.4 for Python 3.14 - #247

Merged
pdelsante merged 1 commit into
developfrom
fix/bandit-python-3.14
Oct 28, 2026
Merged

pdelsante merged 1 commit into
developfrom
fix/bandit-python-3.14

Conversation

@pdelsante

Copy link
Copy Markdown
Member

Goal

Make bandit actually scan code on Python 3.14.

Why

bandit 1.8.x reads ast.Num, which Python 3.14 removed. On a 3.14 job every plugin logs module 'ast' has no attribute 'Num' on every file and the step still passes, so nothing is scanned (seen on certego/babel#33).

How

  1. bandit~=1.8.3 → bandit~=1.9.4 in configurations/python_linters/requirements-linters.txt and in its self-test copy under .github/.
  2. Checked bandit 1.9.4 on Python 3.14.10 against the babel source: no internal errors.

Out of scope

  • python -m unittest discover exits 5 on Python ≥ 3.12 when a repo has no tests. Repos are expected to ship a test, so it isn't handled here.
  • Other linters (pylint 3.3, flake8-django fork) are not checked on 3.14.

🤖 Generated with Claude Code

bandit 1.8 reads ast.Num, which Python 3.14 removed: every plugin raises an
internal error on every file while the step stays green, so nothing is scanned.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@pdelsante
pdelsante marked this pull request as ready for review October 27, 2026 12:01
@pdelsante
pdelsante merged commit 928c98f into develop Oct 28, 2026
5 checks passed
@pdelsante
pdelsante deleted the fix/bandit-python-3.14 branch October 28, 2026 11:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant