[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bad weather in testing?



On Fri, Nov 14, 2014 at 6:19 AM, Jérémy Lal wrote:
> Le jeudi 13 novembre 2014 à 19:23 +0800, Paul Wise a écrit :
>> On Thu, Nov 13, 2014 at 6:26 PM, Jérémy Lal wrote:
>>
>> > As a workaround, this is the reason why arch:all nodejs modules have a
>> > build-dependency on nodejs - it prevents them to be available on arches
>> > where nodejs isn't.
>>
>> I think you meant dependency, a build-dependency would not achieve that.
>
> Ha damn, i never got this right, then what's the correct approach for
> solving
> https://bugs.debian.org/725363
> ?

That appears to be an arch:any package not an arch:all one so your
current Build-Depends/Depends workaround is correct. Checking the
packages with debbindiff --html, I see that the .debs are identical
between architectures, except for the architecture name and the
timestamps, so it should be arch:all instead.

The rest of this post is about arch:all node-* packages only...

The "correct" approach would be to fix the portability issues in
nodejs but looking at the buildd page I see this is mostly caused by
libv8 and I guess Google doesn't care much about browser portability
so this is unlikely to get fixed.

An easy workaround if that isn't possible is to make every node-*
package arch any and Build-Depend on nodejs, this is what happened
this with node-xmlhttprequest but personally I would not recommend it.

A more socially responsible workaround would be to patch
dak/reprepro/etc so that some arch:all packages are not present in the
Packages files on some architectures. This could be a hard problem,
especially when you consider that all node-* arch:all packages should
become available on platforms where nodejs is newly ported to (for
example ppc64el is probably going to be a popular cloud platform at
some point). Another fix to dak/dpkg we need in this is something like
linux-all, for example iotop is written in Python but only supports
the I/O monitoring interfaces of the Linux kernel, so the architecture
restriction cannot be expressed by Depends.

Personally I would just use arch:all for node-* packages, drop the
Build-Depends: nodejs (since it is false AFAIK), keep the Depends:
nodejs and otherwise ignore the issue, it doesn't cause much of a
problem IMO.

-- 
bye,
pabs

https://wiki.debian.org/PaulWise


Reply to: