Skip to content

PyB plugins use wrong external tool dependencies #272

Description

@arcivanov

Throughout the PyB internal plugins use project.build_depends_on:

Firstly, PyB build does not really depend on those. It's the runtime use of the plugin that requires these external tools.

Therefore, I propose the following:

  • Create another method project.plugin_depends_on(package_name, version_spec=None, external_tool=None)

project.plugin_depends_on will:

  • via pip show <package_name> check the version of the package installed
  • if nothing is installed, pip install <package_name>[version_spec] will be executed
  • if package is installed but version_spec is specified and version is not contained in SpecifierSet pip install --upgrade <package_name>[version_spec] will be run
  • once package versions are settled, if external_tool is specified the assert_can_execute will be performed.

@mriehl @esc review please

Metadata

Metadata

Assignees

Labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions