--- a/doc/client_api_versions.txt Fri Sep 09 11:58:28 2011 -0700
+++ b/doc/client_api_versions.txt Fri Sep 09 15:21:40 2011 -0700
@@ -1,3 +1,11 @@
+Version 70:
+Compatible with clients using versions 66-69.
+
+ pkg.client.api.ImageInterface has changed as follows:
+ * A new boolean property named is_liveroot has been added to
+ allow API consumers to determine if the image to be modified
+ is for the live system root.
+
Version 69:
Compatible with clients using versions 66-68.
--- a/src/client.py Fri Sep 09 11:58:28 2011 -0700
+++ b/src/client.py Fri Sep 09 15:21:40 2011 -0700
@@ -87,7 +87,7 @@
import sys
sys.exit(1)
-CLIENT_API_VERSION = 69
+CLIENT_API_VERSION = 70
PKG_CLIENT_NAME = "pkg"
JUST_UNKNOWN = 0
@@ -910,7 +910,8 @@
plan = api_inst.describe()
- if not api_inst.is_zone and not plan.is_active_root_be:
+ if api_inst.is_liveroot and not api_inst.is_zone and \
+ not plan.is_active_root_be:
# Warn the user since this isn't likely what they wanted.
if plan.new_be:
logger.warning(_("""\
--- a/src/modules/client/api.py Fri Sep 09 11:58:28 2011 -0700
+++ b/src/modules/client/api.py Fri Sep 09 15:21:40 2011 -0700
@@ -77,8 +77,8 @@
from pkg.client.pkgdefs import *
from pkg.smf import NonzeroExitException
-CURRENT_API_VERSION = 69
-COMPATIBLE_API_VERSIONS = frozenset([66, 67, 68, CURRENT_API_VERSION])
+CURRENT_API_VERSION = 70
+COMPATIBLE_API_VERSIONS = frozenset([66, 67, 68, 69, CURRENT_API_VERSION])
CURRENT_P5I_VERSION = 1
# Image type constants.
@@ -449,6 +449,12 @@
return self._img.image_type(self._img.root)
@property
+ def is_liveroot(self):
+ """A boolean indicating whether the image to be modified is
+ for the live system root."""
+ return self._img.is_liveroot()
+
+ @property
def is_zone(self):
"""A boolean value indicating whether the image is a zone."""
return self._img.is_zone()
--- a/src/modules/gui/misc_non_gui.py Fri Sep 09 11:58:28 2011 -0700
+++ b/src/modules/gui/misc_non_gui.py Fri Sep 09 15:21:40 2011 -0700
@@ -41,7 +41,7 @@
# The current version of the Client API the PM, UM and
# WebInstall GUIs have been tested against and are known to work with.
-CLIENT_API_VERSION = 69
+CLIENT_API_VERSION = 70
LOG_DIR = "/var/tmp"
LOG_ERROR_EXT = "_error.log"
LOG_INFO_EXT = "_info.log"
--- a/src/modules/lint/engine.py Fri Sep 09 11:58:28 2011 -0700
+++ b/src/modules/lint/engine.py Fri Sep 09 15:21:40 2011 -0700
@@ -39,7 +39,7 @@
import sys
PKG_CLIENT_NAME = "pkglint"
-CLIENT_API_VERSION = 69
+CLIENT_API_VERSION = 70
pkg.client.global_settings.client_name = PKG_CLIENT_NAME
class LintEngineException(Exception):
--- a/src/pkgdep.py Fri Sep 09 11:58:28 2011 -0700
+++ b/src/pkgdep.py Fri Sep 09 15:21:40 2011 -0700
@@ -42,7 +42,7 @@
import pkg.publish.dependencies as dependencies
from pkg.misc import msg, emsg, PipeError
-CLIENT_API_VERSION = 69
+CLIENT_API_VERSION = 70
PKG_CLIENT_NAME = "pkgdepend"
DEFAULT_SUFFIX = ".res"
--- a/src/sysrepo.py Fri Sep 09 11:58:28 2011 -0700
+++ b/src/sysrepo.py Fri Sep 09 15:21:40 2011 -0700
@@ -53,7 +53,7 @@
orig_cwd = None
PKG_CLIENT_NAME = "pkg.sysrepo"
-CLIENT_API_VERSION = 69
+CLIENT_API_VERSION = 70
pkg.client.global_settings.client_name = PKG_CLIENT_NAME
# exit codes
--- a/src/tests/pkg5unittest.py Fri Sep 09 11:58:28 2011 -0700
+++ b/src/tests/pkg5unittest.py Fri Sep 09 15:21:40 2011 -0700
@@ -126,7 +126,7 @@
# Version test suite is known to work with.
PKG_CLIENT_NAME = "pkg"
-CLIENT_API_VERSION = 69
+CLIENT_API_VERSION = 70
ELIDABLE_ERRORS = [ TestSkippedException, depotcontroller.DepotStateException ]
--- a/src/util/distro-import/importer.py Fri Sep 09 11:58:28 2011 -0700
+++ b/src/util/distro-import/importer.py Fri Sep 09 15:21:40 2011 -0700
@@ -56,7 +56,7 @@
from pkg.misc import emsg
from pkg.portable import PD_LOCAL_PATH, PD_PROTO_DIR, PD_PROTO_DIR_LIST
-CLIENT_API_VERSION = 69
+CLIENT_API_VERSION = 70
PKG_CLIENT_NAME = "importer.py"
pkg.client.global_settings.client_name = PKG_CLIENT_NAME