Skip to content

JuliaPackage can't really work with depedencies #4123

@Crivella

Description

@Crivella

JuliaPackage uses

def include_pkg_dependencies(self):

to bring in packages that were installed as an extension of a dependency.

The problem arise from the fact that the order of the dependencies matter.
Dependent packages must be installed after their dependencies or the package manager will raise errors such as

ERROR: Unsatisfiable requirements detected for package Preferences [21216c6a]:
 Preferences [21216c6a] log:
 ├─Preferences [21216c6a] has no known versions!
 └─restricted to versions 1 by PrecompileTools [aea7be01] — no versions left
   └─PrecompileTools [aea7be01] log:
     ├─possible versions are: 1.3.3 or uninstalled
     └─PrecompileTools [aea7be01] is fixed to version 1.3.3

this is happening because PrecompileTools is being installed before Preferences which is one of its dependencies.

Right now include_pkg_dependencies includes and re-install the dependencies in an undefined order based on the results of

for pkg in glob.glob(os.path.join(dep_root, 'packages/*')):

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions