22import sys
33from pathlib import Path
44from typing import Annotated
5+ from typing import Any
56
67import cruft
78import typer
2021@cli .callback (invoke_without_command = True )
2122def update_demo (
2223 demos_cache_folder : Annotated [Path , FolderOption ("--demos-cache-folder" , "-c" )],
23- add_rust_extension : Annotated [bool , typer .Option ("--add-rust-extension" , "-r" )] = False
24+ add_rust_extension : Annotated [bool , typer .Option ("--add-rust-extension" , "-r" )] = False ,
25+ min_python_version : Annotated [str , typer .Option ("--min-python-version" )] = "3.10" ,
26+ max_python_version : Annotated [str , typer .Option ("--max-python-version" )] = "3.14"
2427) -> None :
2528 """Runs precommit in a generated project and matches the template to the results."""
2629 try :
@@ -34,7 +37,12 @@ def update_demo(
3437 cruft .update (
3538 project_dir = demo_path ,
3639 template_path = REPO_FOLDER ,
37- extra_context = {"project_name" : demo_name , "add_rust_extension" : add_rust_extension },
40+ extra_context = {
41+ "project_name" : demo_name ,
42+ "add_rust_extension" : add_rust_extension ,
43+ "min_python_version" : min_python_version ,
44+ "max_python_version" : max_python_version
45+ },
3846 )
3947 git ("add" , "." )
4048 git ("commit" , "-m" , "chore: update demo to the latest cookiecutter-robust-python" , "--no-verify" )
0 commit comments