krateng/maloja

View on GitHub
Fix bug in API exception handling #636
krateng authored 163746c0
complete00:00:15
Your first build completed successfully!

Congratulations

Your first build completed successfully!

See the Results

1
git clone
2
codeclimate validate-config
View output
codeclimate validate-config
No checked in config: nothing to validate.
3
codeclimate prepare
View output
codeclimate prepare
4
builder pull-engines
View output
determining required images
5
structure
View output
12
Parser process id: 12
codeclimate-parser socket not present
waiting 1s...
W, [2024-04-21T00:48:49.982771 #1]  WARN -- : Skipping maloja/web/static/js/neopolitan.js due to CC::Parser::Client::HTTPError
W, [2024-04-21T00:48:49.982818 #1]  WARN -- : Response status: 422
W, [2024-04-21T00:48:49.984119 #1]  WARN -- : Skipping maloja/web/static/js/lazyload17-8-2.min.js due to CC::Parser::Client::HTTPError
W, [2024-04-21T00:48:49.984152 #1]  WARN -- : Response status: 422
6
duplication
View output
12
Parser process id: 12
codeclimate-parser socket not present
waiting 1s...
W, [2024-04-21T00:48:55.160589 #1]  WARN -- : Skipping ./maloja/web/static/js/neopolitan.js due to CC::Parser::Client::HTTPError
W, [2024-04-21T00:48:55.160913 #1]  WARN -- : Response status: 422
W, [2024-04-21T00:48:55.162227 #1]  WARN -- : Skipping ./maloja/web/static/js/lazyload17-8-2.min.js due to CC::Parser::Client::HTTPError
W, [2024-04-21T00:48:55.162259 #1]  WARN -- : Response status: 422
I, [2024-04-21T00:48:55.347370 #1]  INFO -- : Skipping file ./dev/write_tags.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 30
    f"Version {version}" + (f" '{info.get('name')}'" if info.get('name') else ''),
                       ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.349869 #1]  INFO -- : Skipping file ./dev/testing/stresstest.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 13
    ["docker","run","--rm","-v",f"{os.path.abspath('./testdata')}:/mlj","-e","MALOJA_DATA_DIRECTORY=/mlj"],
                                                                      ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.359623 #1]  INFO -- : Skipping file ./dev/package.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 14
    'maintainer':f"\"{data['project']['authors'][0]['name']} <{data['project']['authors'][0]['email']}>\"",
                                                                                                         ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.377204 #1]  INFO -- : Skipping file ./maloja/upgrade.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 71
    log(f"\tImporting from {sf} ({idx}/{len(scrobblefiles)}) - {len(scrobbles)} Scrobbles")
                                                                                         ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.385836 #1]  INFO -- : Skipping file ./maloja/malojatime.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 44
    return {**self.__json__(),"uri":self.uri()}
             ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.389279 #1]  INFO -- : Skipping file ./maloja/__main__.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 24
    print(col['yellow']("Maloja"),f"v{pkginfo.VERSION}")
                                                      ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.397243 #1]  INFO -- : Skipping file ./maloja/__pkginfo__.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 11
    USER_AGENT = f"Maloja/{VERSION} ( {HOMEPAGE} )"
                                                  ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.432321 #1]  INFO -- : Skipping file ./maloja/dev/profiler.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 52
    log(f"Executed {realfunc.__name__} ({args}, {kwargs}) in {seconds:.3f}s",module="debug_performance")
                                                                           ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.439744 #1]  INFO -- : Skipping file ./maloja/dev/apidebug.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 28
    waitress.serve(server, listen=f"*:{PORT}")
                                            ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.479797 #1]  INFO -- : Skipping file ./maloja/malojauri.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 166
    def compose_querystring(*dicts,exclude=[]):
                                         ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.492180 #1]  INFO -- : Skipping file ./maloja/apis/native_v1.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 137
    protector.__name__ = f"EXCPR_{func.__name__}"
                                                ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.528310 #1]  INFO -- : Skipping file ./maloja/apis/listenbrainz.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 83
    **extrafields
     ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.544849 #1]  INFO -- : Skipping file ./maloja/apis/_base.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 37
    __apiname__: str
               ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.557432 #1]  INFO -- : Skipping file ./maloja/apis/audioscrobbler_legacy.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 51
    f"{sessionkey}\n"
    ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.591605 #1]  INFO -- : Skipping file ./maloja/server.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 215
    abort(404,f"Not found: '{name}'")
                                   ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.597438 #1]  INFO -- : Skipping file ./maloja/database/jinjaview.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 27
    log(f"Generated page with {self.hits}/{self.hits+self.misses} local Cache hits",module="debug_performance")
                                                                                  ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.602448 #1]  INFO -- : Skipping file ./maloja/database/dbcache.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 32
    log(f"{name}: Size: {len(c)} | Hits: {hits}/{hits+misses} | Estimated Memory: {human_readable_size(c)}")
                                                                                                          ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.609119 #1]  INFO -- : Skipping file ./maloja/database/__init__.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 104
    log(f"Invalid Scrobble [Client: {client} | API: {api}]: {rawscrobble} ",color='red')
                                                                          ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.614248 #1]  INFO -- : Skipping file ./maloja/database/sqldb.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 109
    engine = sql.create_engine(f"sqlite:///{data_dir['scrobbles']('malojadb.sqlite')}", echo = False)
                                                                                     ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.629108 #1]  INFO -- : Skipping file ./maloja/database/exceptions.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 59
    body=f"The {self.entitytype} '{self.entitydict}' does not exist in the database."
                                                                                    ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.658328 #1]  INFO -- : Skipping file ./maloja/thirdparty/lastfm.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 86
    return {**parameters,"api_sig":sig}
             ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.666102 #1]  INFO -- : Skipping file ./maloja/thirdparty/maloja.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 33
    url = f"{self.settings['instance']}/apis/mlj_1/scrobbles"
                                                            ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.680827 #1]  INFO -- : Skipping file ./maloja/thirdparty/__init__.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 62
    log(f"Could not get track image for {track} from {service.name}")
                                                                   ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.689621 #1]  INFO -- : Skipping file ./maloja/thirdparty/musicbrainz.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 33
    searchstr = f'release:"{title}"'
                                   ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.701127 #1]  INFO -- : Skipping file ./maloja/pkg_global/conf.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 110
    raise PermissionError(f"Can no longer use previously used {datatype} folder {p}")
                                                                                   ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.718764 #1]  INFO -- : Skipping file ./maloja/images.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 36
    engine = sql.create_engine(f"sqlite:///{data_dir['cache']('imagecache.sqlite')}", echo = False)
                                                                                   ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.724555 #1]  INFO -- : Skipping file ./maloja/setup.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 46
    print(f"\tCurrently not using a {col['red'](keyname)} for image display.")
                                                                            ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.735990 #1]  INFO -- : Skipping file ./maloja/proccontrol/tasks/export.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 16
    filename = f"maloja_export_{timestr}.json"
                                             ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.740375 #1]  INFO -- : Skipping file ./maloja/proccontrol/tasks/import_scrobbles.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 14
    "UNCERTAIN_IMPORT": lambda msg: print(col['orange'](msg)),
                                        ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.748774 #1]  INFO -- : Skipping file ./maloja/proccontrol/tasks/parse_albums.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 48
    print(f"Added album information for {i} of {len(result)} tracks...")
                                                                      ^
SyntaxError: invalid syntax


I, [2024-04-21T00:48:55.752616 #1]  INFO -- : Skipping file ./maloja/proccontrol/tasks/backup.py due to exception (CC::Engine::Analyzers::ParserError): `python2 /usr/src/app/lib/cc/engine/analyzers/python/parser.py` exited with code 1:
Traceback (most recent call last):
  File "/usr/src/app/lib/cc/engine/analyzers/python/parser.py", line 51, in <module>
    print(json.dumps(to_json(ast.parse(source))))
  File "/usr/local/python2/lib/python2.7/ast.py", line 37, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 40
    filename = f"maloja_backup_{timestr}.tar.gz"
                                               ^
SyntaxError: invalid syntax