depdigest package#

Subpackages#

Submodules#

depdigest.cli module#

depdigest.cli.main(argv=None)[source]#
Parameters:

argv (List[str])

Return type:

int

Module contents#

class depdigest.DepConfig(libraries: 'Dict[str, Dict[str, str]]'=<factory>, mapping: 'Dict[str, str]'=<factory>, show_all_capabilities: 'bool' = True, exception_class: 'Type[Exception]' = <class 'ImportError'>)[source]#

Bases: object

Parameters:
  • libraries (Dict[str, Dict[str, str]])

  • mapping (Dict[str, str])

  • show_all_capabilities (bool)

  • exception_class (Type[Exception])

exception_class#

alias of ImportError

libraries: Dict[str, Dict[str, str]]#
mapping: Dict[str, str]#
show_all_capabilities: bool = True#
class depdigest.LazyRegistry(package_prefix, directory, attr_name='form_name', discovery_mode='filesystem', entrypoint_group=None)[source]#

Bases: dict

A dictionary-like registry that populates itself lazily.

Parameters:
  • package_prefix (str)

  • directory (str)

  • attr_name (str)

  • discovery_mode (str)

  • entrypoint_group (str | None)

get(key, default=None)[source]#

Return the value for key if key is in the dictionary, else default.

items()[source]#

Return a set-like object providing a view on the dict’s items.

keys()[source]#

Return a set-like object providing a view on the dict’s keys.

values()[source]#

Return an object providing a view on the dict’s values.

depdigest.check_dependency(module_name, pypi_name=None, caller=None, exception_class=<class 'ImportError'>)[source]#

Check if a dependency is installed. Raises the specified exception if missing.

Parameters:
  • module_name (str)

  • pypi_name (str)

  • caller (str)

  • exception_class (type)

depdigest.clear_package_configs()[source]#

Clear all manually registered configurations. Useful for testing.

depdigest.dep_digest(library, when=None)[source]#

Decorator to declare and enforce a dependency. Resolved dynamically at runtime to support configuration changes.

Parameters:
  • library (str)

  • when (Dict[str, Any] | None)

depdigest.get_info(module_path, format='table')[source]#

Return dependency information for a given package root.

Parameters:
  • module_path (str) – Package root or module path used to resolve _depdigest.py.

  • format (str) – One of: - “table”: legacy row-oriented output (default). - “dict”: structured dictionary output. - “json”: JSON string of the structured dictionary output.

Return type:

Any

depdigest.is_installed(module_name)[source]#

Check if a module is installed (cached).

Parameters:

module_name (str)

Return type:

bool

depdigest.register_package_config(package_name, config)[source]#

Manually register a configuration for a package root.

Parameters:
depdigest.resolve_config(module_path)[source]#
Parameters:

module_path (str | None)

Return type:

DepConfig

depdigest.temporary_package_config(package_name, config)[source]#

Temporarily register a package config within a context.

Restores previous state after context exit.

Parameters:
depdigest.unregister_package_config(package_name)[source]#

Remove a manually registered package configuration if present.

Parameters:

package_name (str)