mirror of https://github.com/mamba-org/mamba.git
Enable and update Python stubs (#3972)
This commit is contained in:
parent
fe1fc2c789
commit
d390bbe80a
|
@ -112,6 +112,10 @@ jobs:
|
||||||
python -m pytest libmambapy/tests/ \
|
python -m pytest libmambapy/tests/ \
|
||||||
${{ runner.debug == 'true' && '-v --capture=tee-sys' || '--exitfirst' }} \
|
${{ runner.debug == 'true' && '-v --capture=tee-sys' || '--exitfirst' }} \
|
||||||
${{ github.ref == 'refs/heads/main' && '--reruns 3' || '' }}
|
${{ github.ref == 'refs/heads/main' && '--reruns 3' || '' }}
|
||||||
|
- name: Generate libmambapy stubs
|
||||||
|
run: stubgen -o generated/ -p libmambapy -p libmambapy.bindings
|
||||||
|
- name: Check committed libmambapy stubs against generated ones
|
||||||
|
run: python dev/compare_stubs.py generated/ libmambapy/src
|
||||||
|
|
||||||
mamba_integration_tests_unix:
|
mamba_integration_tests_unix:
|
||||||
name: mamba integration tests
|
name: mamba integration tests
|
||||||
|
|
|
@ -34,6 +34,7 @@ repos:
|
||||||
hooks:
|
hooks:
|
||||||
- id: ruff
|
- id: ruff
|
||||||
args: [--fix]
|
args: [--fix]
|
||||||
|
exclude_types: [pyi]
|
||||||
- id: ruff-format
|
- id: ruff-format
|
||||||
- repo: https://github.com/asottile/blacken-docs
|
- repo: https://github.com/asottile/blacken-docs
|
||||||
rev: 1.19.1
|
rev: 1.19.1
|
||||||
|
|
|
@ -1,42 +0,0 @@
|
||||||
import ast
|
|
||||||
import sys
|
|
||||||
from itertools import zip_longest
|
|
||||||
|
|
||||||
|
|
||||||
# https://stackoverflow.com/a/66733795
|
|
||||||
# original autho Seanny123, CC BY-SA 4.0
|
|
||||||
def compare_ast(node1, node2) -> bool:
|
|
||||||
if type(node1) is not type(node2):
|
|
||||||
return False
|
|
||||||
|
|
||||||
if isinstance(node1, ast.AST):
|
|
||||||
for k, v in vars(node1).items():
|
|
||||||
if k in {"lineno", "end_lineno", "col_offset", "end_col_offset", "ctx"}:
|
|
||||||
continue
|
|
||||||
if not compare_ast(v, getattr(node2, k)):
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
|
|
||||||
elif isinstance(node1, list) and isinstance(node2, list):
|
|
||||||
return all(compare_ast(n1, n2) for n1, n2 in zip_longest(node1, node2))
|
|
||||||
else:
|
|
||||||
return node1 == node2
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
print(sys.argv)
|
|
||||||
|
|
||||||
f1, f2 = sys.argv[1:3]
|
|
||||||
|
|
||||||
with open(f1) as fi:
|
|
||||||
a1 = ast.parse(fi.read())
|
|
||||||
|
|
||||||
with open(f2) as fi:
|
|
||||||
a2 = ast.parse(fi.read())
|
|
||||||
|
|
||||||
if not compare_ast(a1, a2):
|
|
||||||
print("Stubs are different! Please rerun pybind11-stubgen")
|
|
||||||
print("CI has these: \n\n")
|
|
||||||
with open(f2) as fi:
|
|
||||||
print(fi.read())
|
|
||||||
sys.exit(1)
|
|
|
@ -0,0 +1,112 @@
|
||||||
|
import ast
|
||||||
|
import sys
|
||||||
|
import pathlib
|
||||||
|
import itertools
|
||||||
|
from collections.abc import Iterable
|
||||||
|
|
||||||
|
|
||||||
|
# https://stackoverflow.com/a/66733795
|
||||||
|
# original autho Seanny123, CC BY-SA 4.0
|
||||||
|
def compare_ast(node1, node2) -> bool:
|
||||||
|
if type(node1) is not type(node2):
|
||||||
|
return False
|
||||||
|
|
||||||
|
if isinstance(node1, ast.AST):
|
||||||
|
for k, v in vars(node1).items():
|
||||||
|
if k in {"lineno", "end_lineno", "col_offset", "end_col_offset", "ctx"}:
|
||||||
|
continue
|
||||||
|
if not compare_ast(v, getattr(node2, k)):
|
||||||
|
return False
|
||||||
|
return True
|
||||||
|
|
||||||
|
elif isinstance(node1, list) and isinstance(node2, list):
|
||||||
|
return all(compare_ast(n1, n2) for n1, n2 in itertools.zip_longest(node1, node2))
|
||||||
|
else:
|
||||||
|
return node1 == node2
|
||||||
|
|
||||||
|
|
||||||
|
def compare_two_files(file1: pathlib.Path, file2: pathlib.Path) -> bool:
|
||||||
|
with open(file1) as f1:
|
||||||
|
a1 = ast.parse(f1.read())
|
||||||
|
with open(file2) as f2:
|
||||||
|
a2 = ast.parse(f2.read())
|
||||||
|
return compare_ast(a1, a2)
|
||||||
|
|
||||||
|
|
||||||
|
def common_suffix_len(a: str, b: str) -> int:
|
||||||
|
return len(
|
||||||
|
[x for x, y in itertools.takewhile(lambda p: p[0] == p[1], zip(reversed(a), reversed(b)))]
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
StubFileCompare = tuple[pathlib.Path, pathlib.Path, bool]
|
||||||
|
StubFileMissing = pathlib.Path
|
||||||
|
|
||||||
|
|
||||||
|
def compare_files(
|
||||||
|
files1: Iterable[pathlib.Path],
|
||||||
|
files2: Iterable[pathlib.Path],
|
||||||
|
) -> list[StubFileCompare | StubFileMissing]:
|
||||||
|
matches: list[tuple[pathlib.Path, pathlib.Path]] = []
|
||||||
|
mismatches: list[pathlib] = []
|
||||||
|
|
||||||
|
files2_remaining = set(files2)
|
||||||
|
files1 = sorted(files1, key=lambda p: len(str(p)), reverse=True)
|
||||||
|
for f1 in files1:
|
||||||
|
best = max(
|
||||||
|
files2_remaining, key=lambda f2: common_suffix_len(str(f1), str(f2)), default=None
|
||||||
|
)
|
||||||
|
if best is not None:
|
||||||
|
matches.append((f1, best))
|
||||||
|
files2_remaining.remove(best)
|
||||||
|
else:
|
||||||
|
mismatches.append(f1)
|
||||||
|
mismatches += files2
|
||||||
|
return [(f1, f2, compare_two_files(f1, f2)) for f1, f2 in matches] + mismatches
|
||||||
|
|
||||||
|
|
||||||
|
def compare_directories(
|
||||||
|
dir1: pathlib.Path,
|
||||||
|
dir2: pathlib.Path,
|
||||||
|
) -> list[StubFileCompare | StubFileMissing]:
|
||||||
|
return compare_files(
|
||||||
|
dir1.glob("**/*.pyi"),
|
||||||
|
dir2.glob("**/*.pyi"),
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def compare_paths(
|
||||||
|
path1: pathlib.Path,
|
||||||
|
path2: pathlib.Path,
|
||||||
|
) -> list[StubFileCompare | StubFileMissing]:
|
||||||
|
if path1.is_dir() and path2.is_dir():
|
||||||
|
return compare_directories(path1, path2)
|
||||||
|
elif not path1.is_dir() and not path2.is_dir():
|
||||||
|
return [(path1, path2, compare_two_files(path1, path2))]
|
||||||
|
else:
|
||||||
|
raise ValueError("Path must be two directories or two files")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
path1 = pathlib.Path(sys.argv[1])
|
||||||
|
path2 = pathlib.Path(sys.argv[2])
|
||||||
|
|
||||||
|
comparison = compare_paths(path1, path2)
|
||||||
|
|
||||||
|
ok = True
|
||||||
|
for c in comparison:
|
||||||
|
if isinstance(c, tuple):
|
||||||
|
p1, p2, same = c
|
||||||
|
print("{} {} -> {}".format("✅" if same else "❌", p1, p2))
|
||||||
|
ok &= same
|
||||||
|
else:
|
||||||
|
print(f"❌ {c} -> ?")
|
||||||
|
ok = False
|
||||||
|
|
||||||
|
if not ok:
|
||||||
|
print(
|
||||||
|
"\nStubs are out of date! Compile and install libmambapy, then run:"
|
||||||
|
"\n stubgen -o libmambapy/src/ -p libmambapy -p libmambapy.bindings"
|
||||||
|
)
|
||||||
|
|
||||||
|
sys.exit(0 if ok else 1)
|
|
@ -43,7 +43,7 @@ dependencies:
|
||||||
- securesystemslib
|
- securesystemslib
|
||||||
# libmambapy build dependencies
|
# libmambapy build dependencies
|
||||||
- scikit-build
|
- scikit-build
|
||||||
- pybind11-stubgen <1.0
|
- mypy # For stubgen
|
||||||
# libmambapy dependencies
|
# libmambapy dependencies
|
||||||
- python
|
- python
|
||||||
- pybind11
|
- pybind11
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1 @@
|
||||||
|
from . import legacy as legacy, solver as solver, specs as specs, utils as utils
|
|
@ -57,7 +57,7 @@ namespace PYBIND11_NAMESPACE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
PYBIND11_TYPE_CASTER(value_type, detail::concat(make_caster<T>::name, make_caster<E>::name));
|
PYBIND11_TYPE_CASTER(value_type, make_caster<T>::name);
|
||||||
};
|
};
|
||||||
|
|
||||||
template <typename E>
|
template <typename E>
|
||||||
|
|
|
@ -412,16 +412,30 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
}
|
}
|
||||||
));
|
));
|
||||||
|
|
||||||
/**************
|
/******************************************************
|
||||||
* Bindings *
|
* Forward bindings to avoid C++ name in Python doc *
|
||||||
**************/
|
******************************************************/
|
||||||
|
|
||||||
|
// The lifetime of the unique Context instance will determine the lifetime of the other
|
||||||
|
// singletons.
|
||||||
|
using context_ptr = std::unique_ptr<Context, mambapy::destroy_singleton>;
|
||||||
|
auto pyContext = py::class_<Context, context_ptr>(m, "Context");
|
||||||
|
|
||||||
|
auto pyChannelContext = py::class_<ChannelContext>(m, "ChannelContext");
|
||||||
|
|
||||||
|
py::register_exception<mamba_error>(m, "MambaNativeException");
|
||||||
|
|
||||||
// declare earlier to avoid C++ types in docstrings
|
|
||||||
auto pyPrefixData = py::class_<PrefixData>(m, "PrefixData");
|
auto pyPrefixData = py::class_<PrefixData>(m, "PrefixData");
|
||||||
|
|
||||||
|
auto pySubdirIndexLoader = py::class_<SubdirIndexLoader>(m, "SubdirIndexLoader");
|
||||||
|
|
||||||
// only used in a return type; does it belong in the module?
|
// only used in a return type; does it belong in the module?
|
||||||
auto pyRootRole = py::class_<validation::RootRole>(m, "RootRole");
|
auto pyRootRole = py::class_<validation::RootRole>(m, "RootRole");
|
||||||
|
|
||||||
|
/**************
|
||||||
|
* Bindings *
|
||||||
|
**************/
|
||||||
|
|
||||||
py::class_<fs::u8path>(m, "Path")
|
py::class_<fs::u8path>(m, "Path")
|
||||||
.def(py::init<std::string>())
|
.def(py::init<std::string>())
|
||||||
.def("__str__", [](fs::u8path& self) -> std::string { return self.string(); })
|
.def("__str__", [](fs::u8path& self) -> std::string { return self.string(); })
|
||||||
|
@ -434,8 +448,6 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
|
|
||||||
py::class_<mamba::LockFile>(m, "LockFile").def(py::init<fs::u8path>());
|
py::class_<mamba::LockFile>(m, "LockFile").def(py::init<fs::u8path>());
|
||||||
|
|
||||||
py::register_exception<mamba_error>(m, "MambaNativeException");
|
|
||||||
|
|
||||||
py::add_ostream_redirect(m, "ostream_redirect");
|
py::add_ostream_redirect(m, "ostream_redirect");
|
||||||
|
|
||||||
py::class_<download::RemoteFetchParams>(m, "RemoteFetchParams")
|
py::class_<download::RemoteFetchParams>(m, "RemoteFetchParams")
|
||||||
|
@ -514,47 +526,6 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
)
|
)
|
||||||
.def("get_requested_specs_map", &History::get_requested_specs_map);
|
.def("get_requested_specs_map", &History::get_requested_specs_map);
|
||||||
|
|
||||||
py::enum_<QueryType>(m, "QueryType")
|
|
||||||
.value("Search", QueryType::Search)
|
|
||||||
.value("Depends", QueryType::Depends)
|
|
||||||
.value("WhoNeeds", QueryType::WhoNeeds)
|
|
||||||
.def(py::init(&mambapy::enum_from_str<QueryType>))
|
|
||||||
.def_static("parse", &query_type_parse);
|
|
||||||
py::implicitly_convertible<py::str, QueryType>();
|
|
||||||
|
|
||||||
py::enum_<QueryResultFormat>(m, "QueryResultFormat")
|
|
||||||
.value("Json", QueryResultFormat::Json)
|
|
||||||
.value("Tree", QueryResultFormat::Tree)
|
|
||||||
.value("Table", QueryResultFormat::Table)
|
|
||||||
.value("Pretty", QueryResultFormat::Pretty)
|
|
||||||
.value("RecursiveTable", QueryResultFormat::RecursiveTable)
|
|
||||||
.def(py::init(&mambapy::enum_from_str<QueryResultFormat>));
|
|
||||||
py::implicitly_convertible<py::str, QueryType>();
|
|
||||||
|
|
||||||
py::class_<QueryResult>(m, "QueryResult")
|
|
||||||
.def_property_readonly("type", &QueryResult::type)
|
|
||||||
.def_property_readonly("query", &QueryResult::query)
|
|
||||||
.def("sort", &QueryResult::sort, py::return_value_policy::reference)
|
|
||||||
.def("groupby", &QueryResult::groupby, py::return_value_policy::reference)
|
|
||||||
.def("reset", &QueryResult::reset, py::return_value_policy::reference)
|
|
||||||
.def("table", &QueryResult::table_to_str)
|
|
||||||
.def("tree", &QueryResult::tree_to_str)
|
|
||||||
.def("pretty", &QueryResult::pretty_to_str, py::arg("show_all_builds") = true)
|
|
||||||
.def("json", [](const QueryResult& query) { return query.json().dump(); })
|
|
||||||
.def(
|
|
||||||
"to_dict",
|
|
||||||
[](const QueryResult& query)
|
|
||||||
{
|
|
||||||
auto json_module = pybind11::module_::import("json");
|
|
||||||
return json_module.attr("loads")(query.json().dump());
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
py::class_<Query>(m, "Query")
|
|
||||||
.def_static("find", &Query::find)
|
|
||||||
.def_static("whoneeds", &Query::whoneeds)
|
|
||||||
.def_static("depends", &Query::depends);
|
|
||||||
|
|
||||||
py::class_<SubdirParams>(m, "SubdirParams")
|
py::class_<SubdirParams>(m, "SubdirParams")
|
||||||
.def_readwrite("local_repodata_ttl_s", &SubdirParams::local_repodata_ttl_s)
|
.def_readwrite("local_repodata_ttl_s", &SubdirParams::local_repodata_ttl_s)
|
||||||
.def_readwrite("offline", &SubdirParams::offline)
|
.def_readwrite("offline", &SubdirParams::offline)
|
||||||
|
@ -586,7 +557,7 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
.def("store_file_metadata", &SubdirMetadata::store_file_metadata)
|
.def("store_file_metadata", &SubdirMetadata::store_file_metadata)
|
||||||
.def("write_state_file", &SubdirMetadata::write_state_file);
|
.def("write_state_file", &SubdirMetadata::write_state_file);
|
||||||
|
|
||||||
py::class_<SubdirIndexLoader>(m, "SubdirIndexLoader")
|
pySubdirIndexLoader
|
||||||
.def_static(
|
.def_static(
|
||||||
"create",
|
"create",
|
||||||
SubdirIndexLoader::create,
|
SubdirIndexLoader::create,
|
||||||
|
@ -801,8 +772,7 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
.value("CRITICAL", mamba::log_level::critical)
|
.value("CRITICAL", mamba::log_level::critical)
|
||||||
.value("OFF", mamba::log_level::off);
|
.value("OFF", mamba::log_level::off);
|
||||||
|
|
||||||
py::class_<ChannelContext>(m, "ChannelContext")
|
pyChannelContext.def_static("make_simple", &ChannelContext::make_simple)
|
||||||
.def_static("make_simple", &ChannelContext::make_simple)
|
|
||||||
.def_static("make_conda_compatible", &ChannelContext::make_conda_compatible)
|
.def_static("make_conda_compatible", &ChannelContext::make_conda_compatible)
|
||||||
.def(
|
.def(
|
||||||
py::init<specs::ChannelResolveParams, std::vector<specs::Channel>>(),
|
py::init<specs::ChannelResolveParams, std::vector<specs::Channel>>(),
|
||||||
|
@ -846,11 +816,21 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
py::arg("enable_signal_handling") = true
|
py::arg("enable_signal_handling") = true
|
||||||
)
|
)
|
||||||
.def_readwrite("enable_logging", &ContextOptions::enable_logging)
|
.def_readwrite("enable_logging", &ContextOptions::enable_logging)
|
||||||
.def_readwrite("enable_signal_handling", &ContextOptions::enable_signal_handling);
|
.def_readwrite("enable_signal_handling", &ContextOptions::enable_signal_handling)
|
||||||
|
.def(
|
||||||
|
"__repr__",
|
||||||
|
[](const ContextOptions& self)
|
||||||
|
{
|
||||||
|
return fmt::format(
|
||||||
|
"ContextOptions(enable_logging={}, enable_signal_handling={})",
|
||||||
|
self.enable_logging,
|
||||||
|
self.enable_signal_handling
|
||||||
|
);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
// The lifetime of the unique Context instance will determine the lifetime of the other
|
// The lifetime of the unique Context instance will determine the lifetime of the other
|
||||||
// singletons.
|
// singletons.
|
||||||
using context_ptr = std::unique_ptr<Context, mambapy::destroy_singleton>;
|
|
||||||
auto context_constructor = [](ContextOptions options = mambapy::default_context_options
|
auto context_constructor = [](ContextOptions options = mambapy::default_context_options
|
||||||
) -> context_ptr
|
) -> context_ptr
|
||||||
{
|
{
|
||||||
|
@ -864,9 +844,8 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
return context_ptr(&mambapy::singletons().context());
|
return context_ptr(&mambapy::singletons().context());
|
||||||
};
|
};
|
||||||
|
|
||||||
py::class_<Context, context_ptr> ctx(m, "Context");
|
pyContext
|
||||||
|
.def(py::init(context_constructor), py::arg("options") = mambapy::default_context_options)
|
||||||
ctx.def(py::init(context_constructor), py::arg("options") = mambapy::default_context_options)
|
|
||||||
.def_static("use_default_signal_handler", &Context::use_default_signal_handler)
|
.def_static("use_default_signal_handler", &Context::use_default_signal_handler)
|
||||||
.def_readwrite("graphics_params", &Context::graphics_params)
|
.def_readwrite("graphics_params", &Context::graphics_params)
|
||||||
.def_readwrite("offline", &Context::offline)
|
.def_readwrite("offline", &Context::offline)
|
||||||
|
@ -918,36 +897,36 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
.def("set_verbosity", &Context::set_verbosity)
|
.def("set_verbosity", &Context::set_verbosity)
|
||||||
.def("set_log_level", &Context::set_log_level);
|
.def("set_log_level", &Context::set_log_level);
|
||||||
|
|
||||||
ctx.def_property_readonly_static(
|
pyContext.def_property_readonly_static(
|
||||||
"RemoteFetchParams",
|
"RemoteFetchParams",
|
||||||
[](py::handle) { return py::type::of<download::RemoteFetchParams>(); }
|
[](py::handle) { return py::type::of<download::RemoteFetchParams>(); }
|
||||||
);
|
);
|
||||||
|
|
||||||
py::class_<Context::OutputParams>(ctx, "OutputParams")
|
py::class_<Context::OutputParams>(pyContext, "OutputParams")
|
||||||
.def(py::init<>())
|
.def(py::init<>())
|
||||||
.def_readwrite("verbosity", &Context::OutputParams::verbosity)
|
.def_readwrite("verbosity", &Context::OutputParams::verbosity)
|
||||||
.def_readwrite("json", &Context::OutputParams::json)
|
.def_readwrite("json", &Context::OutputParams::json)
|
||||||
.def_readwrite("quiet", &Context::OutputParams::quiet);
|
.def_readwrite("quiet", &Context::OutputParams::quiet);
|
||||||
|
|
||||||
py::class_<ThreadsParams>(ctx, "ThreadsParams")
|
py::class_<ThreadsParams>(pyContext, "ThreadsParams")
|
||||||
.def(py::init<>())
|
.def(py::init<>())
|
||||||
.def_readwrite("download_threads", &ThreadsParams::download_threads)
|
.def_readwrite("download_threads", &ThreadsParams::download_threads)
|
||||||
.def_readwrite("extract_threads", &ThreadsParams::extract_threads);
|
.def_readwrite("extract_threads", &ThreadsParams::extract_threads);
|
||||||
|
|
||||||
py::class_<PrefixParams>(ctx, "PrefixParams")
|
py::class_<PrefixParams>(pyContext, "PrefixParams")
|
||||||
.def(py::init<>())
|
.def(py::init<>())
|
||||||
.def_readwrite("target_prefix", &PrefixParams::target_prefix)
|
.def_readwrite("target_prefix", &PrefixParams::target_prefix)
|
||||||
.def_readwrite("conda_prefix", &PrefixParams::conda_prefix)
|
.def_readwrite("conda_prefix", &PrefixParams::conda_prefix)
|
||||||
.def_readwrite("root_prefix", &PrefixParams::root_prefix);
|
.def_readwrite("root_prefix", &PrefixParams::root_prefix);
|
||||||
|
|
||||||
py::class_<ValidationParams>(ctx, "ValidationParams")
|
py::class_<ValidationParams>(pyContext, "ValidationParams")
|
||||||
.def(py::init<>())
|
.def(py::init<>())
|
||||||
.def_readwrite("safety_checks", &ValidationParams::safety_checks)
|
.def_readwrite("safety_checks", &ValidationParams::safety_checks)
|
||||||
.def_readwrite("extra_safety_checks", &ValidationParams::extra_safety_checks)
|
.def_readwrite("extra_safety_checks", &ValidationParams::extra_safety_checks)
|
||||||
.def_readwrite("verify_artifacts", &ValidationParams::verify_artifacts)
|
.def_readwrite("verify_artifacts", &ValidationParams::verify_artifacts)
|
||||||
.def_readwrite("trusted_channels", &ValidationParams::trusted_channels);
|
.def_readwrite("trusted_channels", &ValidationParams::trusted_channels);
|
||||||
|
|
||||||
ctx.def_readwrite("remote_fetch_params", &Context::remote_fetch_params)
|
pyContext.def_readwrite("remote_fetch_params", &Context::remote_fetch_params)
|
||||||
.def_readwrite("output_params", &Context::output_params)
|
.def_readwrite("output_params", &Context::output_params)
|
||||||
.def_readwrite("threads_params", &Context::threads_params)
|
.def_readwrite("threads_params", &Context::threads_params)
|
||||||
.def_readwrite("prefix_params", &Context::prefix_params)
|
.def_readwrite("prefix_params", &Context::prefix_params)
|
||||||
|
@ -957,19 +936,20 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
// Support the old deprecated API ///
|
// Support the old deprecated API ///
|
||||||
////////////////////////////////////////////
|
////////////////////////////////////////////
|
||||||
// RemoteFetchParams
|
// RemoteFetchParams
|
||||||
ctx.def_property(
|
pyContext
|
||||||
"ssl_verify",
|
.def_property(
|
||||||
[](const Context& self)
|
"ssl_verify",
|
||||||
{
|
[](const Context& self)
|
||||||
deprecated("Use `remote_fetch_params.ssl_verify` instead.");
|
{
|
||||||
return self.remote_fetch_params.ssl_verify;
|
deprecated("Use `remote_fetch_params.ssl_verify` instead.");
|
||||||
},
|
return self.remote_fetch_params.ssl_verify;
|
||||||
[](Context& self, std::string sv)
|
},
|
||||||
{
|
[](Context& self, std::string sv)
|
||||||
deprecated("Use `remote_fetch_params.ssl_verify` instead.");
|
{
|
||||||
self.remote_fetch_params.ssl_verify = sv;
|
deprecated("Use `remote_fetch_params.ssl_verify` instead.");
|
||||||
}
|
self.remote_fetch_params.ssl_verify = sv;
|
||||||
)
|
}
|
||||||
|
)
|
||||||
.def_property(
|
.def_property(
|
||||||
"max_retries",
|
"max_retries",
|
||||||
[](const Context& self)
|
[](const Context& self)
|
||||||
|
@ -1050,19 +1030,20 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
);
|
);
|
||||||
|
|
||||||
// OutputParams
|
// OutputParams
|
||||||
ctx.def_property(
|
pyContext
|
||||||
"verbosity",
|
.def_property(
|
||||||
[](const Context& self)
|
"verbosity",
|
||||||
{
|
[](const Context& self)
|
||||||
deprecated("Use `output_params.verbosity` instead.");
|
{
|
||||||
return self.output_params.verbosity;
|
deprecated("Use `output_params.verbosity` instead.");
|
||||||
},
|
return self.output_params.verbosity;
|
||||||
[](Context& self, int v)
|
},
|
||||||
{
|
[](Context& self, int v)
|
||||||
deprecated("Use `output_params.verbosity` instead.");
|
{
|
||||||
self.output_params.verbosity = v;
|
deprecated("Use `output_params.verbosity` instead.");
|
||||||
}
|
self.output_params.verbosity = v;
|
||||||
)
|
}
|
||||||
|
)
|
||||||
.def_property(
|
.def_property(
|
||||||
"json",
|
"json",
|
||||||
[](const Context& self)
|
[](const Context& self)
|
||||||
|
@ -1091,19 +1072,20 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
);
|
);
|
||||||
|
|
||||||
// ThreadsParams
|
// ThreadsParams
|
||||||
ctx.def_property(
|
pyContext
|
||||||
"download_threads",
|
.def_property(
|
||||||
[](const Context& self)
|
"download_threads",
|
||||||
{
|
[](const Context& self)
|
||||||
deprecated("Use `threads_params.download_threads` instead.");
|
{
|
||||||
return self.threads_params.download_threads;
|
deprecated("Use `threads_params.download_threads` instead.");
|
||||||
},
|
return self.threads_params.download_threads;
|
||||||
[](Context& self, std::size_t dt)
|
},
|
||||||
{
|
[](Context& self, std::size_t dt)
|
||||||
deprecated("Use `threads_params.download_threads` instead.");
|
{
|
||||||
self.threads_params.download_threads = dt;
|
deprecated("Use `threads_params.download_threads` instead.");
|
||||||
}
|
self.threads_params.download_threads = dt;
|
||||||
)
|
}
|
||||||
|
)
|
||||||
.def_property(
|
.def_property(
|
||||||
"extract_threads",
|
"extract_threads",
|
||||||
[](const Context& self)
|
[](const Context& self)
|
||||||
|
@ -1119,19 +1101,20 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
);
|
);
|
||||||
|
|
||||||
// PrefixParams
|
// PrefixParams
|
||||||
ctx.def_property(
|
pyContext
|
||||||
"target_prefix",
|
.def_property(
|
||||||
[](const Context& self)
|
"target_prefix",
|
||||||
{
|
[](const Context& self)
|
||||||
deprecated("Use `prefix_params.target_prefix` instead.");
|
{
|
||||||
return self.prefix_params.target_prefix;
|
deprecated("Use `prefix_params.target_prefix` instead.");
|
||||||
},
|
return self.prefix_params.target_prefix;
|
||||||
[](Context& self, fs::u8path tp)
|
},
|
||||||
{
|
[](Context& self, fs::u8path tp)
|
||||||
deprecated("Use `prefix_params.target_prefix` instead.");
|
{
|
||||||
self.prefix_params.target_prefix = tp;
|
deprecated("Use `prefix_params.target_prefix` instead.");
|
||||||
}
|
self.prefix_params.target_prefix = tp;
|
||||||
)
|
}
|
||||||
|
)
|
||||||
.def_property(
|
.def_property(
|
||||||
"conda_prefix",
|
"conda_prefix",
|
||||||
[](const Context& self)
|
[](const Context& self)
|
||||||
|
@ -1160,19 +1143,20 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
);
|
);
|
||||||
|
|
||||||
// ValidationParams
|
// ValidationParams
|
||||||
ctx.def_property(
|
pyContext
|
||||||
"safety_checks",
|
.def_property(
|
||||||
[](const Context& self)
|
"safety_checks",
|
||||||
{
|
[](const Context& self)
|
||||||
deprecated("Use `validation_params.safety_checks` instead.");
|
{
|
||||||
return self.validation_params.safety_checks;
|
deprecated("Use `validation_params.safety_checks` instead.");
|
||||||
},
|
return self.validation_params.safety_checks;
|
||||||
[](Context& self, VerificationLevel sc)
|
},
|
||||||
{
|
[](Context& self, VerificationLevel sc)
|
||||||
deprecated("Use `validation_params.safety_checks` instead.");
|
{
|
||||||
self.validation_params.safety_checks = sc;
|
deprecated("Use `validation_params.safety_checks` instead.");
|
||||||
}
|
self.validation_params.safety_checks = sc;
|
||||||
)
|
}
|
||||||
|
)
|
||||||
.def_property(
|
.def_property(
|
||||||
"extra_safety_checks",
|
"extra_safety_checks",
|
||||||
[](const Context& self)
|
[](const Context& self)
|
||||||
|
@ -1215,6 +1199,47 @@ bind_submodule_impl(pybind11::module_ m)
|
||||||
|
|
||||||
////////////////////////////////////////////
|
////////////////////////////////////////////
|
||||||
|
|
||||||
|
py::enum_<QueryType>(m, "QueryType")
|
||||||
|
.value("Search", QueryType::Search)
|
||||||
|
.value("Depends", QueryType::Depends)
|
||||||
|
.value("WhoNeeds", QueryType::WhoNeeds)
|
||||||
|
.def(py::init(&mambapy::enum_from_str<QueryType>))
|
||||||
|
.def_static("parse", &query_type_parse);
|
||||||
|
py::implicitly_convertible<py::str, QueryType>();
|
||||||
|
|
||||||
|
py::enum_<QueryResultFormat>(m, "QueryResultFormat")
|
||||||
|
.value("Json", QueryResultFormat::Json)
|
||||||
|
.value("Tree", QueryResultFormat::Tree)
|
||||||
|
.value("Table", QueryResultFormat::Table)
|
||||||
|
.value("Pretty", QueryResultFormat::Pretty)
|
||||||
|
.value("RecursiveTable", QueryResultFormat::RecursiveTable)
|
||||||
|
.def(py::init(&mambapy::enum_from_str<QueryResultFormat>));
|
||||||
|
py::implicitly_convertible<py::str, QueryType>();
|
||||||
|
|
||||||
|
py::class_<QueryResult>(m, "QueryResult")
|
||||||
|
.def_property_readonly("type", &QueryResult::type)
|
||||||
|
.def_property_readonly("query", &QueryResult::query)
|
||||||
|
.def("sort", &QueryResult::sort, py::return_value_policy::reference)
|
||||||
|
.def("groupby", &QueryResult::groupby, py::return_value_policy::reference)
|
||||||
|
.def("reset", &QueryResult::reset, py::return_value_policy::reference)
|
||||||
|
.def("table", &QueryResult::table_to_str)
|
||||||
|
.def("tree", &QueryResult::tree_to_str)
|
||||||
|
.def("pretty", &QueryResult::pretty_to_str, py::arg("show_all_builds") = true)
|
||||||
|
.def("json", [](const QueryResult& query) { return query.json().dump(); })
|
||||||
|
.def(
|
||||||
|
"to_dict",
|
||||||
|
[](const QueryResult& query)
|
||||||
|
{
|
||||||
|
auto json_module = pybind11::module_::import("json");
|
||||||
|
return json_module.attr("loads")(query.json().dump());
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
py::class_<Query>(m, "Query")
|
||||||
|
.def_static("find", &Query::find)
|
||||||
|
.def_static("whoneeds", &Query::whoneeds)
|
||||||
|
.def_static("depends", &Query::depends);
|
||||||
|
|
||||||
pyPrefixData
|
pyPrefixData
|
||||||
.def(
|
.def(
|
||||||
py::init(
|
py::init(
|
||||||
|
|
|
@ -0,0 +1,658 @@
|
||||||
|
import libmambapy.bindings.solver
|
||||||
|
import libmambapy.bindings.solver.libsolv
|
||||||
|
import libmambapy.bindings.specs
|
||||||
|
import libmambapy.bindings.utils
|
||||||
|
import os
|
||||||
|
from typing import Any, ClassVar, Iterable, Iterator, overload
|
||||||
|
|
||||||
|
MAMBA_CLEAN_ALL: int
|
||||||
|
MAMBA_CLEAN_INDEX: int
|
||||||
|
MAMBA_CLEAN_LOCKS: int
|
||||||
|
MAMBA_CLEAN_PKGS: int
|
||||||
|
MAMBA_CLEAN_TARBALLS: int
|
||||||
|
MAMBA_FORCE_REINSTALL: str
|
||||||
|
MAMBA_NO_DEPS: str
|
||||||
|
MAMBA_ONLY_DEPS: str
|
||||||
|
SOLVER_ALLOWUNINSTALL: str
|
||||||
|
SOLVER_CLEANDEPS: str
|
||||||
|
SOLVER_DISFAVOR: str
|
||||||
|
SOLVER_DISTUPGRADE: str
|
||||||
|
SOLVER_DROP_ORPHANED: str
|
||||||
|
SOLVER_ERASE: str
|
||||||
|
SOLVER_ESSENTIAL: str
|
||||||
|
SOLVER_FAVOR: str
|
||||||
|
SOLVER_FLAG_ADD_ALREADY_RECOMMENDED: str
|
||||||
|
SOLVER_FLAG_ALLOW_ARCHCHANGE: str
|
||||||
|
SOLVER_FLAG_ALLOW_DOWNGRADE: str
|
||||||
|
SOLVER_FLAG_ALLOW_NAMECHANGE: str
|
||||||
|
SOLVER_FLAG_ALLOW_UNINSTALL: str
|
||||||
|
SOLVER_FLAG_ALLOW_VENDORCHANGE: str
|
||||||
|
SOLVER_FLAG_BEST_OBEY_POLICY: str
|
||||||
|
SOLVER_FLAG_BREAK_ORPHANS: str
|
||||||
|
SOLVER_FLAG_DUP_ALLOW_ARCHCHANGE: str
|
||||||
|
SOLVER_FLAG_DUP_ALLOW_DOWNGRADE: str
|
||||||
|
SOLVER_FLAG_DUP_ALLOW_NAMECHANGE: str
|
||||||
|
SOLVER_FLAG_DUP_ALLOW_VENDORCHANGE: str
|
||||||
|
SOLVER_FLAG_FOCUS_BEST: str
|
||||||
|
SOLVER_FLAG_FOCUS_INSTALLED: str
|
||||||
|
SOLVER_FLAG_IGNORE_RECOMMENDED: str
|
||||||
|
SOLVER_FLAG_INSTALL_ALSO_UPDATES: str
|
||||||
|
SOLVER_FLAG_KEEP_EXPLICIT_OBSOLETES: str
|
||||||
|
SOLVER_FLAG_KEEP_ORPHANS: str
|
||||||
|
SOLVER_FLAG_NEED_UPDATEPROVIDE: str
|
||||||
|
SOLVER_FLAG_NO_AUTOTARGET: str
|
||||||
|
SOLVER_FLAG_NO_INFARCHCHECK: str
|
||||||
|
SOLVER_FLAG_NO_UPDATEPROVIDE: str
|
||||||
|
SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED: str
|
||||||
|
SOLVER_FLAG_SPLITPROVIDES: str
|
||||||
|
SOLVER_FLAG_STRICT_REPO_PRIORITY: str
|
||||||
|
SOLVER_FLAG_STRONG_RECOMMENDS: str
|
||||||
|
SOLVER_FLAG_URPM_REORDER: str
|
||||||
|
SOLVER_FLAG_YUM_OBSOLETES: str
|
||||||
|
SOLVER_FORCEBEST: str
|
||||||
|
SOLVER_INSTALL: str
|
||||||
|
SOLVER_JOBMASK: str
|
||||||
|
SOLVER_LOCK: str
|
||||||
|
SOLVER_MULTIVERSION: str
|
||||||
|
SOLVER_NOAUTOSET: str
|
||||||
|
SOLVER_NOOP: str
|
||||||
|
SOLVER_NOTBYUSER: str
|
||||||
|
SOLVER_ORUPDATE: str
|
||||||
|
SOLVER_SELECTMASK: str
|
||||||
|
SOLVER_SETARCH: str
|
||||||
|
SOLVER_SETEV: str
|
||||||
|
SOLVER_SETEVR: str
|
||||||
|
SOLVER_SETMASK: str
|
||||||
|
SOLVER_SETNAME: str
|
||||||
|
SOLVER_SETREPO: str
|
||||||
|
SOLVER_SETVENDOR: str
|
||||||
|
SOLVER_SOLVABLE: str
|
||||||
|
SOLVER_SOLVABLE_ALL: str
|
||||||
|
SOLVER_SOLVABLE_NAME: str
|
||||||
|
SOLVER_SOLVABLE_ONE_OF: str
|
||||||
|
SOLVER_SOLVABLE_PROVIDES: str
|
||||||
|
SOLVER_SOLVABLE_REPO: str
|
||||||
|
SOLVER_TARGETED: str
|
||||||
|
SOLVER_UPDATE: str
|
||||||
|
SOLVER_USERINSTALLED: str
|
||||||
|
SOLVER_VERIFY: str
|
||||||
|
SOLVER_WEAK: str
|
||||||
|
SOLVER_WEAKENDEPS: str
|
||||||
|
|
||||||
|
class ChannelContext:
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
params: libmambapy.bindings.specs.ChannelResolveParams,
|
||||||
|
has_zst: list[libmambapy.bindings.specs.Channel],
|
||||||
|
) -> None: ...
|
||||||
|
def has_zst(self, arg0: libmambapy.bindings.specs.Channel) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def make_channel(self, arg0: str) -> list[libmambapy.bindings.specs.Channel]: ...
|
||||||
|
@overload
|
||||||
|
def make_channel(
|
||||||
|
self, arg0: libmambapy.bindings.specs.UnresolvedChannel
|
||||||
|
) -> list[libmambapy.bindings.specs.Channel]: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_conda_compatible(arg0: Context) -> ChannelContext: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_simple(arg0: Context) -> ChannelContext: ...
|
||||||
|
def params(self) -> libmambapy.bindings.specs.ChannelResolveParams: ...
|
||||||
|
|
||||||
|
class ChannelPriority:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Disabled: ClassVar[ChannelPriority] = ...
|
||||||
|
Flexible: ClassVar[ChannelPriority] = ...
|
||||||
|
Strict: ClassVar[ChannelPriority] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class Context:
|
||||||
|
class OutputParams:
|
||||||
|
json: bool
|
||||||
|
quiet: bool
|
||||||
|
verbosity: int
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
|
||||||
|
class PrefixParams:
|
||||||
|
conda_prefix: os.PathLike
|
||||||
|
root_prefix: os.PathLike
|
||||||
|
target_prefix: os.PathLike
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
|
||||||
|
class ThreadsParams:
|
||||||
|
download_threads: int
|
||||||
|
extract_threads: int
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
|
||||||
|
class ValidationParams:
|
||||||
|
extra_safety_checks: bool
|
||||||
|
safety_checks: VerificationLevel
|
||||||
|
trusted_channels: list[str]
|
||||||
|
verify_artifacts: bool
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
|
||||||
|
RemoteFetchParams: ClassVar[type] = ... # read-only
|
||||||
|
add_pip_as_python_dependency: bool
|
||||||
|
always_yes: bool
|
||||||
|
channel_alias: str
|
||||||
|
channel_priority: ChannelPriority
|
||||||
|
channels: list[str]
|
||||||
|
conda_prefix: os.PathLike
|
||||||
|
connect_timeout_secs: float
|
||||||
|
custom_channels: dict[str, str]
|
||||||
|
custom_multichannels: dict[str, list[str]]
|
||||||
|
default_channels: list[str]
|
||||||
|
download_only: bool
|
||||||
|
download_threads: int
|
||||||
|
dry_run: bool
|
||||||
|
envs_dirs: list[os.PathLike]
|
||||||
|
experimental_repodata_parsing: bool
|
||||||
|
experimental_sat_error_message: bool
|
||||||
|
extra_safety_checks: bool
|
||||||
|
extract_threads: int
|
||||||
|
graphics_params: GraphicsParams
|
||||||
|
json: bool
|
||||||
|
local_repodata_ttl: int
|
||||||
|
max_retries: int
|
||||||
|
offline: bool
|
||||||
|
output_params: Context.OutputParams
|
||||||
|
pkgs_dirs: list[os.PathLike]
|
||||||
|
platform: str
|
||||||
|
prefix_params: Context.PrefixParams
|
||||||
|
proxy_servers: dict[str, str]
|
||||||
|
quiet: bool
|
||||||
|
remote_fetch_params: RemoteFetchParams
|
||||||
|
retry_backoff: int
|
||||||
|
retry_timeout: int
|
||||||
|
root_prefix: os.PathLike
|
||||||
|
safety_checks: VerificationLevel
|
||||||
|
show_anaconda_channel_warnings: bool
|
||||||
|
solver_flags: libmambapy.bindings.solver.Request.Flags
|
||||||
|
ssl_verify: str
|
||||||
|
target_prefix: os.PathLike
|
||||||
|
threads_params: Context.ThreadsParams
|
||||||
|
trusted_channels: list[str]
|
||||||
|
use_index_cache: bool
|
||||||
|
use_lockfiles: bool
|
||||||
|
use_only_tar_bz2: bool
|
||||||
|
user_agent: str
|
||||||
|
validation_params: Context.ValidationParams
|
||||||
|
verbosity: int
|
||||||
|
verify_artifacts: bool
|
||||||
|
def __init__(self, options: ContextOptions = ...) -> None: ...
|
||||||
|
def set_log_level(self, arg0: LogLevel) -> None: ...
|
||||||
|
def set_verbosity(self, arg0: int) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def use_default_signal_handler(arg0: bool) -> None: ...
|
||||||
|
|
||||||
|
class ContextOptions:
|
||||||
|
enable_logging: bool
|
||||||
|
enable_signal_handling: bool
|
||||||
|
def __init__(self, enable_logging: bool = ..., enable_signal_handling: bool = ...) -> None: ...
|
||||||
|
|
||||||
|
class DownloadOptions:
|
||||||
|
download_threads: int
|
||||||
|
fail_fast: bool
|
||||||
|
sort: bool
|
||||||
|
verbose: bool
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
|
||||||
|
class GraphicsParams:
|
||||||
|
no_progress_bars: bool
|
||||||
|
palette: Palette
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
|
||||||
|
class History:
|
||||||
|
def __init__(self, path: os.PathLike, channel_context: ChannelContext) -> None: ...
|
||||||
|
def get_requested_specs_map(self) -> dict[str, libmambapy.bindings.specs.MatchSpec]: ...
|
||||||
|
|
||||||
|
class Key:
|
||||||
|
keytype: str
|
||||||
|
keyval: str
|
||||||
|
scheme: str
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def from_ed25519(arg0: str) -> Key: ...
|
||||||
|
@property
|
||||||
|
def json_str(self) -> str: ...
|
||||||
|
|
||||||
|
class KeyMgr(RoleBase, RoleBaseExtension):
|
||||||
|
def __init__(self, arg0: str, arg1: RoleFullKeys, arg2: SpecBase) -> None: ...
|
||||||
|
|
||||||
|
class LockFile:
|
||||||
|
def __init__(self, arg0: os.PathLike) -> None: ...
|
||||||
|
|
||||||
|
class LogLevel:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
CRITICAL: ClassVar[LogLevel] = ...
|
||||||
|
DEBUG: ClassVar[LogLevel] = ...
|
||||||
|
ERROR: ClassVar[LogLevel] = ...
|
||||||
|
INFO: ClassVar[LogLevel] = ...
|
||||||
|
OFF: ClassVar[LogLevel] = ...
|
||||||
|
TRACE: ClassVar[LogLevel] = ...
|
||||||
|
WARNING: ClassVar[LogLevel] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class MambaNativeException(Exception): ...
|
||||||
|
|
||||||
|
class MatchSpec:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
class MirrorMap:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def has_mirrors(self, mirror_name: str) -> bool: ...
|
||||||
|
def __contains__(self, arg0: str) -> bool: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
|
||||||
|
class MultiPackageCache:
|
||||||
|
def __init__(self, context: Context, pkgs_dirs: list[os.PathLike]) -> None: ...
|
||||||
|
def get_tarball_path(
|
||||||
|
self, arg0: libmambapy.bindings.specs.PackageInfo, arg1: bool
|
||||||
|
) -> os.PathLike: ...
|
||||||
|
@property
|
||||||
|
def first_writable_path(self) -> os.PathLike: ...
|
||||||
|
|
||||||
|
class PackageInfo:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
class Palette:
|
||||||
|
addition: libmambapy.bindings.utils.TextStyle
|
||||||
|
deletion: libmambapy.bindings.utils.TextStyle
|
||||||
|
external: libmambapy.bindings.utils.TextStyle
|
||||||
|
failure: libmambapy.bindings.utils.TextStyle
|
||||||
|
ignored: libmambapy.bindings.utils.TextStyle
|
||||||
|
progress_bar_downloaded: libmambapy.bindings.utils.TextStyle
|
||||||
|
progress_bar_extracted: libmambapy.bindings.utils.TextStyle
|
||||||
|
progress_bar_none: libmambapy.bindings.utils.TextStyle
|
||||||
|
safe: libmambapy.bindings.utils.TextStyle
|
||||||
|
shown: libmambapy.bindings.utils.TextStyle
|
||||||
|
success: libmambapy.bindings.utils.TextStyle
|
||||||
|
unsafe: libmambapy.bindings.utils.TextStyle
|
||||||
|
user: libmambapy.bindings.utils.TextStyle
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def no_color() -> Palette: ...
|
||||||
|
@staticmethod
|
||||||
|
def terminal() -> Palette: ...
|
||||||
|
|
||||||
|
class Path:
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
|
||||||
|
class PkgMgr(RoleBase, RoleBaseExtension):
|
||||||
|
def __init__(self, arg0: str, arg1: RoleFullKeys, arg2: SpecBase) -> None: ...
|
||||||
|
|
||||||
|
class Pool:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
class PrefixData:
|
||||||
|
def __init__(self, path: os.PathLike, channel_context: ChannelContext) -> None: ...
|
||||||
|
def add_packages(self, arg0: list[libmambapy.bindings.specs.PackageInfo]) -> None: ...
|
||||||
|
@property
|
||||||
|
def package_records(self) -> dict[str, libmambapy.bindings.specs.PackageInfo]: ...
|
||||||
|
|
||||||
|
class Query:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def depends(
|
||||||
|
arg0: libmambapy.bindings.solver.libsolv.Database, arg1: str, arg2: bool
|
||||||
|
) -> QueryResult: ...
|
||||||
|
@staticmethod
|
||||||
|
def find(arg0: libmambapy.bindings.solver.libsolv.Database, arg1: list[str]) -> QueryResult: ...
|
||||||
|
@staticmethod
|
||||||
|
def whoneeds(
|
||||||
|
arg0: libmambapy.bindings.solver.libsolv.Database, arg1: str, arg2: bool
|
||||||
|
) -> QueryResult: ...
|
||||||
|
|
||||||
|
class QueryResult:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def groupby(self, arg0: str) -> QueryResult: ...
|
||||||
|
def json(self) -> str: ...
|
||||||
|
def pretty(self, show_all_builds: bool = ...) -> str: ...
|
||||||
|
def reset(self) -> QueryResult: ...
|
||||||
|
def sort(self, arg0: str) -> QueryResult: ...
|
||||||
|
def table(self) -> str: ...
|
||||||
|
def to_dict(self) -> object: ...
|
||||||
|
def tree(self, arg0: GraphicsParams) -> str: ...
|
||||||
|
@property
|
||||||
|
def query(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def type(self) -> QueryType: ...
|
||||||
|
|
||||||
|
class QueryResultFormat:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Json: ClassVar[QueryResultFormat] = ...
|
||||||
|
Pretty: ClassVar[QueryResultFormat] = ...
|
||||||
|
RecursiveTable: ClassVar[QueryResultFormat] = ...
|
||||||
|
Table: ClassVar[QueryResultFormat] = ...
|
||||||
|
Tree: ClassVar[QueryResultFormat] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class QueryType:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Depends: ClassVar[QueryType] = ...
|
||||||
|
Search: ClassVar[QueryType] = ...
|
||||||
|
WhoNeeds: ClassVar[QueryType] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(arg0: str) -> QueryType: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class RemoteFetchParams:
|
||||||
|
connect_timeout_secs: float
|
||||||
|
max_retries: int
|
||||||
|
proxy_servers: dict[str, str]
|
||||||
|
retry_backoff: int
|
||||||
|
retry_timeout: int
|
||||||
|
ssl_verify: str
|
||||||
|
user_agent: str
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
|
||||||
|
class Repo:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
class RoleBase:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def all_keys(self) -> dict[str, RoleFullKeys]: ...
|
||||||
|
@property
|
||||||
|
def expired(self) -> bool: ...
|
||||||
|
@property
|
||||||
|
def expires(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def file_ext(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def spec_version(self) -> SpecBase: ...
|
||||||
|
@property
|
||||||
|
def type(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def version(self) -> int: ...
|
||||||
|
|
||||||
|
class RoleBaseExtension:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
@property
|
||||||
|
def timestamp(self) -> str: ...
|
||||||
|
|
||||||
|
class RoleFullKeys:
|
||||||
|
keys: dict[str, Key]
|
||||||
|
threshold: int
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, keys: dict[str, Key], threshold: int) -> None: ...
|
||||||
|
|
||||||
|
class RootImpl(RoleBase, RoleBaseExtension):
|
||||||
|
def __init__(self, json_str: str) -> None: ...
|
||||||
|
def create_key_mgr(self, json_str: str) -> KeyMgr: ...
|
||||||
|
def update(self, json_str: str) -> RootRole: ...
|
||||||
|
|
||||||
|
class RootRole:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
class Solver:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, *args, **kwargs) -> Any: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class SolverRuleinfo:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, *args, **kwargs) -> Any: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class SpecBase:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
class SpecImpl(SpecBase):
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
|
||||||
|
class SubdirData:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def cache_path(self) -> str: ...
|
||||||
|
def create_repo(
|
||||||
|
self, context: Context, db: libmambapy.bindings.solver.libsolv.Database
|
||||||
|
) -> libmambapy.bindings.solver.libsolv.RepoInfo: ...
|
||||||
|
def loaded(self) -> bool: ...
|
||||||
|
def valid_json_cache(self) -> os.PathLike | None: ...
|
||||||
|
def valid_solv_cache(self) -> os.PathLike | None: ...
|
||||||
|
|
||||||
|
class SubdirDownloadParams:
|
||||||
|
offline: bool
|
||||||
|
repodata_check_zst: bool
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
class SubdirIndex:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def create(
|
||||||
|
self,
|
||||||
|
context: Context,
|
||||||
|
channel_context: ChannelContext,
|
||||||
|
channel: libmambapy.bindings.specs.Channel,
|
||||||
|
platform: str,
|
||||||
|
full_url: str,
|
||||||
|
caches: MultiPackageCache,
|
||||||
|
repodata_fn: str,
|
||||||
|
url: str,
|
||||||
|
) -> None: ...
|
||||||
|
def download(self, arg0: Context) -> bool: ...
|
||||||
|
def __getitem__(self, arg0: int) -> SubdirIndexEntry: ...
|
||||||
|
def __iter__(self) -> Iterator[SubdirIndexEntry]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
|
||||||
|
class SubdirIndexEntry:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@property
|
||||||
|
def channel(self) -> libmambapy.bindings.specs.Channel: ...
|
||||||
|
@property
|
||||||
|
def platform(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def subdir(self) -> SubdirData: ...
|
||||||
|
@property
|
||||||
|
def url(self) -> str: ...
|
||||||
|
|
||||||
|
class SubdirIndexLoader:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def caching_is_forbidden(self) -> bool: ...
|
||||||
|
def channel(self) -> libmambapy.bindings.specs.Channel: ...
|
||||||
|
def channel_id(self) -> str: ...
|
||||||
|
def clear_valid_cache_files(self) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def create(
|
||||||
|
params: SubdirParams,
|
||||||
|
channel: libmambapy.bindings.specs.Channel,
|
||||||
|
platform: str,
|
||||||
|
caches: MultiPackageCache,
|
||||||
|
repodata_filename: str = ...,
|
||||||
|
) -> SubdirIndexLoader: ...
|
||||||
|
@staticmethod
|
||||||
|
def download_required_indexes(
|
||||||
|
subdir_indices: Iterable,
|
||||||
|
subdir_params: SubdirDownloadParams,
|
||||||
|
auth_info: libmambapy.bindings.specs.AuthenticationDataBase,
|
||||||
|
mirrors: MirrorMap,
|
||||||
|
download_options: DownloadOptions,
|
||||||
|
remote_fetch_params: RemoteFetchParams,
|
||||||
|
) -> None: ...
|
||||||
|
def is_local(self) -> bool: ...
|
||||||
|
def is_noarch(self) -> bool: ...
|
||||||
|
def metadata(self) -> SubdirMetadata: ...
|
||||||
|
def name(self) -> str: ...
|
||||||
|
def platform(self) -> str: ...
|
||||||
|
def repodata_url(self) -> libmambapy.bindings.specs.CondaURL: ...
|
||||||
|
def valid_cache_found(self) -> bool: ...
|
||||||
|
def valid_json_cache_path(self) -> os.PathLike: ...
|
||||||
|
def valid_libsolv_cache_path(self) -> os.PathLike: ...
|
||||||
|
def writable_libsolv_cache_path(self) -> os.PathLike: ...
|
||||||
|
|
||||||
|
class SubdirMetadata:
|
||||||
|
class HttpMetadata:
|
||||||
|
cache_control: str
|
||||||
|
etag: str
|
||||||
|
last_modified: str
|
||||||
|
url: str
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def cache_control(self) -> str: ...
|
||||||
|
def etag(self) -> str: ...
|
||||||
|
def has_up_to_date_zst(self) -> bool: ...
|
||||||
|
def is_valid_metadata(self, arg0: os.PathLike) -> bool: ...
|
||||||
|
def last_modified(self) -> str: ...
|
||||||
|
@staticmethod
|
||||||
|
def read(arg0: os.PathLike) -> SubdirMetadata: ...
|
||||||
|
@staticmethod
|
||||||
|
def read_from_repodata_json(arg0: os.PathLike) -> SubdirMetadata: ...
|
||||||
|
@staticmethod
|
||||||
|
def read_state_file(arg0: os.PathLike, arg1: os.PathLike) -> SubdirMetadata: ...
|
||||||
|
def set_http_metadata(self, arg0: SubdirMetadata.HttpMetadata) -> None: ...
|
||||||
|
def set_zst(self, arg0: bool) -> None: ...
|
||||||
|
def store_file_metadata(self, arg0: os.PathLike) -> None: ...
|
||||||
|
def url(self) -> str: ...
|
||||||
|
def write_state_file(self, arg0: os.PathLike) -> None: ...
|
||||||
|
|
||||||
|
class SubdirParams:
|
||||||
|
local_repodata_ttl_s: int | None
|
||||||
|
offline: bool
|
||||||
|
repodata_force_use_zst: bool
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
class TimeRef:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: int) -> None: ...
|
||||||
|
def set(self, arg0: int) -> None: ...
|
||||||
|
def set_now(self) -> None: ...
|
||||||
|
def timestamp(self) -> str: ...
|
||||||
|
|
||||||
|
class Transaction:
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
arg0: Context,
|
||||||
|
arg1: libmambapy.bindings.solver.libsolv.Database,
|
||||||
|
arg2: libmambapy.bindings.solver.Request,
|
||||||
|
arg3: libmambapy.bindings.solver.Solution,
|
||||||
|
arg4: MultiPackageCache,
|
||||||
|
) -> None: ...
|
||||||
|
def execute(self, arg0: Context, arg1: ChannelContext, arg2: PrefixData) -> bool: ...
|
||||||
|
def fetch_extract_packages(self, arg0: Context, arg1: ChannelContext) -> bool: ...
|
||||||
|
def log_json(self) -> None: ...
|
||||||
|
def print(self, arg0: Context, arg1: ChannelContext) -> None: ...
|
||||||
|
def prompt(self, arg0: Context, arg1: ChannelContext) -> bool: ...
|
||||||
|
def to_conda(
|
||||||
|
self,
|
||||||
|
) -> tuple[tuple[list[str], list[str]], list[tuple[str, str, str]], list[tuple[str, str]]]: ...
|
||||||
|
|
||||||
|
class VerificationLevel:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Disabled: ClassVar[VerificationLevel] = ...
|
||||||
|
Enabled: ClassVar[VerificationLevel] = ...
|
||||||
|
Warn: ClassVar[VerificationLevel] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class ostream_redirect:
|
||||||
|
def __init__(self, stdout: bool = ..., stderr: bool = ...) -> None: ...
|
||||||
|
def __enter__(self) -> None: ...
|
||||||
|
def __exit__(self, *args) -> None: ...
|
||||||
|
|
||||||
|
def cache_filename_from_url(arg0: str) -> str: ...
|
||||||
|
def cache_fn_url(arg0: str) -> str: ...
|
||||||
|
def cache_name_from_url(arg0: str) -> str: ...
|
||||||
|
def cancel_json_output(arg0: Context) -> None: ...
|
||||||
|
def clean(context: Context, flags: int) -> None: ...
|
||||||
|
def create_cache_dir(arg0: os.PathLike) -> str: ...
|
||||||
|
def extract_package(arg0: os.PathLike, arg1: os.PathLike, arg2: bool) -> None: ...
|
||||||
|
def generate_ed25519_keypair() -> tuple[str, str]: ...
|
||||||
|
def get_virtual_packages(arg0: Context) -> list[libmambapy.bindings.specs.PackageInfo]: ...
|
||||||
|
def init_console() -> None: ...
|
||||||
|
def load_installed_packages_in_database(
|
||||||
|
context: Context, database: libmambapy.bindings.solver.libsolv.Database, prefix_data: PrefixData
|
||||||
|
) -> libmambapy.bindings.solver.libsolv.RepoInfo: ...
|
||||||
|
def load_subdir_in_database(
|
||||||
|
context: Context,
|
||||||
|
database: libmambapy.bindings.solver.libsolv.Database,
|
||||||
|
subdir: SubdirIndexLoader,
|
||||||
|
) -> libmambapy.bindings.solver.libsolv.RepoInfo: ...
|
||||||
|
def sign(data: str, secret_key: str) -> str: ...
|
||||||
|
def transmute(
|
||||||
|
context: Context,
|
||||||
|
source_package: os.PathLike,
|
||||||
|
destination_package: os.PathLike,
|
||||||
|
compression_level: int,
|
||||||
|
compression_threads: int = ...,
|
||||||
|
) -> bool: ...
|
|
@ -0,0 +1,570 @@
|
||||||
|
import libmambapy.bindings.specs
|
||||||
|
import libmambapy.bindings.utils
|
||||||
|
from . import libsolv as libsolv
|
||||||
|
from _typeshed import Incomplete
|
||||||
|
from typing import ClassVar, Iterable, Iterator, overload
|
||||||
|
|
||||||
|
class CompressedProblemsGraph:
|
||||||
|
class ConstraintListNode:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def add(self, arg0: ProblemsGraph.ConstraintNode) -> None: ...
|
||||||
|
def build_strings_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def clear(self) -> None: ...
|
||||||
|
def name(self) -> str: ...
|
||||||
|
def versions_and_build_strings_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def versions_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
def __iter__(self) -> Iterator[ProblemsGraph.ConstraintNode]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
|
||||||
|
class DependencyList:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def add(self, arg0: libmambapy.bindings.specs.MatchSpec) -> None: ...
|
||||||
|
def build_strings_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def clear(self) -> None: ...
|
||||||
|
def name(self) -> str: ...
|
||||||
|
def versions_and_build_strings_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def versions_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
def __iter__(self) -> Iterator[libmambapy.bindings.specs.MatchSpec]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
|
||||||
|
class PackageListNode:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def add(self, arg0: ProblemsGraph.PackageNode) -> None: ...
|
||||||
|
def build_strings_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def clear(self) -> None: ...
|
||||||
|
def name(self) -> str: ...
|
||||||
|
def versions_and_build_strings_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def versions_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
def __iter__(self) -> Iterator[ProblemsGraph.PackageNode]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
|
||||||
|
class UnresolvedDependencyListNode:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def add(self, arg0: ProblemsGraph.UnresolvedDependencyNode) -> None: ...
|
||||||
|
def build_strings_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def clear(self) -> None: ...
|
||||||
|
def name(self) -> str: ...
|
||||||
|
def versions_and_build_strings_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def versions_trunc(
|
||||||
|
self,
|
||||||
|
sep: str = ...,
|
||||||
|
etc: str = ...,
|
||||||
|
threshold: int = ...,
|
||||||
|
remove_duplicates: bool = ...,
|
||||||
|
) -> tuple[str, int]: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
def __iter__(self) -> Iterator[ProblemsGraph.UnresolvedDependencyNode]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
|
||||||
|
ConflictMap: ClassVar[type] = ... # read-only
|
||||||
|
RootNode: ClassVar[type] = ... # read-only
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def conflicts(self) -> ProblemsGraph.ConflictMap: ...
|
||||||
|
@overload
|
||||||
|
@staticmethod
|
||||||
|
def from_problems_graph(
|
||||||
|
problems_graph: ProblemsGraph, merge_criteria
|
||||||
|
) -> CompressedProblemsGraph: ...
|
||||||
|
@overload
|
||||||
|
@staticmethod
|
||||||
|
def from_problems_graph(problems_graph: ProblemsGraph) -> CompressedProblemsGraph: ...
|
||||||
|
def graph(
|
||||||
|
self,
|
||||||
|
) -> tuple[
|
||||||
|
dict[
|
||||||
|
int,
|
||||||
|
ProblemsGraph.RootNode
|
||||||
|
| CompressedProblemsGraph.PackageListNode
|
||||||
|
| CompressedProblemsGraph.UnresolvedDependencyListNode
|
||||||
|
| CompressedProblemsGraph.ConstraintListNode,
|
||||||
|
],
|
||||||
|
dict[tuple[int, int], CompressedProblemsGraph.DependencyList],
|
||||||
|
]: ...
|
||||||
|
def root_node(self) -> int: ...
|
||||||
|
def tree_message(self, format: ProblemsMessageFormat = ...) -> str: ...
|
||||||
|
|
||||||
|
class ProblemsGraph:
|
||||||
|
class ConflictMap:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def add(self, arg0: int, arg1: int) -> bool: ...
|
||||||
|
def clear(self) -> None: ...
|
||||||
|
def conflicts(self, arg0: int) -> set[int]: ...
|
||||||
|
def has_conflict(self, arg0: int) -> bool: ...
|
||||||
|
def in_conflict(self, arg0: int, arg1: int) -> bool: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
def __contains__(self, arg0: int) -> bool: ...
|
||||||
|
def __copy__(self) -> ProblemsGraph.ConflictMap: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> ProblemsGraph.ConflictMap: ...
|
||||||
|
def __eq__(self, arg0: ProblemsGraph.ConflictMap) -> bool: ...
|
||||||
|
def __iter__(self) -> Iterator[tuple[int, set[int]]]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: ProblemsGraph.ConflictMap) -> bool: ...
|
||||||
|
|
||||||
|
class ConstraintNode(libmambapy.bindings.specs.MatchSpec):
|
||||||
|
def __init__(self, arg0: libmambapy.bindings.specs.MatchSpec) -> None: ...
|
||||||
|
|
||||||
|
class PackageNode(libmambapy.bindings.specs.PackageInfo):
|
||||||
|
def __init__(self, arg0: libmambapy.bindings.specs.PackageInfo) -> None: ...
|
||||||
|
|
||||||
|
class RootNode:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
|
||||||
|
class UnresolvedDependencyNode(libmambapy.bindings.specs.MatchSpec):
|
||||||
|
def __init__(self, arg0: libmambapy.bindings.specs.MatchSpec) -> None: ...
|
||||||
|
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def conflicts(self) -> ProblemsGraph.ConflictMap: ...
|
||||||
|
def graph(
|
||||||
|
self,
|
||||||
|
) -> tuple[
|
||||||
|
dict[
|
||||||
|
int,
|
||||||
|
ProblemsGraph.RootNode
|
||||||
|
| ProblemsGraph.PackageNode
|
||||||
|
| ProblemsGraph.UnresolvedDependencyNode
|
||||||
|
| ProblemsGraph.ConstraintNode,
|
||||||
|
],
|
||||||
|
dict[tuple[int, int], libmambapy.bindings.specs.MatchSpec],
|
||||||
|
]: ...
|
||||||
|
def root_node(self) -> int: ...
|
||||||
|
@staticmethod
|
||||||
|
def simplify_conflicts(arg0: ProblemsGraph) -> ProblemsGraph: ...
|
||||||
|
|
||||||
|
class ProblemsMessageFormat:
|
||||||
|
available: libmambapy.bindings.utils.TextStyle
|
||||||
|
indents: Incomplete
|
||||||
|
unavailable: libmambapy.bindings.utils.TextStyle
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
unavailable: libmambapy.bindings.utils.TextStyle,
|
||||||
|
available: libmambapy.bindings.utils.TextStyle,
|
||||||
|
indents,
|
||||||
|
) -> None: ...
|
||||||
|
def __copy__(self) -> ProblemsMessageFormat: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> ProblemsMessageFormat: ...
|
||||||
|
|
||||||
|
class Request:
|
||||||
|
class Flags:
|
||||||
|
allow_downgrade: bool
|
||||||
|
allow_uninstall: bool
|
||||||
|
force_reinstall: bool
|
||||||
|
keep_dependencies: bool
|
||||||
|
keep_user_specs: bool
|
||||||
|
order_request: bool
|
||||||
|
strict_repo_priority: bool
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
keep_dependencies: bool = ...,
|
||||||
|
keep_user_specs: bool = ...,
|
||||||
|
force_reinstall: bool = ...,
|
||||||
|
allow_downgrade: bool = ...,
|
||||||
|
allow_uninstall: bool = ...,
|
||||||
|
strict_repo_priority: bool = ...,
|
||||||
|
order_request: bool = ...,
|
||||||
|
) -> None: ...
|
||||||
|
def __copy__(self) -> Request.Flags: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Request.Flags: ...
|
||||||
|
|
||||||
|
class Freeze:
|
||||||
|
spec: libmambapy.bindings.specs.MatchSpec
|
||||||
|
def __init__(self, spec: libmambapy.bindings.specs.MatchSpec) -> None: ...
|
||||||
|
def __copy__(self) -> Request.Freeze: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Request.Freeze: ...
|
||||||
|
|
||||||
|
class Install:
|
||||||
|
spec: libmambapy.bindings.specs.MatchSpec
|
||||||
|
def __init__(self, spec: libmambapy.bindings.specs.MatchSpec) -> None: ...
|
||||||
|
def __copy__(self) -> Request.Install: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Request.Install: ...
|
||||||
|
|
||||||
|
class JobList:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: Request.JobList) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: Iterable) -> None: ...
|
||||||
|
def append(
|
||||||
|
self,
|
||||||
|
x: Request.Install
|
||||||
|
| Request.Remove
|
||||||
|
| Request.Update
|
||||||
|
| Request.UpdateAll
|
||||||
|
| Request.Keep
|
||||||
|
| Request.Freeze
|
||||||
|
| Request.Pin,
|
||||||
|
) -> None: ...
|
||||||
|
def clear(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def extend(self, L: Request.JobList) -> None: ...
|
||||||
|
@overload
|
||||||
|
def extend(self, L: Iterable) -> None: ...
|
||||||
|
def insert(
|
||||||
|
self,
|
||||||
|
i: int,
|
||||||
|
x: Request.Install
|
||||||
|
| Request.Remove
|
||||||
|
| Request.Update
|
||||||
|
| Request.UpdateAll
|
||||||
|
| Request.Keep
|
||||||
|
| Request.Freeze
|
||||||
|
| Request.Pin,
|
||||||
|
) -> None: ...
|
||||||
|
@overload
|
||||||
|
def pop(
|
||||||
|
self,
|
||||||
|
) -> (
|
||||||
|
Request.Install
|
||||||
|
| Request.Remove
|
||||||
|
| Request.Update
|
||||||
|
| Request.UpdateAll
|
||||||
|
| Request.Keep
|
||||||
|
| Request.Freeze
|
||||||
|
| Request.Pin
|
||||||
|
): ...
|
||||||
|
@overload
|
||||||
|
def pop(
|
||||||
|
self, i: int
|
||||||
|
) -> (
|
||||||
|
Request.Install
|
||||||
|
| Request.Remove
|
||||||
|
| Request.Update
|
||||||
|
| Request.UpdateAll
|
||||||
|
| Request.Keep
|
||||||
|
| Request.Freeze
|
||||||
|
| Request.Pin
|
||||||
|
): ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __delitem__(self, arg0: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __delitem__(self, arg0: slice) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __getitem__(self, s: slice) -> Request.JobList: ...
|
||||||
|
@overload
|
||||||
|
def __getitem__(
|
||||||
|
self, arg0: int
|
||||||
|
) -> (
|
||||||
|
Request.Install
|
||||||
|
| Request.Remove
|
||||||
|
| Request.Update
|
||||||
|
| Request.UpdateAll
|
||||||
|
| Request.Keep
|
||||||
|
| Request.Freeze
|
||||||
|
| Request.Pin
|
||||||
|
): ...
|
||||||
|
def __iter__(
|
||||||
|
self,
|
||||||
|
) -> Iterator[
|
||||||
|
Request.Install
|
||||||
|
| Request.Remove
|
||||||
|
| Request.Update
|
||||||
|
| Request.UpdateAll
|
||||||
|
| Request.Keep
|
||||||
|
| Request.Freeze
|
||||||
|
| Request.Pin
|
||||||
|
]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
@overload
|
||||||
|
def __setitem__(
|
||||||
|
self,
|
||||||
|
arg0: int,
|
||||||
|
arg1: Request.Install
|
||||||
|
| Request.Remove
|
||||||
|
| Request.Update
|
||||||
|
| Request.UpdateAll
|
||||||
|
| Request.Keep
|
||||||
|
| Request.Freeze
|
||||||
|
| Request.Pin,
|
||||||
|
) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __setitem__(self, arg0: slice, arg1: Request.JobList) -> None: ...
|
||||||
|
|
||||||
|
class Keep:
|
||||||
|
spec: libmambapy.bindings.specs.MatchSpec
|
||||||
|
def __init__(self, spec: libmambapy.bindings.specs.MatchSpec) -> None: ...
|
||||||
|
def __copy__(self) -> Request.Keep: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Request.Keep: ...
|
||||||
|
|
||||||
|
class Pin:
|
||||||
|
spec: libmambapy.bindings.specs.MatchSpec
|
||||||
|
def __init__(self, spec: libmambapy.bindings.specs.MatchSpec) -> None: ...
|
||||||
|
def __copy__(self) -> Request.Pin: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Request.Pin: ...
|
||||||
|
|
||||||
|
class Remove:
|
||||||
|
clean_dependencies: bool
|
||||||
|
spec: libmambapy.bindings.specs.MatchSpec
|
||||||
|
def __init__(
|
||||||
|
self, spec: libmambapy.bindings.specs.MatchSpec, clean_dependencies: bool = ...
|
||||||
|
) -> None: ...
|
||||||
|
def __copy__(self) -> Request.Remove: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Request.Remove: ...
|
||||||
|
|
||||||
|
class Update:
|
||||||
|
clean_dependencies: bool
|
||||||
|
spec: libmambapy.bindings.specs.MatchSpec
|
||||||
|
def __init__(
|
||||||
|
self, spec: libmambapy.bindings.specs.MatchSpec, clean_dependencies: bool = ...
|
||||||
|
) -> None: ...
|
||||||
|
def __copy__(self) -> Request.Update: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Request.Update: ...
|
||||||
|
|
||||||
|
class UpdateAll:
|
||||||
|
clean_dependencies: bool
|
||||||
|
def __init__(self, clean_dependencies: bool = ...) -> None: ...
|
||||||
|
def __copy__(self) -> Request.UpdateAll: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Request.UpdateAll: ...
|
||||||
|
|
||||||
|
flags: Request.Flags
|
||||||
|
jobs: Request.JobList
|
||||||
|
@overload
|
||||||
|
def __init__(self, jobs: Request.JobList, flags: Request.Flags = ...) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, jobs: Iterable, flags: Request.Flags = ...) -> None: ...
|
||||||
|
def __copy__(self) -> Request: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Request: ...
|
||||||
|
|
||||||
|
class Solution:
|
||||||
|
class ActionList:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: Solution.ActionList) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: Iterable) -> None: ...
|
||||||
|
def append(
|
||||||
|
self,
|
||||||
|
x: Solution.Omit
|
||||||
|
| Solution.Upgrade
|
||||||
|
| Solution.Downgrade
|
||||||
|
| Solution.Change
|
||||||
|
| Solution.Reinstall
|
||||||
|
| Solution.Remove
|
||||||
|
| Solution.Install,
|
||||||
|
) -> None: ...
|
||||||
|
def clear(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def extend(self, L: Solution.ActionList) -> None: ...
|
||||||
|
@overload
|
||||||
|
def extend(self, L: Iterable) -> None: ...
|
||||||
|
def insert(
|
||||||
|
self,
|
||||||
|
i: int,
|
||||||
|
x: Solution.Omit
|
||||||
|
| Solution.Upgrade
|
||||||
|
| Solution.Downgrade
|
||||||
|
| Solution.Change
|
||||||
|
| Solution.Reinstall
|
||||||
|
| Solution.Remove
|
||||||
|
| Solution.Install,
|
||||||
|
) -> None: ...
|
||||||
|
@overload
|
||||||
|
def pop(
|
||||||
|
self,
|
||||||
|
) -> (
|
||||||
|
Solution.Omit
|
||||||
|
| Solution.Upgrade
|
||||||
|
| Solution.Downgrade
|
||||||
|
| Solution.Change
|
||||||
|
| Solution.Reinstall
|
||||||
|
| Solution.Remove
|
||||||
|
| Solution.Install
|
||||||
|
): ...
|
||||||
|
@overload
|
||||||
|
def pop(
|
||||||
|
self, i: int
|
||||||
|
) -> (
|
||||||
|
Solution.Omit
|
||||||
|
| Solution.Upgrade
|
||||||
|
| Solution.Downgrade
|
||||||
|
| Solution.Change
|
||||||
|
| Solution.Reinstall
|
||||||
|
| Solution.Remove
|
||||||
|
| Solution.Install
|
||||||
|
): ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __delitem__(self, arg0: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __delitem__(self, arg0: slice) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __getitem__(self, s: slice) -> Solution.ActionList: ...
|
||||||
|
@overload
|
||||||
|
def __getitem__(
|
||||||
|
self, arg0: int
|
||||||
|
) -> (
|
||||||
|
Solution.Omit
|
||||||
|
| Solution.Upgrade
|
||||||
|
| Solution.Downgrade
|
||||||
|
| Solution.Change
|
||||||
|
| Solution.Reinstall
|
||||||
|
| Solution.Remove
|
||||||
|
| Solution.Install
|
||||||
|
): ...
|
||||||
|
def __iter__(
|
||||||
|
self,
|
||||||
|
) -> Iterator[
|
||||||
|
Solution.Omit
|
||||||
|
| Solution.Upgrade
|
||||||
|
| Solution.Downgrade
|
||||||
|
| Solution.Change
|
||||||
|
| Solution.Reinstall
|
||||||
|
| Solution.Remove
|
||||||
|
| Solution.Install
|
||||||
|
]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
@overload
|
||||||
|
def __setitem__(
|
||||||
|
self,
|
||||||
|
arg0: int,
|
||||||
|
arg1: Solution.Omit
|
||||||
|
| Solution.Upgrade
|
||||||
|
| Solution.Downgrade
|
||||||
|
| Solution.Change
|
||||||
|
| Solution.Reinstall
|
||||||
|
| Solution.Remove
|
||||||
|
| Solution.Install,
|
||||||
|
) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __setitem__(self, arg0: slice, arg1: Solution.ActionList) -> None: ...
|
||||||
|
|
||||||
|
class Change:
|
||||||
|
install: libmambapy.bindings.specs.PackageInfo
|
||||||
|
remove: libmambapy.bindings.specs.PackageInfo
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
remove: libmambapy.bindings.specs.PackageInfo,
|
||||||
|
install: libmambapy.bindings.specs.PackageInfo,
|
||||||
|
) -> None: ...
|
||||||
|
def __copy__(self) -> Solution.Change: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Solution.Change: ...
|
||||||
|
|
||||||
|
class Downgrade:
|
||||||
|
install: libmambapy.bindings.specs.PackageInfo
|
||||||
|
remove: libmambapy.bindings.specs.PackageInfo
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
remove: libmambapy.bindings.specs.PackageInfo,
|
||||||
|
install: libmambapy.bindings.specs.PackageInfo,
|
||||||
|
) -> None: ...
|
||||||
|
def __copy__(self) -> Solution.Downgrade: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Solution.Downgrade: ...
|
||||||
|
|
||||||
|
class Install:
|
||||||
|
install: libmambapy.bindings.specs.PackageInfo
|
||||||
|
def __init__(self, install: libmambapy.bindings.specs.PackageInfo) -> None: ...
|
||||||
|
def __copy__(self) -> Solution.Install: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Solution.Install: ...
|
||||||
|
|
||||||
|
class Omit:
|
||||||
|
what: libmambapy.bindings.specs.PackageInfo
|
||||||
|
def __init__(self, what: libmambapy.bindings.specs.PackageInfo) -> None: ...
|
||||||
|
def __copy__(self) -> Solution.Omit: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Solution.Omit: ...
|
||||||
|
|
||||||
|
class Reinstall:
|
||||||
|
what: libmambapy.bindings.specs.PackageInfo
|
||||||
|
def __init__(self, what: libmambapy.bindings.specs.PackageInfo) -> None: ...
|
||||||
|
def __copy__(self) -> Solution.Reinstall: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Solution.Reinstall: ...
|
||||||
|
|
||||||
|
class Remove:
|
||||||
|
remove: libmambapy.bindings.specs.PackageInfo
|
||||||
|
def __init__(self, remove: libmambapy.bindings.specs.PackageInfo) -> None: ...
|
||||||
|
def __copy__(self) -> Solution.Remove: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Solution.Remove: ...
|
||||||
|
|
||||||
|
class Upgrade:
|
||||||
|
install: libmambapy.bindings.specs.PackageInfo
|
||||||
|
remove: libmambapy.bindings.specs.PackageInfo
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
remove: libmambapy.bindings.specs.PackageInfo,
|
||||||
|
install: libmambapy.bindings.specs.PackageInfo,
|
||||||
|
) -> None: ...
|
||||||
|
def __copy__(self) -> Solution.Upgrade: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Solution.Upgrade: ...
|
||||||
|
|
||||||
|
actions: Solution.ActionList
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: Solution.ActionList) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: Iterable) -> None: ...
|
||||||
|
def to_install(self) -> list[libmambapy.bindings.specs.PackageInfo]: ...
|
||||||
|
def to_omit(self) -> list[libmambapy.bindings.specs.PackageInfo]: ...
|
||||||
|
def to_remove(self) -> list[libmambapy.bindings.specs.PackageInfo]: ...
|
||||||
|
def __copy__(self) -> Solution: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Solution: ...
|
|
@ -0,0 +1,227 @@
|
||||||
|
import libmambapy.bindings.solver
|
||||||
|
import libmambapy.bindings.specs
|
||||||
|
import os
|
||||||
|
from typing import Callable, ClassVar, Iterable, overload
|
||||||
|
|
||||||
|
class Database:
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
channel_params: libmambapy.bindings.specs.ChannelResolveParams,
|
||||||
|
matchspec_parser: MatchSpecParser = ...,
|
||||||
|
) -> None: ...
|
||||||
|
def add_repo_from_native_serialization(
|
||||||
|
self,
|
||||||
|
path: os.PathLike,
|
||||||
|
expected: RepodataOrigin,
|
||||||
|
channel_id: str,
|
||||||
|
add_pip_as_python_dependency: PipAsPythonDependency = ...,
|
||||||
|
) -> RepoInfo: ...
|
||||||
|
def add_repo_from_packages(
|
||||||
|
self,
|
||||||
|
packages: Iterable,
|
||||||
|
name: str = ...,
|
||||||
|
add_pip_as_python_dependency: PipAsPythonDependency = ...,
|
||||||
|
) -> RepoInfo: ...
|
||||||
|
def add_repo_from_repodata_json(
|
||||||
|
self,
|
||||||
|
path: os.PathLike,
|
||||||
|
url: str,
|
||||||
|
channel_id: str,
|
||||||
|
add_pip_as_python_dependency: PipAsPythonDependency = ...,
|
||||||
|
package_types: PackageTypes = ...,
|
||||||
|
verify_packages: VerifyPackages = ...,
|
||||||
|
repodata_parser: RepodataParser = ...,
|
||||||
|
) -> RepoInfo: ...
|
||||||
|
def installed_repo(self) -> RepoInfo | None: ...
|
||||||
|
def native_serialize_repo(
|
||||||
|
self, repo: RepoInfo, path: os.PathLike, metadata: RepodataOrigin
|
||||||
|
) -> RepoInfo: ...
|
||||||
|
def package_count(self) -> int: ...
|
||||||
|
def packages_depending_on(self, spec: libmambapy.bindings.specs.MatchSpec) -> list: ...
|
||||||
|
def packages_in_repo(self, repo: RepoInfo) -> list: ...
|
||||||
|
def packages_matching(self, spec: libmambapy.bindings.specs.MatchSpec) -> list: ...
|
||||||
|
def remove_repo(self, repo: RepoInfo) -> None: ...
|
||||||
|
def repo_count(self) -> int: ...
|
||||||
|
def set_installed_repo(self, repo: RepoInfo) -> None: ...
|
||||||
|
def set_logger(self, arg0: Callable[[LogLevel, str], None]) -> None: ...
|
||||||
|
def set_repo_priority(self, repo: RepoInfo, priorities: Priorities) -> None: ...
|
||||||
|
|
||||||
|
class LogLevel:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Debug: ClassVar[LogLevel] = ...
|
||||||
|
Error: ClassVar[LogLevel] = ...
|
||||||
|
Fatal: ClassVar[LogLevel] = ...
|
||||||
|
Warning: ClassVar[LogLevel] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class MatchSpecParser:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Libsolv: ClassVar[MatchSpecParser] = ...
|
||||||
|
Mamba: ClassVar[MatchSpecParser] = ...
|
||||||
|
Mixed: ClassVar[MatchSpecParser] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class PackageTypes:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
CondaAndTarBz2: ClassVar[PackageTypes] = ...
|
||||||
|
CondaOnly: ClassVar[PackageTypes] = ...
|
||||||
|
CondaOrElseTarBz2: ClassVar[PackageTypes] = ...
|
||||||
|
TarBz2Only: ClassVar[PackageTypes] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class PipAsPythonDependency:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
No: ClassVar[PipAsPythonDependency] = ...
|
||||||
|
Yes: ClassVar[PipAsPythonDependency] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: bool) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class Priorities:
|
||||||
|
priority: int
|
||||||
|
subpriority: int
|
||||||
|
def __init__(self, priority: int = ..., subpriority: int = ...) -> None: ...
|
||||||
|
def __copy__(self) -> Priorities: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Priorities: ...
|
||||||
|
def __eq__(self, arg0: Priorities) -> bool: ...
|
||||||
|
def __ne__(self, arg0: Priorities) -> bool: ...
|
||||||
|
|
||||||
|
class RepoInfo:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def package_count(self) -> int: ...
|
||||||
|
def __copy__(self) -> RepoInfo: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> RepoInfo: ...
|
||||||
|
def __eq__(self, arg0: RepoInfo) -> bool: ...
|
||||||
|
def __ne__(self, arg0: RepoInfo) -> bool: ...
|
||||||
|
@property
|
||||||
|
def id(self) -> int: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def priority(self) -> Priorities: ...
|
||||||
|
|
||||||
|
class RepodataOrigin:
|
||||||
|
etag: str
|
||||||
|
mod: str
|
||||||
|
url: str
|
||||||
|
def __init__(self, url: str = ..., etag: str = ..., mod: str = ...) -> None: ...
|
||||||
|
def __copy__(self) -> RepodataOrigin: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> RepodataOrigin: ...
|
||||||
|
def __eq__(self, arg0: RepodataOrigin) -> bool: ...
|
||||||
|
def __ne__(self, arg0: RepodataOrigin) -> bool: ...
|
||||||
|
|
||||||
|
class RepodataParser:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Libsolv: ClassVar[RepodataParser] = ...
|
||||||
|
Mamba: ClassVar[RepodataParser] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class Solver:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def add_global_job(self, *args, **kwargs) -> None: ...
|
||||||
|
def add_jobs(self, *args, **kwargs) -> None: ...
|
||||||
|
def add_pin(self, *args, **kwargs) -> None: ...
|
||||||
|
def is_solved(self, *args, **kwargs) -> None: ...
|
||||||
|
def must_solve(self, *args, **kwargs) -> None: ...
|
||||||
|
def set_flags(self, *args, **kwargs) -> None: ...
|
||||||
|
def set_libsolv_flags(self, *args, **kwargs) -> None: ...
|
||||||
|
def set_postsolve_flags(self, *args, **kwargs) -> None: ...
|
||||||
|
def solve(
|
||||||
|
self,
|
||||||
|
database: Database,
|
||||||
|
request: libmambapy.bindings.solver.Request,
|
||||||
|
matchspec_parser: MatchSpecParser = ...,
|
||||||
|
) -> libmambapy.bindings.solver.Solution | UnSolvable: ...
|
||||||
|
def try_solve(self, *args, **kwargs) -> None: ...
|
||||||
|
|
||||||
|
class UnSolvable:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def all_problems_to_str(self, database: Database) -> str: ...
|
||||||
|
def explain_problems(
|
||||||
|
self, database: Database, format: libmambapy.bindings.solver.ProblemsMessageFormat
|
||||||
|
) -> str: ...
|
||||||
|
def problems(self, database: Database) -> list[str]: ...
|
||||||
|
def problems_graph(self, database: Database) -> libmambapy.bindings.solver.ProblemsGraph: ...
|
||||||
|
def problems_to_str(self, database: Database) -> str: ...
|
||||||
|
|
||||||
|
class VerifyPackages:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
No: ClassVar[VerifyPackages] = ...
|
||||||
|
Yes: ClassVar[VerifyPackages] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: bool) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
|
@ -790,8 +790,14 @@ namespace mambapy
|
||||||
.def("__deepcopy__", &deepcopy<ChimeraStringSpec>, py::arg("memo"));
|
.def("__deepcopy__", &deepcopy<ChimeraStringSpec>, py::arg("memo"));
|
||||||
|
|
||||||
py::class_<MatchSpec>(m, "MatchSpec")
|
py::class_<MatchSpec>(m, "MatchSpec")
|
||||||
.def_property_readonly_static("NameSpec", &py::type::of<MatchSpec::NameSpec>)
|
.def_property_readonly_static(
|
||||||
.def_property_readonly_static("BuildStringSpec", &py::type::of<MatchSpec::BuildStringSpec>)
|
"NameSpec",
|
||||||
|
[](py::handle) { return py::type::of<MatchSpec::NameSpec>(); }
|
||||||
|
)
|
||||||
|
.def_property_readonly_static(
|
||||||
|
"BuildStringSpec",
|
||||||
|
[](py::handle) { return py::type::of<MatchSpec::BuildStringSpec>(); }
|
||||||
|
)
|
||||||
.def_readonly_static("url_md5_sep", &MatchSpec::url_md5_sep)
|
.def_readonly_static("url_md5_sep", &MatchSpec::url_md5_sep)
|
||||||
.def_readonly_static("preferred_list_open", &MatchSpec::preferred_list_open)
|
.def_readonly_static("preferred_list_open", &MatchSpec::preferred_list_open)
|
||||||
.def_readonly_static("preferred_list_close", &MatchSpec::preferred_list_close)
|
.def_readonly_static("preferred_list_close", &MatchSpec::preferred_list_close)
|
||||||
|
|
|
@ -0,0 +1,713 @@
|
||||||
|
import os
|
||||||
|
from _typeshed import Incomplete
|
||||||
|
from typing import ClassVar, Iterable, Iterator, overload
|
||||||
|
|
||||||
|
class AuthenticationDataBase:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: dict) -> None: ...
|
||||||
|
def at_weaken(self, arg0: str) -> BasicHTTPAuthentication | BearerToken | CondaToken: ...
|
||||||
|
def contains_weaken(self, arg0: str) -> bool: ...
|
||||||
|
def items(self) -> ItemsView: ...
|
||||||
|
def keys(self) -> KeysView: ...
|
||||||
|
def values(self) -> ValuesView: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __contains__(self, arg0: str) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __contains__(self, arg0: object) -> bool: ...
|
||||||
|
def __delitem__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, arg0: AuthenticationDataBase) -> bool: ...
|
||||||
|
def __getitem__(self, arg0: str) -> BasicHTTPAuthentication | BearerToken | CondaToken: ...
|
||||||
|
def __iter__(self) -> Iterator[str]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: AuthenticationDataBase) -> bool: ...
|
||||||
|
def __setitem__(
|
||||||
|
self, arg0: str, arg1: BasicHTTPAuthentication | BearerToken | CondaToken
|
||||||
|
) -> None: ...
|
||||||
|
|
||||||
|
class BasicHTTPAuthentication:
|
||||||
|
password: str
|
||||||
|
user: str
|
||||||
|
def __init__(self, user: str, password: str) -> None: ...
|
||||||
|
def __copy__(self) -> BasicHTTPAuthentication: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> BasicHTTPAuthentication: ...
|
||||||
|
def __eq__(self, arg0: BasicHTTPAuthentication) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: BasicHTTPAuthentication) -> bool: ...
|
||||||
|
|
||||||
|
class BearerToken:
|
||||||
|
token: str
|
||||||
|
def __init__(self, token: str) -> None: ...
|
||||||
|
def __copy__(self) -> BearerToken: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> BearerToken: ...
|
||||||
|
def __eq__(self, arg0: BearerToken) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: BearerToken) -> bool: ...
|
||||||
|
|
||||||
|
class Channel:
|
||||||
|
class Match:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Full: ClassVar[Channel.Match] = ...
|
||||||
|
InOtherPlatform: ClassVar[Channel.Match] = ...
|
||||||
|
No: ClassVar[Channel.Match] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
ChannelMap: ClassVar[type] = ... # read-only
|
||||||
|
MultiChannelMap: ClassVar[type] = ... # read-only
|
||||||
|
display_name: str
|
||||||
|
platforms: set[str]
|
||||||
|
url: CondaURL
|
||||||
|
def __init__(self, url: CondaURL, display_name: str, platforms: set[str]) -> None: ...
|
||||||
|
def contains_equivalent(self, arg0: Channel) -> bool: ...
|
||||||
|
def contains_package(self, arg0: CondaURL) -> Channel.Match: ...
|
||||||
|
def is_equivalent_to(self, arg0: Channel) -> bool: ...
|
||||||
|
def is_package(self) -> bool: ...
|
||||||
|
def platform_url(self, arg0: str) -> CondaURL: ...
|
||||||
|
def platform_urls(self) -> list[CondaURL]: ...
|
||||||
|
@overload
|
||||||
|
@staticmethod
|
||||||
|
def resolve(what: UnresolvedChannel, params: ChannelResolveParams) -> list[Channel]: ...
|
||||||
|
@overload
|
||||||
|
@staticmethod
|
||||||
|
def resolve(
|
||||||
|
what: UnresolvedChannel,
|
||||||
|
platforms: set[str] = ...,
|
||||||
|
channel_alias: CondaURL = ...,
|
||||||
|
custom_channels: ChannelResolveParams.ChannelMap = ...,
|
||||||
|
custom_multichannels: ChannelResolveParams.MultiChannelMap = ...,
|
||||||
|
authentication_db: AuthenticationDataBase = ...,
|
||||||
|
home_dir: str = ...,
|
||||||
|
current_working_dir: str = ...,
|
||||||
|
) -> list[Channel]: ...
|
||||||
|
def url_equivalent_with(self, arg0: Channel) -> bool: ...
|
||||||
|
def __copy__(self) -> Channel: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Channel: ...
|
||||||
|
def __eq__(self, arg0: Channel) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: Channel) -> bool: ...
|
||||||
|
|
||||||
|
class ChannelResolveParams:
|
||||||
|
class ChannelMap:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: dict) -> None: ...
|
||||||
|
def at_weaken(self, arg0: str) -> Channel: ...
|
||||||
|
def contains_weaken(self, arg0: str) -> bool: ...
|
||||||
|
def items(self) -> ItemsView: ...
|
||||||
|
def keys(self) -> KeysView: ...
|
||||||
|
def values(self) -> ValuesView: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __contains__(self, arg0: str) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __contains__(self, arg0: object) -> bool: ...
|
||||||
|
def __delitem__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, arg0: ChannelResolveParams.ChannelMap) -> bool: ...
|
||||||
|
def __getitem__(self, arg0: str) -> Channel: ...
|
||||||
|
def __iter__(self) -> Iterator[str]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: ChannelResolveParams.ChannelMap) -> bool: ...
|
||||||
|
def __setitem__(self, arg0: str, arg1: Channel) -> None: ...
|
||||||
|
|
||||||
|
class MultiChannelMap:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: dict) -> None: ...
|
||||||
|
def at_weaken(self, arg0: str) -> list[Channel]: ...
|
||||||
|
def contains_weaken(self, arg0: str) -> bool: ...
|
||||||
|
def items(self) -> ItemsView: ...
|
||||||
|
def keys(self) -> KeysView: ...
|
||||||
|
def values(self) -> ValuesView: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __contains__(self, arg0: str) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __contains__(self, arg0: object) -> bool: ...
|
||||||
|
def __delitem__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, arg0: ChannelResolveParams.MultiChannelMap) -> bool: ...
|
||||||
|
def __getitem__(self, arg0: str) -> list[Channel]: ...
|
||||||
|
def __iter__(self) -> Iterator[str]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: ChannelResolveParams.MultiChannelMap) -> bool: ...
|
||||||
|
def __setitem__(self, arg0: str, arg1: list[Channel]) -> None: ...
|
||||||
|
|
||||||
|
authentication_db: AuthenticationDataBase
|
||||||
|
channel_alias: CondaURL
|
||||||
|
current_working_dir: str
|
||||||
|
custom_channels: ChannelResolveParams.ChannelMap
|
||||||
|
custom_multichannels: ChannelResolveParams.MultiChannelMap
|
||||||
|
home_dir: str
|
||||||
|
platforms: set[str]
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
platforms: set[str] = ...,
|
||||||
|
channel_alias: CondaURL = ...,
|
||||||
|
custom_channels: ChannelResolveParams.ChannelMap = ...,
|
||||||
|
custom_multichannels: ChannelResolveParams.MultiChannelMap = ...,
|
||||||
|
authentication_db: AuthenticationDataBase = ...,
|
||||||
|
home_dir: str = ...,
|
||||||
|
current_working_dir: str = ...,
|
||||||
|
) -> None: ...
|
||||||
|
def __copy__(self) -> BasicHTTPAuthentication: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> BasicHTTPAuthentication: ...
|
||||||
|
|
||||||
|
class ChimeraStringSpec:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def contains(self, arg0: str) -> bool: ...
|
||||||
|
def is_exact(self) -> bool: ...
|
||||||
|
def is_explicitly_free(self) -> bool: ...
|
||||||
|
def is_glob(self) -> bool: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(arg0: str) -> ChimeraStringSpec: ...
|
||||||
|
def __copy__(self) -> ChimeraStringSpec: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> ChimeraStringSpec: ...
|
||||||
|
|
||||||
|
class CommonVersion:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: CommonVersion) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: Iterable) -> None: ...
|
||||||
|
def append(self, x: VersionPart) -> None: ...
|
||||||
|
def clear(self) -> None: ...
|
||||||
|
def count(self, x: VersionPart) -> int: ...
|
||||||
|
@overload
|
||||||
|
def extend(self, L: CommonVersion) -> None: ...
|
||||||
|
@overload
|
||||||
|
def extend(self, L: Iterable) -> None: ...
|
||||||
|
def insert(self, i: int, x: VersionPart) -> None: ...
|
||||||
|
@overload
|
||||||
|
def pop(self) -> VersionPart: ...
|
||||||
|
@overload
|
||||||
|
def pop(self, i: int) -> VersionPart: ...
|
||||||
|
def remove(self, x: VersionPart) -> None: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
def __contains__(self, x: VersionPart) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __delitem__(self, arg0: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __delitem__(self, arg0: slice) -> None: ...
|
||||||
|
def __eq__(self, arg0: CommonVersion) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __getitem__(self, s: slice) -> CommonVersion: ...
|
||||||
|
@overload
|
||||||
|
def __getitem__(self, arg0: int) -> VersionPart: ...
|
||||||
|
def __iter__(self) -> Iterator[VersionPart]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: CommonVersion) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __setitem__(self, arg0: int, arg1: VersionPart) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __setitem__(self, arg0: slice, arg1: CommonVersion) -> None: ...
|
||||||
|
|
||||||
|
class CondaToken:
|
||||||
|
token: str
|
||||||
|
def __init__(self, token: str) -> None: ...
|
||||||
|
def __copy__(self) -> CondaToken: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> CondaToken: ...
|
||||||
|
def __eq__(self, arg0: CondaToken) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: CondaToken) -> bool: ...
|
||||||
|
|
||||||
|
class CondaURL:
|
||||||
|
class Credentials:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Hide: ClassVar[CondaURL.Credentials] = ...
|
||||||
|
Remove: ClassVar[CondaURL.Credentials] = ...
|
||||||
|
Show: ClassVar[CondaURL.Credentials] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def append_path(self, path: str, encode: bool = ...) -> None: ...
|
||||||
|
def authentication(self) -> str: ...
|
||||||
|
def authority(self) -> str: ...
|
||||||
|
def clear_host(self) -> str: ...
|
||||||
|
def clear_package(self) -> bool: ...
|
||||||
|
def clear_password(self) -> str: ...
|
||||||
|
def clear_path(self) -> str: ...
|
||||||
|
def clear_path_without_token(self) -> bool: ...
|
||||||
|
def clear_platform(self) -> bool: ...
|
||||||
|
def clear_port(self) -> str: ...
|
||||||
|
def clear_scheme(self) -> str: ...
|
||||||
|
def clear_token(self) -> bool: ...
|
||||||
|
def clear_user(self) -> str: ...
|
||||||
|
def has_password(self) -> bool: ...
|
||||||
|
def has_token(self) -> bool: ...
|
||||||
|
def has_user(self) -> bool: ...
|
||||||
|
def host(self, decode: bool = ...) -> str: ...
|
||||||
|
def host_is_defaulted(self) -> bool: ...
|
||||||
|
def package(self, decode: bool = ...) -> str: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(arg0: str) -> CondaURL: ...
|
||||||
|
def password(self, decode: bool = ...) -> str: ...
|
||||||
|
def path(self, decode: bool = ...) -> str: ...
|
||||||
|
def path_without_token(self, decode: bool = ...) -> str: ...
|
||||||
|
def platform(self) -> KnownPlatform | None: ...
|
||||||
|
def port(self) -> str: ...
|
||||||
|
def pretty_path(self) -> str: ...
|
||||||
|
def pretty_str(
|
||||||
|
self,
|
||||||
|
strip_scheme: bool = ...,
|
||||||
|
rstrip_path: str = ...,
|
||||||
|
credentials: CondaURL.Credentials = ...,
|
||||||
|
) -> str: ...
|
||||||
|
def scheme(self) -> str: ...
|
||||||
|
def scheme_is_defaulted(self) -> bool: ...
|
||||||
|
def set_host(self, host: str, encode: bool = ...) -> None: ...
|
||||||
|
def set_package(self, package: str, encode: bool = ...) -> None: ...
|
||||||
|
def set_password(self, password: str, encode: bool = ...) -> None: ...
|
||||||
|
def set_path(self, path: str, encode: bool = ...) -> None: ...
|
||||||
|
def set_path_without_token(self, path_without_token: str, encode: bool = ...) -> None: ...
|
||||||
|
def set_platform(self, arg0: KnownPlatform) -> None: ...
|
||||||
|
def set_port(self, arg0: str) -> None: ...
|
||||||
|
def set_scheme(self, arg0: str) -> None: ...
|
||||||
|
def set_token(self, arg0: str) -> None: ...
|
||||||
|
def set_user(self, user: str, encode: bool = ...) -> None: ...
|
||||||
|
def str(self, credentials: CondaURL.Credentials = ...) -> str: ...
|
||||||
|
def token(self) -> str: ...
|
||||||
|
def user(self, decode: bool = ...) -> str: ...
|
||||||
|
def __copy__(self) -> CondaURL: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> CondaURL: ...
|
||||||
|
def __eq__(self, arg0: CondaURL) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: CondaURL) -> bool: ...
|
||||||
|
def __truediv__(self, arg0: str) -> CondaURL: ...
|
||||||
|
|
||||||
|
class GlobSpec:
|
||||||
|
free_pattern: ClassVar[str] = ... # read-only
|
||||||
|
glob_pattern: ClassVar[str] = ... # read-only
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, spec: str) -> None: ...
|
||||||
|
def contains(self, arg0: str) -> bool: ...
|
||||||
|
def is_exact(self) -> bool: ...
|
||||||
|
def is_free(self) -> bool: ...
|
||||||
|
def __copy__(self) -> GlobSpec: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> GlobSpec: ...
|
||||||
|
|
||||||
|
class ItemsView:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def __iter__(self) -> Iterator: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
|
||||||
|
class KeysView:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def __contains__(self, arg0: object) -> bool: ...
|
||||||
|
def __iter__(self) -> Iterator: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
|
||||||
|
class KnownPlatform:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
linux_32: ClassVar[KnownPlatform] = ...
|
||||||
|
linux_64: ClassVar[KnownPlatform] = ...
|
||||||
|
linux_aarch64: ClassVar[KnownPlatform] = ...
|
||||||
|
linux_armv6l: ClassVar[KnownPlatform] = ...
|
||||||
|
linux_armv7l: ClassVar[KnownPlatform] = ...
|
||||||
|
linux_ppc64: ClassVar[KnownPlatform] = ...
|
||||||
|
linux_ppc64le: ClassVar[KnownPlatform] = ...
|
||||||
|
linux_riscv32: ClassVar[KnownPlatform] = ...
|
||||||
|
linux_riscv64: ClassVar[KnownPlatform] = ...
|
||||||
|
linux_s390x: ClassVar[KnownPlatform] = ...
|
||||||
|
noarch: ClassVar[KnownPlatform] = ...
|
||||||
|
osx_64: ClassVar[KnownPlatform] = ...
|
||||||
|
osx_arm64: ClassVar[KnownPlatform] = ...
|
||||||
|
win_32: ClassVar[KnownPlatform] = ...
|
||||||
|
win_64: ClassVar[KnownPlatform] = ...
|
||||||
|
win_arm64: ClassVar[KnownPlatform] = ...
|
||||||
|
zos_z: ClassVar[KnownPlatform] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def build_platform() -> KnownPlatform: ...
|
||||||
|
@staticmethod
|
||||||
|
def count() -> int: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(arg0: str) -> KnownPlatform | None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class MatchSpec:
|
||||||
|
BuildStringSpec: ClassVar[type] = ... # read-only
|
||||||
|
NameSpec: ClassVar[type] = ... # read-only
|
||||||
|
alt_list_close: ClassVar[str] = ... # read-only
|
||||||
|
alt_list_open: ClassVar[str] = ... # read-only
|
||||||
|
alt_quote: ClassVar[str] = ... # read-only
|
||||||
|
attribute_assign: ClassVar[str] = ... # read-only
|
||||||
|
attribute_sep: ClassVar[str] = ... # read-only
|
||||||
|
channel_namespace_spec_sep: ClassVar[str] = ... # read-only
|
||||||
|
package_version_sep: ClassVar[list] = ... # read-only
|
||||||
|
preferred_list_close: ClassVar[str] = ... # read-only
|
||||||
|
preferred_list_open: ClassVar[str] = ... # read-only
|
||||||
|
preferred_quote: ClassVar[str] = ... # read-only
|
||||||
|
url_md5_sep: ClassVar[str] = ... # read-only
|
||||||
|
build_number: Incomplete
|
||||||
|
build_string: ChimeraStringSpec
|
||||||
|
channel: UnresolvedChannel | None
|
||||||
|
features: str
|
||||||
|
filename: str
|
||||||
|
license: str
|
||||||
|
license_family: str
|
||||||
|
md5: str
|
||||||
|
name: GlobSpec
|
||||||
|
name_space: str
|
||||||
|
optional: bool
|
||||||
|
platforms: set[str] | None
|
||||||
|
sha256: str
|
||||||
|
track_features: set[str] | None
|
||||||
|
version: VersionSpec
|
||||||
|
def __init__(self, spec: str) -> None: ...
|
||||||
|
def conda_build_form(self) -> str: ...
|
||||||
|
@overload
|
||||||
|
def contains_except_channel(self, arg0: PackageInfo) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def contains_except_channel(
|
||||||
|
self,
|
||||||
|
name: str = ...,
|
||||||
|
version: Version = ...,
|
||||||
|
build_string: str = ...,
|
||||||
|
build_number: int = ...,
|
||||||
|
md5: str = ...,
|
||||||
|
sha256: str = ...,
|
||||||
|
license: str = ...,
|
||||||
|
platform: str = ...,
|
||||||
|
track_features: set[str] = ...,
|
||||||
|
) -> bool: ...
|
||||||
|
def is_file(self) -> bool: ...
|
||||||
|
def is_only_package_name(self) -> bool: ...
|
||||||
|
def is_simple(self) -> bool: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(arg0: str) -> MatchSpec: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse_url(arg0: str) -> MatchSpec: ...
|
||||||
|
def __copy__(self) -> MatchSpec: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> MatchSpec: ...
|
||||||
|
|
||||||
|
class NoArchType:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Generic: ClassVar[NoArchType] = ...
|
||||||
|
No: ClassVar[NoArchType] = ...
|
||||||
|
Python: ClassVar[NoArchType] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def count() -> int: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(arg0: str) -> NoArchType | None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class PackageInfo:
|
||||||
|
build_number: int
|
||||||
|
build_string: str
|
||||||
|
channel: str
|
||||||
|
constrains: list[str]
|
||||||
|
defaulted_keys: list[str]
|
||||||
|
dependencies: list[str]
|
||||||
|
filename: str
|
||||||
|
fn: None
|
||||||
|
license: str
|
||||||
|
md5: str
|
||||||
|
name: str
|
||||||
|
noarch: NoArchType
|
||||||
|
package_url: str
|
||||||
|
platform: str
|
||||||
|
sha256: str
|
||||||
|
signatures: str
|
||||||
|
size: int
|
||||||
|
timestamp: int
|
||||||
|
track_features: list[str]
|
||||||
|
url: None
|
||||||
|
version: str
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
name: str = ...,
|
||||||
|
version: str = ...,
|
||||||
|
build_string: str = ...,
|
||||||
|
build_number: int = ...,
|
||||||
|
channel: str = ...,
|
||||||
|
package_url: str = ...,
|
||||||
|
platform: str = ...,
|
||||||
|
filename: str = ...,
|
||||||
|
license: str = ...,
|
||||||
|
md5: str = ...,
|
||||||
|
sha256: str = ...,
|
||||||
|
signatures: str = ...,
|
||||||
|
track_features: list[str] = ...,
|
||||||
|
depends: list[str] = ...,
|
||||||
|
constrains: list[str] = ...,
|
||||||
|
defaulted_keys: list[str] = ...,
|
||||||
|
noarch: NoArchType = ...,
|
||||||
|
size: int = ...,
|
||||||
|
timestamp: int = ...,
|
||||||
|
) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def from_url(arg0: str) -> PackageInfo: ...
|
||||||
|
def __copy__(self) -> PackageInfo: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> PackageInfo: ...
|
||||||
|
def __eq__(self, arg0: PackageInfo) -> bool: ...
|
||||||
|
def __ne__(self, arg0: PackageInfo) -> bool: ...
|
||||||
|
|
||||||
|
class ParseError(ValueError): ...
|
||||||
|
|
||||||
|
class RegexSpec:
|
||||||
|
free_pattern: ClassVar[str] = ... # read-only
|
||||||
|
pattern_end: ClassVar[str] = ... # read-only
|
||||||
|
pattern_start: ClassVar[str] = ... # read-only
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def contains(self, arg0: str) -> bool: ...
|
||||||
|
def is_exact(self) -> bool: ...
|
||||||
|
def is_explicitly_free(self) -> bool: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(arg0: str) -> RegexSpec: ...
|
||||||
|
def __copy__(self) -> RegexSpec: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> RegexSpec: ...
|
||||||
|
|
||||||
|
class UnresolvedChannel:
|
||||||
|
class Type:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Name: ClassVar[UnresolvedChannel.Type] = ...
|
||||||
|
PackagePath: ClassVar[UnresolvedChannel.Type] = ...
|
||||||
|
PackageURL: ClassVar[UnresolvedChannel.Type] = ...
|
||||||
|
Path: ClassVar[UnresolvedChannel.Type] = ...
|
||||||
|
URL: ClassVar[UnresolvedChannel.Type] = ...
|
||||||
|
Unknown: ClassVar[UnresolvedChannel.Type] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
def __init__(
|
||||||
|
self, location: str, platform_filters: set[str], type: UnresolvedChannel.Type = ...
|
||||||
|
) -> None: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(arg0: str) -> UnresolvedChannel: ...
|
||||||
|
def __copy__(self) -> UnresolvedChannel: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> UnresolvedChannel: ...
|
||||||
|
@property
|
||||||
|
def location(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def platform_filters(self) -> set[str]: ...
|
||||||
|
@property
|
||||||
|
def type(self) -> UnresolvedChannel.Type: ...
|
||||||
|
|
||||||
|
class ValuesView:
|
||||||
|
def __init__(self, *args, **kwargs) -> None: ...
|
||||||
|
def __iter__(self) -> Iterator: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
|
||||||
|
class Version:
|
||||||
|
epoch_delim: ClassVar[str] = ... # read-only
|
||||||
|
local_delim: ClassVar[str] = ... # read-only
|
||||||
|
part_delim: ClassVar[str] = ... # read-only
|
||||||
|
part_delim_alt: ClassVar[str] = ... # read-only
|
||||||
|
part_delim_special: ClassVar[str] = ... # read-only
|
||||||
|
def __init__(self, epoch: int = ..., version=..., local=...) -> None: ...
|
||||||
|
def compatible_with(self, older: Version, level: int) -> bool: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(str: str) -> Version: ...
|
||||||
|
def starts_with(self, prefix: Version) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def str(self) -> str: ...
|
||||||
|
@overload
|
||||||
|
def str(self, level: int) -> str: ...
|
||||||
|
def __copy__(self) -> Version: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> Version: ...
|
||||||
|
def __eq__(self, arg0: Version) -> bool: ...
|
||||||
|
def __ge__(self, arg0: Version) -> bool: ...
|
||||||
|
def __gt__(self, arg0: Version) -> bool: ...
|
||||||
|
def __le__(self, arg0: Version) -> bool: ...
|
||||||
|
def __lt__(self, arg0: Version) -> bool: ...
|
||||||
|
def __ne__(self, arg0: Version) -> bool: ...
|
||||||
|
@property
|
||||||
|
def epoch(self) -> int: ...
|
||||||
|
@property
|
||||||
|
def local(self) -> CommonVersion: ...
|
||||||
|
@property
|
||||||
|
def version(self) -> CommonVersion: ...
|
||||||
|
|
||||||
|
class VersionPart:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: VersionPart) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: Iterable) -> None: ...
|
||||||
|
def append(self, x: VersionPartAtom) -> None: ...
|
||||||
|
def clear(self) -> None: ...
|
||||||
|
def count(self, x: VersionPartAtom) -> int: ...
|
||||||
|
@overload
|
||||||
|
def extend(self, L: VersionPart) -> None: ...
|
||||||
|
@overload
|
||||||
|
def extend(self, L: Iterable) -> None: ...
|
||||||
|
def insert(self, i: int, x: VersionPartAtom) -> None: ...
|
||||||
|
@overload
|
||||||
|
def pop(self) -> VersionPartAtom: ...
|
||||||
|
@overload
|
||||||
|
def pop(self, i: int) -> VersionPartAtom: ...
|
||||||
|
def remove(self, x: VersionPartAtom) -> None: ...
|
||||||
|
def __bool__(self) -> bool: ...
|
||||||
|
def __contains__(self, x: VersionPartAtom) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __delitem__(self, arg0: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __delitem__(self, arg0: slice) -> None: ...
|
||||||
|
def __eq__(self, arg0: VersionPart) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __getitem__(self, s: slice) -> VersionPart: ...
|
||||||
|
@overload
|
||||||
|
def __getitem__(self, arg0: int) -> VersionPartAtom: ...
|
||||||
|
def __iter__(self) -> Iterator[VersionPartAtom]: ...
|
||||||
|
def __len__(self) -> int: ...
|
||||||
|
def __ne__(self, arg0: VersionPart) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def __setitem__(self, arg0: int, arg1: VersionPartAtom) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __setitem__(self, arg0: slice, arg1: VersionPart) -> None: ...
|
||||||
|
|
||||||
|
class VersionPartAtom:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, numeral: int, literal: str = ...) -> None: ...
|
||||||
|
def __copy__(self) -> VersionPartAtom: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> VersionPartAtom: ...
|
||||||
|
def __eq__(self, arg0: VersionPartAtom) -> bool: ...
|
||||||
|
def __ge__(self, arg0: VersionPartAtom) -> bool: ...
|
||||||
|
def __gt__(self, arg0: VersionPartAtom) -> bool: ...
|
||||||
|
def __le__(self, arg0: VersionPartAtom) -> bool: ...
|
||||||
|
def __lt__(self, arg0: VersionPartAtom) -> bool: ...
|
||||||
|
def __ne__(self, arg0: VersionPartAtom) -> bool: ...
|
||||||
|
@property
|
||||||
|
def literal(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def numeral(self) -> int: ...
|
||||||
|
|
||||||
|
class VersionPredicate:
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def contains(self, arg0: Version) -> bool: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_compatible_with(arg0: Version, arg1: int) -> VersionPredicate: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_equal_to(arg0: Version) -> VersionPredicate: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_free() -> VersionPredicate: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_greater(arg0: Version) -> VersionPredicate: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_greater_equal(arg0: Version) -> VersionPredicate: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_less(arg0: Version) -> VersionPredicate: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_less_equal(arg0: Version) -> VersionPredicate: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_not_equal_to(arg0: Version) -> VersionPredicate: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_not_starts_with(arg0: Version) -> VersionPredicate: ...
|
||||||
|
@staticmethod
|
||||||
|
def make_starts_with(arg0: Version) -> VersionPredicate: ...
|
||||||
|
def str_conda_build(self) -> str: ...
|
||||||
|
def __copy__(self) -> VersionPredicate: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> VersionPredicate: ...
|
||||||
|
def __eq__(self, arg0: VersionPredicate) -> bool: ...
|
||||||
|
def __ne__(self, arg0: VersionPredicate) -> bool: ...
|
||||||
|
|
||||||
|
class VersionSpec:
|
||||||
|
all_free_strs: ClassVar[list] = ... # read-only
|
||||||
|
and_token: ClassVar[str] = ... # read-only
|
||||||
|
compatible_str: ClassVar[str] = ... # read-only
|
||||||
|
equal_str: ClassVar[str] = ... # read-only
|
||||||
|
glob_suffix_str: ClassVar[str] = ... # read-only
|
||||||
|
glob_suffix_token: ClassVar[str] = ... # read-only
|
||||||
|
greater_equal_str: ClassVar[str] = ... # read-only
|
||||||
|
greater_str: ClassVar[str] = ... # read-only
|
||||||
|
left_parenthesis_token: ClassVar[str] = ... # read-only
|
||||||
|
less_equal_str: ClassVar[str] = ... # read-only
|
||||||
|
less_str: ClassVar[str] = ... # read-only
|
||||||
|
not_equal_str: ClassVar[str] = ... # read-only
|
||||||
|
or_token: ClassVar[str] = ... # read-only
|
||||||
|
preferred_free_str: ClassVar[str] = ... # read-only
|
||||||
|
right_parenthesis_token: ClassVar[str] = ... # read-only
|
||||||
|
starts_with_str: ClassVar[str] = ... # read-only
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
def contains(self, point: Version) -> bool: ...
|
||||||
|
def expression_size(self) -> int: ...
|
||||||
|
@staticmethod
|
||||||
|
def from_predicate(pred: VersionPredicate) -> VersionSpec: ...
|
||||||
|
def is_explicitly_free(self) -> bool: ...
|
||||||
|
@staticmethod
|
||||||
|
def parse(str: str) -> VersionSpec: ...
|
||||||
|
def str_conda_build(self) -> str: ...
|
||||||
|
def __copy__(self) -> VersionSpec: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> VersionSpec: ...
|
||||||
|
|
||||||
|
def archive_extensions(*args, **kwargs): ...
|
||||||
|
@overload
|
||||||
|
def has_archive_extension(arg0: str) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def has_archive_extension(arg0: os.PathLike) -> bool: ...
|
||||||
|
@overload
|
||||||
|
def strip_archive_extension(arg0: str) -> str: ...
|
||||||
|
@overload
|
||||||
|
def strip_archive_extension(arg0: os.PathLike) -> os.PathLike: ...
|
|
@ -0,0 +1,89 @@
|
||||||
|
from typing import ClassVar, overload
|
||||||
|
|
||||||
|
class TextEmphasis:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Blink: ClassVar[TextEmphasis] = ...
|
||||||
|
Bold: ClassVar[TextEmphasis] = ...
|
||||||
|
Conceal: ClassVar[TextEmphasis] = ...
|
||||||
|
Faint: ClassVar[TextEmphasis] = ...
|
||||||
|
Italic: ClassVar[TextEmphasis] = ...
|
||||||
|
Reverse: ClassVar[TextEmphasis] = ...
|
||||||
|
Strikethrough: ClassVar[TextEmphasis] = ...
|
||||||
|
Underline: ClassVar[TextEmphasis] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
||||||
|
|
||||||
|
class TextRGBColor:
|
||||||
|
blue: int
|
||||||
|
green: int
|
||||||
|
red: int
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, red: int = ..., green: int = ..., blue: int = ...) -> None: ...
|
||||||
|
def __copy__(self) -> TextRGBColor: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> TextRGBColor: ...
|
||||||
|
|
||||||
|
class TextStyle:
|
||||||
|
@overload
|
||||||
|
def __init__(self) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
foreground: TextTerminalColor | TextRGBColor | None = ...,
|
||||||
|
background: TextTerminalColor | TextRGBColor | None = ...,
|
||||||
|
emphasis: TextEmphasis | None = ...,
|
||||||
|
) -> None: ...
|
||||||
|
def __copy__(self) -> TextStyle: ...
|
||||||
|
def __deepcopy__(self, memo: dict) -> TextStyle: ...
|
||||||
|
@property
|
||||||
|
def background(self) -> TextTerminalColor | TextRGBColor | None: ...
|
||||||
|
@property
|
||||||
|
def emphasis(self) -> TextEmphasis | None: ...
|
||||||
|
@property
|
||||||
|
def foreground(self) -> TextTerminalColor | TextRGBColor | None: ...
|
||||||
|
|
||||||
|
class TextTerminalColor:
|
||||||
|
__members__: ClassVar[dict] = ... # read-only
|
||||||
|
Black: ClassVar[TextTerminalColor] = ...
|
||||||
|
Blue: ClassVar[TextTerminalColor] = ...
|
||||||
|
BrightBlack: ClassVar[TextTerminalColor] = ...
|
||||||
|
BrightBlue: ClassVar[TextTerminalColor] = ...
|
||||||
|
BrightCyan: ClassVar[TextTerminalColor] = ...
|
||||||
|
BrightGreen: ClassVar[TextTerminalColor] = ...
|
||||||
|
BrightMagenta: ClassVar[TextTerminalColor] = ...
|
||||||
|
BrightRed: ClassVar[TextTerminalColor] = ...
|
||||||
|
BrightWhite: ClassVar[TextTerminalColor] = ...
|
||||||
|
BrightYellow: ClassVar[TextTerminalColor] = ...
|
||||||
|
Cyan: ClassVar[TextTerminalColor] = ...
|
||||||
|
Green: ClassVar[TextTerminalColor] = ...
|
||||||
|
Magenta: ClassVar[TextTerminalColor] = ...
|
||||||
|
Red: ClassVar[TextTerminalColor] = ...
|
||||||
|
White: ClassVar[TextTerminalColor] = ...
|
||||||
|
Yellow: ClassVar[TextTerminalColor] = ...
|
||||||
|
__entries: ClassVar[dict] = ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, value: int) -> None: ...
|
||||||
|
@overload
|
||||||
|
def __init__(self, arg0: str) -> None: ...
|
||||||
|
def __eq__(self, other: object) -> bool: ...
|
||||||
|
def __hash__(self) -> int: ...
|
||||||
|
def __index__(self) -> int: ...
|
||||||
|
def __int__(self) -> int: ...
|
||||||
|
def __ne__(self, other: object) -> bool: ...
|
||||||
|
@property
|
||||||
|
def name(self) -> str: ...
|
||||||
|
@property
|
||||||
|
def value(self) -> int: ...
|
|
@ -0,0 +1 @@
|
||||||
|
from libmambapy.bindings.solver import *
|
|
@ -0,0 +1 @@
|
||||||
|
from libmambapy.bindings.solver.libsolv import *
|
|
@ -0,0 +1 @@
|
||||||
|
from libmambapy.bindings.specs import *
|
|
@ -0,0 +1 @@
|
||||||
|
from libmambapy.bindings.utils import *
|
|
@ -0,0 +1,5 @@
|
||||||
|
from _typeshed import Incomplete
|
||||||
|
|
||||||
|
version_info: Incomplete
|
||||||
|
version_prerelease: str
|
||||||
|
__version__: Incomplete
|
Loading…
Reference in New Issue