Skip to content

deps(deps-dev): bump the development-dependencies group with 2 updates - #237

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/development-dependencies-81a16c27c4
Open

deps(deps-dev): bump the development-dependencies group with 2 updates#237
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/development-dependencies-81a16c27c4

Conversation

@dependabot

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

Copy link
Copy Markdown
Contributor

Updates the requirements on braintools and mypy to permit the latest version.
Updates braintools to 0.3.0

Release notes

Sourced from braintools's releases.

v0.3.0

This release completes the library-wide correctness audit campaign begun in 0.2.0. The two remaining major modules — cogtask and metric — received their first dedicated static audits, while optim, trainer, visualize, surrogate, and init underwent deeper second-pass re-audits whose findings were each verified against reference implementations (optax 0.2.6, torch.optim, PyTorch's NAdam) and numeric reproductions. Every fix is locked in behind a regression test suite. The changes are corrections to existing behavior — no intentional API breaks — but the breadth and the genuine numerical/algorithmic bugs corrected (double-applied SM3 momentum, a centered RMSprop that was a silent no-op, dropped Parallel branches in cogtask, distributed broadcast that failed on more than one device, and more) warrant the minor-version bump.

Highlights

  • Audit campaign completed: cogtask and metric are now audited, and the five previously-audited modules were re-audited against their reference implementations, replacing plausible-but-unverified behavior with reference-checked correctness.
  • Real algorithmic fixes: SM3 no longer applies momentum twice; RMSprop(centered=True) actually centers; Nadam honors momentum_decay; cogtask.Parallel no longer silently drops compound (>> / Repeat) branches; distributed broadcast() works on more than one device.
  • Restored public API: cogtask.create_task and metric.L1Loss are now importable from their packages (both were documented but absent from __all__).
  • Regression coverage: each audited module ships a dedicated regression test suite (visualize exercised source at 99%, surrogate at 100%).

Added

  • braintools.cogtask.create_task is now exported from the package (#122).
  • braintools.metric.L1Loss is now exported (documented but previously missing from __all__) (#121).

Fixed

braintools.optim (#120) — re-audit verified against optax 0.2.6 / torch.optim

  • SM3 no longer applies first-moment momentum twice; momentum=0 now truly disables it (matches optax.sm3).
  • RMSprop(centered=True) uses scale_by_stddev instead of silently falling back to scale_by_rms.
  • Nadam implements PyTorch-style scheduled momentum so momentum_decay takes effect (verified against torch.optim.NAdam).
  • LBFGS reads the live LR schedule each step instead of freezing the LR at construction; CosineAnnealingWarmRestarts.step(epoch=...) recomputes T_cur/T_i from the absolute epoch.
  • Fail-fast validation of optimizer hyperparameters and scheduler enums;

... (truncated)

Changelog

Sourced from braintools's changelog.

Version 0.3.0 (2026-06-19)

This release completes the library-wide correctness audit campaign begun in 0.2.0. The two remaining major modules — cogtask and metric — received their first dedicated static audits, while optim, trainer, visualize, surrogate, and init underwent deeper second-pass re-audits whose findings were each verified against reference implementations (optax 0.2.6, torch.optim, PyTorch's NAdam) and numeric reproductions. Every fix is locked in behind a regression test suite. The changes are corrections to existing behavior — no intentional API breaks — but the breadth and the genuine numerical/algorithmic bugs corrected (double-applied SM3 momentum, a centered RMSprop that was a silent no-op, dropped Parallel branches in cogtask, distributed broadcast that failed on more than one device, and more) warrant the minor-version bump.

Highlights

  • Audit campaign completed: cogtask and metric are now audited, and the five previously-audited modules were re-audited against their reference implementations, replacing plausible-but-unverified behavior with reference-checked correctness.
  • Real algorithmic fixes: SM3 no longer applies momentum twice; RMSprop(centered=True) actually centers; Nadam honors momentum_decay; cogtask.Parallel no longer silently drops compound (>> / Repeat) branches; distributed broadcast() works on more than one device.
  • Restored public API: cogtask.create_task and metric.L1Loss are now importable from their packages (both were documented but absent from __all__).
  • Regression coverage: each audited module ships a dedicated regression test suite (visualize exercised source at 99%, surrogate at 100%).

Added

  • braintools.cogtask.create_task is now exported from the package (#122).
  • braintools.metric.L1Loss is now exported (documented but previously missing from __all__) (#121).

Fixed

braintools.optim (#120) — re-audit verified against optax 0.2.6 / torch.optim

  • SM3 no longer applies first-moment momentum twice; momentum=0 now truly disables it (matches optax.sm3).
  • RMSprop(centered=True) uses scale_by_stddev instead of silently falling back to scale_by_rms.
  • Nadam implements PyTorch-style scheduled momentum so momentum_decay takes effect (verified against torch.optim.NAdam).
  • LBFGS reads the live LR schedule each step instead of freezing the LR at construction; CosineAnnealingWarmRestarts.step(epoch=...) recomputes T_cur/T_i from the absolute epoch.

... (truncated)

Commits
  • f37f3c0 release: 0.3.0 (#123)
  • bc6da89 delete issues doc
  • d6e86bf fix(cogtask): repair Parallel compound children, make_encoder scalar, and bro...
  • 072c6cd fix(metric): correctness, brainunit, and edge-case fixes across braintools.me...
  • 6a29629 fix(optim): re-audit fixes — SM3 double momentum, RMSprop centered, NAdam sch...
  • e9d4ae8 fix(trainer): correct LR-monitor logging, save_top_k pruning, resume, and dis...
  • 336bebc fix(visualize): resolve audit issues, add regression tests (>90% cov) (#118)
  • 252d4ff fix(surrogate): make LogTailedRelu.surrogate_fun continuous, fix docs (#117)
  • 1189c9d delete issues doc
  • d92bc18 fix(init): correct TruncatedNormal array std, param() State handling & docs (...
  • Additional commits viewable in compare view

Updates mypy to 2.3.1

Changelog

Sourced from mypy's changelog.

Mypy 2.3.1

  • Fix mypyc crash on double yielding Iterators (Daniël van Noord, PR 21826)
  • Fix mypyc default_factory for inherited dataclass (Daniël van Noord, PR 21785)
  • Clear mypyc coroutine env on coroutine completion (Piotr Sawicki, PR 21734)
  • Fix crash when unpacking return value from overload (Shantanu, PR 21830)

Acknowledgements

Thanks to all mypy contributors who contributed to this release:

  • Agriya Khetarpal
  • Ethan Sarp
  • Ivan Levkivskyi
  • Jingchen Ye
  • Jukka Lehtosalo
  • Piotr Sawicki
  • Shantanu
  • Tom Bannink
  • Viktor Szépe
  • ygale

I'd also like to thank my employer, Dropbox, for supporting mypy development.

Mypy 2.2

We've just uploaded mypy 2.2.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.

Support for Closed TypedDicts (PEP 728)

Mypy now supports closed TypedDicts as specified in PEP 728. A closed TypedDict cannot have extra keys beyond those explicitly defined. This allows the type checker to determine that certain operations are safe when they otherwise wouldn't be due to the potential presence of unknown keys.

You can use the closed keyword argument with TypedDict:

HasName = TypedDict("HasName", {"name": str})
HasOnlyName = TypedDict("HasOnlyName", {"name": str}, closed=True)
Movie = TypedDict("Movie", {"name": str, "year": int})
movie: Movie = {"name": "Nimona", "year": 2023}
has_name: HasName = movie  # OK: HasName is open (default)
has_only_name: HasOnlyName = movie  # Error: HasOnlyName is closed and Movie has extra "year" key
</tr></table>

... (truncated)

Commits
  • d642c44 Bump version to 2.3.1
  • a392429 [mypyc] Fix crash on double yielding Iterators (#21826)
  • 4843e77 [mypyc] Fix default_factory for inherited dataclass (#21785)
  • 14f5df9 [mypyc] Clear coroutine env on coroutine completion (#21734)
  • 6dfa06d Fix crash when unpacking return value from overload (#21830)
  • a385746 Bump version to 2.3.1+dev
  • 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)
  • 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 <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Updates the requirements on [braintools](https://github.com/chaobrain/braintools) and [mypy](https://github.com/python/mypy) to permit the latest version.

Updates `braintools` to 0.3.0
- [Release notes](https://github.com/chaobrain/braintools/releases)
- [Changelog](https://github.com/chaobrain/braintools/blob/main/changelog.md)
- [Commits](chaobrain/braintools@v0.1.9...v0.3.0)

Updates `mypy` to 2.3.1
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](python/mypy@v2.1.0...v2.3.1)

---
updated-dependencies:
- dependency-name: braintools
  dependency-version: 0.3.0
  dependency-type: direct:development
  dependency-group: development-dependencies
- dependency-name: mypy
  dependency-version: 2.3.1
  dependency-type: direct:development
  dependency-group: development-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added the dependencies Pull requests that update a dependency file label Aug 24, 2026
@dependabot @github

dependabot Bot commented on behalf of github Aug 24, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: automerge:disabled. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants