A complete rebuild of how Packtype works to address a bunch of technical debt:
- Declared types can now be used natively in Python without rendering out a template
- Parameterisation of primitives such as
Scalar
is now performed using the[...]
(square bracket) typing syntax that is common in Python (i.e.Scalar[19]
declares a 19-bit scalar type) - The innards of type declaration now leverage dataclasses to simplify the nastiness of dealing with
__annotations__
manually - Exceptions have been updated through to be more distinct (rather than using
assert
a lot) - C/C++ templates have been temporarily removed (they need to be rewritten)