Skip to content

Bump mypy from 2.2.0 to 2.3.0 - #171

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/mypy-2.3.0
Open

Bump mypy from 2.2.0 to 2.3.0#171
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/mypy-2.3.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 3, 2026

Copy link
Copy Markdown
Contributor

Bumps mypy from 2.2.0 to 2.3.0.

Changelog

Sourced from mypy's changelog.

Mypy Release Notes

Next Release

Packaging changes

Mypy 2.3

We've just uploaded mypy 2.3.0 to the Python Package Index (PyPI). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows:

python3 -m pip install -U mypy

You can read the full documentation for this release on Read the Docs.

The Upcoming Switch to the New Native Parser

We are planning to enable the new native parser (--native-parser) by default soon. We recommend that you test the native parser in your projects and report any issues in the mypy issue tracker.

Mypyc Free-threading Memory Safety

Free-threaded Python builds that don't have the GIL require additional synchronization primitives or lock-free algorithms to ensure memory safety when there are race conditions (for example, when a thread reads a list item while another thread writes the same list item concurrently). This release greatly improves memory safety of free threading.

List operations are now memory-safe on free threaded Python builds, even in the presence of race conditions. This has some performance cost. For list-heavy workloads, using librt.vecs.vec instead of list is often significantly faster, but note that vec is not (and likely won't be) fully memory safe, and the user is expected to avoid race conditions. The newly introduced librt.threading.Lock helps with this. Using variable-length tuples can also be more efficient than lists, since tuples are immutable and don't require expensive synchronization to ensure memory safety.

Instance attribute access is also (mostly) memory safe now on free-threaded builds in the presence of race conditions. We are planning to fix the remaining unsafe cases in a future release.

Full list of changes:

  • Make attribute access memory safe on free-threaded builds (Jukka Lehtosalo, PR 21705)
  • Fix unsafe borrowing of instance attributes with free-threading (Jukka Lehtosalo, PR 21688)
  • Make list get/set item more memory safe on free-threaded builds (Jukka Lehtosalo, PR 21683)
  • Don't borrow list items on free-threaded builds (Jukka Lehtosalo, PR 21679)
  • Make multiple assignment from list memory-safe on free-threaded builds (Jukka Lehtosalo, PR 21684)

... (truncated)

Commits
  • 8aabf84 Drop +dev from version
  • 4d8ad2a Update changelog for 2.3 release (#21728)
  • 2c21546 [mypyc] Update documentation of race conditions under free threading (#21726)
  • a9f62a3 [mypyc] Make attribute access memory safe on free-threaded builds (#21705)
  • 0faa413 Use PYODIDE environment variable for Emscripten cross-compilation detection...
  • 3d75cdb [mypyc] Borrow final attributes more aggressively (#21702)
  • 24c237d [mypyc] Improve documentation of Final (#21713)
  • b5be217 [mypyc] Update free threading Python compatibility docs (#21711)
  • cbcb51a Narrow for frozendict membership check (#21709)
  • af2bc0f Sync typeshed (#21707)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Aug 3, 2026
@dependabot
dependabot Bot requested a review from a team as a code owner August 3, 2026 13:15
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Aug 3, 2026
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

🤖 Claude Code Review

Confirmed this is a routine Dependabot pattern in this repo — no prior dependency bumps updated CHANGELOG.md. Now I'll complete the review.

Senzing Code Review

PR summary: Dependabot bump of mypy from 2.2.02.3.0 in development-requirements.txt (dev-only dependency, patch/minor version bump).

Code Quality

  • Style conventions — Single-line version pin change, consistent with the alphabetized pinned-dependency format already used in development-requirements.txt:9.
  • No commented-out code — N/A, no code changed.
  • Meaningful variable names — N/A, no code changed.
  • DRY principle — N/A, dependency manifest only.
  • Defects/bugs/security — No logic changes. This is a dev-tooling dependency (mypy), not shipped in production, so risk surface is minimal. No evidence of breaking changes between 2.2.0 and 2.3.0 that would affect this repo (can't verify upstream changelog without network access, but this is standard automated-bot practice matching prior merged bumps, e.g. e5b1950, 8d83e72).
  • Project CLAUDE.md checkmapper-npi has no repo-level .claude/CLAUDE.md (only .claude/commands/senzing-code-review.md and .claude/settings.json exist), so this item doesn't apply here.

Testing

  • N/A — No new functions, endpoints, or logic introduced; a version bump doesn't require new tests. CI running mypy==2.3.0 against the existing codebase serves as the effective validation.

Documentation

  • README — Not applicable, no user-facing change.
  • API docs — Not applicable.
  • Inline comments — Not applicable.
  • ⚠️ CHANGELOG.md — Not updated (CHANGELOG.md:9 ## [Unreleased] unchanged), but this matches established precedent: every prior Dependabot dev-dependency bump in this repo's history (e5b1950, 8d83e72, 77c8c71, etc.) also skipped CHANGELOG updates. Not a blocker.
  • Markdown/CommonMark — No markdown files touched in this diff.

Security

  • No hardcoded credentials — None present.
  • Input validation — N/A.
  • Error handling — N/A.
  • No sensitive data in logs — N/A.
  • No .lic files or AQAAAD-prefixed strings — Diff contains only a version string change; nothing matching that pattern.

Verdict

Approve. This is a low-risk, automated dev-dependency patch bump consistent with the repo's established Dependabot pattern. No action items.

Automated code review analyzing defects and coding standards

@dependabot
dependabot Bot force-pushed the dependabot/pip/mypy-2.3.0 branch from 70af601 to dc1a9df Compare August 3, 2026 13:17
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

🤖 Claude Code Review

No project-level CLAUDE.md in this repo (mapper-npi/.claude has no CLAUDE.md, only settings/commands). Now reviewing the diff.

PR Code Review

Change summary: development-requirements.txt bumps mypy from 2.2.02.3.0 (a Dependabot-style dependency pin bump). Single line changed.

Code Quality

  • Style conventions — Pin format (mypy==2.3.0) matches the surrounding lines exactly; alphabetical ordering in the file is preserved.
  • No commented-out code — N/A, no code changed.
  • Meaningful variable names — N/A.
  • DRY principle — N/A, single dependency version bump.
  • Defects — No logic, crash, race-condition, or memory-leak risk; this is a dev-tool version pin only. No indication of a breaking mypy 2.3.0 change being handled/unhandled here, but that's a CI concern, not a defect in the diff itself.
  • Project CLAUDE.md checkmapper-npi has no repo-level .claude/CLAUDE.md to evaluate (only .claude/settings.json and a senzing-code-review command exist). The build-resources/.claude/CLAUDE.md I read is from the build-resources submodule/checkout itself, general-purpose and not local-environment-specific — not applicable to this diff.

Testing

  • Unit tests — N/A, no new functions.
  • Integration tests — N/A, no new endpoints.
  • Edge cases — N/A.
  • ⚠️ Test coverage > 80% — Not measurable from this diff; unrelated to a dependency bump. No action needed.

Documentation

  • README — Not needed for a dev-dependency bump.
  • API docs — N/A.
  • Inline comments — N/A.
  • CHANGELOG.md updated — Not updated in this diff. Per the Senzing standard (build-resources/.claude/CLAUDE.md: "CHANGELOG.md should be updated for all changes"), this should be flagged — though dependency-bot PRs conventionally skip changelog entries in most Senzing repos; confirm this repo's convention before requiring it.
  • Markdown/CommonMark/prettier — No markdown files touched.

Security

  • No hardcoded credentials — Clean.
  • Input validation — N/A.
  • Error handling — N/A.
  • No sensitive data in logs — N/A.
  • License file (.lic) / AQAAAD check — No .lic files or AQAAAD-prefixed strings present in this diff.

Overall

Low-risk, mechanical dependency bump (mypy 2.2.0 → 2.3.0) consistent with the repo's existing Dependabot pattern (recent commits show similar bumps for coverage and mypy). Only soft finding: CHANGELOG.md not updated — flag if this repo enforces changelog entries for dependency bumps; otherwise no blocking issues.

Automated code review analyzing defects and coding standards

Bumps [mypy](https://github.com/python/mypy) from 2.2.0 to 2.3.0.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](python/mypy@v2.2.0...v2.3.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 2.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/pip/mypy-2.3.0 branch from dc1a9df to 29a7fbd Compare August 3, 2026 13:20
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

🤖 Claude Code Review

This is a Dependabot-style dependency bump (mypy 2.2.0 → 2.3.0 in development-requirements.txt). Here's the review:

PR Code Review

Scope: Single-line change bumping mypy from 2.2.0 to 2.3.0 in development-requirements.txt:9 (pinned dev/lint dependency, not shipped in production).

Code Quality

  • Style conventions — Follows the file's existing pinned (==), alphabetically-sorted format. No deviation.
  • No commented-out code — N/A, single dependency version change.
  • Meaningful variable names — N/A.
  • DRY principle — N/A.
  • Defects — No logic changes; this is a version pin bump. Standard risk for a mypy point-release bump is new/stricter type-checking rules surfacing pre-existing type errors in CI, but that's a CI-run concern, not a defect in this diff itself. No secrets, no injected code.
  • CLAUDE.md considerations — Reviewed build-resources/.claude/CLAUDE.md. It's already appropriately general (documents repo purpose, linting, workflows) with no local-environment-specific paths, credentials, or machine-specific assumptions. Not affected by this PR anyway since the change is in the consuming repo, not this config file.

Testing

  • N/A for this change — No new functions/endpoints introduced, so unit/integration test items don't apply. Correctness of the bump itself is only validated by whatever CI (flake8/mypy/pylint run) executes afterward — worth confirming the pipeline actually ran mypy 2.3.0 against the codebase before merge and passed, since a minor version can introduce new strict checks.
  • N/A Test coverage > 80% — Not applicable to a dependency-pin change.

Documentation

  • CHANGELOG.md not updatedCHANGELOG.md still only has placeholder entries ("Thing 4", "Thing 5") under [Unreleased] with no line for this dependency bump. Per the repo's own standard (build-resources/.claude/CLAUDE.md and the checklist), dependency updates should be reflected in CHANGELOG.md, though many teams intentionally exclude routine Dependabot bumps from the changelog — confirm this repo's convention (recent commit history shows similarly unlogged bumps like #170, #169, #168 for virtualenv/coverage/mypy, so this appears to be existing, accepted practice for automated dependency PRs).
  • N/A README / API docs / inline comments — Not applicable.
  • N/A CommonMark/prettier formatting — No markdown files touched in this diff.

Security

  • No hardcoded credentials
  • Input validation — N/A, dependency version bump only.
  • Proper error handling — N/A.
  • No sensitive data in logs — N/A.
  • No .lic files or AQAAAD-prefixed strings — Confirmed absent from this diff.

Summary

This is a low-risk, mechanical dev-dependency version bump with no functional code changes. Nothing blocking. The only soft note is the CHANGELOG gap, which appears consistent with this repo's existing practice for automated dependency PRs, so it's informational rather than a required fix.

Automated code review analyzing defects and coding standards

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