More refactoring.
This commit is contained in:
parent
c184e01aef
commit
be24ed6b4f
4 changed files with 29 additions and 1 deletions
|
@ -136,6 +136,8 @@ from ..requirements import (
|
||||||
PerlModuleRequirement,
|
PerlModuleRequirement,
|
||||||
PerlFileRequirement,
|
PerlFileRequirement,
|
||||||
AutoconfMacroRequirement,
|
AutoconfMacroRequirement,
|
||||||
|
PythonModuleRequirement,
|
||||||
|
PythonPackageRequirement,
|
||||||
)
|
)
|
||||||
from .build import attempt_build, DEFAULT_BUILDER
|
from .build import attempt_build, DEFAULT_BUILDER
|
||||||
|
|
||||||
|
@ -509,6 +511,16 @@ def problem_to_upstream_requirement(problem, context):
|
||||||
return PerlFileRequirement(filename=problem.filename)
|
return PerlFileRequirement(filename=problem.filename)
|
||||||
elif isinstance(problem, MissingAutoconfMacro):
|
elif isinstance(problem, MissingAutoconfMacro):
|
||||||
return AutoconfMacroRequirement(problem.macro)
|
return AutoconfMacroRequirement(problem.macro)
|
||||||
|
elif isinstance(problem, MissingPythonModule):
|
||||||
|
return PythonModuleRequirement(
|
||||||
|
problem.module,
|
||||||
|
python_version=problem.python_version,
|
||||||
|
minimum_version=problem.minimum_version)
|
||||||
|
elif isinstance(problem, MissingPythonDistribution):
|
||||||
|
return PythonPackageRequirement(
|
||||||
|
problem.module,
|
||||||
|
python_version=problem.python_version,
|
||||||
|
minimum_version=problem.minimum_version)
|
||||||
else:
|
else:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
|
@ -71,6 +71,7 @@ class DependencyContext(object):
|
||||||
):
|
):
|
||||||
self.tree = tree
|
self.tree = tree
|
||||||
self.apt = apt
|
self.apt = apt
|
||||||
|
from .resolver.apt import AptResolver
|
||||||
self.resolver = AptResolver(apt)
|
self.resolver = AptResolver(apt)
|
||||||
self.subpath = subpath
|
self.subpath = subpath
|
||||||
self.committer = committer
|
self.committer = committer
|
||||||
|
|
|
@ -26,9 +26,11 @@ class PythonPackageRequirement(UpstreamRequirement):
|
||||||
|
|
||||||
package: str
|
package: str
|
||||||
|
|
||||||
def __init__(self, package):
|
def __init__(self, package, python_version=None, minimum_version=None):
|
||||||
super(PythonPackageRequirement, self).__init__('python-package')
|
super(PythonPackageRequirement, self).__init__('python-package')
|
||||||
self.package = package
|
self.package = package
|
||||||
|
self.python_version = python_version
|
||||||
|
self.minimum_version = minimum_version
|
||||||
|
|
||||||
|
|
||||||
class BinaryRequirement(UpstreamRequirement):
|
class BinaryRequirement(UpstreamRequirement):
|
||||||
|
@ -269,3 +271,15 @@ class AutoconfMacroRequirement(UpstreamRequirement):
|
||||||
def __init__(self, macro: str):
|
def __init__(self, macro: str):
|
||||||
super(AutoconfMacroRequirement, self).__init__('autoconf-macro')
|
super(AutoconfMacroRequirement, self).__init__('autoconf-macro')
|
||||||
self.macro = macro
|
self.macro = macro
|
||||||
|
|
||||||
|
|
||||||
|
class PythonModuleRequirement(UpstreamRequirement):
|
||||||
|
|
||||||
|
module: str
|
||||||
|
python_version: Optional[str]
|
||||||
|
minimum_version: Optional[str]
|
||||||
|
|
||||||
|
def __init__(self, module, python_version=None, minimum_version=None):
|
||||||
|
super(PythonModuleRequirement, self).__init__('python-module')
|
||||||
|
self.python_version = python_version
|
||||||
|
self.minimum_version = minimum_version
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
|
import os
|
||||||
import posixpath
|
import posixpath
|
||||||
|
|
||||||
from ..debian.apt import AptManager
|
from ..debian.apt import AptManager
|
||||||
|
|
Loading…
Add table
Reference in a new issue