From 940b97067065baac46c301eab5c827b50aeabd2a Mon Sep 17 00:00:00 2001 From: Ivan Shcheklein Date: Thu, 9 Jul 2026 12:20:25 -0700 Subject: [PATCH] fix simple/sort annotations to match callback return types MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit callback_simple normalizes --simple to None|bool and callback_sort returns VersionSort; annotate the command params accordingly and drop the type: ignore comments they forced. api.assign's simple param accepts None ("auto") at runtime — annotate as Optional[bool]. Co-Authored-By: Claude Fable 5 --- gto/api.py | 2 +- gto/cli.py | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/gto/api.py b/gto/api.py index b437471..0888f18 100644 --- a/gto/api.py +++ b/gto/api.py @@ -111,7 +111,7 @@ def assign( ref: Optional[str] = None, name_version: Optional[str] = None, message: Optional[str] = None, - simple: bool = False, + simple: Optional[bool] = False, force: bool = False, push: bool = False, skip_registration: bool = False, diff --git a/gto/cli.py b/gto/cli.py index 779a4ec..756c340 100644 --- a/gto/cli.py +++ b/gto/cli.py @@ -458,7 +458,7 @@ def register( ref: str, version: Optional[str], message: Optional[str], - simple: str, + simple: Optional[bool], force: bool, bump_major: bool, bump_minor: bool, @@ -474,7 +474,7 @@ def register( ref=ref or "HEAD", version=version, message=message, - simple=simple, # type: ignore + simple=simple, force=force, bump_major=bump_major, bump_minor=bump_minor, @@ -511,7 +511,7 @@ def assign( version: Optional[str], stage: str, message: Optional[str], - simple: str, + simple: Optional[bool], force: bool, push: bool, skip_registration: bool, @@ -534,7 +534,7 @@ def assign( ref, name_version, message=message, - simple=simple, # type: ignore + simple=simple, force=force, push=push, skip_registration=skip_registration, @@ -560,7 +560,7 @@ def deprecate( stage: Optional[str], ref: Optional[str], message: Optional[str], - simple: str, + simple: Optional[bool], force: bool, delete: bool, push: bool, @@ -573,7 +573,7 @@ def deprecate( version=version, stage=stage, message=message, - simple=simple, # type: ignore + simple=simple, force=force, delete=delete, push=push, @@ -585,7 +585,7 @@ def deprecate( name=name, version=version, message=message, - simple=simple, # type: ignore + simple=simple, force=force, delete=delete, push=push, @@ -597,7 +597,7 @@ def deprecate( name=name, ref=ref, message=message, - simple=simple, # type: ignore + simple=simple, force=force, delete=delete, push=push, @@ -695,7 +695,7 @@ def show( # pylint: disable=too-many-locals deprecated: bool, assignments_per_version: int, versions_per_stage: int, - sort: str, + sort: VersionSort, ): """Show the registry state, highest version, or what's assigned in stage.""" show_options = [show_name, show_version, show_stage, show_ref]