lbexec enchancements
This merge request adds a handful of minor improvements I've found while converting the DaVinci tests over to using lbexec.
Each commit should be self-explanitory except possibly 17815495 which was accidentally converting the python tracebacks to have the most deepest line shown at the top of the screen instead of the bottom, i.e. it was printing:
Traceback (most recent call last):
File "/home/cburr/stack/LHCb/InstallArea/x86_64_v2-centos7-gcc11-opt/python/PyConf/dataflow.py", line 40, in ensure_event_prefix
return location if location.startswith('/Event/') else '/Event/' + location
File "/home/cburr/stack/LHCb/InstallArea/x86_64_v2-centos7-gcc11-opt/python/PyConf/application.py", line 460, in make_data_with_FetchDataFromFile
location = ensure_event_prefix(location)
File "/home/cburr/stack/LHCb/InstallArea/x86_64_v2-centos7-gcc11-opt/python/GaudiConf/reading.py", line 348, in hlt_decisions
bank_location = make_data_with_FetchDataFromFile(stream)
File "/home/cburr/stack/DaVinci/Phys/DaVinci/python/DaVinci/algorithms.py", line 355, in get_hlt_reports
dec_reports = reading.hlt_decisions(
File "/home/cburr/stack/DaVinci/Phys/DaVinci/python/DaVinci/algorithms.py", line 121, in add_filter
dec_reports = get_hlt_reports(options, source)
File "/home/cburr/stack/DaVinci/DaVinciTutorials/python/DaVinciTutorials.py", line 39, in basic
my_filter = add_filter(options, "HDRFilter_SeeNoEvil", f"HLT_PASS('{turbo_line}')")
AttributeError: 'NoneType' object has no attribute 'startswith'
instead of:
Traceback (most recent call last):
File "/home/cburr/stack/DaVinci/DaVinciTutorials/python/DaVinciTutorials.py", line 39, in basic
my_filter = add_filter(options, "HDRFilter_SeeNoEvil", f"HLT_PASS('{turbo_line}')")
File "/home/cburr/stack/DaVinci/Phys/DaVinci/python/DaVinci/algorithms.py", line 121, in add_filter
dec_reports = get_hlt_reports(options, source)
File "/home/cburr/stack/DaVinci/Phys/DaVinci/python/DaVinci/algorithms.py", line 355, in get_hlt_reports
dec_reports = reading.hlt_decisions(
File "/home/cburr/stack/LHCb/InstallArea/x86_64_v2-centos7-gcc11-opt/python/GaudiConf/reading.py", line 348, in hlt_decisions
bank_location = make_data_with_FetchDataFromFile(stream)
File "/home/cburr/stack/LHCb/InstallArea/x86_64_v2-centos7-gcc11-opt/python/PyConf/application.py", line 460, in make_data_with_FetchDataFromFile
location = ensure_event_prefix(location)
File "/home/cburr/stack/LHCb/InstallArea/x86_64_v2-centos7-gcc11-opt/python/PyConf/dataflow.py", line 40, in ensure_event_prefix
return location if location.startswith('/Event/') else '/Event/' + location
AttributeError: 'NoneType' object has no attribute 'startswith'