depdigest.core package#

Submodules#

depdigest.core.checker module#

depdigest.core.checker.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.core.checker.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.core.checker.is_installed(module_name)[source]#

Check if a module is installed (cached).

Parameters:

module_name (str)

Return type:

bool

depdigest.core.config module#

class depdigest.core.config.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#
depdigest.core.config.clear_package_configs()[source]#

Clear all manually registered configurations. Useful for testing.

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

Manually register a configuration for a package root.

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

module_path (str | None)

Return type:

DepConfig

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

Temporarily register a package config within a context.

Restores previous state after context exit.

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

Remove a manually registered package configuration if present.

Parameters:

package_name (str)

depdigest.core.decorator module#

depdigest.core.decorator.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.core.loader module#

class depdigest.core.loader.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.

Module contents#