Instead of /home/zbyszek/src/systemd-work/build/../src/xdg-autostart-generator/xdg-autostart-service.h:11,
print just src/xdg-autostart-generator/xdg-autostart-service.h:11.
This is a bit annoying that this requires so much verbosity, but the output
with the full names was too annoying.
# pylint: disable=missing-docstring,invalid-name,unspecified-encoding,consider-using-with
+import os
+import pathlib
import re
import sys
+PROJECT_ROOT = pathlib.Path(os.getenv('PROJECT_SOURCE_ROOT', '.'))
+
def check_file(filename):
seen = set()
good = True
if m := re.match(r'^\s*#\s*include\s*[<"](\S*)[>"]', line):
include = m.group(1)
if include in seen:
+ try:
+ filename = pathlib.Path(filename).resolve().relative_to(PROJECT_ROOT)
+ except ValueError:
+ pass
print(f'{filename}:{n}: {line.strip()}')
good = False
seen.add(include)