SILENT KILLERPanel

Current Path: > > > usr > lib64 > python3.8


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: ///usr/lib64/python3.8

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
asyncio Directory - -
collections Directory - -
concurrent Directory - -
config-3.8-x86_64-linux-gnu Directory - -
ctypes Directory - -
curses Directory - -
dbm Directory - -
distutils Directory - -
email Directory - -
encodings Directory - -
ensurepip Directory - -
html Directory - -
http Directory - -
importlib Directory - -
json Directory - -
lib-dynload Directory - -
lib2to3 Directory - -
logging Directory - -
multiprocessing Directory - -
pydoc_data Directory - -
site-packages Directory - -
sqlite3 Directory - -
tkinter Directory - -
turtledemo Directory - -
unittest Directory - -
urllib Directory - -
venv Directory - -
wsgiref Directory - -
xml Directory - -
xmlrpc Directory - -
LICENSE.txt File 13937 bytes June 06 2023 13:32:21.
__future__.py File 5147 bytes June 06 2023 13:32:21.
__phello__.foo.py File 64 bytes June 06 2023 13:32:21.
_bootlocale.py File 1801 bytes June 06 2023 13:32:21.
_collections_abc.py File 26100 bytes June 06 2023 13:32:21.
_compat_pickle.py File 8749 bytes June 06 2023 13:32:21.
_compression.py File 5340 bytes June 06 2023 13:32:21.
_dummy_thread.py File 6027 bytes June 06 2023 13:32:21.
_markupbase.py File 14598 bytes June 06 2023 13:32:21.
_osx_support.py File 21774 bytes June 06 2023 13:32:21.
_py_abc.py File 6189 bytes June 06 2023 13:32:21.
_pydecimal.py File 228666 bytes June 06 2023 13:32:21.
_pyio.py File 93177 bytes June 06 2023 13:32:21.
_sitebuiltins.py File 3115 bytes June 06 2023 13:32:21.
_strptime.py File 25268 bytes June 06 2023 13:32:21.
_sysconfigdata__linux_x86_64-linux-gnu.py File 38510 bytes October 17 2023 18:12:19.
_sysconfigdata_d_linux_x86_64-linux-gnu.py File 38237 bytes October 17 2023 18:03:44.
_threading_local.py File 7220 bytes June 06 2023 13:32:21.
_weakrefset.py File 5735 bytes June 06 2023 13:32:21.
abc.py File 4489 bytes June 06 2023 13:32:21.
aifc.py File 32814 bytes June 06 2023 13:32:21.
antigravity.py File 477 bytes June 06 2023 13:32:21.
argparse.py File 96015 bytes June 06 2023 13:32:21.
ast.py File 19234 bytes June 06 2023 13:32:21.
asynchat.py File 11328 bytes June 06 2023 13:32:21.
asyncore.py File 20094 bytes June 06 2023 13:32:21.
base64.py File 20382 bytes June 06 2023 13:32:21.
bdb.py File 32056 bytes June 06 2023 13:32:21.
binhex.py File 13954 bytes June 06 2023 13:32:21.
bisect.py File 2214 bytes June 06 2023 13:32:21.
bz2.py File 12558 bytes June 06 2023 13:32:21.
cProfile.py File 7010 bytes June 06 2023 13:32:21.
calendar.py File 24832 bytes June 06 2023 13:32:21.
cgi.py File 33934 bytes October 17 2023 18:02:14.
cgitb.py File 12096 bytes June 06 2023 13:32:21.
chunk.py File 5435 bytes June 06 2023 13:32:21.
cmd.py File 14860 bytes June 06 2023 13:32:21.
code.py File 10622 bytes June 06 2023 13:32:21.
codecs.py File 36667 bytes June 06 2023 13:32:21.
codeop.py File 6330 bytes June 06 2023 13:32:21.
colorsys.py File 4064 bytes June 06 2023 13:32:21.
compileall.py File 13678 bytes June 06 2023 13:32:21.
configparser.py File 54374 bytes June 06 2023 13:32:21.
contextlib.py File 24995 bytes June 06 2023 13:32:21.
contextvars.py File 129 bytes June 06 2023 13:32:21.
copy.py File 8661 bytes June 06 2023 13:32:21.
copyreg.py File 7135 bytes June 06 2023 13:32:21.
crypt.py File 3610 bytes June 06 2023 13:32:21.
csv.py File 16144 bytes June 06 2023 13:32:21.
dataclasses.py File 49973 bytes June 06 2023 13:32:21.
datetime.py File 88287 bytes June 06 2023 13:32:21.
decimal.py File 320 bytes June 06 2023 13:32:21.
difflib.py File 84058 bytes June 06 2023 13:32:21.
dis.py File 20570 bytes June 06 2023 13:32:21.
doctest.py File 104543 bytes June 06 2023 13:32:21.
dummy_threading.py File 2815 bytes June 06 2023 13:32:21.
enum.py File 38136 bytes June 06 2023 13:32:21.
filecmp.py File 9830 bytes June 06 2023 13:32:21.
fileinput.py File 14709 bytes June 06 2023 13:32:21.
fnmatch.py File 4079 bytes June 06 2023 13:32:21.
formatter.py File 15143 bytes June 06 2023 13:32:21.
fractions.py File 24329 bytes June 06 2023 13:32:21.
ftplib.py File 35129 bytes June 06 2023 13:32:21.
functools.py File 37406 bytes June 06 2023 13:32:21.
genericpath.py File 4975 bytes June 06 2023 13:32:21.
getopt.py File 7489 bytes June 06 2023 13:32:21.
getpass.py File 5994 bytes June 06 2023 13:32:21.
gettext.py File 27138 bytes June 06 2023 13:32:21.
glob.py File 5697 bytes June 06 2023 13:32:21.
gzip.py File 21413 bytes June 06 2023 13:32:21.
hashlib.py File 8333 bytes October 17 2023 18:02:14.
heapq.py File 22877 bytes June 06 2023 13:32:21.
hmac.py File 7850 bytes October 17 2023 18:02:14.
imaplib.py File 53606 bytes June 06 2023 13:32:21.
imghdr.py File 3808 bytes June 06 2023 13:32:21.
imp.py File 10536 bytes June 06 2023 13:32:21.
inspect.py File 118550 bytes June 06 2023 13:32:21.
io.py File 3541 bytes June 06 2023 13:32:21.
ipaddress.py File 71644 bytes June 06 2023 13:32:21.
keyword.py File 945 bytes June 06 2023 13:32:21.
linecache.py File 5330 bytes June 06 2023 13:32:21.
locale.py File 78191 bytes June 06 2023 13:32:21.
lzma.py File 12983 bytes June 06 2023 13:32:21.
mailbox.py File 78661 bytes June 06 2023 13:32:21.
mailcap.py File 9067 bytes June 06 2023 13:32:21.
mimetypes.py File 21664 bytes June 06 2023 13:32:21.
modulefinder.py File 24430 bytes June 06 2023 13:32:21.
netrc.py File 5566 bytes June 06 2023 13:32:21.
nntplib.py File 43261 bytes June 06 2023 13:32:21.
ntpath.py File 27734 bytes June 06 2023 13:32:21.
nturl2path.py File 2887 bytes June 06 2023 13:32:21.
numbers.py File 10244 bytes June 06 2023 13:32:21.
opcode.py File 5808 bytes June 06 2023 13:32:21.
operator.py File 10711 bytes June 06 2023 13:32:21.
optparse.py File 60369 bytes June 06 2023 13:32:21.
os.py File 38995 bytes June 06 2023 13:32:21.
pathlib.py File 52610 bytes June 06 2023 13:32:21.
pdb.py File 62738 bytes June 06 2023 13:32:21.
pickle.py File 64467 bytes June 06 2023 13:32:21.
pickletools.py File 93486 bytes June 06 2023 13:32:21.
pipes.py File 8916 bytes June 06 2023 13:32:21.
pkgutil.py File 21500 bytes June 06 2023 13:32:21.
platform.py File 40425 bytes June 06 2023 13:32:21.
plistlib.py File 32220 bytes June 06 2023 13:32:21.
poplib.py File 15077 bytes June 06 2023 13:32:21.
posixpath.py File 15627 bytes June 06 2023 13:32:21.
pprint.py File 21484 bytes June 06 2023 13:32:21.
profile.py File 23546 bytes June 06 2023 13:32:21.
pstats.py File 27345 bytes June 06 2023 13:32:21.
pty.py File 4807 bytes June 06 2023 13:32:21.
py_compile.py File 8203 bytes October 17 2023 18:02:14.
pyclbr.py File 15255 bytes June 06 2023 13:32:21.
pydoc.py File 106700 bytes October 17 2023 18:12:57.
queue.py File 11356 bytes June 06 2023 13:32:21.
quopri.py File 7252 bytes June 06 2023 13:32:21.
random.py File 28802 bytes June 06 2023 13:32:21.
re.py File 15861 bytes June 06 2023 13:32:21.
reprlib.py File 5267 bytes June 06 2023 13:32:21.
rlcompleter.py File 7097 bytes June 06 2023 13:32:21.
runpy.py File 12052 bytes June 06 2023 13:32:21.
sched.py File 6442 bytes June 06 2023 13:32:21.
secrets.py File 2038 bytes June 06 2023 13:32:21.
selectors.py File 18561 bytes June 06 2023 13:32:21.
shelve.py File 8527 bytes June 06 2023 13:32:21.
shlex.py File 13325 bytes June 06 2023 13:32:21.
shutil.py File 51761 bytes June 06 2023 13:32:21.
signal.py File 2273 bytes June 06 2023 13:32:21.
site.py File 21838 bytes October 17 2023 18:02:14.
smtpd.py File 34709 bytes June 06 2023 13:32:21.
smtplib.py File 45001 bytes June 06 2023 13:32:21.
sndhdr.py File 7099 bytes June 06 2023 13:32:21.
socket.py File 35243 bytes June 06 2023 13:32:21.
socketserver.py File 27296 bytes June 06 2023 13:32:21.
sre_compile.py File 26695 bytes June 06 2023 13:32:21.
sre_constants.py File 7154 bytes June 06 2023 13:32:21.
sre_parse.py File 40230 bytes June 06 2023 13:32:21.
ssl.py File 50760 bytes June 06 2023 13:32:21.
stat.py File 5485 bytes June 06 2023 13:32:21.
statistics.py File 39690 bytes June 06 2023 13:32:21.
string.py File 10535 bytes June 06 2023 13:32:21.
stringprep.py File 12917 bytes June 06 2023 13:32:21.
struct.py File 257 bytes June 06 2023 13:32:21.
subprocess.py File 78250 bytes June 06 2023 13:32:21.
sunau.py File 18375 bytes June 06 2023 13:32:21.
symbol.py File 2109 bytes October 17 2023 18:04:15.
symtable.py File 8021 bytes June 06 2023 13:32:21.
sysconfig.py File 24896 bytes October 17 2023 18:12:55.
tabnanny.py File 11406 bytes June 06 2023 13:32:21.
tarfile.py File 106473 bytes October 17 2023 18:02:14.
telnetlib.py File 23254 bytes June 06 2023 13:32:21.
tempfile.py File 27537 bytes June 06 2023 13:32:21.
textwrap.py File 19407 bytes June 06 2023 13:32:21.
this.py File 1003 bytes June 06 2023 13:32:21.
threading.py File 50820 bytes June 06 2023 13:32:21.
timeit.py File 13480 bytes June 06 2023 13:32:21.
token.py File 2368 bytes June 06 2023 13:32:21.
tokenize.py File 25841 bytes June 06 2023 13:32:21.
trace.py File 29870 bytes June 06 2023 13:32:21.
traceback.py File 23611 bytes June 06 2023 13:32:21.
tracemalloc.py File 17076 bytes June 06 2023 13:32:21.
tty.py File 879 bytes June 06 2023 13:32:21.
turtle.py File 143716 bytes June 06 2023 13:32:21.
types.py File 9713 bytes June 06 2023 13:32:21.
typing.py File 68962 bytes June 06 2023 13:32:21.
uu.py File 7277 bytes October 17 2023 18:12:57.
uuid.py File 30515 bytes October 17 2023 18:02:14.
warnings.py File 19688 bytes June 06 2023 13:32:21.
wave.py File 18230 bytes June 06 2023 13:32:21.
weakref.py File 21387 bytes June 06 2023 13:32:21.
webbrowser.py File 24083 bytes June 06 2023 13:32:21.
xdrlib.py File 5913 bytes June 06 2023 13:32:21.
zipapp.py File 7535 bytes June 06 2023 13:32:21.
zipfile.py File 87728 bytes June 06 2023 13:32:21.
zipimport.py File 30765 bytes June 06 2023 13:32:21.

Reading File: ///usr/lib64/python3.8/compileall.py

"""Module/script to byte-compile all .py files to .pyc files.

When called as a script with arguments, this compiles the directories
given as arguments recursively; the -l option prevents it from
recursing into directories.

Without arguments, if compiles all modules on sys.path, without
recursing into subdirectories.  (Even though it should do so for
packages -- for now, you'll have to deal with packages separately.)

See module py_compile for details of the actual byte-compilation.
"""
import os
import sys
import importlib.util
import py_compile
import struct

from functools import partial

__all__ = ["compile_dir","compile_file","compile_path"]

def _walk_dir(dir, ddir=None, maxlevels=10, quiet=0):
    if quiet < 2 and isinstance(dir, os.PathLike):
        dir = os.fspath(dir)
    if not quiet:
        print('Listing {!r}...'.format(dir))
    try:
        names = os.listdir(dir)
    except OSError:
        if quiet < 2:
            print("Can't list {!r}".format(dir))
        names = []
    names.sort()
    for name in names:
        if name == '__pycache__':
            continue
        fullname = os.path.join(dir, name)
        if ddir is not None:
            dfile = os.path.join(ddir, name)
        else:
            dfile = None
        if not os.path.isdir(fullname):
            yield fullname, ddir
        elif (maxlevels > 0 and name != os.curdir and name != os.pardir and
              os.path.isdir(fullname) and not os.path.islink(fullname)):
            yield from _walk_dir(fullname, ddir=dfile,
                                 maxlevels=maxlevels - 1, quiet=quiet)

