SYMBOL INDEX (391 symbols across 34 files) FILE: conda_libmamba_solver/__init__.py function get_solver_class (line 16) | def get_solver_class(key: str = "libmamba"): FILE: conda_libmamba_solver/conda_build_exceptions.py class ExplainedDependencyNeedsBuildingError (line 24) | class ExplainedDependencyNeedsBuildingError(DependencyNeedsBuildingError): method __init__ (line 30) | def __init__( method __str__ (line 41) | def __str__(self) -> str: FILE: conda_libmamba_solver/exceptions.py class LibMambaUnsatisfiableError (line 11) | class LibMambaUnsatisfiableError(UnsatisfiableError): method __init__ (line 16) | def __init__(self, message: str, **kwargs): FILE: conda_libmamba_solver/index.py class _ChannelRepoInfo (line 134) | class _ChannelRepoInfo: method canonical_name (line 143) | def canonical_name(self) -> str: function _is_sharded_repodata_enabled (line 152) | def _is_sharded_repodata_enabled(): function _package_info_from_package_dict (line 162) | def _package_info_from_package_dict( class LibMambaIndexHelper (line 237) | class LibMambaIndexHelper: method __init__ (line 248) | def __init__( method from_platform_aware_channel (line 289) | def from_platform_aware_channel(cls, channel: Channel) -> LibMambaInde... method n_packages (line 296) | def n_packages( method reload_channel (line 312) | def reload_channel(self, channel: Channel) -> None: method _init_db (line 326) | def _init_db(self) -> Database: method _load_channels (line 369) | def _load_channels( method _load_channel_repo_info_shards (line 391) | def _load_channel_repo_info_shards( method _load_channel_repo_info_json (line 407) | def _load_channel_repo_info_json( method _channel_urls (line 436) | def _channel_urls(subdirs: Iterable[str], channels: list[Channel]) -> ... method _encoded_urls_to_channels (line 470) | def _encoded_urls_to_channels(urls_to_channel: dict[str, Channel]) -> ... method _fetch_repodata_jsons (line 484) | def _fetch_repodata_jsons(self, urls: Iterable[str]) -> dict[str, tupl... method _fetch_one_repodata_json (line 496) | def _fetch_one_repodata_json(self, url: str) -> tuple[str, os.PathLike... method _load_repo_info_from_json_path (line 522) | def _load_repo_info_from_json_path( method _channel_to_id (line 591) | def _channel_to_id(self, channel: Channel): method _load_installed (line 601) | def _load_installed(self, records: Iterable[PackageRecord]) -> _Channe... method _load_pkgs_cache (line 613) | def _load_pkgs_cache(self, pkgs_dirs: PathsType) -> list[RepoInfo]: method _load_repo_info_from_repodata_dict (line 633) | def _load_repo_info_from_repodata_dict( method _package_info_from_package_record (line 681) | def _package_info_from_package_record(self, record: PackageRecord) -> ... method _set_repo_priorities (line 718) | def _set_repo_priorities(self) -> None: method search (line 759) | def search( method depends (line 770) | def depends( method whoneeds (line 780) | def whoneeds( method explicit_pool (line 790) | def explicit_pool(self, specs: Iterable[MatchSpec]) -> tuple[str, ...]: method _process_query_result (line 801) | def _process_query_result( FILE: conda_libmamba_solver/mamba_utils.py function mamba_version (line 38) | def mamba_version() -> str: function _get_base_url (line 42) | def _get_base_url(url: str, name: str | None = None) -> str: function init_libmamba_context (line 50) | def init_libmamba_context( function logger_callback (line 147) | def logger_callback(level: libmambapy.solver.libsolv.LogLevel, msg: str,... function palettes_and_formats (line 162) | def palettes_and_formats() -> tuple[libmambapy.solver.ProblemsMessageFor... FILE: conda_libmamba_solver/plugin.py function conda_solvers (line 17) | def conda_solvers(): function conda_subcommands (line 28) | def conda_subcommands(): function conda_settings (line 38) | def conda_settings(): FILE: conda_libmamba_solver/repoquery.py function configure_parser (line 28) | def configure_parser(parser: argparse.ArgumentParser): function repoquery (line 100) | def repoquery(args: argparse.Namespace) -> int: FILE: conda_libmamba_solver/shards.py function _safe_urljoin_with_slash (line 56) | def _safe_urljoin_with_slash(base_url: str, relative_url: str = "") -> str: function _shards_connections (line 100) | def _shards_connections() -> int: function ensure_hex_hash (line 118) | def ensure_hex_hash(record: PackageRecordDict): function spec_to_package_name (line 130) | def spec_to_package_name(spec: str) -> str: function shard_mentioned_packages (line 141) | def shard_mentioned_packages(shard: ShardDict, extra: Iterable[str] = ()... class ShardBase (line 158) | class ShardBase(abc.ABC): method package_names (line 173) | def package_names(self) -> KeysView[str]: method base_url (line 178) | def base_url(self) -> str: method __contains__ (line 188) | def __contains__(self, package: str) -> bool: method shard_url (line 193) | def shard_url(self, package: str) -> str: method shard_loaded (line 203) | def shard_loaded(self, package: str) -> bool: method visit_package (line 209) | def visit_package(self, package: str) -> ShardDict: method visit_shard (line 215) | def visit_shard(self, package: str, shard: ShardDict): method fetch_shard (line 222) | def fetch_shard(self, package: str) -> ShardDict: method fetch_shards (line 229) | def fetch_shards(self, packages: Iterable[str]) -> dict[str, ShardDict]: method build_repodata (line 235) | def build_repodata(self) -> RepodataDict: class ShardLike (line 252) | class ShardLike(ShardBase): method __init__ (line 257) | def __init__(self, repodata: RepodataDict, url: str = ""): method __repr__ (line 295) | def __repr__(self): method package_names (line 300) | def package_names(self) -> KeysView[str]: method shard_url (line 303) | def shard_url(self, package: str) -> str: method shard_loaded (line 312) | def shard_loaded(self, package: str) -> bool: method visit_package (line 318) | def visit_package(self, package: str) -> ShardDict: method fetch_shard (line 326) | def fetch_shard(self, package: str) -> ShardDict: method fetch_shards (line 338) | def fetch_shards(self, packages: Iterable[str]) -> dict[str, ShardDict]: function _shards_base_url (line 347) | def _shards_base_url(url, shards_base_url) -> str: class Shards (line 358) | class Shards(ShardBase): method __init__ (line 366) | def __init__( method package_names (line 405) | def package_names(self): method packages_index (line 409) | def packages_index(self): method shards_base_url (line 413) | def shards_base_url(self) -> str: method shard_url (line 420) | def shard_url(self, package: str) -> str: method shard_loaded (line 430) | def shard_loaded(self, package: str) -> bool: method visit_package (line 436) | def visit_package(self, package: str) -> ShardDict: method fetch_shard (line 443) | def fetch_shard(self, package: str) -> ShardDict: method fetch_shards (line 454) | def fetch_shards(self, packages: Iterable[str]) -> dict[str, ShardDict]: method _process_fetch_result (line 498) | def _process_fetch_result(self, future, url, package, results): function _repodata_shards (line 518) | def _repodata_shards(url, cache: RepodataCache) -> bytes: function _is_http_error_most_400_codes (line 592) | def _is_http_error_most_400_codes(status_code: str | int) -> bool: function fetch_shards_index (line 599) | def fetch_shards_index(sd: SubdirData, cache: shards_cache.ShardCache | ... function batch_retrieve_from_cache (line 686) | def batch_retrieve_from_cache(sharded: list[Shards], packages: list[str]): function batch_retrieve_from_network (line 719) | def batch_retrieve_from_network(wanted: list[tuple[Shards, str, str]]): function fetch_channels (line 736) | def fetch_channels(url_to_channel: dict[str, Channel]) -> dict[str, Shar... FILE: conda_libmamba_solver/shards_cache.py class AnnotatedRawShard (line 31) | class AnnotatedRawShard: method __init__ (line 32) | def __init__(self, url: str, package: str, compressed_shard: bytes): function connect (line 46) | def connect(dburi="cache.db"): class ShardCache (line 65) | class ShardCache: method __init__ (line 70) | def __init__(self, base: Path, create=True): method __enter__ (line 77) | def __enter__(self): method __exit__ (line 80) | def __exit__(self, exc_type, exc_val, exec_tb): method close (line 83) | def close(self): method copy (line 91) | def copy(self): method connect (line 97) | def connect(self, create=True, retry=True): method insert (line 136) | def insert(self, raw_shard: AnnotatedRawShard): method retrieve (line 151) | def retrieve(self, url) -> ShardDict | None: method retrieve_multiple (line 162) | def retrieve_multiple(self, urls: list[str]) -> dict[str, ShardDict | ... method clear_cache (line 187) | def clear_cache(self): method remove_cache (line 194) | def remove_cache(self): FILE: conda_libmamba_solver/shards_subset.py class Node (line 104) | class Node: method to_id (line 111) | def to_id(self) -> NodeId: class NodeId (line 116) | class NodeId: method __hash__ (line 121) | def __hash__(self): function _nodes_from_packages (line 125) | def _nodes_from_packages( function filter_redundant_packages (line 139) | def filter_redundant_packages(repodata: ShardDict, use_only_tar_bz2=Fals... function _install_shards_cache (line 167) | def _install_shards_cache(shardlikes): class RepodataSubset (line 183) | class RepodataSubset: method __init__ (line 188) | def __init__(self, shardlikes: Iterable[ShardBase]): method has_strategy (line 195) | def has_strategy(cls, strategy: str) -> bool: method neighbors (line 201) | def neighbors(self, node: Node) -> Iterator[Node]: method outgoing (line 236) | def outgoing(self, node: Node): method reachable (line 248) | def reachable(self, root_packages, *, strategy=DEFAULT_STRATEGY) -> None: method reachable_bfs (line 258) | def reachable_bfs(self, root_packages): method _reachable_bfs (line 269) | def _reachable_bfs(self, root_packages): method reachable_pipelined (line 297) | def reachable_pipelined(self, root_packages): method _reachable_pipelined (line 321) | def _reachable_pipelined( method _pipelined_traversal (line 368) | def _pipelined_traversal( method visit_node (line 467) | def visit_node(self, parent_node: Node, mentioned_packages: Iterable[s... method drain_pending (line 488) | def drain_pending( function build_repodata_subset (line 513) | def build_repodata_subset( function combine_batches_until_none (line 545) | def combine_batches_until_none( function exception_to_queue (line 575) | def exception_to_queue(func): function cache_fetch_thread (line 592) | def cache_fetch_thread( function network_fetch_thread (line 635) | def network_fetch_thread( function offline_nofetch_thread (line 713) | def offline_nofetch_thread( FILE: conda_libmamba_solver/shards_typing.py class PackageRecordDict (line 20) | class PackageRecordDict(TypedDict): class RepodataInfoDict (line 46) | class RepodataInfoDict(TypedDict): # noqa: F811 class RepodataDict (line 52) | class RepodataDict(ShardDict): class ShardsIndexDict (line 61) | class ShardsIndexDict(TypedDict): FILE: conda_libmamba_solver/solver.py class LibMambaSolver (line 79) | class LibMambaSolver(Solver): method user_agent (line 85) | def user_agent() -> str: method __init__ (line 91) | def __init__( method solve_final_state (line 134) | def solve_final_state( method _collect_all_metadata_spinner_message (line 193) | def _collect_all_metadata_spinner_message( method _collect_channel_list (line 216) | def _collect_channel_list(self, in_state: SolverInputState) -> list[Ch... method _collect_channels_subdirs_from_conda_build (line 237) | def _collect_channels_subdirs_from_conda_build( method _collect_all_metadata (line 259) | def _collect_all_metadata( method _solving_loop_spinner_message (line 286) | def _solving_loop_spinner_message(self) -> str: method _solving_loop (line 299) | def _solving_loop( method _solve_attempt (line 346) | def _solve_attempt( method _solver_flags (line 376) | def _solver_flags(self, in_state: SolverInputState) -> Request.Flags: method _specs_to_request_jobs (line 395) | def _specs_to_request_jobs( method _specs_to_request_jobs_add (line 423) | def _specs_to_request_jobs_add( method _specs_to_request_jobs_remove (line 557) | def _specs_to_request_jobs_remove( method _specs_to_request_jobs_conda_build (line 583) | def _specs_to_request_jobs_conda_build( method _export_solution (line 601) | def _export_solution( method _package_info_to_package_record (line 622) | def _package_info_to_package_record( method _parse_problems (line 686) | def _parse_problems(cls, unsolvable: UnSolvable, db: Database) -> Mapp... method _maybe_raise_for_problems (line 763) | def _maybe_raise_for_problems( method _prepare_problems_message (line 810) | def _prepare_problems_message( method _maybe_raise_for_conda_build (line 837) | def _maybe_raise_for_conda_build( method _log_info (line 869) | def _log_info(self) -> None: method _called_from_conda_build (line 876) | def _called_from_conda_build(self) -> bool: method _check_spec_compat (line 896) | def _check_spec_compat(self, spec: MatchSpec | None) -> MatchSpec | None: method _conda_spec_to_libmamba_spec (line 916) | def _conda_spec_to_libmamba_spec(self, spec: MatchSpec) -> LibmambaMat... method _fix_version_field_for_conda_build (line 920) | def _fix_version_field_for_conda_build(spec: MatchSpec) -> MatchSpec: method _matchspec_from_error_str (line 935) | def _matchspec_from_error_str(spec: str | Sequence[str]) -> MatchSpec: method _maybe_ignore_current_repodata (line 953) | def _maybe_ignore_current_repodata(self) -> str: method _max_attempts (line 968) | def _max_attempts(self, in_state: SolverInputState, default: int = 1) ... method _notify_conda_outdated (line 1000) | def _notify_conda_outdated( FILE: conda_libmamba_solver/state.py class SolverInputState (line 99) | class SolverInputState: method __init__ (line 161) | def __init__( method _default_to_context_if_null (line 206) | def _default_to_context_if_null(self, name, value, context=context) ->... method prefix_data (line 211) | def prefix_data(self) -> PrefixData: method installed (line 221) | def installed(self) -> dict[str, PackageRecord]: method history (line 230) | def history(self) -> dict[str, MatchSpec]: method pinned (line 238) | def pinned(self) -> dict[str, MatchSpec]: method virtual (line 250) | def virtual(self) -> dict[str, MatchSpec]: method aggressive_updates (line 259) | def aggressive_updates(self) -> dict[str, MatchSpec]: method always_update (line 268) | def always_update(self) -> dict[str, MatchSpec]: method do_not_remove (line 288) | def do_not_remove(self) -> dict[str, MatchSpec]: method requested (line 296) | def requested(self) -> dict[str, MatchSpec]: method is_installing (line 305) | def is_installing(self) -> bool: method is_updating (line 312) | def is_updating(self) -> bool: method is_creating (line 319) | def is_creating(self) -> bool: method is_removing (line 326) | def is_removing(self) -> bool: method update_modifier (line 335) | def update_modifier(self) -> EnumAsBools: method deps_modifier (line 348) | def deps_modifier(self) -> EnumAsBools: method ignore_pinned (line 363) | def ignore_pinned(self) -> bool: method force_remove (line 367) | def force_remove(self) -> bool: method force_reinstall (line 371) | def force_reinstall(self) -> bool: method prune (line 375) | def prune(self) -> bool: method channels_from_specs (line 380) | def channels_from_specs(self) -> Iterable[Channel]: method maybe_free_channel (line 395) | def maybe_free_channel(self) -> Iterable[Channel]: class SolverOutputState (line 406) | class SolverOutputState: method __init__ (line 457) | def __init__( method current_solution (line 475) | def current_solution(self) -> IndexedSet[PackageRecord]: method specs (line 483) | def specs(self) -> dict[str, MatchSpec]: method real_specs (line 509) | def real_specs(self) -> dict[str, MatchSpec]: method virtual_specs (line 516) | def virtual_specs(self) -> dict[str, MatchSpec]: method early_exit (line 522) | def early_exit(self) -> IndexedSet[PackageRecord] | None: method check_for_pin_conflicts (line 563) | def check_for_pin_conflicts(self, index: LibMambaIndexHelper) -> None: method post_solve (line 600) | def post_solve(self, solver: Solver) -> None: function sort_by_spec_strictness (line 777) | def sort_by_spec_strictness(key_value_tuple: tuple[str, MatchSpec]) -> t... FILE: conda_libmamba_solver/utils.py function escape_channel_url (line 29) | def escape_channel_url(channel: str) -> str: function compatible_specs (line 52) | def compatible_specs( class EnumAsBools (line 89) | class EnumAsBools: method __init__ (line 103) | def __init__(self, enum: Enum): method __getattr__ (line 107) | def __getattr__(self, name: str) -> bool: method __eq__ (line 114) | def __eq__(self, obj: object) -> bool: method _dict (line 117) | def _dict(self) -> dict[str, bool]: FILE: dev/scripts/httpx-fetch-all-shards.py function connect (line 20) | def connect(dburi="cache.db"): function to_url (line 34) | def to_url(shard): function shard_urls (line 47) | def shard_urls(index): function get_one (line 52) | async def get_one(sem, client, url, package): function main (line 61) | async def main(): FILE: dev/scripts/requests-fetch-all-shards.py function connect (line 20) | def connect(dburi="cache.db"): function to_url (line 34) | def to_url(shard): function shard_urls (line 48) | def shard_urls(): function fetch (line 53) | def fetch(s, package, url): FILE: tests/channel_testing/helpers.py function _dummy_http_server (line 21) | def _dummy_http_server( function http_server_auth_none (line 100) | def http_server_auth_none(xprocess): function http_server_auth_none_debug_repodata (line 105) | def http_server_auth_none_debug_repodata(xprocess): function http_server_auth_none_debug_packages (line 115) | def http_server_auth_none_debug_packages(xprocess): function http_server_auth_basic (line 125) | def http_server_auth_basic(xprocess): function http_server_auth_basic_email (line 137) | def http_server_auth_basic_email(xprocess): function http_server_auth_token (line 149) | def http_server_auth_token(xprocess): FILE: tests/channel_testing/reposerver.py function get_fingerprint (line 82) | def get_fingerprint(gpg_output): class RepoSigner (line 89) | class RepoSigner: method normalize_keys (line 106) | def normalize_keys(self, keys): method create_root (line 124) | def create_root(self, keys): method create_key_mgr (line 161) | def create_key_mgr(self, keys): method sign_repodata (line 203) | def sign_repodata(self, repodata_fn, keys): method __init__ (line 216) | def __init__(self, in_folder=args.directory): class RepodataHeadersHandler (line 239) | class RepodataHeadersHandler(SimpleHTTPRequestHandler): method do_GET (line 248) | def do_GET(self) -> None: class PackagesHeadersHandler (line 262) | class PackagesHeadersHandler(RepodataHeadersHandler): class BasicAuthHandler (line 268) | class BasicAuthHandler(SimpleHTTPRequestHandler): method do_HEAD (line 275) | def do_HEAD(self): method do_AUTHHEAD (line 280) | def do_AUTHHEAD(self): method do_GET (line 286) | def do_GET(self): class CondaTokenHandler (line 304) | class CondaTokenHandler(SimpleHTTPRequestHandler): method do_GET (line 310) | def do_GET(self): FILE: tests/http_test_server.py function run_test_server (line 22) | def run_test_server( FILE: tests/repodata_time_machine.py function cli (line 31) | def cli(): function download_repodata (line 44) | def download_repodata(channel, subdirs=None): function trim_to_timestamp (line 63) | def trim_to_timestamp(repodata, timestamp: float): function download_patches (line 82) | def download_patches(channel, timestamp: float): function apply_patch (line 108) | def apply_patch(repodata_file, patch): function repodata_time_machine (line 119) | def repodata_time_machine(channels, timestamp_str, subdirs=None): function main (line 160) | def main(): FILE: tests/test_channels.py function test_channel_matchspec (line 43) | def test_channel_matchspec(conda_cli: CondaCLIFixture, path_factory: Pat... function test_channels_prefixdata (line 63) | def test_channels_prefixdata(tmp_env: TmpEnvFixture) -> None: function test_channels_installed_unavailable (line 85) | def test_channels_installed_unavailable( function _setup_conda_forge_as_defaults (line 107) | def _setup_conda_forge_as_defaults(prefix, force=False): function _setup_channels_alias (line 116) | def _setup_channels_alias(prefix, force=False): function _setup_channels_custom (line 131) | def _setup_channels_custom(prefix, force=False): function test_mirrors_do_not_leak_channels (line 149) | def test_mirrors_do_not_leak_channels(config_env, tmp_path, tmp_env): function test_jax_and_jaxlib (line 203) | def test_jax_and_jaxlib(): function test_encoding_file_paths (line 229) | def test_encoding_file_paths(tmp_path: Path): function test_conda_build_with_aliased_channels (line 248) | def test_conda_build_with_aliased_channels(tmp_path): function test_http_server_auth_none (line 274) | def test_http_server_auth_none( function test_http_server_auth_basic (line 290) | def test_http_server_auth_basic( function test_http_server_auth_basic_email (line 307) | def test_http_server_auth_basic_email( function test_http_server_auth_token (line 326) | def test_http_server_auth_token( function test_http_server_auth_token_in_defaults (line 342) | def test_http_server_auth_token_in_defaults( function test_local_spec (line 370) | def test_local_spec() -> None: function test_nameless_channel (line 394) | def test_nameless_channel( function test_unknown_channels_do_not_crash (line 424) | def test_unknown_channels_do_not_crash(tmp_env: TmpEnvFixture, conda_cli... function test_use_cache_works_offline_fresh_install_keep (line 440) | def test_use_cache_works_offline_fresh_install_keep(tmp_path): function test_channels_are_percent_encoded (line 475) | def test_channels_are_percent_encoded(tmp_path): function test_channel_ordering (line 494) | def test_channel_ordering( FILE: tests/test_downstream.py function test_build_recipe (line 22) | def test_build_recipe(recipe): function test_conda_lock (line 40) | def test_conda_lock(tmp_path): FILE: tests/test_experimental.py function print_and_check_output (line 23) | def print_and_check_output(*args, **kwargs): function test_protection_for_base_env (line 33) | def test_protection_for_base_env(monkeypatch: MonkeyPatch, conda_cli: Co... function test_cli_flag_in_help (line 45) | def test_cli_flag_in_help(): FILE: tests/test_index.py function test_given_channels (line 41) | def test_given_channels(monkeypatch: pytest.MonkeyPatch, tmp_path: os.Pa... function test_defaults_use_only_tar_bz2 (line 62) | def test_defaults_use_only_tar_bz2(monkeypatch: pytest.MonkeyPatch, only... function test_reload_channels (line 110) | def test_reload_channels(tmp_path: Path): function test_load_channel_repo_info_shards (line 143) | def test_load_channel_repo_info_shards( function test_add_pip_as_python_dependency_sharded (line 188) | def test_add_pip_as_python_dependency_sharded( function test_load_channels_order (line 263) | def test_load_channels_order(shard_factory, mocker: MockerFixture): function test_package_info_from_package_dict_add_pip_as_python_dependency (line 300) | def test_package_info_from_package_dict_add_pip_as_python_dependency(): function test_package_info_from_package_dict_add_pip_as_python_dependency_false (line 331) | def test_package_info_from_package_dict_add_pip_as_python_dependency_fal... function test_package_info_from_package_dict_add_pip_python2 (line 359) | def test_package_info_from_package_dict_add_pip_python2(): function test_package_info_from_package_dict_add_pip_non_python_package (line 385) | def test_package_info_from_package_dict_add_pip_non_python_package(): function test_package_info_from_package_dict_add_pip_invalid_version (line 412) | def test_package_info_from_package_dict_add_pip_invalid_version(): FILE: tests/test_performance.py function _get_channels_from_lockfile (line 33) | def _get_channels_from_lockfile(path: Path) -> tuple[str, ...]: function _channels_as_args (line 41) | def _channels_as_args(channels: Iterable[str]) -> tuple[str, ...]: function prefix_and_channels (line 51) | def prefix_and_channels( function test_update_python (line 68) | def test_update_python( function test_install_python_update_deps (line 88) | def test_install_python_update_deps( function test_update_all (line 104) | def test_update_all( function test_install_vaex_from_conda_forge_and_defaults (line 119) | def test_install_vaex_from_conda_forge_and_defaults(conda_cli: CondaCLIF... FILE: tests/test_plugin.py function always_reset_context (line 14) | def always_reset_context(): function test_enabled_sharded_repodata (line 18) | def test_enabled_sharded_repodata(): function test_enabled_sharded_repodata_environment_variable (line 26) | def test_enabled_sharded_repodata_environment_variable(monkeypatch): function test_enabled_sharded_repodata_condarc (line 36) | def test_enabled_sharded_repodata_condarc(tmp_path): FILE: tests/test_repoquery.py function test_repoquery (line 13) | def test_repoquery(): function test_query_search (line 27) | def test_query_search(): function test_query_search_includes_python_site_packages_path (line 53) | def test_query_search_includes_python_site_packages_path(): FILE: tests/test_shards.py function package_names (line 91) | def package_names(shard: shards_cache.ShardDict): function expand_channels (line 100) | def expand_channels(channels: list[Channel], subdirs: Iterable[str] | No... function _timer (line 112) | def _timer(name: str, callback=None): function prepare_shards_test (line 126) | def prepare_shards_test(monkeypatch: pytest.MonkeyPatch): function empty_shards_cache (line 142) | def empty_shards_cache(tmp_path): function ensure_hex_hash (line 216) | def ensure_hex_hash(repodata: dict): function shard_for_name (line 232) | def shard_for_name(repodata, name): class ShardFactory (line 243) | class ShardFactory: method __init__ (line 267) | def __init__(self, root: Path = tempfile.gettempdir()): method clean_up_http_servers (line 271) | def clean_up_http_servers(self): method http_server_shards (line 277) | def http_server_shards( function shard_factory (line 338) | def shard_factory(tmp_path_factory, request: pytest.FixtureRequest) -> S... function http_server_shards (line 362) | def http_server_shards(tmp_path_factory) -> Iterable[str]: function test_fetch_shards_index_mark_unavailable (line 373) | def test_fetch_shards_index_mark_unavailable(monkeypatch, tmp_path, erro... function test_fetch_shards_error (line 424) | def test_fetch_shards_error(http_server_shards, empty_shards_cache): function test_shards_base_url (line 464) | def test_shards_base_url(): function test_shard_mentioned_packages_2 (line 564) | def test_shard_mentioned_packages_2(): function test_fetch_shards_channels (line 579) | def test_fetch_shards_channels(prepare_shards_test: None): function test_shards_cache (line 594) | def test_shards_cache(tmp_path: Path): function test_shards_cache_recovery (line 621) | def test_shards_cache_recovery(tmp_path: Path): function test_shards_cache_uses_wal (line 637) | def test_shards_cache_uses_wal(tmp_path: Path): function test_shards_cache_concurrent_read_write (line 644) | def test_shards_cache_concurrent_read_write(tmp_path: Path): class MockCache (line 692) | class MockCache(NamedTuple): function mock_cache (line 703) | def mock_cache(tmp_path: Path) -> Iterator[MockCache]: function shard_cache_with_data (line 726) | def shard_cache_with_data( function test_shard_cache_multiple (line 735) | def test_shard_cache_multiple( function test_shard_cache_clear_remove (line 778) | def test_shard_cache_clear_remove(tmp_path): function test_shardlike (line 797) | def test_shardlike(): function test_shardlike_repr (line 846) | def test_shardlike_repr(): function test_shard_hash_as_array (line 864) | def test_shard_hash_as_array(): function test_shards_coverage (line 892) | def test_shards_coverage(): function test_ensure_hex_hash_in_record (line 918) | def test_ensure_hex_hash_in_record(): function test_batch_retrieve_from_cache (line 943) | def test_batch_retrieve_from_cache( function test_shard_cache_multiple_profile (line 970) | def test_shard_cache_multiple_profile(retrieval_type, mock_cache: MockCa... function test_shards_connections (line 989) | def test_shards_connections(monkeypatch): function test_filter_packages_simple (line 1003) | def test_filter_packages_simple(): function test_filter_packages_repodata (line 1023) | def test_filter_packages_repodata(channel, benchmark): function test_offline_mode_expired_cache (line 1042) | def test_offline_mode_expired_cache(http_server_shards, monkeypatch, tmp... function test_offline_mode_no_cache (line 1090) | def test_offline_mode_no_cache(http_server_shards, empty_shards_cache, m... function test_offline_mode_missing_shard_in_cache (line 1118) | def test_offline_mode_missing_shard_in_cache( function test_repodata_shards_sends_etag (line 1169) | def test_repodata_shards_sends_etag(monkeypatch, tmp_path): function test_safe_urljoin_with_slash (line 1259) | def test_safe_urljoin_with_slash(base_url, relative_url, expected): FILE: tests/test_shards_subset.py function codspeed_supported (line 116) | def codspeed_supported(): function clean_cache (line 128) | def clean_cache(conda_cli: CondaCLIFixture): function repodata_subset_size (line 143) | def repodata_subset_size(channel_data): function test_traversal_algorithm_benchmarks (line 166) | def test_traversal_algorithm_benchmarks( function test_traversal_algorithms_match (line 220) | def test_traversal_algorithms_match(conda_cli, scenario: dict): function test_build_repodata_subset_pipelined (line 248) | def test_build_repodata_subset_pipelined( function test_shards_cache_thread (line 275) | def test_shards_cache_thread( function test_shards_network_thread (line 328) | def test_shards_network_thread(http_server_shards, shard_cache_with_data): function test_build_repodata_subset_error_propagation (line 390) | def test_build_repodata_subset_error_propagation(http_server_shards, alg... function test_build_repodata_subset_package_not_found (line 444) | def test_build_repodata_subset_package_not_found(http_server_shards, alg... function test_build_repodata_subset_local_server (line 468) | def test_build_repodata_subset_local_server(http_server_shards, algorith... function test_build_repodata_subset_no_shards (line 500) | def test_build_repodata_subset_no_shards(http_server_shards): function test_build_repodata_subset (line 509) | def test_build_repodata_subset(prepare_shards_test: None, tmp_path): function test_only_tar_bz2 (line 566) | def test_only_tar_bz2(http_server_shards, tmp_path, only_tar_bz2, strate... function test_pipelined_with_slow_queue_operations (line 590) | def test_pipelined_with_slow_queue_operations(http_server_shards, mocker... function test_pipelined_shutdown_race_condition (line 633) | def test_pipelined_shutdown_race_condition(http_server_shards, mocker, t... function test_pipelined_timeout (line 671) | def test_pipelined_timeout(http_server_shards, monkeypatch, tmp_path): function test_combine_batches_blocking_scenario (line 713) | def test_combine_batches_blocking_scenario(): function test_pipelined_extreme_race_conditions (line 759) | def test_pipelined_extreme_race_conditions( function test_pipelined_concurrent_stress (line 818) | def test_pipelined_concurrent_stress(http_server_shards, mocker, tmp_pat... function test_worker_thread_exception_propagation (line 858) | def test_worker_thread_exception_propagation(): function test_shutdown_with_pending_work (line 897) | def test_shutdown_with_pending_work(http_server_shards, mocker, tmp_path): function test_repodata_subset_misc (line 939) | def test_repodata_subset_misc(): FILE: tests/test_solver.py function test_python_downgrade_reinstalls_noarch_packages (line 38) | def test_python_downgrade_reinstalls_noarch_packages( function test_defaults_specs_work (line 80) | def test_defaults_specs_work(conda_cli: CondaCLIFixture) -> None: function test_determinism (line 113) | def test_determinism(tmpdir): function test_update_from_latest_not_downgrade (line 154) | def test_update_from_latest_not_downgrade( function test_too_aggressive_update_to_conda_forge_packages (line 190) | def test_too_aggressive_update_to_conda_forge_packages(tmp_env: TmpEnvFi... function test_pinned_with_cli_build_string (line 231) | def test_pinned_with_cli_build_string(tmp_env: TmpEnvFixture) -> None: function test_constraining_pin_and_requested (line 305) | def test_constraining_pin_and_requested(): function test_locking_pins (line 345) | def test_locking_pins( function test_ca_certificates_pins (line 384) | def test_ca_certificates_pins(tmp_env: TmpEnvFixture, conda_cli: CondaCL... function test_python_update_should_not_uninstall_history (line 422) | def test_python_update_should_not_uninstall_history( function test_python_downgrade_with_pins_removes_truststore (line 458) | def test_python_downgrade_with_pins_removes_truststore(tmp_env: TmpEnvFi... function test_install_virtual_packages (line 496) | def test_install_virtual_packages(conda_cli: CondaCLIFixture, spec: str)... function test_urls_are_percent_decoded (line 517) | def test_urls_are_percent_decoded(tmp_path: Path) -> None: function test_prune_existing_env (line 532) | def test_prune_existing_env( function test_prune_existing_env_dependencies_are_solved (line 564) | def test_prune_existing_env_dependencies_are_solved( function test_satisfied_skip_solve_matchspec (line 604) | def test_satisfied_skip_solve_matchspec( function test_pytorch_gpu (line 626) | def test_pytorch_gpu(specs): function test_cross_platform_spinner_message (line 678) | def test_cross_platform_spinner_message( function test_channel_subdir_set_correctly (line 707) | def test_channel_subdir_set_correctly(tmp_env: TmpEnvFixture) -> None: function test_python_site_packages_path (line 728) | def test_python_site_packages_path(tmp_env: TmpEnvFixture) -> None: function test_track_features_recorded_correctly (line 750) | def test_track_features_recorded_correctly(tmp_env, monkeypatch, shards): FILE: tests/test_solver_differences.py function test_pydantic_182_not_on_python_311 (line 20) | def test_pydantic_182_not_on_python_311(): function test_gpu_cpu_mutexes (line 89) | def test_gpu_cpu_mutexes(): function test_old_panel (line 170) | def test_old_panel(tmp_path): FILE: tests/test_user_agent.py function test_user_agent_conda_info (line 18) | def test_user_agent_conda_info(solver): FILE: tests/test_workarounds.py function test_matchspec_star_version (line 15) | def test_matchspec_star_version(): function test_build_string_filters (line 39) | def test_build_string_filters(): function test_ctrl_c (line 70) | def test_ctrl_c(stage, shards): FILE: tests/utils.py function conda_subprocess (line 14) | def conda_subprocess(*args, explain=False, capture_output=True, **kwargs... function write_env_config (line 34) | def write_env_config(prefix, force=False, **kwargs):