Page MenuHomeSolus

Enhanced dependency assignment in package builds
Open, NormalPublic

Description

Currently ypkg will reliably add binary dependencies for ELF binaries, i.e. .so and executables.
This ensures a proper relationship between packages and a self-completing dependency graph.

There are two noticeable areas in which we lack this behaviour:

  • Python packages
  • Perl packages

When we introduce sol we'll likely incorporate a Provider type for these Python/Perl packages, however even
now introduce something that is efficient and not insane..

Plan:

Collect a full set of imports for the package, and collapse them into modules. Determine module ownership and then drop the
information on the individual files.
At the Metadata stage, use the FilesDB to find the owning package for these imports, and assign those deps.

Required:

This will require us to make the runtime deps, build deps, to ensure the scanning process works. It should then be fatal for us
to encounter a missing dependency. Differentiation will also have to be implemented for the co-installable Python 2 and
Python 3 trees.

ikey created this task.Aug 5 2016, 4:43 PM

Related to issue: T45: Variety

ikey triaged this task as High priority.Aug 5 2016, 4:48 PM

Elevating priority. Not a blocker for T19: Solus 1.2.1 (Meta Task) though.

An alternative would be to scan the egg and dist files for Python..

Testing email infrastructure, nothing to see here

ikey lowered the priority of this task from High to Normal.Feb 2 2017, 5:43 AM

We can sort out some Provides for cmake also

JoshStrobl removed ikey as the assignee of this task.Feb 9 2019, 8:24 PM