def compile_dir(dir, maxlevels=10, ddir=None, force=False, rx=None,
                quiet=0, legacy=False, optimize=-1, workers=1,
                invalidation_mode=None):
    """Byte-compile all modules in the given directory tree.

    Arguments (only dir is required):

    dir:       the directory to byte-compile
    maxlevels: maximum recursion level (default 10)
    ddir:      the directory that will be prepended to the path to the
               file as it is compiled into each byte-code file.
    force:     if True, force compilation, even if timestamps are up-to-date
    quiet:     full output with False or 0, errors only with 1,
               no output with 2
    legacy:    if True, produce legacy pyc paths instead of PEP 3147 paths
    optimize:  optimization level or -1 for level of the interpreter
    workers:   maximum number of parallel workers
    invalidation_mode: how the up-to-dateness of the pyc will be checked
    """
    ProcessPoolExecutor = None
    if workers < 0:
        raise ValueError('workers must be greater or equal to 0')
    if workers != 1:
        try:
            # Only import when needed, as low resource platforms may
            # fail to import it
            from concurrent.futures import ProcessPoolExecutor
        except ImportError:
            workers = 1
    files_and_ddirs = _walk_dir(dir, quiet=quiet, maxlevels=maxlevels,
                                ddir=ddir)
    success = True
    if workers != 1 and ProcessPoolExecutor is not None:
        # If workers == 0, let ProcessPoolExecutor choose
        workers = workers or None
        with ProcessPoolExecutor(max_workers=workers) as executor:
            results = executor.map(
                    partial(_compile_file_tuple,
                            force=force, rx=rx, quiet=quiet,
                            legacy=legacy, optimize=optimize,
                            invalidation_mode=invalidation_mode,
                        ),
                    files_and_ddirs)
            success = min(results, default=True)
    else:
        for file, dfile in files_and_ddirs:
            if not compile_file(file, dfile, force, rx, quiet,
                                legacy, optimize, invalidation_mode):
                success = False
    return success

