Skip to content

chore(deps): update idna requirement from <4,>=3.15 to >=3.16,<4#90

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/idna-gte-3.16-and-lt-4
Closed

chore(deps): update idna requirement from <4,>=3.15 to >=3.16,<4#90
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/idna-gte-3.16-and-lt-4

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github May 28, 2026

Updates the requirements on idna to permit the latest version.

Changelog

Sourced from idna's changelog.

3.16 (2026-05-22)

  • Add a command-line interface (python -m idna, also available as the idna script). Encodes or decodes one or more domains supplied as arguments or on standard input, with options to select A-label or U-label output and control error handling.
  • Raise the minimum supported Python version to 3.9
  • Various code quality improvements

3.15 (2026-05-12)

  • Enforce DNS-length cap on individual labels early in check_label, short-circuiting contextual-rule processing for oversized input while staying compatible with UTS 46 usage.
  • Tidy core helpers: hoist bidi category sets to module-level frozensets (avoiding per-codepoint list construction), simplify length checks, and reuse the shared _unicode_dots_re from idna.core in the codec module.
  • Use raise ... from err for proper exception chaining and switch internal string formatting to f-strings.
  • Allow flit_core 4.x in the build backend.
  • Expand the ruff lint set (flake8-bugbear, flake8-simplify, pyupgrade, perflint) and apply the surfaced fixes; pin lint CI to Python 3.14.
  • Add Dependabot configuration for GitHub Actions.
  • Convert README and HISTORY from reStructuredText to Markdown.
  • Reference CVE-2026-45409 for the 3.14 advisory in place of the initial GHSA identifier.

Thanks to Felix Yan, Stan Ulbrych, and metsw24-max for contributions to this release.

3.14 (2026-05-10)

  • Removed opportunity to process long inputs into quadratic time by rejecting oversize inputs up-front. Closes a bypass of the CVE-2024-3651 mitigation. [CVE-2026-45409]

Thanks to Stan Ulbrych for reporting the issue.

3.13 (2026-04-22)

  • Correct classification error for codepoint U+A7F1

3.12 (2026-04-21)

  • Update to Unicode 17.0.0.
  • Issue a deprecation warning for the transitional argument.
  • Added lazy-loading to provide some performance improvements.
  • Removed vestiges of code related to Python 2 support, including

... (truncated)

Commits
  • 6d1a0de Release 3.16
  • 4e6cbe2 Demote installation instruction to usage section
  • 223533c Merge branch 'readme-simplification' into release-3.16
  • b1640b2 Bump version to 3.16rc0
  • 3a86113 Update history for 3.16 release
  • d4bc9e7 Merge pull request #246 from kjd/python-3.9
  • a21d9fc Update deprecation policy
  • b464926 Raise minimum Python to 3.9 and modernize typing
  • 7f3b15e Explicit example not needed
  • 7530c70 Remove unnecessary print()
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [idna](https://github.com/kjd/idna) to permit the latest version.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.md)
- [Commits](kjd/idna@v3.15...v3.16)

---
updated-dependencies:
- dependency-name: idna
  dependency-version: '3.16'
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels May 28, 2026
@bk86a
Copy link
Copy Markdown
Owner

bk86a commented May 28, 2026

Superseded by #94, which bundles this bump together with the other three open Dependabot PRs and regenerates requirements.lock (also pulling starlette to 1.1.0 to clear PYSEC-2026-161 that was failing the CI security gate on this PR). Closing in favour of the bundled release.

@bk86a bk86a closed this May 28, 2026
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot Bot commented on behalf of github May 28, 2026

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot Bot deleted the dependabot/pip/idna-gte-3.16-and-lt-4 branch May 28, 2026 09:40
bk86a added a commit that referenced this pull request May 28, 2026
Bundles the four open Dependabot PRs into a single release rather than
landing them one-by-one with four lockfile-update follow-ups:

- fastapi 0.136.1 -> 0.136.3 (#89)
- uvicorn  >=0.47 -> >=0.48   (#91)
- idna     >=3.15 -> >=3.16   (#90)
- pytest-asyncio 1.3.0 -> 1.4.0 (#92, dev)

While regenerating requirements.lock to clear those bumps, the resolver
also pulls starlette from 0.52.1 to 1.1.0 -- this clears PYSEC-2026-161
(fix in 1.0.1), which the CI security gate had started reporting on
every open Dependabot PR. fastapi 0.136.3 declares starlette>=0.46.0
with no upper bound, so the 1.x bump is in-range. Dependabot does not
open PRs for undeclared transitives, hence the direct lockfile bump.

Bumps __version__ to 0.19.3 and folds the [Unreleased] CHANGELOG block
into a dated [0.19.3] release. No app-code or API changes.

Test plan:
- 222/222 pytest pass against the regenerated lockfile
- ruff check app/ clean
- bandit -r app/ -ll clean
- pip-audit -r requirements.lock reports no known vulnerabilities

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant