changeset 220e1936c4d2 in /home/hg/repos/python-nbxmpp
details:http://hg.gajim.org/python-nbxmpp?cmd=changeset;node=220e1936c4d2 description: more py3 fixes
diffstat:
nbxmpp/bosh.py | 12 ++++++------ nbxmpp/client_nb.py | 6 +++--- nbxmpp/dispatcher_nb.py | 8 ++++---- nbxmpp/idlequeue.py | 9 ++++----- nbxmpp/protocol.py | 8 ++++---- nbxmpp/roster_nb.py | 24 ++++++++++++------------ nbxmpp/simplexml.py | 12 ++++++------ nbxmpp/stringprepare.py | 26 +++++++++++++------------- nbxmpp/transports_nb.py | 2 +- 9 files changed, 53 insertions(+), 54 deletions(-)
diffs (truncated from 385 to 300 lines):
diff -r 5ba63540b68d -r 220e1936c4d2 nbxmpp/bosh.py --- a/nbxmpp/bosh.py Wed Jan 02 13:51:30 2013 +0100 +++ b/nbxmpp/bosh.py Wed Jan 02 14:15:21 2013 +0100 @@ -321,27 +321,27 @@ self.remove_bosh_wait_timeout()
if self.after_init: - if stanza_attrs.has_key('sid'): + if 'sid' in stanza_attrs: # session ID should be only in init response self.bosh_sid = stanza_attrs['sid']
- if stanza_attrs.has_key('requests'): + if 'requests' in stanza_attrs: self.bosh_requests = int(stanza_attrs['requests'])
- if stanza_attrs.has_key('wait'): + if 'wait' in stanza_attrs: self.bosh_wait = int(stanza_attrs['wait']) self.after_init = False
ack = None - if stanza_attrs.has_key('ack'): + if 'ack' in stanza_attrs: ack = stanza_attrs['ack'] self.ack_checker.process_incoming_ack(ack=ack, socket=self.current_recv_socket)
- if stanza_attrs.has_key('type'): + if 'type' in stanza_attrs: if stanza_attrs['type'] in ['terminate', 'terminal']: condition = 'n/a' - if stanza_attrs.has_key('condition'): + if 'condition' in stanza_attrs: condition = stanza_attrs['condition'] if condition == 'n/a': log.info('Received sesion-ending terminating stanza') diff -r 5ba63540b68d -r 220e1936c4d2 nbxmpp/client_nb.py --- a/nbxmpp/client_nb.py Wed Jan 02 13:51:30 2013 +0100 +++ b/nbxmpp/client_nb.py Wed Jan 02 14:15:21 2013 +0100 @@ -320,7 +320,7 @@
if not mode: # starting state - if self.__dict__.has_key('Dispatcher'): + if 'Dispatcher' in self.__dict__: self.Dispatcher.PlugOut() self.got_features = False dispatcher_nb.Dispatcher.get_instance().PlugIn(self) @@ -564,7 +564,7 @@ """ Plug in the roster """ - if not self.__dict__.has_key('NonBlockingRoster'): + if 'NonBlockingRoster' not in self.__dict__: return roster_nb.NonBlockingRoster.get_instance(version=version).PlugIn(self)
def getRoster(self, on_ready=None, force=False): @@ -572,7 +572,7 @@ Return the Roster instance, previously plugging it in and requesting roster from server if needed """ - if self.__dict__.has_key('NonBlockingRoster'): + if 'NonBlockingRoster' in self.__dict__: return self.NonBlockingRoster.getRoster(on_ready, force) return None
diff -r 5ba63540b68d -r 220e1936c4d2 nbxmpp/dispatcher_nb.py --- a/nbxmpp/dispatcher_nb.py Wed Jan 02 13:51:30 2013 +0100 +++ b/nbxmpp/dispatcher_nb.py Wed Jan 02 14:15:21 2013 +0100 @@ -100,17 +100,17 @@ c = '\ufdd0' r = c.encode('utf8') while (c < '\ufdef'): - c = unichr(ord(c) + 1) + c = chr(ord(c) + 1) r += '|' + c.encode('utf8')
# \ufffe-\uffff, \u1fffe-\u1ffff, ..., \u10fffe-\u10ffff c = '\ufffe' r += '|' + c.encode('utf8') - r += '|' + unichr(ord(c) + 1).encode('utf8') + r += '|' + chr(ord(c) + 1).encode('utf8') while (c < '\U0010fffe'): - c = unichr(ord(c) + 0x10000) + c = chr(ord(c) + 0x10000) r += '|' + c.encode('utf8') - r += '|' + unichr(ord(c) + 1).encode('utf8') + r += '|' + chr(ord(c) + 1).encode('utf8')
self.invalid_chars_re = re.compile(r)
diff -r 5ba63540b68d -r 220e1936c4d2 nbxmpp/idlequeue.py --- a/nbxmpp/idlequeue.py Wed Jan 02 13:51:30 2013 +0100 +++ b/nbxmpp/idlequeue.py Wed Jan 02 14:15:21 2013 +0100 @@ -128,8 +128,7 @@ """ Return one line representation of command and its arguments """ - return reduce(lambda left, right: left + ' ' + right, - self._compose_command_args()) + return ' '.join(self._compose_command_args())
def wait_child(self): if self.pipe.poll() is None: @@ -323,7 +322,7 @@ self.queue[fd].read_timeout() self.remove_timeout(fd, timeout)
- times = self.alarms.keys() + times = list(self.alarms.keys()) for alarm_time in times: if alarm_time > current_time: continue @@ -478,8 +477,8 @@ self._check_time_events() return True try: - waiting_descriptors = select.select(self.read_fds.keys(), - self.write_fds.keys(), self.error_fds.keys(), 0) + waiting_descriptors = select.select(list(self.read_fds.keys()), + list(self.write_fds.keys()), list(self.error_fds.keys()), 0) except select.error as e: waiting_descriptors = ((), (), ()) if e[0] != 4: # interrupt diff -r 5ba63540b68d -r 220e1936c4d2 nbxmpp/protocol.py --- a/nbxmpp/protocol.py Wed Jan 02 13:51:30 2013 +0100 +++ b/nbxmpp/protocol.py Wed Jan 02 14:15:21 2013 +0100 @@ -761,7 +761,7 @@ if self['from']: self.setFrom(self['from']) if node and type(self) == type(node) and \ - self.__class__ == node.__class__ and self.attrs.has_key('id'): + self.__class__ == node.__class__ and 'id' in self.attrs: del self.attrs['id'] self.timestamp = None for d in self.getTags('delay', namespace=NS_DELAY2): @@ -1550,7 +1550,7 @@ """ Add one more label-option pair to this field """ - if isinstance(opt, basestring): + if isinstance(opt, str): self.addChild('option').setTagData('value', opt) else: self.addChild('option', {'label': opt[0]}).setTagData('value', @@ -1621,7 +1621,7 @@ newdata.append(DataField(name, data[name])) data = newdata for child in data: - if isinstance(child, basestring): + if isinstance(child, str): self.addInstructions(child) elif child.__class__.__name__ == 'DataField': self.kids.append(child) @@ -1695,7 +1695,7 @@ for field in self.getTags('field'): name = field.getAttr('var') typ = field.getType() - if isinstance(typ, basestring) and typ.endswith('-multi'): + if isinstance(typ, str) and typ.endswith('-multi'): val = [] for i in field.getTags('value'): val.append(i.getData()) diff -r 5ba63540b68d -r 220e1936c4d2 nbxmpp/roster_nb.py --- a/nbxmpp/roster_nb.py Wed Jan 02 13:51:30 2013 +0100 +++ b/nbxmpp/roster_nb.py Wed Jan 02 14:15:21 2013 +0100 @@ -86,16 +86,16 @@ for item in query.getTags('item'): jid=item.getAttr('jid') if item.getAttr('subscription')=='remove': - if self._data.has_key(jid): del self._data[jid] + if jid in self._data: del self._data[jid] # Looks like we have a workaround # raise NodeProcessed # a MUST log.info('Setting roster item %s...' % jid) - if not self._data.has_key(jid): self._data[jid]={} + if jid not in self._data: self._data[jid]={} self._data[jid]['name']=item.getAttr('name') self._data[jid]['ask']=item.getAttr('ask') self._data[jid]['subscription']=item.getAttr('subscription') self._data[jid]['groups']=[] - if not self._data[jid].has_key('resources'): self._data[jid]['resources']={} + if 'resources' not in self._data[jid]: self._data[jid]['resources']={} for group in item.getTags('group'): if group.getData() not in self._data[jid]['groups']: self._data[jid]['groups'].append(group.getData()) @@ -116,7 +116,7 @@ # If no from attribue, it's from server jid=self._owner.Server jid=JID(jid) - if not self._data.has_key(jid.getStripped()): self._data[jid.getStripped()]={'name':None,'ask':None,'subscription':'none','groups':['Not in roster'],'resources':{}} + if jid.getStripped() not in self._data: self._data[jid.getStripped()]={'name':None,'ask':None,'subscription':'none','groups':['Not in roster'],'resources':{}} if type(self._data[jid.getStripped()]['resources'])!=type(dict()): self._data[jid.getStripped()]['resources']={} item=self._data[jid.getStripped()] @@ -130,7 +130,7 @@ if pres.getTag('priority'): res['priority']=pres.getPriority() if not pres.getTimestamp(): pres.setTimestamp() res['timestamp']=pres.getTimestamp() - elif typ=='unavailable' and item['resources'].has_key(jid.getResource()): del item['resources'][jid.getResource()] + elif typ=='unavailable' and jid.getResource() in item['resources']: del item['resources'][jid.getResource()] # Need to handle type='error' also
def _getItemData(self, jid, dataname): @@ -147,11 +147,11 @@ """ if jid.find('/') + 1: jid, resource = jid.split('/', 1) - if self._data[jid]['resources'].has_key(resource): + if resource in self._data[jid]['resources']: return self._data[jid]['resources'][resource][dataname] - elif self._data[jid]['resources'].keys(): + elif list(self._data[jid]['resources'].keys()): lastpri = -129 - for r in self._data[jid]['resources'].keys(): + for r in list(self._data[jid]['resources'].keys()): if int(self._data[jid]['resources'][r]['priority']) > lastpri: resource, lastpri=r, int(self._data[jid]['resources'][r]['priority']) return self._data[jid]['resources'][resource][dataname] @@ -222,7 +222,7 @@ """ Return list of connected resources of contact 'jid' """ - return self._data[jid[:(jid+'/').find('/')]]['resources'].keys() + return list(self._data[jid[:(jid+'/').find('/')]]['resources'].keys())
def setItem(self, jid, name=None, groups=[]): """ @@ -257,13 +257,13 @@ """ Return list of all [bare] JIDs that the roster is currently tracks """ - return self._data.keys() + return list(self._data.keys())
def keys(self): """ Same as getItems. Provided for the sake of dictionary interface """ - return self._data.keys() + return list(self._data.keys())
def __getitem__(self, item): """ @@ -277,7 +277,7 @@ Get the contact in the internal format (or None if JID 'item' is not in roster) """ - if self._data.has_key(item): + if item in self._data: return self._data[item]
def Subscribe(self, jid): diff -r 5ba63540b68d -r 220e1936c4d2 nbxmpp/simplexml.py --- a/nbxmpp/simplexml.py Wed Jan 02 13:51:30 2013 +0100 +++ b/nbxmpp/simplexml.py Wed Jan 02 14:15:21 2013 +0100 @@ -39,14 +39,14 @@ Converts object "what" to unicode string using it's own __str__ method if accessible or unicode method otherwise """ - if isinstance(what, unicode): + if isinstance(what, str): return what try: r = what.__str__() except AttributeError: r = str(what) - if not isinstance(r, unicode): - return unicode(r, ENCODING) + if not isinstance(r, str): + return str(r, ENCODING) return r
class Node(object): @@ -124,7 +124,7 @@ self.namespace, self.name = tag.split() else: self.name = tag - if isinstance(payload, basestring): payload=[payload] + if isinstance(payload, str): payload=[payload] for i in payload: if isinstance(i, Node): self.addChild(node=i) @@ -163,7 +163,7 @@ for a in self.kids: if not fancy and (len(self.data)-1)>=cnt: s=s+XMLescape(self.data[cnt]) elif (len(self.data)-1)>=cnt: s=s+XMLescape(self.data[cnt].strip()) - if isinstance(a, str) or isinstance(a, unicode): + if isinstance(a, str) or isinstance(a, str): s = s + a.__str__() else: s = s + a.__str__(fancy and fancy+1) @@ -384,7 +384,7 @@ replaces all node's previous content. If you wish just to add child or CDATA - use addData or addChild methods """ - if isinstance(payload, basestring): + if isinstance(payload, str): payload = [payload]