From 6cfe8e51ba3a866738c31431006ddf5464cc7469 Mon Sep 17 00:00:00 2001 From: JustAnotherArchivist Date: Mon, 7 Mar 2022 03:14:08 +0000 Subject: [PATCH] Make job a global variable in --pyfilter expressions so it can be used in genexps --- archivebot-jobs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/archivebot-jobs b/archivebot-jobs index ef3842d..8176a60 100755 --- a/archivebot-jobs +++ b/archivebot-jobs @@ -62,7 +62,7 @@ class FilterAction(argparse.Action): func = compile(values[0], '', 'eval') except Exception as e: parser.error(f'Could not compile filter expression: {type(e).__module__}.{type(e).__name__}: {e!s}') - setattr(namespace, self.dest, lambda job: eval(func, {k: v for k, v in globals().items() if k in ('datetime', 'math', 're', 'time')}, {'job': job})) + setattr(namespace, self.dest, lambda job: eval(func, {**{k: v for k, v in globals().items() if k in ('datetime', 'math', 're', 'time')}, 'job': job})) return global columns match = re.match(r'^(?P[A-Za-z ]+)(?P[=<>^*$~])(?P.*)$', values[0])