bin/khronos-update: add workaround for python bug 9625
authorEric Engestrom <eric@engestrom.ch>
Fri, 24 Jul 2020 12:20:44 +0000 (14:20 +0200)
committerEric Engestrom <eric@engestrom.ch>
Fri, 24 Jul 2020 12:22:36 +0000 (14:22 +0200)
The bug causes `choices` to break `nargs='*'`.

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6057>

bin/khronos-update.py

index 6f93c71f8318e5d6541f695227949bd49cbcca6c..cc82a07b08c472c1ec7cf07f7e37d369cc766fe5 100755 (executable)
@@ -191,7 +191,10 @@ if __name__ == '__main__':
 
     parser = argparse.ArgumentParser()
     parser.add_argument('apis', nargs='*',
-                        choices=[group['api'] for group in SOURCES],
+                        # the `[[]]` here is a workaround for python bug 9625
+                        # where having `choices` breaks `nargs='*'`:
+                        # https://bugs.python.org/issue9625
+                        choices=[group['api'] for group in SOURCES] + [[]],
                         help='Only update the APIs specified.')
     args = parser.parse_args()