From 5de69840228427d286fb85cbaa672d543c8b5781 Mon Sep 17 00:00:00 2001 From: DanCardin Date: Fri, 10 May 2024 15:34:31 -0400 Subject: [PATCH] chore: Prepare for 0.19.1 release. --- CHANGELOG.md | 4 ++++ pyproject.toml | 2 +- src/cappa/class_inspect.py | 6 ++---- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d5a9746..d19ca18 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ ## 0.19 +### 0.19.1 + +- fix: Eagerly attempt pydantic BaseModel import to ensure its skipped if unavailable. + ### 0.19.0 - feat: Add support for `msgspec` based class definitions. diff --git a/pyproject.toml b/pyproject.toml index e8891f9..d2724a3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "cappa" -version = "0.19.0" +version = "0.19.1" description = "Declarative CLI argument parser." repository = "https://github.com/dancardin/cappa" diff --git a/src/cappa/class_inspect.py b/src/cappa/class_inspect.py index fbdbac3..f96e3fd 100644 --- a/src/cappa/class_inspect.py +++ b/src/cappa/class_inspect.py @@ -186,15 +186,13 @@ def from_cls(cls, obj: type) -> ClassTypes | None: return cls.msgspec try: - from pydantic import BaseModel import pydantic + from pydantic import BaseModel except ImportError: # pragma: no cover pass else: try: - is_base_model = isinstance(obj, type) and issubclass( - obj, BaseModel - ) + is_base_model = isinstance(obj, type) and issubclass(obj, BaseModel) except TypeError: # pragma: no cover is_base_model = False