launchpad-reviewers team mailing list archive
-
launchpad-reviewers team
-
Mailing list archive
-
Message #28670
[Merge] ~cjwatson/launchpad:schema-explicit-versions-soyuz into launchpad:master
Colin Watson has proposed merging ~cjwatson/launchpad:schema-explicit-versions-soyuz into launchpad:master.
Commit message:
Set explicit webservice versions for lp.soyuz
Requested reviews:
Launchpad code reviewers (launchpad-reviewers)
For more details, see:
https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/425577
Similar to https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/423611.
--
Your team Launchpad code reviewers is requested to review the proposed merge of ~cjwatson/launchpad:schema-explicit-versions-soyuz into launchpad:master.
diff --git a/lib/lp/_schema_circular_imports.py b/lib/lp/_schema_circular_imports.py
index 53731e5..c621fef 100644
--- a/lib/lp/_schema_circular_imports.py
+++ b/lib/lp/_schema_circular_imports.py
@@ -141,9 +141,6 @@ from lp.soyuz.interfaces.archivedependency import IArchiveDependency
from lp.soyuz.interfaces.archivepermission import IArchivePermission
from lp.soyuz.interfaces.archivesubscriber import IArchiveSubscriber
from lp.soyuz.interfaces.binarypackagebuild import IBinaryPackageBuild
-from lp.soyuz.interfaces.binarypackagerelease import (
- IBinaryPackageReleaseDownloadCount,
- )
from lp.soyuz.interfaces.buildrecords import IHasBuildRecords
from lp.soyuz.interfaces.distroarchseries import IDistroArchSeries
from lp.soyuz.interfaces.distroarchseriesfilter import IDistroArchSeriesFilter
@@ -152,10 +149,7 @@ from lp.soyuz.interfaces.livefsbuild import (
ILiveFSBuild,
ILiveFSFile,
)
-from lp.soyuz.interfaces.packageset import (
- IPackageset,
- IPackagesetSet,
- )
+from lp.soyuz.interfaces.packageset import IPackageset
from lp.soyuz.interfaces.publishing import (
IBinaryPackagePublishingHistory,
IBinaryPackagePublishingHistoryEdit,
@@ -690,42 +684,6 @@ patch_reference_property(IAccessToken, 'git_repository', IGitRepository)
#
###
-# IArchive
-patch_entry_explicit_version(IArchive, 'beta')
-patch_operations_explicit_version(
- IArchive, 'beta', "_checkUpload", "deleteComponentUploader",
- "deletePackageUploader", "deletePackagesetUploader", "deleteQueueAdmin",
- "getAllPublishedBinaries", "getArchiveDependency", "getBuildCounters",
- "getBuildSummariesForSourceIds", "getComponentsForQueueAdmin",
- "getPackagesetsForSource", "getPackagesetsForSourceUploader",
- "getPackagesetsForUploader", "getPermissionsForPerson",
- "api_getPublishedSources", "getQueueAdminsForComponent",
- "getUploadersForComponent", "getUploadersForPackage",
- "getUploadersForPackageset", "isSourceUploadAllowed",
- "newComponentUploader", "newPackageUploader", "newPackagesetUploader",
- "newQueueAdmin", "newSubscription", "syncSource", "syncSources")
-
-# IArchiveDependency
-patch_entry_explicit_version(IArchiveDependency, 'beta')
-
-# IArchivePermission
-patch_entry_explicit_version(IArchivePermission, 'beta')
-
-# IArchiveSubscriber
-patch_entry_explicit_version(IArchiveSubscriber, 'beta')
-
-# IBinaryPackageBuild
-patch_entry_explicit_version(IBinaryPackageBuild, 'beta')
-
-# IBinaryPackagePublishingHistory
-patch_entry_explicit_version(IBinaryPackagePublishingHistory, 'beta')
-patch_operations_explicit_version(
- IBinaryPackagePublishingHistory, 'beta', "getDailyDownloadTotals",
- "getDownloadCount", "getDownloadCounts")
-
-# IBinaryPackageReleaseDownloadCount
-patch_entry_explicit_version(IBinaryPackageReleaseDownloadCount, 'beta')
-
# IBranch
patch_entry_explicit_version(IBranch, 'beta')
@@ -768,9 +726,6 @@ patch_entry_explicit_version(ICountry, 'beta')
patch_operations_explicit_version(
ICountrySet, 'beta', "getByCode", "getByName")
-# IDistroArchSeries
-patch_entry_explicit_version(IDistroArchSeries, 'beta')
-
# IHasTranslationImports
patch_entry_explicit_version(IHasTranslationImports, 'beta')
@@ -789,30 +744,9 @@ patch_entry_explicit_version(IPOFile, 'beta')
# IPOTemplate
patch_entry_explicit_version(IPOTemplate, 'beta')
-# IPackageUpload
-patch_entry_explicit_version(IPackageUpload, 'beta')
-
-# IPackageset
-patch_entry_explicit_version(IPackageset, 'beta')
-patch_operations_explicit_version(
- IPackageset, 'beta', "addSources", "addSubsets", "getSourcesIncluded",
- "getSourcesNotSharedBy", "getSourcesSharedBy", "relatedSets",
- "removeSources", "removeSubsets", "setsIncluded", "setsIncludedBy")
-
-# IPackagesetSet
-patch_operations_explicit_version(
- IPackagesetSet, 'beta', "getByName", "new", "setsIncludingSource")
-
# IPreviewDiff
patch_entry_explicit_version(IPreviewDiff, 'beta')
-# ISourcePackagePublishingHistory
-patch_entry_explicit_version(ISourcePackagePublishingHistory, 'beta')
-patch_operations_explicit_version(
- ISourcePackagePublishingHistory, 'beta', "api_requestDeletion",
- "binaryFileUrls", "changesFileUrl", "getBuilds", "getPublishedBinaries",
- "packageDiffUrl", "sourceFileUrls")
-
# ISourcePackageRecipe
patch_entry_explicit_version(ISourcePackageRecipe, 'beta')
patch_operations_explicit_version(
diff --git a/lib/lp/soyuz/interfaces/archive.py b/lib/lp/soyuz/interfaces/archive.py
index fb2ef57..f165970 100644
--- a/lib/lp/soyuz/interfaces/archive.py
+++ b/lib/lp/soyuz/interfaces/archive.py
@@ -532,6 +532,7 @@ class IArchiveSubscriberView(Interface):
# patch to avoid circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def api_getPublishedSources(name=None, version=None, status=None,
distroseries=None, pocket=None,
exact_match=False, created_since_date=None,
@@ -636,6 +637,7 @@ class IArchiveSubscriberView(Interface):
@operation_returns_collection_of(Interface)
@export_operation_as("getPublishedBinaries")
@export_read_operation()
+ @operation_for_version("beta")
def getAllPublishedBinaries(name=None, version=None, status=None,
distroarchseries=None, pocket=None,
exact_match=False, created_since_date=None,
@@ -974,6 +976,7 @@ class IArchiveView(IHasBuildRecords):
)
@export_operation_as("checkUpload")
@export_read_operation()
+ @operation_for_version("beta")
def _checkUpload(person, distroseries, sourcepackagename, component,
pocket, strict_component=True):
"""Wrapper around checkUpload for the web service API."""
@@ -1118,6 +1121,7 @@ class IArchiveView(IHasBuildRecords):
# circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getUploadersForPackageset(packageset, direct_permissions=True):
"""The `ArchivePermission` records for uploaders to the package set.
@@ -1136,6 +1140,7 @@ class IArchiveView(IHasBuildRecords):
# circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getPackagesetsForUploader(person):
"""The `ArchivePermission` records for the person's package sets.
@@ -1176,6 +1181,7 @@ class IArchiveView(IHasBuildRecords):
# circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getPackagesetsForSourceUploader(sourcepackagename, person):
"""The package set based permissions for a given source and uploader.
@@ -1206,6 +1212,7 @@ class IArchiveView(IHasBuildRecords):
# circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getPackagesetsForSource(
sourcepackagename, direct_permissions=True):
"""All package set based permissions for the given source.
@@ -1234,6 +1241,7 @@ class IArchiveView(IHasBuildRecords):
distroseries=Reference(
IDistroSeries, title=_("The distro series"), required=False))
@export_read_operation()
+ @operation_for_version("beta")
def isSourceUploadAllowed(sourcepackagename, person, distroseries=None):
"""True if the person is allowed to upload the given source package.
@@ -1285,6 +1293,7 @@ class IArchiveView(IHasBuildRecords):
include_needsbuild=Bool(
title=_("Include builds with state NEEDSBUILD"), required=False))
@export_read_operation()
+ @operation_for_version("beta")
def getBuildCounters(include_needsbuild=True):
"""Return a dictionary containing the build counters for an archive.
@@ -1314,6 +1323,7 @@ class IArchiveView(IHasBuildRecords):
title=_("A list of source publishing history record ids."),
value_type=Int()))
@export_read_operation()
+ @operation_for_version("beta")
def getBuildSummariesForSourceIds(source_ids):
"""Return a dictionary containing a summary of the build statuses.
@@ -1332,6 +1342,7 @@ class IArchiveView(IHasBuildRecords):
dependency=Reference(schema=Interface)) # Really IArchive. See below.
@operation_returns_entry(schema=Interface) # Really IArchiveDependency.
@export_read_operation()
+ @operation_for_version("beta")
def getArchiveDependency(dependency):
"""Return the `IArchiveDependency` object for the given dependency.
@@ -1355,6 +1366,7 @@ class IArchiveView(IHasBuildRecords):
# Really IArchivePermission, set below to avoid circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getPermissionsForPerson(person):
"""Return the `IArchivePermission` records applicable to the person.
@@ -1368,6 +1380,7 @@ class IArchiveView(IHasBuildRecords):
# Really IArchivePermission, set below to avoid circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getUploadersForPackage(source_package_name):
"""Return `IArchivePermission` records for the package's uploaders.
@@ -1381,6 +1394,7 @@ class IArchiveView(IHasBuildRecords):
# Really IArchivePermission, set below to avoid circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getUploadersForComponent(component_name=None):
"""Return `IArchivePermission` records for the component's uploaders.
@@ -1394,6 +1408,7 @@ class IArchiveView(IHasBuildRecords):
# Really IArchivePermission, set below to avoid circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getQueueAdminsForComponent(component_name):
"""Return `IArchivePermission` records for authorized queue admins.
@@ -1406,6 +1421,7 @@ class IArchiveView(IHasBuildRecords):
# Really IArchivePermission, set below to avoid circular import.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getComponentsForQueueAdmin(person):
"""Return `IArchivePermission` for the person's queue admin
components.
@@ -1711,6 +1727,7 @@ class IArchiveAppend(Interface):
" this source"),
required=False))
@export_write_operation()
+ @operation_for_version("beta")
# Source_names is a string because exporting a SourcePackageName is
# rather nonsensical as it only has id and name columns.
def syncSources(source_names, from_archive, to_pocket, to_series=None,
@@ -1766,6 +1783,7 @@ class IArchiveAppend(Interface):
" this source"),
required=False))
@export_write_operation()
+ @operation_for_version("beta")
# XXX Julian 2008-11-05
# This method takes source_name and version as strings because
# SourcePackageRelease is not exported on the API yet. When it is,
@@ -1819,6 +1837,7 @@ class IArchiveAppend(Interface):
description=_("Free text describing this subscription.")))
# Really IArchiveSubscriber, set below to avoid circular import.
@export_factory_operation(Interface, [])
+ @operation_for_version("beta")
def newSubscription(subscriber, registrant, date_expires=None,
description=None):
"""Create a new subscribtion to this archive.
@@ -1883,6 +1902,7 @@ class IArchiveEdit(Interface):
title=_("Source Package Name"), required=True))
# Really IArchivePermission, set below to avoid circular import.
@export_factory_operation(Interface, [])
+ @operation_for_version("beta")
def newPackageUploader(person, source_package_name):
"""Add permisson for a person to upload a package to this archive.
@@ -1899,6 +1919,7 @@ class IArchiveEdit(Interface):
title=_("Component Name"), required=True))
# Really IArchivePermission, set below to avoid circular import.
@export_factory_operation(Interface, [])
+ @operation_for_version("beta")
def newComponentUploader(person, component_name):
"""Add permission for a person to upload to a component.
@@ -1939,6 +1960,7 @@ class IArchiveEdit(Interface):
title=_("Component Name"), required=True))
# Really IArchivePermission, set below to avoid circular import.
@export_factory_operation(Interface, [])
+ @operation_for_version("beta")
def newQueueAdmin(person, component_name):
"""Add permission for a person to administer a distroseries queue.
@@ -1987,6 +2009,7 @@ class IArchiveEdit(Interface):
# Really IArchivePermission, set in _schema_circular_imports to avoid
# circular import.
@export_factory_operation(Interface, [])
+ @operation_for_version("beta")
def newPackagesetUploader(person, packageset, explicit=False):
"""Add a package set based permission for a person.
@@ -2004,6 +2027,7 @@ class IArchiveEdit(Interface):
source_package_name=TextLine(
title=_("Source Package Name"), required=True))
@export_write_operation()
+ @operation_for_version("beta")
def deletePackageUploader(person, source_package_name):
"""Revoke permission for the person to upload the package.
@@ -2017,6 +2041,7 @@ class IArchiveEdit(Interface):
component_name=TextLine(
title=_("Component Name"), required=True))
@export_write_operation()
+ @operation_for_version("beta")
def deleteComponentUploader(person, component_name):
"""Revoke permission for the person to upload to the component.
@@ -2046,6 +2071,7 @@ class IArchiveEdit(Interface):
component_name=TextLine(
title=_("Component Name"), required=True))
@export_write_operation()
+ @operation_for_version("beta")
def deleteQueueAdmin(person, component_name):
"""Revoke permission for the person to administer distroseries queues.
@@ -2087,6 +2113,7 @@ class IArchiveEdit(Interface):
explicit=Bool(
title=_("Explicit"), required=False))
@export_write_operation()
+ @operation_for_version("beta")
def deletePackagesetUploader(person, packageset, explicit=False):
"""Revoke upload permissions for a person.
@@ -2309,7 +2336,7 @@ class IArchiveRestricted(Interface):
"with a higher score will build sooner.")))
-@exported_as_webservice_entry()
+@exported_as_webservice_entry(as_of="beta")
class IArchive(IArchivePublic, IArchiveAppend, IArchiveEdit, IArchiveDelete,
IArchiveSubscriberView, IArchiveView, IArchiveAdmin,
IArchiveRestricted):
diff --git a/lib/lp/soyuz/interfaces/archivedependency.py b/lib/lp/soyuz/interfaces/archivedependency.py
index f61b20b..a6653cc 100644
--- a/lib/lp/soyuz/interfaces/archivedependency.py
+++ b/lib/lp/soyuz/interfaces/archivedependency.py
@@ -28,7 +28,7 @@ from lp.registry.interfaces.pocket import PackagePublishingPocket
from lp.soyuz.interfaces.archive import IArchive
-@exported_as_webservice_entry(publish_web_link=False)
+@exported_as_webservice_entry(as_of="beta", publish_web_link=False)
class IArchiveDependency(Interface):
"""ArchiveDependency interface."""
diff --git a/lib/lp/soyuz/interfaces/archivepermission.py b/lib/lp/soyuz/interfaces/archivepermission.py
index 09a06fc..801f751 100644
--- a/lib/lp/soyuz/interfaces/archivepermission.py
+++ b/lib/lp/soyuz/interfaces/archivepermission.py
@@ -37,7 +37,7 @@ from lp.soyuz.interfaces.component import IComponent
from lp.soyuz.interfaces.packageset import IPackageset
-@exported_as_webservice_entry(publish_web_link=False)
+@exported_as_webservice_entry(as_of="beta", publish_web_link=False)
class IArchivePermission(Interface):
"""The interface for `ArchivePermission`."""
diff --git a/lib/lp/soyuz/interfaces/archivesubscriber.py b/lib/lp/soyuz/interfaces/archivesubscriber.py
index 555f873..3da8a6b 100644
--- a/lib/lp/soyuz/interfaces/archivesubscriber.py
+++ b/lib/lp/soyuz/interfaces/archivesubscriber.py
@@ -120,7 +120,7 @@ class IArchiveSubscriberEdit(Interface):
"""
-@exported_as_webservice_entry()
+@exported_as_webservice_entry(as_of="beta")
class IArchiveSubscriber(IArchiveSubscriberView, IArchiveSubscriberEdit):
"""An interface for archive subscribers."""
diff --git a/lib/lp/soyuz/interfaces/binarypackagebuild.py b/lib/lp/soyuz/interfaces/binarypackagebuild.py
index edc245f..d92ac4b 100644
--- a/lib/lp/soyuz/interfaces/binarypackagebuild.py
+++ b/lib/lp/soyuz/interfaces/binarypackagebuild.py
@@ -274,7 +274,8 @@ class IBinaryPackageBuildAdmin(IBuildFarmJobAdmin):
"""Change the build's score."""
-@exported_as_webservice_entry(singular_name='build', plural_name='builds')
+@exported_as_webservice_entry(
+ singular_name="build", plural_name="builds", as_of="beta")
class IBinaryPackageBuild(
IBinaryPackageBuildView, IBinaryPackageBuildEdit,
IBinaryPackageBuildRestricted, IBinaryPackageBuildAdmin,
diff --git a/lib/lp/soyuz/interfaces/binarypackagerelease.py b/lib/lp/soyuz/interfaces/binarypackagerelease.py
index bffca64..2019b88 100644
--- a/lib/lp/soyuz/interfaces/binarypackagerelease.py
+++ b/lib/lp/soyuz/interfaces/binarypackagerelease.py
@@ -121,7 +121,7 @@ class IBinaryPackageRelease(Interface):
"""
-@exported_as_webservice_entry()
+@exported_as_webservice_entry(as_of="beta")
class IBinaryPackageReleaseDownloadCount(Interface):
"""Daily download count of a binary package release in an archive."""
diff --git a/lib/lp/soyuz/interfaces/distroarchseries.py b/lib/lp/soyuz/interfaces/distroarchseries.py
index 0d0ffc4..1c3d0f6 100644
--- a/lib/lp/soyuz/interfaces/distroarchseries.py
+++ b/lib/lp/soyuz/interfaces/distroarchseries.py
@@ -347,7 +347,7 @@ class IDistroArchSeriesModerate(Interface):
"""
-@exported_as_webservice_entry()
+@exported_as_webservice_entry(as_of="beta")
class IDistroArchSeries(IDistroArchSeriesPublic, IDistroArchSeriesModerate):
"""An architecture for a distroseries."""
diff --git a/lib/lp/soyuz/interfaces/packageset.py b/lib/lp/soyuz/interfaces/packageset.py
index c1254cf..61ec541 100644
--- a/lib/lp/soyuz/interfaces/packageset.py
+++ b/lib/lp/soyuz/interfaces/packageset.py
@@ -57,7 +57,6 @@ class DuplicatePackagesetName(Exception):
"""Raised for packagesets with the same name and distroseries."""
-@exported_as_webservice_entry(publish_web_link=False)
class IPackagesetViewOnly(IHasOwner):
"""A read-only interface for package sets."""
@@ -108,6 +107,7 @@ class IPackagesetViewOnly(IHasOwner):
direct_inclusion=Bool(required=False))
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def setsIncludedBy(direct_inclusion=False):
"""Get all package sets that include this one.
@@ -122,6 +122,7 @@ class IPackagesetViewOnly(IHasOwner):
direct_inclusion=Bool(required=False))
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def setsIncluded(direct_inclusion=False):
"""Get all package sets that are included by this one.
@@ -162,6 +163,7 @@ class IPackagesetViewOnly(IHasOwner):
@operation_parameters(
direct_inclusion=Bool(required=False))
@export_read_operation()
+ @operation_for_version("beta")
def getSourcesIncluded(direct_inclusion=False):
"""Get all source names associated with this package set.
@@ -196,6 +198,7 @@ class IPackagesetViewOnly(IHasOwner):
title=_('The package set we are comparing to.'), required=True),
direct_inclusion=Bool(required=False))
@export_read_operation()
+ @operation_for_version("beta")
def getSourcesSharedBy(other_package_set, direct_inclusion=False):
"""Get source package names also included by another package set.
@@ -220,6 +223,7 @@ class IPackagesetViewOnly(IHasOwner):
title=_('The package set we are comparing to.'), required=True),
direct_inclusion=Bool(required=False))
@export_read_operation()
+ @operation_for_version("beta")
def getSourcesNotSharedBy(other_package_set, direct_inclusion=False):
"""Get source package names not included by another package set.
@@ -240,6 +244,7 @@ class IPackagesetViewOnly(IHasOwner):
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def relatedSets():
"""Get all other package sets in this set's `PackagesetGroup`.
@@ -250,7 +255,6 @@ class IPackagesetViewOnly(IHasOwner):
"""
-@exported_as_webservice_entry(publish_web_link=False)
class IPackagesetEdit(Interface):
"""A writeable interface for package sets."""
@@ -281,6 +285,7 @@ class IPackagesetEdit(Interface):
names=List(
title=_("A list of source package names."), value_type=TextLine()))
@export_write_operation()
+ @operation_for_version("beta")
def addSources(names):
"""Add the named source packages to this package set.
@@ -303,6 +308,7 @@ class IPackagesetEdit(Interface):
names=List(
title=_("A list of source package names."), value_type=TextLine()))
@export_write_operation()
+ @operation_for_version("beta")
def removeSources(names):
"""Remove the named source packages from this package set.
@@ -320,6 +326,7 @@ class IPackagesetEdit(Interface):
names=List(
title=_("A list of package set names."), value_type=TextLine()))
@export_write_operation()
+ @operation_for_version("beta")
def addSubsets(names):
"""Add the named package sets as subsets to this package set.
@@ -341,6 +348,7 @@ class IPackagesetEdit(Interface):
names=List(
title=_("A list of package set names."), value_type=TextLine()))
@export_write_operation()
+ @operation_for_version("beta")
def removeSubsets(names):
"""Remove the named package subsets from this package set.
@@ -360,7 +368,6 @@ class IPackagesetEdit(Interface):
"""Delete the package set."""
-@exported_as_webservice_entry(publish_web_link=False)
class IPackagesetRestricted(Interface):
"""A writeable interface for restricted attributes of package sets."""
@@ -369,7 +376,7 @@ class IPackagesetRestricted(Interface):
description=_("Build score bonus for packages in this package set.")))
-@exported_as_webservice_entry(publish_web_link=False)
+@exported_as_webservice_entry(publish_web_link=False, as_of="beta")
class IPackageset(IPackagesetViewOnly, IPackagesetEdit, IPackagesetRestricted):
"""An interface for package sets."""
@@ -395,6 +402,7 @@ class IPackagesetSetEdit(Interface):
"The new package set will share the package set group "
"with this one.")))
@export_factory_operation(IPackageset, [])
+ @operation_for_version("beta")
def new(name, description, owner, distroseries, related_set=None):
"""Create a new package set.
@@ -421,6 +429,7 @@ class IPackagesetSet(IPackagesetSetEdit):
distroseries=copy_field(IPackageset['distroseries']))
@operation_returns_entry(IPackageset)
@export_read_operation()
+ @operation_for_version("beta")
def getByName(distroseries, name):
"""Return the single package set with the given name (if any).
@@ -481,6 +490,7 @@ class IPackagesetSet(IPackagesetSetEdit):
direct_inclusion=Bool(required=False))
@operation_returns_collection_of(IPackageset)
@export_read_operation()
+ @operation_for_version("beta")
def setsIncludingSource(sourcepackagename, distroseries=None,
direct_inclusion=False):
"""Get the package sets that include this source package.
diff --git a/lib/lp/soyuz/interfaces/publishing.py b/lib/lp/soyuz/interfaces/publishing.py
index 3ddd772..be55014 100644
--- a/lib/lp/soyuz/interfaces/publishing.py
+++ b/lib/lp/soyuz/interfaces/publishing.py
@@ -195,6 +195,7 @@ class IPublishingEdit(Interface):
removal_comment=TextLine(title=_("Removal comment"), required=False))
@export_operation_as("requestDeletion")
@export_write_operation()
+ @operation_for_version("beta")
def api_requestDeletion(removed_by, removal_comment=None):
"""Delete this source and its binaries.
@@ -418,6 +419,7 @@ class ISourcePackagePublishingHistoryPublic(IPublishingView):
# Really IBinaryPackagePublishingHistory, see below.
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getPublishedBinaries():
"""Return all resulted `IBinaryPackagePublishingHistory`.
@@ -451,6 +453,7 @@ class ISourcePackagePublishingHistoryPublic(IPublishingView):
# Really IBuild (fixed in _schema_circular_imports.py)
@operation_returns_collection_of(Interface)
@export_read_operation()
+ @operation_for_version("beta")
def getBuilds():
"""Return a list of `IBuild` objects in this publishing context.
@@ -466,6 +469,7 @@ class ISourcePackagePublishingHistoryPublic(IPublishingView):
"""
@export_read_operation()
+ @operation_for_version("beta")
def changesFileUrl():
"""The .changes file URL for this source publication.
@@ -551,6 +555,7 @@ class ISourcePackagePublishingHistoryPublic(IPublishingView):
@export_read_operation()
@operation_parameters(
include_meta=Bool(title=_("Include Metadata"), required=False))
+ @operation_for_version("beta")
def sourceFileUrls(include_meta=False):
"""URLs for this source publication's uploaded source files.
@@ -560,6 +565,7 @@ class ISourcePackagePublishingHistoryPublic(IPublishingView):
"""
@export_read_operation()
+ @operation_for_version("beta")
def binaryFileUrls():
"""URLs for this source publication's binary files.
@@ -569,6 +575,7 @@ class ISourcePackagePublishingHistoryPublic(IPublishingView):
@export_read_operation()
@operation_parameters(
to_version=TextLine(title=_("To Version"), required=True))
+ @operation_for_version("beta")
def packageDiffUrl(to_version):
"""URL of the debdiff file between this and the supplied version.
@@ -600,7 +607,7 @@ class ISourcePackagePublishingHistoryEdit(IPublishingEdit):
"""
-@exported_as_webservice_entry(publish_web_link=False)
+@exported_as_webservice_entry(as_of="beta", publish_web_link=False)
class ISourcePackagePublishingHistory(ISourcePackagePublishingHistoryPublic,
ISourcePackagePublishingHistoryEdit):
"""A source package publishing history record."""
@@ -845,6 +852,7 @@ class IBinaryPackagePublishingHistoryPublic(IPublishingView):
"""
@export_read_operation()
+ @operation_for_version("beta")
def getDownloadCount():
"""Get the download count of this binary package in this archive.
@@ -855,6 +863,7 @@ class IBinaryPackagePublishingHistoryPublic(IPublishingView):
end_date=Date(title=_("End date"), required=False))
@operation_returns_collection_of(IBinaryPackageReleaseDownloadCount)
@export_read_operation()
+ @operation_for_version("beta")
def getDownloadCounts(start_date=None, end_date=None):
"""Get detailed download counts for this binary.
@@ -866,6 +875,7 @@ class IBinaryPackagePublishingHistoryPublic(IPublishingView):
start_date=Date(title=_("Start date"), required=False),
end_date=Date(title=_("End date"), required=False))
@export_read_operation()
+ @operation_for_version("beta")
def getDailyDownloadTotals(start_date=None, end_date=None):
"""Get the daily download counts for this binary.
@@ -921,7 +931,7 @@ class IBinaryPackagePublishingHistoryEdit(IPublishingEdit):
"""
-@exported_as_webservice_entry(publish_web_link=False)
+@exported_as_webservice_entry(as_of="beta", publish_web_link=False)
class IBinaryPackagePublishingHistory(IBinaryPackagePublishingHistoryPublic,
IBinaryPackagePublishingHistoryEdit):
"""A binary package publishing record."""
diff --git a/lib/lp/soyuz/interfaces/queue.py b/lib/lp/soyuz/interfaces/queue.py
index 89d36a3..6f81095 100644
--- a/lib/lp/soyuz/interfaces/queue.py
+++ b/lib/lp/soyuz/interfaces/queue.py
@@ -153,7 +153,7 @@ class IPackageUploadLog(Interface):
required=False, readonly=True))
-@exported_as_webservice_entry(publish_web_link=False)
+@exported_as_webservice_entry(publish_web_link=False, as_of="beta")
class IPackageUpload(Interface):
"""A Queue item for the archive uploader."""
@@ -240,7 +240,7 @@ class IPackageUpload(Interface):
value_type=TextLine(),
required=False,
readonly=True),
- ("devel", dict(exported=False)), exported=True)
+ ("devel", dict(exported=False)), as_of="beta", exported=True)
copy_source_archive = exported(
Reference(