HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/site-packages/pip/_internal/utils/distutils_args.py
from getopt import GetoptError, getopt
from typing import Dict, List

_options = [
    "exec-prefix=",
    "home=",
    "install-base=",
    "install-data=",
    "install-headers=",
    "install-lib=",
    "install-platlib=",
    "install-purelib=",
    "install-scripts=",
    "prefix=",
    "root=",
    "user",
]


def parse_distutils_args(args: List[str]) -> Dict[str, str]:
    """Parse provided arguments, returning an object that has the matched arguments.

    Any unknown arguments are ignored.
    """
    result = {}
    for arg in args:
        try:
            parsed_opt, _ = getopt(args=[arg], shortopts="", longopts=_options)
        except GetoptError:
            # We don't care about any other options, which here may be
            # considered unrecognized since our option list is not
            # exhaustive.
            continue

        if not parsed_opt:
            continue

        option = parsed_opt[0]
        name_from_parsed = option[0][2:].replace("-", "_")
        value_from_parsed = option[1] or "true"
        result[name_from_parsed] = value_from_parsed

    return result