meta_package_manager.base - Package manager definition — Meta Package Manager 2.4.1 documentation

# `meta_package_manager.base` - Package manager definition

exception `meta_package_manager.base.` `CLIError`(code, output, error)

  Bases: `exceptions.Exception`

  An error occured when running package manager CLI.

  The exception internally keeps the result of CLI execution.

class `meta_package_manager.base.` `PackageManager`

  Bases: `object`

  Base class from which all package manager definitions should inherits.

  `cli_path` = None
  `cli_args` = []
  `platforms` = frozenset([])
  `requirement` = None
  `get_version`()

    Invoke the manager and extract its own reported version.

  `version_string`

    Raw but cleaned string of the package manager version.

    Returns None if the manager had an issue extracting its version.

  `version`

    Parsed and normalized package manager’s own version.

    Returns an instance of `packaging.Version` or None.

  `id`

    Return package manager’s ID. Defaults based on class name.

    This ID must be unique among all package manager definitions and lower-case as they’re used as feature flags for the mpm CLI.

  `name`

    Return package manager’s common name. Defaults based on class name.

  `supported`

    Is the package manager supported on that platform?

  `exists`

    Is the package manager CLI exist on the system?

  `executable`

    Is the package manager CLI can be executed by the current user?

  `fresh`

    Does the package manager match the version requirement?

  `available`

    Is the package manager available and ready-to-use on the system?

    Returns True only if the main CLI:
      1 - is supported on the current platform, 2 - exists on the system, 3 - is executable, and 4 - match the version requirement.
  `run`(args, dry_run=False)

    Run a shell command, return the output and keep error message.

    Removes ANSI escape codes, and returns ready-to-use strings.

  `sync`()

    Fetch latest versions of installed packages.

  `installed`

    List packages currently installed on the system.

    Returns a list of dict with package ID, name and version.

  `outdated`

    List currently installed packages having a new version available.

    Returns a list of dict with package ID, name, current installed version and latest upgradeable version.

  `upgrade_cli`(package_id=None)

    Return a bash-compatible full-CLI to upgrade a package.

  `upgrade`(package_id=None, dry_run=False)

    Perform the upgrade of the provided package to latest version.

  `upgrade_all_cli`()

    Return a bash-compatible full-CLI to upgrade all packages.

  `upgrade_all`(dry_run=False)

    Perform a full upgrade of all outdated packages to latest versions.

    If the manager doesn’t implements a full upgrade one-liner, then fall-back to calling single-package upgrade one by one.

  static `render_cli`(cmd, cli_format=u'plain')

    Return a formatted CLI in the provided format.

  static `render_bitbar_cli`(full_cli)

    Format a bash-runnable full-CLI with parameters into bitbar schema.