| Viewing file:  wheel.py (1.43 KB)      -rw-r--r-- Select action/file-type:
 
  (+) |  (+) |  (+) | Code (+) | Session (+) |  (+) | SDB (+) |  (+) |  (+) |  (+) |  (+) |  (+) | 
 
import loggingimport os
 
 from pip._internal.utils.subprocess import runner_with_spinner_message
 from pip._internal.utils.typing import MYPY_CHECK_RUNNING
 
 if MYPY_CHECK_RUNNING:
 from typing import List, Optional
 from pip._vendor.pep517.wrappers import Pep517HookCaller
 
 logger = logging.getLogger(__name__)
 
 
 def build_wheel_pep517(
 name,  # type: str
 backend,  # type: Pep517HookCaller
 metadata_directory,  # type: str
 build_options,  # type: List[str]
 tempd,  # type: str
 ):
 # type: (...) -> Optional[str]
 """Build one InstallRequirement using the PEP 517 build process.
 
 Returns path to wheel if successfully built. Otherwise, returns None.
 """
 assert metadata_directory is not None
 if build_options:
 # PEP 517 does not support --build-options
 logger.error('Cannot build wheel for %s using PEP 517 when '
 '--build-option is present', name)
 return None
 try:
 logger.debug('Destination directory: %s', tempd)
 
 runner = runner_with_spinner_message(
 'Building wheel for {} (PEP 517)'.format(name)
 )
 with backend.subprocess_runner(runner):
 wheel_name = backend.build_wheel(
 tempd,
 metadata_directory=metadata_directory,
 )
 except Exception:
 logger.error('Failed building wheel for %s', name)
 return None
 return os.path.join(tempd, wheel_name)
 
 |