golden hour
/opt/alt/python37/lib/python3.7/site-packages/pip/_internal/utils
⬆️ Go Up
Upload
File/Folder
Size
Actions
__init__.py
0 B
Del
OK
__init__.pyc
164 B
Del
OK
__init__.pyo
164 B
Del
OK
__pycache__
-
Del
OK
appdirs.py
1.32 KB
Del
OK
appdirs.pyc
1.78 KB
Del
OK
appdirs.pyo
1.78 KB
Del
OK
compat.py
9.27 KB
Del
OK
compat.pyc
8.62 KB
Del
OK
compat.pyo
8.62 KB
Del
OK
compatibility_tags.py
5.31 KB
Del
OK
compatibility_tags.pyc
4.45 KB
Del
OK
compatibility_tags.pyo
4.45 KB
Del
OK
datetime.py
295 B
Del
OK
datetime.pyc
625 B
Del
OK
datetime.pyo
625 B
Del
OK
deprecation.py
3.24 KB
Del
OK
deprecation.pyc
3.44 KB
Del
OK
deprecation.pyo
3.44 KB
Del
OK
direct_url_helpers.py
4.26 KB
Del
OK
direct_url_helpers.pyc
3.37 KB
Del
OK
direct_url_helpers.pyo
3.24 KB
Del
OK
distutils_args.py
1.32 KB
Del
OK
distutils_args.pyc
1.6 KB
Del
OK
distutils_args.pyo
1.6 KB
Del
OK
encoding.py
1.25 KB
Del
OK
encoding.pyc
1.61 KB
Del
OK
encoding.pyo
1.56 KB
Del
OK
entrypoints.py
1.19 KB
Del
OK
entrypoints.pyc
1.47 KB
Del
OK
entrypoints.pyo
1.47 KB
Del
OK
filesystem.py
6.78 KB
Del
OK
filesystem.pyc
7.4 KB
Del
OK
filesystem.pyo
7.35 KB
Del
OK
filetypes.py
571 B
Del
OK
filetypes.pyc
792 B
Del
OK
filetypes.pyo
792 B
Del
OK
glibc.py
3.22 KB
Del
OK
glibc.pyc
2.19 KB
Del
OK
glibc.pyo
2.19 KB
Del
OK
hashes.py
4.57 KB
Del
OK
hashes.pyc
5.68 KB
Del
OK
hashes.pyo
5.68 KB
Del
OK
inject_securetransport.py
810 B
Del
OK
inject_securetransport.pyc
1.07 KB
Del
OK
inject_securetransport.pyo
1.07 KB
Del
OK
logging.py
12.79 KB
Del
OK
logging.pyc
11.6 KB
Del
OK
logging.pyo
11.6 KB
Del
OK
misc.py
27.67 KB
Del
OK
misc.pyc
32.2 KB
Del
OK
misc.pyo
32.2 KB
Del
OK
models.py
1.17 KB
Del
OK
models.pyc
2.55 KB
Del
OK
models.pyo
2.55 KB
Del
OK
packaging.py
2.96 KB
Del
OK
packaging.pyc
3.27 KB
Del
OK
packaging.pyo
3.27 KB
Del
OK
parallel.py
3.32 KB
Del
OK
parallel.pyc
3.62 KB
Del
OK
parallel.pyo
3.62 KB
Del
OK
pkg_resources.py
1.22 KB
Del
OK
pkg_resources.pyc
2.39 KB
Del
OK
pkg_resources.pyo
2.39 KB
Del
OK
setuptools_build.py
4.94 KB
Del
OK
setuptools_build.pyc
3.83 KB
Del
OK
setuptools_build.pyo
3.75 KB
Del
OK
subprocess.py
9.69 KB
Del
OK
subprocess.pyc
6.77 KB
Del
OK
subprocess.pyo
6.69 KB
Del
OK
temp_dir.py
8.18 KB
Del
OK
temp_dir.pyc
8.75 KB
Del
OK
temp_dir.pyo
8.62 KB
Del
OK
typing.py
1.37 KB
Del
OK
typing.pyc
1.52 KB
Del
OK
typing.pyo
1.52 KB
Del
OK
unpacking.py
9.27 KB
Del
OK
unpacking.pyc
7.83 KB
Del
OK
unpacking.pyo
7.79 KB
Del
OK
urls.py
1.49 KB
Del
OK
urls.pyc
1.94 KB
Del
OK
urls.pyo
1.8 KB
Del
OK
virtualenv.py
3.62 KB
Del
OK
virtualenv.pyc
4.11 KB
Del
OK
virtualenv.pyo
4.11 KB
Del
OK
wheel.py
7.13 KB
Del
OK
wheel.pyc
7.27 KB
Del
OK
wheel.pyo
7.27 KB
Del
OK
Edit: parallel.py
"""Convenient parallelization of higher order functions. This module provides two helper functions, with appropriate fallbacks on Python 2 and on systems lacking support for synchronization mechanisms: - map_multiprocess - map_multithread These helpers work like Python 3's map, with two differences: - They don't guarantee the order of processing of the elements of the iterable. - The underlying process/thread pools chop the iterable into a number of chunks, so that for very long iterables using a large value for chunksize can make the job complete much faster than using the default value of 1. """ __all__ = ['map_multiprocess', 'map_multithread'] from contextlib import contextmanager from multiprocessing import Pool as ProcessPool from multiprocessing.dummy import Pool as ThreadPool from pip._vendor.requests.adapters import DEFAULT_POOLSIZE from pip._vendor.six import PY2 from pip._vendor.six.moves import map from pip._internal.utils.typing import MYPY_CHECK_RUNNING if MYPY_CHECK_RUNNING: from typing import Callable, Iterable, Iterator, Union, TypeVar from multiprocessing import pool Pool = Union[pool.Pool, pool.ThreadPool] S = TypeVar('S') T = TypeVar('T') # On platforms without sem_open, multiprocessing[.dummy] Pool # cannot be created. try: import multiprocessing.synchronize # noqa except ImportError: LACK_SEM_OPEN = True else: LACK_SEM_OPEN = False # Incredibly large timeout to work around bpo-8296 on Python 2. TIMEOUT = 2000000 @contextmanager def closing(pool): # type: (Pool) -> Iterator[Pool] """Return a context manager making sure the pool closes properly.""" try: yield pool finally: # For Pool.imap*, close and join are needed # for the returned iterator to begin yielding. pool.close() pool.join() pool.terminate() def _map_fallback(func, iterable, chunksize=1): # type: (Callable[[S], T], Iterable[S], int) -> Iterator[T] """Make an iterator applying func to each element in iterable. This function is the sequential fallback either on Python 2 where Pool.imap* doesn't react to KeyboardInterrupt or when sem_open is unavailable. """ return map(func, iterable) def _map_multiprocess(func, iterable, chunksize=1): # type: (Callable[[S], T], Iterable[S], int) -> Iterator[T] """Chop iterable into chunks and submit them to a process pool. For very long iterables using a large value for chunksize can make the job complete much faster than using the default value of 1. Return an unordered iterator of the results. """ with closing(ProcessPool()) as pool: return pool.imap_unordered(func, iterable, chunksize) def _map_multithread(func, iterable, chunksize=1): # type: (Callable[[S], T], Iterable[S], int) -> Iterator[T] """Chop iterable into chunks and submit them to a thread pool. For very long iterables using a large value for chunksize can make the job complete much faster than using the default value of 1. Return an unordered iterator of the results. """ with closing(ThreadPool(DEFAULT_POOLSIZE)) as pool: return pool.imap_unordered(func, iterable, chunksize) if LACK_SEM_OPEN or PY2: map_multiprocess = map_multithread = _map_fallback else: map_multiprocess = _map_multiprocess map_multithread = _map_multithread
Save