[unstable][announce] PyICQt 0.8.1a2

5 views
Skip to first unread message

r000n

unread,
Aug 16, 2008, 2:27:12 PM8/16/08
to py-transports
It's a second alpha of PyICQt 0.8.1
Whats new? Almost nothing)
Code rewriting and cleaning, bugs hunting.
All x-statuses translatable now

You can get a tarball here: http://groups.google.com/group/py-transports/web/pyicqt-0.8.1a2-unstable.tar.gz.

Git repo working normally now: You can use it too:
git clone git://gitorious.org/pyicqt/mainline.git pyicqt
cd pyicqt
git checkout origin/unstable

Martin Sebald

unread,
Aug 19, 2008, 4:46:24 AM8/19/08
to py-transports
Up and running for several days. Cannot say if my major problem is
away but at least it is not working worse than with the first alpha
version. ;-)

Keep going with the good work! :-)

r000n

unread,
Aug 31, 2008, 1:32:47 PM8/31/08
to py-transports
It's third alpha of PyICQt 0.8.1
Changes in usability. Yeah, representation x-status -> mood/activity
works now :)
Documentation for end-users don't ready yet, but it's in progress and
will placed in wiki: http://code.google.com/p/pyicqt/w/list

Tarball: http://groups.google.com/group/py-transports/web/pyicqt-0.8.1a3-unstable.tar.gz
Git: git://gitorious.org/pyicqt/mainline.git (don't forget about 'git
checkout origin/unstable')

Владимир

unread,
Aug 31, 2008, 4:58:47 PM8/31/08
to py-transports
cool, thanks

ans

unread,
Sep 2, 2008, 1:40:56 AM9/2/08
to py-transports
0.8.1a3 - fly normal :-)

Martin Sebald

unread,
Sep 2, 2008, 6:18:55 AM9/2/08
to py-transports
I had to restart the transport about 5 times than users were able to
login again.

This is what I found in the log, not new, but maybe you can use it for
further debugging:

[2008-09-02 12:10:08] Traceback (most recent call last):
File "/build/buildd/python2.5-2.5.2/Modules/pyexpat.c", line
656, in EndElement

File "/usr/lib/python2.5/site-packages/twisted/words/xish/
domish.py", line 780, in _onEndElement
self.ElementEvent(self.currElem)
File "/usr/lib/python2.5/site-packages/twisted/words/xish/
xmlstream.py", line 106, in onElement
self.dispatch(element)
File "/usr/lib/python2.5/site-packages/twisted/words/xish/
utility.py", line 316, in dispatch
callbacklist.callback(obj)
--- <exception caught here> ---
File "/usr/lib/python2.5/site-packages/twisted/words/xish/
utility.py", line 106, in callback
methodwrapper(*args, **kwargs)
File "/usr/lib/python2.5/site-packages/twisted/words/xish/
utility.py", line 27, in __call__
self.method(*nargs, **nkwargs)
File "/usr/share/pyicqt/src/main.py", line 316, in onMessage
self.sessions[froj.userhost()].onMessage(el)
File "/usr/share/pyicqt/src/jabw.py", line 380, in onMessage
self.messageReceived(froj.userhost(), froj.resource,
toj.userhost(), toj.resource, mtype, body, noerror, xhtml,
autoResponse=autoResponse)
File "/usr/share/pyicqt/src/session.py", line 326, in
messageReceived
self.sendNotReadyError(source, resource, dest, body)
File "/usr/share/pyicqt/src/session.py", line 294, in
sendNotReadyError
self.sendErrorMessage(source + '/' + resource, dest,
"wait", "not-allowed", lang.get("waitforlogin", self.lang), body)
File "/usr/share/pyicqt/src/jabw.py", line 268, in
sendErrorMessage
sendErrorMessage(self.pytrans, to=to, fro=fro,
etype=etype, condition=condition, explanation=explanation, body=body)
File "/usr/share/pyicqt/src/jabw.py", line 116, in
sendErrorMessage
error.attributes["code"] =
str(utils.errorCodeMap[condition])
exceptions.KeyError: u'Sorry, this message cannot be delivered
yet. Please try again when the transport has finished logging in.'

