Hi,

On Wed, Dec 11, 2019 at 08:18:39PM +0100, John Paul Adrian Glaubitz wrote:
> numpy is currently BD-Uninstallable on a number of architectures due to
> a circular dependency with scipy.
> 
> Normally, this is fixed by adding a stage1 sbuild profile for boostrapping
> the package. When building with the stage1 profile, the build dependency
> on python3-scipy should be disabled (i.e. python3-scipy [!stage1]) such that
> the numpy package can be built without scipy.

I disagree. stage1 usually is the last resort for such situations. It
should not be added lightly. In fact, stage1 has been deprecated as a
profile for this reason. It shouldn't be introduced at all anymore.

> Can you add such a stage1 profile so I can bootstrap numpy for all the
> architectures where it's currently BD-Uninstallable?

Please don't. stage1 is undescriptive and in three years nobody will
know what it was being added for.

That said, the BD-Uninstallable situation and the circular dependency
are real and they deserve a solution. Let's try the less heavy
approaches first:
 * Maybe scipy is only used for testing numpy or vice versa? Then one
   could be annotated <!nocheck> and we'd be done.
 * Similarly, maybe one is only needed for building Arch:all packages?
   Then maybe it could be demoted to Build-Depends-Indep. With luck
   that could also mean we're done.
 * If that really doesn't help, we need to figure out how they integrate
   with one another. We need to describe the feature that they enable
   and add a descriptive profile for disabling that feature.

So please try <!nocheck> and Build-Depends-Indep before asking for a
profile. These standard measures are regularly tested and have meaning
beyond bootstrapping. Only if that fails, document and understanding for
what features actually cause the cycle and add a profile disabling such
a feature in particular.

Thank you. Also thanks for Ccing me.

Helmut

Reply via email to