From: Plom Heller Date: Mon, 27 Jul 2026 22:09:18 +0000 (+0200) Subject: Fail on, and warn against, combination of -r/--raw with boxes table. X-Git-Url: https://plomlompom.com/repos/%22https:/validator.w3.org/template?a=commitdiff_plain;h=d774840ba5df1a7837aa1c03534c576a177aa27a;p=bricksplom Fail on, and warn against, combination of -r/--raw with boxes table. --- diff --git a/bricksplom.py b/bricksplom.py index 669c3f7..0b77517 100755 --- a/bricksplom.py +++ b/bricksplom.py @@ -789,6 +789,7 @@ class BricksDb: sort_by: str ) -> str: 'Return result of inquiry on table of table_name.' + assert (not show_raw) or table_name != 'boxes' assert hasattr(self, table_name) and table_name in self.lookupable table = getattr(self, table_name) if item_id: @@ -836,17 +837,26 @@ def main( choices=choices, type=complete, metavar='TABLE', help=msg) parser = ArgumentParser() add_abbreviable_table_arg() - parser.add_argument('item_id', - nargs='?', metavar='ITEM_ID') - parser.add_argument('-r', '--raw', - action='store_true') - parser.add_argument('-m', '--match-by', - action='store') - parser.add_argument('-s', '--sort-by', - action='store', default=TOK_SORT_ID) - parser.add_argument('-l', '--ldraw', - action='store', default='') - return parser.parse_args() + parser.add_argument( + 'item_id', + nargs='?', metavar='ITEM_ID') + parser.add_argument( + '-m', '--match-by', + action='store') + parser.add_argument( + '-s', '--sort-by', + action='store', default=TOK_SORT_ID) + parser.add_argument( + '-l', '--ldraw', + action='store', default='') + hint_raw = 'not available for boxes table' + action_raw = parser.add_argument( + '-r', '--raw', + action='store_true', help=f'NB: {hint_raw}') + args = parser.parse_args() + if args.table == 'boxes' and args.raw: + parser.error(str(ArgumentError(action_raw, hint_raw))) + return args args = parse_args() db = BricksDb(environ.get(NAME_ENV_DIRNAME, '.'),