Nikita V. Youshchenko

unread,
Sep 3, 2008, 11:33:34 AM9/3/08
to py-tra...@googlegroups.com
> It's third alpha of PyICQt 0.8.1
> Changes in usability. Yeah, representation x-status -> mood/activity
> works now :)

Hi,

You may be interested in the following information: today something wired
happened and pyicqt stopped working for single user here, while continued
to work for others.

By "stopped working" I mean that it suddenly logged the user out, and on
attempt to re-login ansered with a message

Undefined condition.
The error condition is not one of those defined by the other conditions in
this list.
------
ICQ connection lost! Reason: [Failure instance: Traceback (failure with no
frames):
twisted.internet.error.ConnectionLost: Connection to the other side was
lost in a non-clean fashion.]

This message arrived not immediately after login attempt, but after a
minute or so.
During that time, transport status in user's roster was "offline"

The following was logged to pyicqt log file:

[2008-09-03 13:11:53] Traceback (most recent call last):
File "/usr/local/share/pyicqt/pyicqt-0.8.1a3/src/tlib/oscar.py",
line 694, in dataReceived
state=func(flap)
File "/usr/local/share/pyicqt/pyicqt-0.8.1a3/src/tlib/oscar.py",
line 805, in oscar_Data
d.errback(snac)

File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line
251, in errback
self._startRunCallbacks(fail)

File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line
294, in _startRunCallbacks
self._runCallbacks()


--- <exception caught here> ---

File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line
307, in _runCallbacks
self.result = callback(self.result, *args, **kw)
File "/usr/local/share/pyicqt/pyicqt-0.8.1a3/src/tlib/oscar.py",
line 1970, in _cbRequestSSI
if snac[1] == 0x0f: # same SSI as we have
exceptions.TypeError: unsubscriptable object

I've tried several things to fix it, including trying the latest version
(0.8.1a3), and that did not help - I got the same behaviour and the same
traceback with 0.8.1a3 as well.

However, after an hour or so the problem suddenly disappeared and pyicqt
started to work correctly for the affected user again.

Since nothing changed at my side, I guess this could be caused by icq
server
sending something wired and then stopping doing so. However, maybe it is
possible to "fix" pyicqt to stop getting TypeError on "strange" input from
server?

signature.asc

r000n

unread,
Sep 3, 2008, 12:37:39 PM9/3/08
to py-transports
I read today about this problems on ICQ servers. Usual clients like
Pidgin also has it: user can't get contact-list from server. PyICQt
uses server-side contact list and without it can't works in any case.
I think, checking for every packet from server it's bad idea. Of
course, possible fix this current traceback, but it was temporary
problem and may be it don't will repeats in future. And we don't knows
what will after next update on ICQ servers

r000n

unread,
Sep 3, 2008, 1:07:18 PM9/3/08
to py-transports
Thanks, fixed

Nikita V. Youshchenko

unread,
Sep 4, 2008, 2:33:15 AM9/4/08
to py-tra...@googlegroups.com
> > However, maybe it
> > is possible to "fix" pyicqt to stop getting TypeError on "strange"
> > input from server?
>
> I read today about this problems on ICQ servers. Usual clients like
> Pidgin also has it: user can't get contact-list from server. PyICQt
> uses server-side contact list and without it can't works in any case.
> I think, checking for every packet from server it's bad idea. Of
> course, possible fix this current traceback, but it was temporary
> problem and may be it don't will repeats in future. And we don't knows
> what will after next update on ICQ servers

I agree that attempt to support any sort of unexpected server behaviour is
strange at least.

