arch-all PPA packages create publications for non-PPA-supported architectures

Bug #645921 reported by Fabien Tassin
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Launchpad itself
Triaged
Low
Unassigned

Bug Description

unexpected architecture for arch-all binary packages reported by getPublishedBinaries() for non-native PPAs.

in the following example, i browse chromium-daily/beta and look for chromium-browser-inspector which is arch-all.

>>> user=lp.people['chromium-daily']
>>> ppa=user.ppas[0]
>>> ppa
<archive at https://api.edge.launchpad.net/1.0/~chromium-daily/+archive/beta>
>>> srcs = ppa.getPublishedSources(status = 'Published')
>>> src = srcs[0]
>>> src
<source_package_publishing_history at https://api.edge.launchpad.net/1.0/~chromium-daily/+archive/beta/+sourcepub/1297030>
>>> bins = src.getPublishedBinaries(binary_name = 'chromium-browser-inspector')
Traceback (most recent call last):
...
ValueError: Unrecognized parameter(s): 'binary_name' <==== *sigh*
>>> bins = src.getPublishedBinaries()
>>> bins[0].binary_package_name
u'chromium-browser'
>>> bins[1].binary_package_name
u'chromium-browser'
>>> bins[2].binary_package_name
u'chromium-browser-dbg'
>>> bins[3].binary_package_name
u'chromium-browser-dbg'
>>> bins[4].binary_package_name
u'chromium-browser-inspector'
>>> bins[4].distro_arch_series.architecture_tag
'amd64'
>>> bins[5].binary_package_name
u'chromium-browser-inspector'
>>> bins[5].distro_arch_series.architecture_tag
'armel' <===== bingo!

none of the chromium-daily PPAs are native so they only have access to i386/amd64/lpia builders, hence, they should not report builds for armel, powerpc, etc, yet they do for arch-all binaries.

Revision history for this message
Julian Edwards (julian-edwards) wrote : Re: [Bug 645921] [NEW] getPublishedBinaries() reporting wrong arches for arch-all binaries in non-native PPAs

On Thursday 23 September 2010 11:46:13 you wrote:
> >>> bins = src.getPublishedBinaries(binary_name =
> >>> 'chromium-browser-inspector')
>
> Traceback (most recent call last):
> ...
> ValueError: Unrecognized parameter(s): 'binary_name' <==== *sigh*

You can use archive.getPublishedBinaries for that.

> >>> bins[5].distro_arch_series.architecture_tag
>
> 'armel' <===== bingo!
>
> none of the chromium-daily PPAs are native so they only have access to
> i386/amd64/lpia builders, hence, they should not report builds for
> armel, powerpc, etc, yet they do for arch-all binaries.

This is a more general problem than the bug title - publishing records are
created erroneously for PPAs for arch-all packages.

The fix is to check the ppa_supported flag when creating publications, while
obeying the restricted architectures feature.

summary: - getPublishedBinaries() reporting wrong arches for arch-all binaries in
- non-native PPAs
+ arch-all PPA packages create publications for non-PPA-supported
+ architectures
Changed in soyuz:
status: New → Triaged
importance: Undecided → Low
tags: added: soyuz-publish
tags: added: ppa
Revision history for this message
Fabien Tassin (fta) wrote :

A solution or a work-around would be nice to have.
I've been trying to find one before i publish my code for the ppa-stats but everything i come up with involves doubling the number of requests and it already takes days to run export stats. So i'm holding up releasing my script until i find another way to fix this.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.