Skip to content
This repository has been archived by the owner on Sep 9, 2024. It is now read-only.

Releases: seandstewart/typical

Final Release

09 Sep 14:39
Compare
Choose a tag to compare

This release updates critical dependencies to unblock support for Python 3.12.

Also:

  • Drop support for Python 3.7 (EOL)

Note: This is the final release of typical.

Support latest Python and typing-extensions.

26 Apr 16:59
97eec30
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.8.0...v2.8.1

v2.8.0

23 Dec 15:15
5fc5326
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.7.11...v2.8.0

v2.7.11

15 Dec 03:17
Compare
Choose a tag to compare

What's Changed

  • CPython 3.9.8+ and 3.10.1+ have new logic for type resolution of ForwardRefs which caused a regression in our runtime type analysis. This change adds handling for this new logic.

Full Changelog: v2.7.10...v2.7.11

Fix support for Optional Enums

15 Dec 00:36
Compare
Choose a tag to compare

This release fixes a regression in our serializer factory which failed to account for optional/nullable enum types when dumping to a primitive, leading to an AttributeError when attempting to access the enum value.

Improved support for Decimal types

03 Nov 11:40
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.7.8...v2.7.9

Treat `sqlite3.Row` objects as a Mapping type

02 Nov 14:28
Compare
Choose a tag to compare

sqlite3.Row objects are C extension types which meet the contract for a mapping, but do not evaluate as a subclass of the Mapping generic. This change adds them to our list of "mapping-compliant" types.

Fix deserialization of extended Mapping types

02 Nov 00:37
Compare
Choose a tag to compare
v2.7.7

bump version to v2.7.7 [ci skip]

Fix Translation of a NamedTuple to another User Class

01 Nov 01:36
8be9f94
Compare
Choose a tag to compare

NamedTuple objects were improperly treated as a simple builtin subtype when coercing user-defined types, which resulted in unexpected behavior. This fixes deserialization logic to use the standard translator protocol for named tuples.

Fix Recursion Error for Derived Classes of `@typic.klass`

15 Oct 21:17
8a38edf
Compare
Choose a tag to compare

Derived classes of a typic.klass object were improperly recognized as a simple Iterable.

This caused a recursion error when attempting to serialize these objects, since the __iter__ magic method relies upon the iterator factory, but the iterator factory simply called the __iter__ magic method.

Resolves #185