1
DistributionSourcePackageView
2
=============================
4
The DistributionSourcePackageView is used to present a source
5
package within a distribution.
7
# Setup the breezy autotest distroseries
8
>>> login("foo.bar@canonical.com")
9
>>> from lp.soyuz.tests.test_publishing import SoyuzTestPublisher
10
>>> publisher = SoyuzTestPublisher()
11
>>> publisher.prepareBreezyAutotest()
12
>>> ubuntutest = publisher.ubuntutest
13
>>> from lp.registry.interfaces.distroseries import DistroSeriesStatus
14
>>> publisher.distroseries.status = DistroSeriesStatus.DEVELOPMENT
16
# Publish the source 'gedit' in the ubuntutest main archive.
17
>>> from datetime import datetime
19
>>> from lp.soyuz.interfaces.publishing import PackagePublishingStatus
20
>>> gedit_main_src_hist = publisher.getPubSource(
21
... sourcename="gedit", archive=ubuntutest.main_archive,
22
... date_uploaded=datetime(2010, 12, 30, tzinfo=pytz.UTC),
23
... status=PackagePublishingStatus.PUBLISHED)
25
The DistributionSourcePackageView includes a helper property
26
'all_published_in_active_distroseries' that returns a list of
27
all the published versions of the source package within the distribution's
30
>>> from canonical.launchpad.webapp.servers import LaunchpadTestRequest
31
>>> from zope.component import getMultiAdapter
32
>>> ubuntu_gedit = ubuntutest.getSourcePackage('gedit')
33
>>> ubuntu_gedit_view = getMultiAdapter(
34
... (ubuntu_gedit, LaunchpadTestRequest()), name="+index")
35
>>> for result in ubuntu_gedit_view.all_published_in_active_distroseries:
36
... print "%s - %s" % (
37
... result['suite'], result['description'])
38
Breezy-autotest - (666): main/base
40
Latest published PPA versions
41
-----------------------------
43
The view includes a latest_published_ppa_versions property which returns
44
a list of dictionaries describing the last three most-recently-uploaded
45
ppa versions of the package.