404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@18.218.123.194: ~ $
import unicodedata
import sys
from configparser import ConfigParser

from .compat import py39
from .warnings import SetuptoolsDeprecationWarning


# HFS Plus uses decomposed UTF-8
def decompose(path):
    if isinstance(path, str):
        return unicodedata.normalize('NFD', path)
    try:
        path = path.decode('utf-8')
        path = unicodedata.normalize('NFD', path)
        path = path.encode('utf-8')
    except UnicodeError:
        pass  # Not UTF-8
    return path


def filesys_decode(path):
    """
    Ensure that the given path is decoded,
    ``None`` when no expected encoding works
    """

    if isinstance(path, str):
        return path

    fs_enc = sys.getfilesystemencoding() or 'utf-8'
    candidates = fs_enc, 'utf-8'

    for enc in candidates:
        try:
            return path.decode(enc)
        except UnicodeDecodeError:
            continue

    return None


def try_encode(string, enc):
    "turn unicode encoding into a functional routine"
    try:
        return string.encode(enc)
    except UnicodeEncodeError:
        return None


def _read_utf8_with_fallback(file: str, fallback_encoding=py39.LOCALE_ENCODING) -> str:
    """
    First try to read the file with UTF-8, if there is an error fallback to a
    different encoding ("locale" by default). Returns the content of the file.
    Also useful when reading files that might have been produced by an older version of
    setuptools.
    """
    try:
        with open(file, "r", encoding="utf-8") as f:
            return f.read()
    except UnicodeDecodeError:  # pragma: no cover
        _Utf8EncodingNeeded.emit(file=file, fallback_encoding=fallback_encoding)
        with open(file, "r", encoding=fallback_encoding) as f:
            return f.read()


def _cfg_read_utf8_with_fallback(
    cfg: ConfigParser, file: str, fallback_encoding=py39.LOCALE_ENCODING
) -> None:
    """Same idea as :func:`_read_utf8_with_fallback`, but for the
    :meth:`ConfigParser.read` method.

    This method may call ``cfg.clear()``.
    """
    try:
        cfg.read(file, encoding="utf-8")
    except UnicodeDecodeError:  # pragma: no cover
        _Utf8EncodingNeeded.emit(file=file, fallback_encoding=fallback_encoding)
        cfg.clear()
        cfg.read(file, encoding=fallback_encoding)


class _Utf8EncodingNeeded(SetuptoolsDeprecationWarning):
    _SUMMARY = """
    `encoding="utf-8"` fails with {file!r}, trying `encoding={fallback_encoding!r}`.
    """

    _DETAILS = """
    Fallback behaviour for UTF-8 is considered **deprecated** and future versions of
    `setuptools` may not implement it.

    Please encode {file!r} with "utf-8" to ensure future builds will succeed.

    If this file was produced by `setuptools` itself, cleaning up the cached files
    and re-building/re-installing the package with a newer version of `setuptools`
    (e.g. by updating `build-system.requires` in its `pyproject.toml`)
    might solve the problem.
    """
    # TODO: Add a deadline?
    #       Will we be able to remove this?
    #       The question comes to mind mainly because of sdists that have been produced
    #       by old versions of setuptools and published to PyPI...

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
_distutils Folder 0755
_vendor Folder 0755
command Folder 0755
compat Folder 0755
config Folder 0755
extern Folder 0755
__init__.py File 8.74 KB 0644
_core_metadata.py File 9.6 KB 0644
_entry_points.py File 2.28 KB 0644
_imp.py File 2.39 KB 0644
_importlib.py File 1.42 KB 0644
_itertools.py File 675 B 0644
_normalization.py File 4.46 KB 0644
_path.py File 1.15 KB 0644
_reqs.py File 1.09 KB 0644
archive_util.py File 7.16 KB 0644
build_meta.py File 18.64 KB 0644
cli-32.exe File 11.5 KB 0644
cli-64.exe File 14 KB 0644
cli-arm64.exe File 13.5 KB 0644
cli.exe File 11.5 KB 0644
depends.py File 5.42 KB 0644
discovery.py File 20.63 KB 0644
dist.py File 37.04 KB 0644
errors.py File 2.61 KB 0644
extension.py File 5.66 KB 0644
glob.py File 4.74 KB 0644
gui-32.exe File 11.5 KB 0644
gui-64.exe File 14 KB 0644
gui-arm64.exe File 13.5 KB 0644
gui.exe File 11.5 KB 0644
installer.py File 4.85 KB 0644
launch.py File 812 B 0644
logging.py File 1.21 KB 0644
modified.py File 190 B 0644
monkey.py File 4.23 KB 0644
msvc.py File 46.42 KB 0644
namespaces.py File 3.05 KB 0644
package_index.py File 38.17 KB 0644
sandbox.py File 14.38 KB 0644
script (dev).tmpl File 218 B 0644
script.tmpl File 138 B 0644
unicode_utils.py File 3.11 KB 0644
version.py File 161 B 0644
warnings.py File 3.61 KB 0644
wheel.py File 8.48 KB 0644
windows_support.py File 720 B 0644