However, i'm interested [as a programmer] how in this particular case
TypeError could happen - that means, how invalid server input could change
the type of 'snac' object at oscar.py:1970
This may indicate a bug somewhere.


Btw, while we are on topic.

The serious issue that makes it virtually impossible to move local users
from icq to jabber+pyicqt, is that after initial registration in the
transport, user gets his icq contact list (sometimes huge!) imported into
jabber roster in numeric form (as NNN...@icq.xxx.xxx.xx). Is there any
possibility to automatically import nicknames of ICQ contacts (including
russian nicknames)?

Vadim Efimov

unread,
Sep 4, 2008, 7:44:09 AM9/4/08
to py-tra...@googlegroups.com
2008/9/4 Nikita V. Youshchenko <yo...@cs.msu.su>:

> The serious issue that makes it virtually impossible to move local users
> from icq to jabber+pyicqt, is that after initial registration in the
> transport, user gets his icq contact list (sometimes huge!) imported into
> jabber roster in numeric form (as NNN...@icq.xxx.xxx.xx). Is there any
> possibility to automatically import nicknames of ICQ contacts (including
> russian nicknames)?
>
it's client-side feature, for example, psi have option "autoresolv nick on add"

Nikita V. Youshchenko

unread,
Sep 4, 2008, 9:31:14 AM9/4/08
to py-tra...@googlegroups.com

Hmm. So it is not transport who inserts entries into user's roster?
Instead, transport asks clent to do so?

Also, I was not able to find the option in psi 0.10 from debian etch. Is it
available only on later versions?

Vadim Efimov

unread,
Sep 4, 2008, 11:24:53 AM9/4/08
to py-tra...@googlegroups.com
2008/9/4 Nikita V. Youshchenko <yo...@cs.msu.su>:

> Hmm. So it is not transport who inserts entries into user's roster?


> Instead, transport asks clent to do so?

no, transport add nick like u...@icq.server.com & client resolv nick
Independently

> Also, I was not able to find the option in psi 0.10 from debian etch. Is it
> available only on later versions?

it's hidden option, but in psi-0.12 added "raw config.xml editor"
for 0.10 see
http://forum.psi-im.org/post/26607

r000n

unread,
Sep 12, 2008, 7:03:19 AM9/12/08
to py-transports
Hi. Beta of PyICQt 0.8.1 here.
You can get it right now:

http://py-transports.googlegroups.com/web/pyicqt-0.8.1b-unstable.tar.gz

Michal Čihař

unread,
Sep 17, 2008, 8:05:51 AM9/17/08
to py-tra...@googlegroups.com
Hi

Dne Fri, 12 Sep 2008 04:03:19 -0700 (PDT)
r000n <r000...@gmail.com> napsal(a):

>
> Hi. Beta of PyICQt 0.8.1 here.
> You can get it right now:
>
> http://py-transports.googlegroups.com/web/pyicqt-0.8.1b-unstable.tar.gz

I sometimes get this exception in the log:

[2008-09-17 13:46:42] Traceback (most recent call last):
File "/usr/share/pyicqt/src/tlib/oscar.py", line 704, in dataReceived
state=func(flap)
File "/usr/share/pyicqt/src/tlib/oscar.py", line 826, in oscar_Data
d.callback(snac)
File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 243, in callback
self._startRunCallbacks(result)
File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 312, in _startRunCallbacks
self._runCallbacks()


--- <exception caught here> ---

File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 328, in _runCallbacks


self.result = callback(self.result, *args, **kw)

File "/usr/share/pyicqt/src/legacy/icqt.py", line 772, in gotNickname
self.oscarcon.legacyList.updateNickname(uin, unick)
File "/usr/share/pyicqt/src/legacy/buddies.py", line 234, in updateNickname
bos.modifyItemSSI(u)
File "/usr/share/pyicqt/src/tlib/oscar.py", line 2232, in modifyItemSSI
groupID = item.group.group.findIDFor(item.group)
exceptions.AttributeError: SSIGroup instance has no attribute 'group'

