We follow Semantic Versions since the 0.1.0
release.
- Fixes
typing_extensions
version resolution
- Breaking: removes
is_protocol
boolean argument from.instance
, now useprotocol=YourProtocol
instead - Adds support for concrete generic types like
List[str]
andSet[int]
#24 - Adds support for types that have
__instancecheck__
defined viadelegate
argument #248 - Adds support for multiple type arguments in
Supports
type #244
- 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
- Breaking: drops
python3.6
support - Breaking: now requires
typing_extensions>=3.10
andmypy>=0.902
- Breaking: now
classes
traversesmro
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
- Improves docs
- Breaking: renames mypy
typeclass_plugin
toclasses_plugin
- Adds
python3.9
support
- Updates dependencies
- Initial release