requirementslib.models.setup_info module

class requirementslib.models.setup_info.Analyzer[source]

Bases: ast.NodeVisitor

generic_unparse(item)[source]
generic_visit(node)[source]

Called if no explicit visitor function exists for a node.

match_assignment_name(match)[source]
match_assignment_str(match)[source]
no_recurse()[source]
parse_function_names(should_retry=True, function_map=None)[source]
parse_functions()[source]
parse_setup_function()[source]
unmap_binops()[source]
unparse(item)[source]
unparse_Assign(item)[source]
unparse_Attribute(item)[source]
unparse_BinOp(item)[source]
unparse_Call(item)[source]
unparse_Compare(item)[source]
unparse_Constant(item)[source]
unparse_Dict(item)[source]
unparse_Ellipsis(item)[source]
unparse_IfExp(item)[source]
unparse_List(item)[source]
unparse_Mapping(item)[source]
unparse_Name(item)[source]
unparse_NameConstant(item)[source]
unparse_Num(item)[source]
unparse_Str(item)[source]
unparse_Subscript(item)[source]
unparse_Tuple(item)[source]
unparse_keyword(item)[source]
unparse_list(item)[source]
unparse_str(item)[source]
unparse_tuple(item)[source]
visit_BinOp(node)[source]
class requirementslib.models.setup_info.BaseRequirement(name='', requirement=None)[source]

Bases: object

as_dict()[source]
as_tuple()[source]
classmethod from_req(req)[source]
classmethod from_string(line)[source]
name
requirement
class requirementslib.models.setup_info.BuildEnv(cleanup=True)[source]

Bases: pep517.envbuild.BuildEnvironment

pip_install(reqs)[source]

Install dependencies into this env by calling pip in a subprocess

class requirementslib.models.setup_info.Extra(name=None, requirements: frozenset = NOTHING)[source]

Bases: object

add(req)[source]
as_dict()[source]
name
requirements
class requirementslib.models.setup_info.HookCaller(source_dir, build_backend, backend_path=None)[source]

Bases: pep517.wrappers.Pep517HookCaller

class requirementslib.models.setup_info.ScandirCloser(path)[source]

Bases: object

close()[source]
next()[source]
class requirementslib.models.setup_info.SetupInfo(name=None, base_dir=None, version=None, requirements: frozenset = NOTHING, build_requires=None, build_backend=NOTHING, setup_requires=None, python_requires=None, extras_requirements=None, setup_cfg: pathlib.Path = None, setup_py: pathlib.Path = None, pyproject: pathlib.Path = None, ireq=None, extra_kwargs: dict = NOTHING, metadata=None, stack=None, finalizer=None)[source]

Bases: object

as_dict()[source]
base_dir
build()[source]
build_backend
build_requires
build_sdist()[source]
build_wheel()[source]
classmethod create(base_dir, subdirectory=None, ireq=None, kwargs=None, stack=None)[source]
egg_base
extra_kwargs
extras
classmethod from_ireq(ireq, subdir=None, finder=None, session=None)[source]
classmethod from_requirement(requirement, finder=None)[source]
get_build_backend()[source]
get_egg_metadata(metadata_dir=None, metadata_type=None)[source]

Given a metadata directory, return the corresponding metadata dictionary.

Parameters:
  • metadata_dir (Optional[str]) – Root metadata path, default: os.getcwd()
  • metadata_type (Optional[str]) – Type of metadata to search for, default None
Returns:

A metadata dictionary built from the metadata in the given location

Return type:

Dict[Any, Any]

get_extras_from_ireq()[source]
get_info()[source]
get_initial_info()[source]
get_metadata_from_wheel(wheel_path)[source]

Given a path to a wheel, return the metadata from that wheel.

Returns:A dictionary of metadata from the provided wheel
Return type:Dict[Any, Any]
ireq
metadata
name
parse_setup_cfg()[source]
parse_setup_py()[source]
pep517_config
populate_metadata(metadata)[source]

Populates the metadata dictionary from the supplied metadata.

Returns:The current instance.
Return type:SetupInfo
pyproject
python_requires
reload()[source]

Wipe existing distribution info metadata for rebuilding.

Erases metadata from self.egg_base and unsets self.requirements and self.extras.

requires
run_pyproject()[source]

Populates the pyproject.toml metadata if available.

Returns:The current instance
Return type:SetupInfo
run_setup()[source]
setup_cfg
setup_py
setup_requires
stack
update_from_dict(metadata)[source]
version
requirementslib.models.setup_info.ast_parse_attribute_from_file(path, attribute)[source]
requirementslib.models.setup_info.ast_parse_file(path)[source]
requirementslib.models.setup_info.ast_parse_setup_py(path)[source]
requirementslib.models.setup_info.ast_unparse(item, initial_mapping=False, analyzer=None, recurse=True)[source]
requirementslib.models.setup_info.build_pep517(source_dir, build_dir, config_settings=None, dist_type='wheel')[source]
requirementslib.models.setup_info.ensure_reqs[source]
requirementslib.models.setup_info.find_distinfo(target, pkg_name=None)[source]
requirementslib.models.setup_info.find_egginfo(target, pkg_name=None)[source]
requirementslib.models.setup_info.get_distinfo_dist(path, pkg_name=None)[source]
requirementslib.models.setup_info.get_egginfo_dist(path, pkg_name=None)[source]
requirementslib.models.setup_info.get_extra_name_from_marker[source]
requirementslib.models.setup_info.get_extras_from_setupcfg(parser)[source]
requirementslib.models.setup_info.get_metadata(path, pkg_name=None, metadata_type=None)[source]
requirementslib.models.setup_info.get_metadata_from_dist(dist)[source]
requirementslib.models.setup_info.get_metadata_from_wheel(wheel_path)[source]
requirementslib.models.setup_info.get_name_and_version_from_setupcfg(parser, package_dir)[source]
requirementslib.models.setup_info.get_package_dir_from_setupcfg(parser, base_dir=None)[source]
requirementslib.models.setup_info.iter_metadata(path, pkg_name=None, metadata_type='egg-info')[source]
requirementslib.models.setup_info.make_base_requirements(reqs)[source]
requirementslib.models.setup_info.parse_setup_cfg(setup_cfg_contents, base_dir)[source]
requirementslib.models.setup_info.parse_special_directives(setup_entry, package_dir=None)[source]
requirementslib.models.setup_info.pep517_subprocess_runner(cmd, cwd=None, extra_environ=None)[source]

The default method of calling the wrapper subprocess.

requirementslib.models.setup_info.run_setup(script_path, egg_base=None)[source]

Run a setup.py script with a target egg_base if provided.

Parameters:
  • script_path (S) – The path to the setup.py script to run
  • egg_base (Optional[S]) – The metadata directory to build in
Raises:

FileNotFoundError – If the provided script_path does not exist

Returns:

The metadata dictionary

Return type:

Dict[Any, Any]

requirementslib.models.setup_info.setuptools_parse_setup_cfg(path)[source]