Skip to content

[flake8-bandit] Allow raw strings in suspicious-mark-safe-usage (S308) #16702 #16770

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Mar 17, 2025

Conversation

mfontanaar
Copy link
Contributor

@mfontanaar mfontanaar commented Mar 15, 2025

Summary

Stop flagging each invocation of django.utils.safestring.mark_safe (also available at, django.utils.html.mark_safe) as an error.

Instead, allow string literals as valid uses for mark_safe.

Also, update the documentation, pointing at django.utils.html.format_html for dynamic content generation use cases.

Closes #16702

Test Plan

I verified several possible uses, but string literals, are still flagged.

Stop flagging each invocation of `django.utils.safestring.mark_safe`
(also available at, `django.utils.html.mark_safe`) as an error.

Instead, allow literal strings as valid uses for `mark_safe`.

Also, update the documentation, pointing at
`django.utils.html.format_html` for dynamic content generation use
cases.

I verified several possible uses, but string literals, are still
flagged.
@ntBre ntBre added the rule Implementing or modifying a lint rule label Mar 15, 2025
@mfontanaar mfontanaar changed the title [flake8-bandit] Allow raw strings in suspicious-mark-safe-usage (S308) #16702 [flake8-bandit] Allow raw strings in suspicious-mark-safe-usage (S308) #16702 Mar 16, 2025
Copy link
Member

@MichaReiser MichaReiser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks and I like the added reference to format_html

@MichaReiser MichaReiser added the bug Something isn't working label Mar 17, 2025
@MichaReiser MichaReiser reopened this Mar 17, 2025
Copy link
Contributor

github-actions bot commented Mar 17, 2025

ruff-ecosystem results

Linter (stable)

✅ ecosystem check detected no linter changes.

Linter (preview)

✅ ecosystem check detected no linter changes.

Formatter (stable)

✅ ecosystem check detected no format changes.

Formatter (preview)

✅ ecosystem check detected no format changes.

@MichaReiser MichaReiser merged commit 4da6936 into astral-sh:main Mar 17, 2025
21 checks passed
dcreager added a commit that referenced this pull request Mar 17, 2025
* main: (25 commits)
  [syntax-errors] Parenthesized context managers before Python 3.9 (#16523)
  [ci]: Disable wheel testing on `ppc64le` (#16793)
  [red-knot] Stabilize `negation_reverses_subtype_order` property test (#16801)
  [red-knot] Emit error if int/float/complex/bytes/boolean literals appear in type expressions outside `typing.Literal[]` (#16765)
  [ci] Use `git diff` instead of `changed-files` GH action (#16796)
  [syntax-errors] Improve error message and range for pre-PEP-614 decorator syntax errors (#16581)
  [`flake8-bandit`] Allow raw strings in `suspicious-mark-safe-usage` (`S308`) #16702 (#16770)
  [`refurb`] Avoid panicking `unwrap` in `verbose-decimal-constructor` (`FURB157`) (#16777)
  [red-knot] Add `--color` CLI option (#16758)
  [internal]: Upgrade salsa (#16794)
  Pin dependencies (#16791)
  [internal]: Update indirect dependencies (#16792)
  [ci]: Fixup codspeed upgrade (#16790)
  Update Rust crate compact_str to 0.9.0 (#16785)
  Update Rust crate clap to v4.5.32 (#16778)
  Update Rust crate codspeed-criterion-compat to v2.9.1 (#16784)
  Update Rust crate quote to v1.0.40 (#16782)
  Update Rust crate ordermap to v0.5.6 (#16781)
  Update cloudflare/wrangler-action action to v3.14.1 (#16783)
  Update Rust crate env_logger to v0.11.7 (#16779)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working rule Implementing or modifying a lint rule
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[S308] mark_safe for HTML constants
3 participants