Skip to content

Latest commit

 

History

History
70 lines (44 loc) · 1.65 KB

CHANGELOG.md

File metadata and controls

70 lines (44 loc) · 1.65 KB

Version history

We follow Semantic Versions since the 0.1.0 release.

Version 0.4.1

Bugfixes

  • Fixes typing_extensions version resolution

Version 0.4.0

Features

  • Breaking: removes is_protocol boolean argument from .instance, now use protocol=YourProtocol instead
  • Adds support for concrete generic types like List[str] and Set[int] #24
  • Adds support for types that have __instancecheck__ defined via delegate argument #248
  • Adds support for multiple type arguments in Supports type #244

Bugfixes

  • Fixes that types referenced in multiple typeclasses were not handling Supports properly #249
  • Fixes typing bug with ABC and mutable typeclass signature #259
  • Fixes that mypy plugin was failing on calling a typeclass without arguments #270

Version 0.3.0

Features

  • Breaking: drops python3.6 support
  • Breaking: now requires typing_extensions>=3.10 and mypy>=0.902
  • Breaking: now classes traverses mro of registered types and fallbacks to super-types if some type is not registered
  • Adds generic typeclasses
  • Adds caching to runtime type dispatch, it allows to call already resolved instances way faster
  • Adds better typeclass validation during mypy typechecking
  • Adds .supports() method to typeclass to check if some instance is supported in runtime
  • Makes .supports() a typeguard
  • Adds Supports type
  • Adds AssociatedType variadic type

Misc

  • Improves docs

Version 0.2.0

Features

  • Breaking: renames mypy typeclass_plugin to classes_plugin
  • Adds python3.9 support

Misc

  • Updates dependencies

Version 0.1.0

  • Initial release