--
Michal Čihař | http://cihar.com | http://blog.cihar.com

signature.asc

Vadim Efimov

unread,
Sep 28, 2008, 3:17:16 PM9/28/08
to py-tra...@googlegroups.com
2008/9/12 r000n <r000...@gmail.com>:

>
> Hi. Beta of PyICQt 0.8.1 here.
> You can get it right now:
>
> http://py-transports.googlegroups.com/web/pyicqt-0.8.1b-unstable.tar.gz
>

running ~ week without crashes, 2-3 users online

r000n

unread,
Oct 7, 2008, 7:44:45 AM10/7/08
to py-transports
0.8.1b2:
http://groups.google.com/group/py-transports/web/pyicqt-0.8.1b2-unstable.tar.gz
Without cardinal changes, but with usability improvements :)

Nikita V. Youshchenko

unread,
Oct 7, 2008, 7:57:20 AM10/7/08
to py-tra...@googlegroups.com
> 0.8.1b2:
> http://groups.google.com/group/py-transports/web/pyicqt-0.8.1b2-unstable

>.tar.gz Without cardinal changes, but with usability improvements :)

What about some sort of changelog? :)

r000n

unread,
Oct 7, 2008, 8:12:51 AM10/7/08
to py-transports
Confirmations for messages, typing notifications corrected, titles in
AdHoc settings added

Vadim Efimov

unread,
Oct 7, 2008, 12:47:17 PM10/7/08
to py-tra...@googlegroups.com
thanks a lot for work!

how about "killer feature" - file transfer? it's planned? we can hope?

r000n

unread,
Oct 8, 2008, 11:50:56 AM10/8/08
to py-transports


On Oct 7, 8:47 pm, "Vadim Efimov" <efimov....@gmail.com> wrote:
> thanks a lot for work!
>
> how about "killer feature" - file transfer? it's planned? we can hope?
Planned, but not in near future

Vadim Efimov

unread,
Oct 8, 2008, 12:31:46 PM10/8/08
to py-tra...@googlegroups.com
thanks!

Michal Čihař

unread,
Oct 15, 2008, 4:29:08 AM10/15/08
to py-tra...@googlegroups.com
Hi

Dne Tue, 7 Oct 2008 04:44:45 -0700 (PDT)
r000n <r000...@gmail.com> napsal(a):

>

> 0.8.1b2:
> http://groups.google.com/group/py-transports/web/pyicqt-0.8.1b2-unstable.tar.gz
> Without cardinal changes, but with usability improvements :)

I've just seen following exception in the log:

File "/usr/share/pyicqt/src/tlib/oscar.py", line 704, in dataReceived
state=func(flap)

File "/usr/share/pyicqt/src/tlib/oscar.py", line 828, in oscar_Data
d.errback(snac)
File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 269, in errback
self._startRunCallbacks(fail)


File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 312, in _startRunCallbacks
self._runCallbacks()
--- <exception caught here> ---
File "/usr/lib/python2.5/site-packages/twisted/internet/defer.py", line 328, in _runCallbacks
self.result = callback(self.result, *args, **kw)

File "/usr/share/pyicqt/src/tlib/oscar.py", line 2071, in _cbRequestSSI


if snac[1] == 0x0f: # same SSI as we have

exceptions.TypeError: 'NoneType' object is unsubscriptable

No idea what action has caused it...

signature.asc

Michal Čihař

unread,
Oct 15, 2008, 4:35:47 AM10/15/08
to py-transports
Hi

On 15 Říj, 10:29, Michal Čihař <mic...@cihar.com> wrote:

> No idea what action has caused it...

And another one:

