Hi,
Trying to run the test suite manually through run_tests.py but I hit an
error. I've traced it down to the -lv argument:
[[[
dsg@daniel-2022:~/svn_1.14.x$ python build/run_tests.py -lv
Traceback (most recent call last):
File "/home/dsg/svn_1.14.x/build/run_tests.py", line 1092, in <module>
main()
File "/home/dsg/svn_1.14.x/build/run_tests.py", line 1069, in main
(opts, args) = create_parser().parse_args(sys.argv[1:])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/optparse.py", line 1387, in parse_args
stop = self._process_args(largs, rargs, values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/optparse.py", line 1431, in _process_args
self._process_short_opts(rargs, values)
File "/usr/lib/python3.11/optparse.py", line 1536, in _process_short_opts
option.process(opt, value, values, self)
File "/usr/lib/python3.11/optparse.py", line 784, in process
return self.take_action(
^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/optparse.py", line 805, in take_action
self.callback(self, opt, value, parser, *args, **kwargs)
File "/home/dsg/svn_1.14.x/build/run_tests.py", line 990, in set_log_level
parser.values.set_log_level = getattr(logging, level, None) or
int(level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: attribute name must be string, not 'int'
]]]
The code is:
[[[
def set_log_level(option, opt, value, parser, level=None):
if level is None:
level = value
parser.values.set_log_level = getattr(logging, level, None) or
int(level)
]]]
I assume the last line should be
[[[
parser.values.set_log_level = getattr(logging, "level", None) or
int(level)
]]]
Since I'm not very proficient in Python I'd like to verify before making a
change - is there or was there ever a reason why the attribute name should
be taken from the level and/or value argument.
Kind regards,
Daniel Sahlberg