launch.py #1

  • //
  • guest/
  • perforce_software/
  • extensions/
  • main/
  • wrap_a_trigger-python/
  • python/
  • Lib/
  • site-packages/
  • setuptools/
  • launch.py
  • View
  • Commits
  • Open Download .zip Download (787 B)
"""
Launch the Python script on the command line after
setuptools is bootstrapped via import.
"""

# Note that setuptools gets imported implicitly by the
# invocation of this script using python -m setuptools.launch

import tokenize
import sys


def run():
    """
    Run the script in sys.argv[1] as if it had
    been invoked naturally.
    """
    __builtins__
    script_name = sys.argv[1]
    namespace = dict(
        __file__=script_name,
        __name__='__main__',
        __doc__=None,
    )
    sys.argv[:] = sys.argv[1:]

    open_ = getattr(tokenize, 'open', open)
    script = open_(script_name).read()
    norm_script = script.replace('\\r\\n', '\\n')
    code = compile(norm_script, script_name, 'exec')
    exec(code, namespace)


if __name__ == '__main__':
    run()
# Change User Description Committed
#1 30809 C. Thomas Tyler Code drop with newer versions of Extensions.

Thanks to @jason_gibon.

#review-30810 @jabson_gibson