view docs/tutorial/testlib/arguments_printer.py @ 6847:f0a052aa924d

ci: run tests-py3 jobs on v2.0 images We can't use v1.0 images because they still have Python 3.7. Let's switch to using pip to install the extensions to avoid a SetuptoolsDeprecationWarning about running setup.py directly. This also avoid the warning about python_requires apparently. The "running as root" warning cannot be simply avoided by using a different CI image. We do have v2.1 images that default to ci-runner user, but no one forbids people from running the test locally as a root user, one way or another. Running pip as root shouldn't matter in this case, since it's not a real system install, so this particular warning is always irrelevant.
author Anton Shestakov <av6@dwimlabs.net>
date Thu, 12 Sep 2024 16:41:22 +0400
parents aad37ffd7d58
children
line wrap: on
line source

import sys

formatted_args = []

UNSAFE_CHARACTERS = [" ", "!", "\"", "#", "$", "&", "'", "(", ")", "*", ",", ";", "<", ">", "?", "[", "\\", "]", "^", "`", "{", "|", "}", ":", "~", "/"]


def find_unsafe(arg):
    for unsafe in UNSAFE_CHARACTERS:
        if unsafe in arg:
            return True

    return False


for arg in sys.argv[1:]:
    if find_unsafe(arg):
        formatted_args.append('"%s"' % arg)
    else:
        formatted_args.append(arg)

print("$ " + " ".join(formatted_args))