Skip to content

Commit 0ef096b

Browse files
authored
Keep compatibility in default value of value_converter (#96)
1 parent 85efeee commit 0ef096b

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

clize/converters.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,12 @@ def _silence_convert_default_warning():
7676
yield
7777

7878

79+
def _conversion_filter(arg):
80+
return isinstance(arg, str)
81+
82+
7983
with _silence_convert_default_warning():
80-
@parser.value_converter(name='FILE', convert_default=True)
84+
@parser.value_converter(name='FILE', convert_default=True, convert_default_filter=_conversion_filter)
8185
@autokwoargs(exceptions=['arg'])
8286
def file(arg=util.UNSET, stdio='-', keep_stdio_open=False, **kwargs):
8387
"""Takes a file argument and provides a Python object that opens a file
@@ -114,7 +118,7 @@ def main(inf: (file(), Parameter.cli_default("-"))):
114118
return parser.value_converter(
115119
partial(_FileOpener, kwargs=kwargs,
116120
stdio=stdio, keep_stdio_open=keep_stdio_open),
117-
name='FILE', convert_default=True)
121+
name='FILE', convert_default=True, convert_default_filter=_conversion_filter)
118122

119123

120124
def _convert_ioerror(arg, exc):

clize/parser.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ def __init__(self, **kwargs):
232232
display_name='<internal>', **kwargs)
233233

234234

235-
def value_converter(func=None, *, name=None, convert_default=None, convert_default_filter=lambda s: isinstance(s, str)):
235+
def value_converter(func=None, *, name=None, convert_default=None, convert_default_filter=lambda s: True):
236236
"""Callables decorated with this can be used as a value converter.
237237
238238
:param str name: Use this name to designate the parameter value type.

0 commit comments

Comments
 (0)