def _compile_file_tuple(file_and_dfile, **kwargs):
    """Needs to be toplevel for ProcessPoolExecutor."""
    file, dfile = file_and_dfile
    return compile_file(file, dfile, **kwargs)

def compile_file(fullname, ddir=None, force=False, rx=None, quiet=0,
                 legacy=False, optimize=-1,
                 invalidation_mode=None):
    """Byte-compile one file.

    Arguments (only fullname is required):

    fullname:  the file to byte-compile
    ddir:      if given, the directory name compiled in to the
               byte-code file.
    force:     if True, force compilation, even if timestamps are up-to-date
    quiet:     full output with False or 0, errors only with 1,
               no output with 2
    legacy:    if True, produce legacy pyc paths instead of PEP 3147 paths
    optimize:  optimization level or -1 for level of the interpreter
    invalidation_mode: how the up-to-dateness of the pyc will be checked
    """
    success = True
    if quiet < 2 and isinstance(fullname, os.PathLike):
        fullname = os.fspath(fullname)
    name = os.path.basename(fullname)
    if ddir is not None:
        dfile = os.path.join(ddir, name)
    else:
        dfile = None
    if rx is not None:
        mo = rx.search(fullname)
        if mo:
            return success
    if os.path.isfile(fullname):
        if legacy:
            cfile = fullname + 'c'
        else:
            if optimize >= 0:
                opt = optimize if optimize >= 1 else ''
                cfile = importlib.util.cache_from_source(
                                fullname, optimization=opt)
            else:
                cfile = importlib.util.cache_from_source(fullname)
            cache_dir = os.path.dirname(cfile)
        head, tail = name[:-3], name[-3:]
        if tail == '.py':
            if not force:
                try:
                    mtime = int(os.stat(fullname).st_mtime)
                    expect = struct.pack('<4sll', importlib.util.MAGIC_NUMBER,
                                         0, mtime)
                    with open(cfile, 'rb') as chandle:
                        actual = chandle.read(12)
                    if expect == actual:
                        return success
                except OSError:
                    pass
            if not quiet:
                print('Compiling {!r}...'.format(fullname))
            try:
                ok = py_compile.compile(fullname, cfile, dfile, True,
                                        optimize=optimize,
                                        invalidation_mode=invalidation_mode)
            except py_compile.PyCompileError as err:
                success = False
                if quiet >= 2:
                    return success
                elif quiet:
                    print('*** Error compiling {!r}...'.format(fullname))
                else:
                    print('*** ', end='')
                # escape non-printable characters in msg
                msg = err.msg.encode(sys.stdout.encoding,
                                     errors='backslashreplace')
                msg = msg.decode(sys.stdout.encoding)
                print(msg)
            except (SyntaxError, UnicodeError, OSError) as e:
                success = False
                if quiet >= 2:
                    return success
                elif quiet:
                    print('*** Error compiling {!r}...'.format(fullname))
                else:
                    print('*** ', end='')
                print(e.__class__.__name__ + ':', e)
            else:
                if ok == 0:
                    success = False
    return success