File "/usr/share/pyicqt/src/tlib/oscar.py", line 704, in
dataReceived
state=func(flap)
File "/usr/share/pyicqt/src/tlib/oscar.py", line 828, in
oscar_Data
d.errback(snac)
File "/usr/lib/python2.5/site-packages/twisted/internet/
defer.py", line 269, in errback
self._startRunCallbacks(fail)
File "/usr/lib/python2.5/site-packages/twisted/internet/
defer.py", line 312, in _startRunCallbacks
self._runCallbacks()
--- <exception caught here> ---
File "/usr/lib/python2.5/site-packages/twisted/internet/
defer.py", line 328, in _runCallbacks
self.result = callback(self.result, *args, **kw)
File "/usr/share/pyicqt/src/tlib/oscar.py", line 3270, in
_cbGetShortInfo
nick,first,last,email = self.parseBasicInfo(snac[5][16:])
exceptions.TypeError: 'NoneType' object is unsubscriptable

r000n

unread,
Oct 15, 2008, 11:35:19 AM10/15/08
to py-transports


On Oct 15, 12:35 pm, Michal Čihař <mic...@cihar.com> wrote:
> Hi
>
> On 15 Říj, 10:29, Michal Čihař <mic...@cihar.com> wrote:
>
> > No idea what action has caused it...
>
> And another one:
Server sends ill-formed data instead of contact list and e-mail info.
It's happens from time to time.

r000n

unread,
Nov 8, 2008, 6:01:19 AM11/8/08
to py-transports
0.8.1b3
Changed:
* Updated Russian translation (thanks evadim)
* Corrected SOCKS 5 connection
Added:
* Ad-Hoc: 'Help' command (with link on this mailing list ;))
* Ad-Hoc: 'Deny all auth requests' command in settings
* Transport can sends messages to connected users before stop
(<enableShutdownMessage/> option in config)


http://groups.google.com/group/py-transports/web/pyicqt-0.8.1b3.tar.gz

Alexander Sulfrian

unread,
Nov 15, 2008, 5:46:50 PM11/15/08
to py-tra...@googlegroups.com
On Sat, 8 Nov 2008 03:01:19 -0800 (PST)
r000n <r000...@gmail.com> wrote:

> 0.8.1b3
> Changed:
> * Updated Russian translation (thanks evadim)
> * Corrected SOCKS 5 connection
> Added:
> * Ad-Hoc: 'Help' command (with link on this mailing list ;))
> * Ad-Hoc: 'Deny all auth requests' command in settings
> * Transport can sends messages to connected users before stop
> (<enableShutdownMessage/> option in config)

Hi,
I changed some use of range into xrange. And removed some range
completely. I hope that this will save some memory. After a few tests,
the transport seams to work after that patch.

You could download the patch at:
http://animux.de/downloads/pyicq-t.patch

Hope you will find it helpful.
Alex

signature.asc

r000n

unread,
Nov 17, 2008, 9:54:05 AM11/17/08
to py-transports

On Nov 16, 1:46 am, Alexander Sulfrian <alexan...@sulfrian.net> wrote:
> I changed some use of range into xrange. And removed some range
> completely. I hope that this will save some memory. After a few tests,
> the transport seams to work after that patch.

Looks good. Applied
http://groups.google.com/group/py-transports/web/pyicqt-0.8.1b3-git.tar.gz

Nikita V. Youshchenko

unread,
Nov 17, 2008, 10:06:08 AM11/17/08
to py-tra...@googlegroups.com

What versions of python and twisted does 0.8.1b3 require?

Will it work in debian etch (python 2.4, twisted 2.4)?

r000n

unread,
Nov 18, 2008, 10:47:13 AM11/18/08
to py-transports


On Nov 17, 6:06 pm, "Nikita V. Youshchenko" <yo...@cs.msu.su> wrote:
> What versions of python and twisted does 0.8.1b3 require?
>
> Will it work in debian etch (python 2.4, twisted 2.4)?
Yes.
Reply all
Reply to author
Forward
0 new messages