File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -4,7 +4,7 @@ build-backend = "hatchling.build"
44
55[project ]
66name = " sql-agent-cli"
7- version = " 0.9.2 "
7+ version = " 0.10.0 "
88description = " Read-only SQL CLI for agentic workflows"
99readme = " README.md"
1010license = " MIT"
Original file line number Diff line number Diff line change 11__all__ = ["__version__" ]
22
3- __version__ = "0.9.2 "
3+ __version__ = "0.10.0 "
Original file line number Diff line number Diff line change 66import sys
77from pathlib import Path
88
9+ from . import __version__
910from .config import (
1011 build_show_payload ,
1112 create_native_auth_template ,
@@ -49,6 +50,9 @@ def main(argv: list[str] | None = None) -> int:
4950
5051def _handle_query (argv : list [str ]) -> int :
5152 parser = _build_query_parser ()
53+ if not argv :
54+ parser .print_help ()
55+ return 0
5256 args = parser .parse_args (argv )
5357
5458 if args .password_stdin and args .prompt_password :
@@ -258,6 +262,12 @@ def _build_query_parser() -> argparse.ArgumentParser:
258262 ),
259263 formatter_class = HelpFormatter ,
260264 )
265+ parser .add_argument (
266+ "-v" ,
267+ "--version" ,
268+ action = "version" ,
269+ version = f"%(prog)s { __version__ } " ,
270+ )
261271
262272 target_group = parser .add_argument_group ("Target and environment" )
263273 target_group .add_argument (
Original file line number Diff line number Diff line change 1313
1414bootstrap_package ()
1515
16+ from sql_agent import __version__
1617from sql_agent .cli import _build_query_parser , main
1718
1819
@@ -25,6 +26,29 @@ def _test_temp_dir(name: str) -> Path:
2526
2627
2728class SqliteCliTests (unittest .TestCase ):
29+ def test_no_arguments_prints_help (self ) -> None :
30+ stdout = io .StringIO ()
31+ stderr = io .StringIO ()
32+
33+ with redirect_stdout (stdout ), redirect_stderr (stderr ):
34+ exit_code = main ([])
35+
36+ self .assertEqual (exit_code , 0 )
37+ self .assertEqual (stderr .getvalue (), "" )
38+ self .assertIn ('sql-agent-cli "SELECT ..."' , stdout .getvalue ())
39+
40+ def test_version_flag_prints_package_version (self ) -> None :
41+ stdout = io .StringIO ()
42+ stderr = io .StringIO ()
43+
44+ with redirect_stdout (stdout ), redirect_stderr (stderr ):
45+ with self .assertRaises (SystemExit ) as exc :
46+ main (["-v" ])
47+
48+ self .assertEqual (exc .exception .code , 0 )
49+ self .assertEqual (stderr .getvalue (), "" )
50+ self .assertEqual (stdout .getvalue ().strip (), f"sql-agent-cli { __version__ } " )
51+
2852 def test_help_emphasizes_default_target_happy_path (self ) -> None :
2953 help_text = _build_query_parser ().format_help ()
3054
You can’t perform that action at this time.
0 commit comments