summaryrefslogtreecommitdiffstats
path: root/ipalib
diff options
context:
space:
mode:
authorLynn Root <lroot@redhat.com>2012-11-08 10:06:35 -0500
committerMartin Kosek <mkosek@redhat.com>2012-12-11 10:52:06 +0100
commit173ee4d141958f198a706d65d4ee47c4a2ec31ed (patch)
treef03ad715dfa5f57ce676327f709831264d54612f /ipalib
parent585b91df3b1fab9c865e00f522950003709ea23d (diff)
downloadfreeipa-173ee4d141958f198a706d65d4ee47c4a2ec31ed.tar.gz
freeipa-173ee4d141958f198a706d65d4ee47c4a2ec31ed.tar.xz
freeipa-173ee4d141958f198a706d65d4ee47c4a2ec31ed.zip
Switch %r specifiers to '%s' in Public errors
This switch drops the preceding 'u' from strings within Public error messages. This patch also addresses the related unfriendly 'u' from re-raising errors from netaddr.IPAddress by passing a bytestring through the function. Also switched ValidationError to TypeError in validate_scalar per jcholast@redhat.com. Ticket: https://fedorahosted.org/freeipa/ticket/3121 Ticket: https://fedorahosted.org/freeipa/ticket/2588
Diffstat (limited to 'ipalib')
-rw-r--r--ipalib/constants.py2
-rw-r--r--ipalib/errors.py36
-rw-r--r--ipalib/parameters.py16
-rw-r--r--ipalib/plugins/dns.py6
-rw-r--r--ipalib/util.py2
5 files changed, 29 insertions, 33 deletions
diff --git a/ipalib/constants.py b/ipalib/constants.py
index bf49375ca..e6d951440 100644
--- a/ipalib/constants.py
+++ b/ipalib/constants.py
@@ -39,7 +39,7 @@ NULLS = (None, '', u'', tuple(), [])
NAME_REGEX = r'^[a-z][_a-z0-9]*[a-z0-9]$|^[a-z]$'
# Format for ValueError raised when name does not match above regex:
-NAME_ERROR = 'name must match %r; got %r'
+NAME_ERROR = "name must match '%s'; got '%s'"
# Standard format for TypeError message:
TYPE_ERROR = '%s: need a %r; got %r (a %r)'
diff --git a/ipalib/errors.py b/ipalib/errors.py
index a6c8e7683..a391ada67 100644
--- a/ipalib/errors.py
+++ b/ipalib/errors.py
@@ -166,7 +166,7 @@ class PluginSubclassError(PrivateError):
"""
- format = '%(plugin)r not subclass of any base in %(bases)r'
+ format = '%(plugin)r not subclass of any base in %(bases)r'
class PluginDuplicateError(PrivateError):
@@ -311,7 +311,7 @@ class VersionError(PublicError):
"""
errno = 901
- format = _('%(cver)s client incompatible with %(sver)s server at %(server)r')
+ format = _("%(cver)s client incompatible with %(sver)s server at '%(server)s'")
class UnknownError(PublicError):
@@ -367,7 +367,7 @@ class ServerInternalError(PublicError):
"""
errno = 904
- format = _('an internal error has occurred on server at %(server)r')
+ format = _("an internal error has occurred on server at '%(server)s'")
class CommandError(PublicError):
@@ -383,7 +383,7 @@ class CommandError(PublicError):
"""
errno = 905
- format = _('unknown command %(name)r')
+ format = _("unknown command '%(name)s'")
class ServerCommandError(PublicError):
@@ -400,7 +400,7 @@ class ServerCommandError(PublicError):
"""
errno = 906
- format = _('error on server %(server)r: %(error)s')
+ format = _("error on server '%(server)s': %(error)s")
class NetworkError(PublicError):
@@ -416,7 +416,7 @@ class NetworkError(PublicError):
"""
errno = 907
- format = _('cannot connect to %(uri)r: %(error)s')
+ format = _("cannot connect to '%(uri)s': %(error)s")
class ServerNetworkError(PublicError):
@@ -425,7 +425,7 @@ class ServerNetworkError(PublicError):
"""
errno = 908
- format = _('error on server %(server)r: %(error)s')
+ format = _("error on server '%(server)s': %(error)s")
class JSONError(PublicError):
@@ -526,7 +526,7 @@ class ServiceError(KerberosError):
"""
errno = 1102
- format = _('Service %(service)r not found in Kerberos database')
+ format = _("Service '%(service)s' not found in Kerberos database")
class NoCCacheError(KerberosError):
@@ -688,7 +688,7 @@ class ZeroArgumentError(InvocationError):
"""
errno = 3003
- format = _('command %(name)r takes no arguments')
+ format = _("command '%(name)s' takes no arguments")
class MaxArgumentError(InvocationError):
@@ -708,8 +708,8 @@ class MaxArgumentError(InvocationError):
def __init__(self, message=None, **kw):
if message is None:
format = ungettext(
- 'command %(name)r takes at most %(count)d argument',
- 'command %(name)r takes at most %(count)d arguments',
+ "command '%(name)s' takes at most %(count)d argument",
+ "command '%(name)s' takes at most %(count)d arguments",
kw['count']
)
else:
@@ -738,7 +738,7 @@ class OverlapError(InvocationError):
"""
errno = 3006
- format = _('overlapping arguments and options: %(names)r')
+ format = _("overlapping arguments and options: %(names)s")
class RequirementError(InvocationError):
@@ -754,7 +754,7 @@ class RequirementError(InvocationError):
"""
errno = 3007
- format = _('%(name)r is required')
+ format = _("'%(name)s' is required")
class ConversionError(InvocationError):
@@ -770,7 +770,7 @@ class ConversionError(InvocationError):
"""
errno = 3008
- format = _('invalid %(name)r: %(error)s')
+ format = _("invalid '%(name)s': %(error)s")
class ValidationError(InvocationError):
@@ -786,7 +786,7 @@ class ValidationError(InvocationError):
"""
errno = 3009
- format = _('invalid %(name)r: %(error)s')
+ format = _("invalid '%(name)s': %(error)s")
class NoSuchNamespaceError(InvocationError):
@@ -802,7 +802,7 @@ class NoSuchNamespaceError(InvocationError):
"""
errno = 3010
- format = _('api has no such namespace: %(name)r')
+ format = _("api has no such namespace: '%(name)s'")
class PasswordMismatch(InvocationError):
@@ -978,7 +978,7 @@ class MalformedUserPrincipal(ExecutionError):
"""
errno = 4008
- format = _('Principal is not of the form user@REALM: %(principal)r')
+ format = _("Principal is not of the form user@REALM: '%(principal)s'")
class AlreadyActive(ExecutionError):
"""
@@ -1357,7 +1357,7 @@ class HelpError(BuiltinError):
"""
errno = 4101
- format = _('no command nor help topic %(topic)r')
+ format = _("no command nor help topic '%(topic)s'")
class LDAPError(ExecutionError):
diff --git a/ipalib/parameters.py b/ipalib/parameters.py
index b3a75f288..670e03605 100644
--- a/ipalib/parameters.py
+++ b/ipalib/parameters.py
@@ -879,10 +879,8 @@ class Param(ReadOnly):
def _validate_scalar(self, value, index=None):
if type(value) is not self.type:
- raise ValidationError(name=self.name,
- error='need a %r; got %r (a %r)' % (
- self.type, value, type(value)
- )
+ raise TypeError(
+ TYPE_ERROR % (self.name, self.type, value, type(value))
)
if index is not None and type(index) is not int:
raise TypeError(
@@ -1167,11 +1165,9 @@ class Int(Number):
the exception that it allows both int and long types. The
min/max rules handle size enforcement.
"""
- if type(value) not in (int, long):
- raise ValidationError(name=self.name,
- error='need a %r; got %r (a %r)' % (
- self.type, value, type(value)
- )
+ if type(value) not in (int, long):
+ raise TypeError(
+ TYPE_ERROR % (self.name, self.type, value, type(value))
)
if index is not None and type(index) is not int:
raise TypeError(
@@ -1553,7 +1549,7 @@ class IA5Str(Str):
if ord(value[i]) > 127:
raise ConversionError(name=self.get_param_name(),
index=index,
- error=_('The character \'%(char)r\' is not allowed.') %
+ error=_('The character %(char)r is not allowed.') %
dict(char=value[i],)
)
return super(IA5Str, self)._convert_scalar(value, index)
diff --git a/ipalib/plugins/dns.py b/ipalib/plugins/dns.py
index 17a794b53..ae72f3053 100644
--- a/ipalib/plugins/dns.py
+++ b/ipalib/plugins/dns.py
@@ -267,7 +267,7 @@ def _create_zone_serial():
def _reverse_zone_name(netstr):
try:
- netaddr.IPAddress(netstr)
+ netaddr.IPAddress(str(netstr))
except (netaddr.AddrFormatError, ValueError):
pass
else:
@@ -285,7 +285,7 @@ def _reverse_zone_name(netstr):
def _validate_ipaddr(ugettext, ipaddr, ip_version=None):
try:
- ip = netaddr.IPAddress(ipaddr, flags=netaddr.INET_PTON)
+ ip = netaddr.IPAddress(str(ipaddr), flags=netaddr.INET_PTON)
if ip_version is not None:
if ip.version != ip_version:
@@ -454,7 +454,7 @@ def add_forward_record(zone, name, str_address):
pass # the entry already exists and matches
def get_reverse_zone(ipaddr, prefixlen=None):
- ip = netaddr.IPAddress(ipaddr)
+ ip = netaddr.IPAddress(str(ipaddr))
revdns = unicode(ip.reverse_dns)
if prefixlen is None:
diff --git a/ipalib/util.py b/ipalib/util.py
index c52d060b5..a92e68c4a 100644
--- a/ipalib/util.py
+++ b/ipalib/util.py
@@ -526,7 +526,7 @@ def zone_is_reverse(zone_name):
return False
def get_reverse_zone_default(ip_address):
- ip = netaddr.IPAddress(ip_address)
+ ip = netaddr.IPAddress(str(ip_address))
items = ip.reverse_dns.split('.')
if ip.version == 4: