Skip to content

Releases: jorenham/optype

v0.15.0

08 Dec 12:46
Immutable release. Only release title and notes can be modified.
v0.15.0
4b2c158

Choose a tag to compare

Highlights

  • BREAKING: Certain optype.Can* generic type-parameters intended for literal types have been removed. This affects the following protocols:

    • CanBytes
    • CanStr
    • CanIndex
    • CanRepr
    • CanFormat
    • CanDelattr
    • CanLen
    • CanLengthHint
    • CanBuffer
    • CanGetattr
    • CanSetattr
    • CanSetName
    • CanContains
    • CanSequence

    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

  • Avoid the monthly PyPI downloads badge rate limit by @jorenham in #460

Dependencies

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

Full Changelog: v0.14.0...v0.15.0

v0.14.0

01 Oct 04:49
v0.14.0
34d1ed3

Choose a tag to compare

Highlights

  • Support for the Pyrefly type-checker
  • More robust optype.copy.CanReplace protocol
  • New optype.numpy.CanArray0 protocol that accepts both scalars and 0-d arrays
  • Various optype.numpy.ctypeslib improvements

What's Changed

optype.numpy

  • update all optype.numpy.To* to use TypeAliasType by @jorenham in #444
  • optype.numpy.ctypes: simplify Object and always use TypeAliasType by @jorenham in #446
  • optype.numpy.ctypes: no complex C-types on windows by @jorenham in #447
  • optype.numpy.ctypes tests by @jorenham in #449
  • optype.numpy.ctypes: simplified abstract numeric aliases by @jorenham in #450
  • add optype.numpy.CanArray0 by @jorenham in #454

optype.copy

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

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 pyrefly to 0.35.0 by @jorenham in #453

Full Changelog: v0.13.4...v0.14.0

v0.13.4

19 Aug 19:52
v0.13.4
0d26959

Choose a tag to compare

What's Changed

optype.numpy

  • upgrade numpy-typing-compat to v20250818 in the numpy extra by @jorenham in #421
  • installation instructions for the conda optype-numpy package by @jorenham in #422

Other Changes

Full Changelog: v0.13.3...v0.13.4

v0.13.3

17 Aug 00:41
v0.13.3
bb4461b

Choose a tag to compare

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-compat by @jorenham in #414
  • prepare for the new numpy-typing-compat versioning by @jorenham in #418

Other Changes

Full Changelog: v0.13.2...v0.13.3

v0.13.2

15 Aug 18:03
v0.13.2
1f807eb

Choose a tag to compare

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

Full Changelog: v0.13.1...v0.13.2

v0.13.1

30 Jul 12:52
v0.13.1
20e649e

Choose a tag to compare

What's Changed

optype.numpy

Full Changelog: v0.13.0...v0.13.1

v0.13.0

30 Jul 11:43
v0.13.0
bd50868

Choose a tag to compare

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-compat by @jorenham in #394
  • make AnyLongDouble* compatible with numpy<2.2 by @jorenham in #395
  • make Any[U]IntPDType compatible with numpy<2.2 by @jorenham in #396
  • fix older numpy compat issues with numpy-typing-compat by @jorenham in #399
  • include numpy==2.0.* in the testing matrix by @jorenham in #401
  • use np.ndarray instead of CanArray in To*Strict{1,2,3}D on numpy<2.1 by @jorenham in #400
  • warn on numpy-typing-compat / numpy version mismatch by @jorenham in #403
  • bump numpy-typing-compat to v20250730 by @jorenham in #404
  • error instead of warn in case of unsupported numpy-typing-compat by @jorenham in #405

Documentation

  • update the documented minimum support NumPy version by @jorenham in #397

Dependencies

Other Changes

Full Changelog: v0.12.2...v0.13.0

v0.12.2

20 Jul 19:03
v0.12.2
a2c9527

Choose a tag to compare

What's Changed

Full Changelog: v0.12.1...v0.12.2

v0.12.1

20 Jul 18:27
v0.12.1
5dc23af

Choose a tag to compare

What's Changed

optype.Can*

  • Can*Same[-T?, +R?] with -> Self | R by @jorenham in #379
  • CanI*Same inplace operator protocols by @jorenham in #381
  • generic Can*Self arithmetic unary operator protocols by @jorenham in #382
  • move the Can* tests to a more appropriate testing module @jorenham in #384

Documentation

Developer experience

Dependencies

Other Changes

Full Changelog: v0.12.0...v0.12.1

v0.12.0

16 Jul 16:27
v0.12.0
0c599b3

Choose a tag to compare

What's Changed

optype

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.compat extended precision inexact types by @jorenham in #363
  • optype.numpy.To* array-like alias simplifications by @jorenham in #364
  • optype.numpy array-like types for float16, float32, and complex64 by @jorenham in #365
  • optype.numpy.ToJust[C]LongDouble* array-like type aliases by @jorenham in #366

Dependencies

Other Changes

Full Changelog: v0.11.0...v0.12.0