Releases: jorenham/optype
v0.15.0
Highlights
-
BREAKING: Certain
optype.Can*generic type-parameters intended for literal types have been removed. This affects the following protocols:CanBytesCanStrCanIndexCanReprCanFormatCanDelattrCanLenCanLengthHintCanBufferCanGetattrCanSetattrCanSetNameCanContainsCanSequence
See #487 for more information.
-
Preliminary support for the ty type-checker (currently in alpha) in #489.
-
Preliminary support for the upcoming NumPy 2.4 release.
Other changes
Documentation
Dependencies
- update development dependencies by @jorenham in #463
- bump basedpyright to 1.31.7 by @jorenham in #466
- bump pyrefly to 0.37.0 by @jorenham in #468
- bump
uv_buildto0.9by @jorenham in #469 - Bump the actions group with 2 updates by @dependabot[bot] in #471
- Bump the actions group with 4 updates by @dependabot[bot] in #473
- Bump the actions group with 3 updates by @dependabot[bot] in #476
- Bump the actions group with 4 updates by @dependabot[bot] in #478
- py314, pytest 9, and other dev dep updates by @jorenham in #479
- Bump the actions group with 3 updates by @dependabot[bot] in #480
- update development dependencies by @jorenham in #484
- Bump beartype from 0.22.6 to 0.22.7 in the actions group by @dependabot[bot] in #485
- increase numpy-typing-compat upper bound and other updates by @jorenham in #486
Continuous integration
- Bump crate-ci/typos from 1.37.0 to 1.37.2 in the actions group by @dependabot[bot] in #461
- Bump the actions group with 2 updates by @dependabot[bot] in #464
- Bump astral-sh/setup-uv from 7.1.0 to 7.1.1 in the actions group by @dependabot[bot] in #470
- Bump astral-sh/setup-uv from 7.1.1 to 7.1.2 in the actions group by @dependabot[bot] in #472
- Bump crate-ci/typos from 1.38.1 to 1.39.0 in the actions group by @dependabot[bot] in #475
- release on tag push by @jorenham in #488
Maintenance
- prepare for further development by @jorenham in #459
- remove unused pyrefly ignore by @jorenham in #474
Full Changelog: v0.14.0...v0.15.0
v0.14.0
Highlights
- Support for the Pyrefly type-checker
- More robust
optype.copy.CanReplaceprotocol - New
optype.numpy.CanArray0protocol that accepts both scalars and 0-d arrays - Various
optype.numpy.ctypeslibimprovements
What's Changed
optype.numpy
- update all
optype.numpy.To*to useTypeAliasTypeby @jorenham in #444 optype.numpy.ctypes: simplifyObjectand always useTypeAliasTypeby @jorenham in #446optype.numpy.ctypes: no complex C-types on windows by @jorenham in #447optype.numpy.ctypestests by @jorenham in #449optype.numpy.ctypes: simplified abstract numeric aliases by @jorenham in #450- add
optype.numpy.CanArray0by @jorenham in #454
optype.copy
- remove the (first) generic
copy.CanReplacetype parameter by @jorenham in #439 - update
copy.CanReplacedocs by @jorenham in #441
Documentation
- add pyrefly badge and improve badge style consistency by @jorenham in #440
- match badge colors with the github dark theme by @jorenham in #442
Dependencies
- Bump the actions group with 3 updates by @dependabot[bot] in #425
- Bump ruff from 0.12.10 to 0.12.11 in the actions group by @dependabot[bot] in #426
- Bump the actions group with 3 updates by @dependabot[bot] in #429
- Bump the actions group with 3 updates by @dependabot[bot] in #432
- Bump ruff from 0.13.0 to 0.13.1 in the actions group by @dependabot[bot] in #433
- upgrade development dependencies by @jorenham in #434
- bump ci action dependencies by @jorenham in #457
Continuous integration
- Bump astral-sh/setup-uv from 6.5.0 to 6.6.0 in the actions group by @dependabot[bot] in #424
- Bump the actions group with 2 updates by @dependabot[bot] in #427
- Bump the actions group with 3 updates by @dependabot[bot] in #431
- Bump crate-ci/typos from 1.36.2 to 1.36.3 in the actions group by @dependabot[bot] in #436
- Bump scientific-python/repo-review from 0.12.2 to 0.12.3 in the actions group by @dependabot[bot] in #452
- Also typecheck in CI with Python 3.13 by @jorenham in #455
- cleaner ci job names by @jorenham in #456
Other Changes
- prepare for further development by @jorenham in #423
- Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0 in /.github/workflows in the github_actions group across 1 directory by @dependabot[bot] in #428
- fix dependabot config by @jorenham in #435
- Preliminary Pyrefly support by @jorenham in #438
- bump
pyreflyto0.35.0by @jorenham in #453
Full Changelog: v0.13.4...v0.14.0
v0.13.4
v0.13.3
This patch release adds an upper version bound for numpy-typing-compat to prevent potential compatibility issues with future releases.
What's Changed
optype.numpy
- set an upper version bound for
numpy-typing-compatby @jorenham in #414 - prepare for the new
numpy-typing-compatversioning by @jorenham in #418
Other Changes
Full Changelog: v0.13.2...v0.13.3
v0.13.2
This is a bugfix release that addresses a permission issue in the built wheels that was caused by astral-sh/uv#14920.
What's Changed
- Bump the actions group with 3 updates by @dependabot[bot] in #409
- Bump the actions group with 4 updates by @dependabot[bot] in #410
- upgrade development and build dependencies by @jorenham in #412
- bump
astral-sh/setup-uvto6.5.0by @jorenham in #413
Full Changelog: v0.13.1...v0.13.2
v0.13.1
v0.13.0
Important
To ensure static typing compatibility with the SPEC 0 NumPy versions, optype.numpy now requires numpy-typing-compat. It will automatically be installed with the optype[numpy] extra.
What's Changed
optype.numpy
- robust numpy compat with
numpy-typing-compatby @jorenham in #394 - make
AnyLongDouble*compatible withnumpy<2.2by @jorenham in #395 - make
Any[U]IntPDTypecompatible withnumpy<2.2by @jorenham in #396 - fix older numpy compat issues with
numpy-typing-compatby @jorenham in #399 - include
numpy==2.0.*in the testing matrix by @jorenham in #401 - use
np.ndarrayinstead ofCanArrayinTo*Strict{1,2,3}Donnumpy<2.1by @jorenham in #400 - warn on
numpy-typing-compat/numpyversion mismatch by @jorenham in #403 - bump
numpy-typing-compattov20250730by @jorenham in #404 - error instead of warn in case of unsupported
numpy-typing-compatby @jorenham in #405
Documentation
Dependencies
Other Changes
Full Changelog: v0.12.2...v0.13.0
v0.12.2
v0.12.1
What's Changed
optype.Can*
Can*Same[-T?, +R?]with-> Self | Rby @jorenham in #379CanI*Sameinplace operator protocols by @jorenham in #381- generic
Can*Selfarithmetic unary operator protocols by @jorenham in #382 - move the
Can*tests to a more appropriate testing module @jorenham in #384
Documentation
Developer experience
- formatting with
dprintby @jorenham in #374 tox-uv& more tox envs by @jorenham in #375- use
lefthookas git hooks manager by @jorenham in #377 - ruff config cleanup by @jorenham in #376
- instructions for copilot by @jorenham in #388
Dependencies
- bump
ruffto0.12.4by @jorenham in #370 - preliminary support for python 3.14 by @jorenham in #385
- explicit github action version tags by @jorenham in #386
Other Changes
- move the type-tests in
_core/_do.pytotests/do.pyby @jorenham in #378 - prepare for further development by @jorenham in #368
uvbuild backend by @jorenham in #387
Full Changelog: v0.12.0...v0.12.1
v0.12.0
What's Changed
optype
Can*Selfbinop protocols by @jorenham in #348Canbinop return type param defaults to input param by @jorenham in #356- remove
Justtype-checker compatibility notice by @jorenham in #357 - improved
TypeVarnaming scheme for theCan*protocols by @jorenham in #358 CanGetSelf[-T, +V]alias forCanGet[T, V, Self]by @jorenham in #359Can*Samebinop protocols by @jorenham in #362
optype.numpy
optype.numpy.Array*type alias docstring fixes by @jorenham in #353- [BREAKING]
optype.numpy.CanArrayND: remove scalar type parameter default by @jorenham in #354 - prepare for numpy 2.4 by @jorenham in #360
- mypy's layered dependency blindness workaround by @jorenham in #361
optype.numpy.compatextended precision inexact types by @jorenham in #363optype.numpy.To*array-like alias simplifications by @jorenham in #364optype.numpyarray-like types forfloat16,float32, andcomplex64by @jorenham in #365optype.numpy.ToJust[C]LongDouble*array-like type aliases by @jorenham in #366
Dependencies
- bump
mypyto1.17.0by @jorenham in #350 - bump
basedpyrightto1.30.1by @jorenham in #351 - bump
ruffto1.12.3by @jorenham in #352 - bump
basedpyrightto1.31.0by @jorenham in #367
Other Changes
Full Changelog: v0.11.0...v0.12.0