def compile_path(skip_curdir=1, maxlevels=0, force=False, quiet=0,
                 legacy=False, optimize=-1,
                 invalidation_mode=None):
    """Byte-compile all module on sys.path.

    Arguments (all optional):

    skip_curdir: if true, skip current directory (default True)
    maxlevels:   max recursion level (default 0)
    force: as for compile_dir() (default False)
    quiet: as for compile_dir() (default 0)
    legacy: as for compile_dir() (default False)
    optimize: as for compile_dir() (default -1)
    invalidation_mode: as for compiler_dir()
    """
    success = True
    for dir in sys.path:
        if (not dir or dir == os.curdir) and skip_curdir:
            if quiet < 2:
                print('Skipping current directory')
        else:
            success = success and compile_dir(
                dir,
                maxlevels,
                None,
                force,
                quiet=quiet,
                legacy=legacy,
                optimize=optimize,
                invalidation_mode=invalidation_mode,
            )
    return success


def main():
    """Script main program."""
    import argparse

    parser = argparse.ArgumentParser(
        description='Utilities to support installing Python libraries.')
    parser.add_argument('-l', action='store_const', const=0,
                        default=10, dest='maxlevels',
                        help="don't recurse into subdirectories")
    parser.add_argument('-r', type=int, dest='recursion',
                        help=('control the maximum recursion level. '
                              'if `-l` and `-r` options are specified, '
                              'then `-r` takes precedence.'))
    parser.add_argument('-f', action='store_true', dest='force',
                        help='force rebuild even if timestamps are up to date')
    parser.add_argument('-q', action='count', dest='quiet', default=0,
                        help='output only error messages; -qq will suppress '
                             'the error messages as well.')
    parser.add_argument('-b', action='store_true', dest='legacy',
                        help='use legacy (pre-PEP3147) compiled file locations')
    parser.add_argument('-d', metavar='DESTDIR',  dest='ddir', default=None,
                        help=('directory to prepend to file paths for use in '
                              'compile-time tracebacks and in runtime '
                              'tracebacks in cases where the source file is '
                              'unavailable'))
    parser.add_argument('-x', metavar='REGEXP', dest='rx', default=None,
                        help=('skip files matching the regular expression; '
                              'the regexp is searched for in the full path '
                              'of each file considered for compilation'))
    parser.add_argument('-i', metavar='FILE', dest='flist',
                        help=('add all the files and directories listed in '
                              'FILE to the list considered for compilation; '
                              'if "-", names are read from stdin'))
    parser.add_argument('compile_dest', metavar='FILE|DIR', nargs='*',
                        help=('zero or more file and directory names '
                              'to compile; if no arguments given, defaults '
                              'to the equivalent of -l sys.path'))
    parser.add_argument('-j', '--workers', default=1,
                        type=int, help='Run compileall concurrently')
    invalidation_modes = [mode.name.lower().replace('_', '-')
                          for mode in py_compile.PycInvalidationMode]
    parser.add_argument('--invalidation-mode',
                        choices=sorted(invalidation_modes),
                        help=('set .pyc invalidation mode; defaults to '
                              '"checked-hash" if the SOURCE_DATE_EPOCH '
                              'environment variable is set, and '
                              '"timestamp" otherwise.'))

    args = parser.parse_args()
    compile_dests = args.compile_dest

    if args.rx:
        import re
        args.rx = re.compile(args.rx)


    if args.recursion is not None:
        maxlevels = args.recursion
    else:
        maxlevels = args.maxlevels

    # if flist is provided then load it
    if args.flist:
        try:
            with (sys.stdin if args.flist=='-' else open(args.flist)) as f:
                for line in f:
                    compile_dests.append(line.strip())
        except OSError:
            if args.quiet < 2:
                print("Error reading file list {}".format(args.flist))
            return False

    if args.invalidation_mode:
        ivl_mode = args.invalidation_mode.replace('-', '_').upper()
        invalidation_mode = py_compile.PycInvalidationMode[ivl_mode]
    else:
        invalidation_mode = None

    success = True
    try:
        if compile_dests:
            for dest in compile_dests:
                if os.path.isfile(dest):
                    if not compile_file(dest, args.ddir, args.force, args.rx,
                                        args.quiet, args.legacy,
                                        invalidation_mode=invalidation_mode):
                        success = False
                else:
                    if not compile_dir(dest, maxlevels, args.ddir,
                                       args.force, args.rx, args.quiet,
                                       args.legacy, workers=args.workers,
                                       invalidation_mode=invalidation_mode):
                        success = False
            return success
        else:
            return compile_path(legacy=args.legacy, force=args.force,
                                quiet=args.quiet,
                                invalidation_mode=invalidation_mode)
    except KeyboardInterrupt:
        if args.quiet < 2:
            print("\n[interrupted]")
        return False
    return True


if __name__ == '__main__':
    exit_status = int(not main())
    sys.exit(exit_status)

SILENT KILLER Tool