[ python-Bugs-1400227 ] 'is' does not work on methods

2006-01-09 Thread SourceForge.net
Bugs item #1400227, was opened at 2006-01-09 05:04
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400227&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Python Interpreter Core
Group: Python 2.4
Status: Open
Resolution: None
Priority: 5
Submitted By: Collin Winter (collinwinter)
Assigned to: Nobody/Anonymous (nobody)
Summary: 'is' does not work on methods

Initial Comment:
As of Python 2.4.2 (gcc 3.3.6, linux 2.6.13), the 'is'
comparison operator does not work on instancemethods or
classmethods (though it does work on staticmethods).
For example:

"""
>>> class A(object):
...   def foo(self): pass
...
>>> id(A.foo) == id(A.foo)
True
>>> A.foo is A.foo
False
>>>
>>> a = A()
>>> id(a.foo) == id(a.foo)
True
>>> a.foo is a.foo
False
"""

This example is applicable to old-style classes and
new-style classes, though things get more complicated
in the case of built-in types:

"""
>>> d = dict()
>>> id(d.update) == id(d.update)
True
>>> d.update is d.update
False
>>>
>>> id(dict.update) == id(dict.update)
True
>>> dict.update is dict.update
True
"""

However, using the classmethod 'fromkeys':

"""
>>> d = dict()
>>> id(d.fromkeys) == id(d.fromkeys)
True
>>> d.fromkeys is d.fromkeys
False
>>>
>>> id(dict.fromkeys) == id(dict.fromkeys)
True
>>> dict.fromkeys is dict.fromkeys
False
"""

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400227&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-1400235 ] 'is' does not work for methods

2006-01-09 Thread SourceForge.net
Bugs item #1400235, was opened at 2006-01-09 05:08
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400235&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Python Interpreter Core
Group: Python 2.4
Status: Open
Resolution: None
Priority: 5
Submitted By: Collin Winter (collinwinter)
Assigned to: Nobody/Anonymous (nobody)
Summary: 'is' does not work for methods

Initial Comment:
As of Python 2.4.2 (gcc 3.3.6, linux 2.6.13), the 'is'
comparison operator does not work for instancemethods
or classmethods (though it does work for
staticmethods). For example:

"""
>>> class A(object):
...   def foo(self): pass
...
>>> id(A.foo) == id(A.foo)
True
>>> A.foo is A.foo
False
>>>
>>> a = A()
>>> id(a.foo) == id(a.foo)
True
>>> a.foo is a.foo
False
"""

This example is applicable to old-style classes and
new-style classes, though things get more complicated
in the case of built-in types:

"""
>>> d = dict()
>>> id(d.update) == id(d.update)
True
>>> d.update is d.update
False
>>>
>>> id(dict.update) == id(dict.update)
True
>>> dict.update is dict.update
True
"""

However, using the classmethod 'fromkeys':

"""
>>> d = dict()
>>> id(d.fromkeys) == id(d.fromkeys)
True
>>> d.fromkeys is d.fromkeys
False
>>>
>>> id(dict.fromkeys) == id(dict.fromkeys)
True
>>> dict.fromkeys is dict.fromkeys
False
"""

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400235&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-1400235 ] 'is' does not work for methods

2006-01-09 Thread SourceForge.net
Bugs item #1400235, was opened at 2006-01-09 05:08
Message generated for change (Settings changed) made by collinwinter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400235&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Python Interpreter Core
Group: Python 2.4
>Status: Deleted
>Resolution: Duplicate
Priority: 5
Submitted By: Collin Winter (collinwinter)
Assigned to: Nobody/Anonymous (nobody)
Summary: 'is' does not work for methods

Initial Comment:
As of Python 2.4.2 (gcc 3.3.6, linux 2.6.13), the 'is'
comparison operator does not work for instancemethods
or classmethods (though it does work for
staticmethods). For example:

"""
>>> class A(object):
...   def foo(self): pass
...
>>> id(A.foo) == id(A.foo)
True
>>> A.foo is A.foo
False
>>>
>>> a = A()
>>> id(a.foo) == id(a.foo)
True
>>> a.foo is a.foo
False
"""

This example is applicable to old-style classes and
new-style classes, though things get more complicated
in the case of built-in types:

"""
>>> d = dict()
>>> id(d.update) == id(d.update)
True
>>> d.update is d.update
False
>>>
>>> id(dict.update) == id(dict.update)
True
>>> dict.update is dict.update
True
"""

However, using the classmethod 'fromkeys':

"""
>>> d = dict()
>>> id(d.fromkeys) == id(d.fromkeys)
True
>>> d.fromkeys is d.fromkeys
False
>>>
>>> id(dict.fromkeys) == id(dict.fromkeys)
True
>>> dict.fromkeys is dict.fromkeys
False
"""

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400235&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Feature Requests-1400252 ] invoking an external Java program from Python script

2006-01-09 Thread SourceForge.net
Feature Requests item #1400252, was opened at 2006-01-09 10:31
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=355470&aid=1400252&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Laure (elsa_petit)
Assigned to: Nobody/Anonymous (nobody)
Summary: invoking an external Java program from Python script

Initial Comment:
I would like to invoke a .jar Java file from a Python 
script (python24). I am new to Java and don't want to 
use JPype or Jython.
-What is the code I should use as command line?
-Where should I place my .jar file, should it be 
placed in the Python directory?
- I am in windows but would like to know what are the 
differences according to each OS used?




--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=355470&aid=1400252&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-1400227 ] 'is' does not work on methods

2006-01-09 Thread SourceForge.net
Bugs item #1400227, was opened at 2006-01-09 10:04
Message generated for change (Comment added) made by mwh
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400227&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Python Interpreter Core
Group: Python 2.4
>Status: Closed
>Resolution: Invalid
Priority: 5
Submitted By: Collin Winter (collinwinter)
>Assigned to: Michael Hudson (mwh)
Summary: 'is' does not work on methods

Initial Comment:
As of Python 2.4.2 (gcc 3.3.6, linux 2.6.13), the 'is'
comparison operator does not work on instancemethods or
classmethods (though it does work on staticmethods).
For example:

"""
>>> class A(object):
...   def foo(self): pass
...
>>> id(A.foo) == id(A.foo)
True
>>> A.foo is A.foo
False
>>>
>>> a = A()
>>> id(a.foo) == id(a.foo)
True
>>> a.foo is a.foo
False
"""

This example is applicable to old-style classes and
new-style classes, though things get more complicated
in the case of built-in types:

"""
>>> d = dict()
>>> id(d.update) == id(d.update)
True
>>> d.update is d.update
False
>>>
>>> id(dict.update) == id(dict.update)
True
>>> dict.update is dict.update
True
"""

However, using the classmethod 'fromkeys':

"""
>>> d = dict()
>>> id(d.fromkeys) == id(d.fromkeys)
True
>>> d.fromkeys is d.fromkeys
False
>>>
>>> id(dict.fromkeys) == id(dict.fromkeys)
True
>>> dict.fromkeys is dict.fromkeys
False
"""

--

>Comment By: Michael Hudson (mwh)
Date: 2006-01-09 11:39

Message:
Logged In: YES 
user_id=6656

'is' is working just fine here.  When you execute 'a.foo' a fresh bound method 
object is made, so two executions lead to two different objects.  The thing 
that probably confused you was this:

>>> id(a.foo) == id(a.foo)
True

What happens here is that you execute 'a.foo' which returns a bound method 
object, you call id() on it, the bound method gets deleted, you execute 'a.foo' 
again and call id() on the new bound method object -- which happens to be 
allocated at the same place in memory as the previous one, so the id()s are 
the same.

Closing.

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400227&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-1377858 ] segfaults when using __del__ and weakrefs

2006-01-09 Thread SourceForge.net
Bugs item #1377858, was opened at 2005-12-10 21:20
Message generated for change (Comment added) made by mwh
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1377858&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Python Interpreter Core
Group: Python 2.4
Status: Open
Resolution: None
Priority: 7
Submitted By: Carl Friedrich Bolz (cfbolz)
Assigned to: Nobody/Anonymous (nobody)
Summary: segfaults when using __del__ and weakrefs

Initial Comment:
You can segfault Python by creating a weakref to an
object in its __del__ method, storing it somewhere and
then trying to dereference the weakref afterwards. the
attached file shows the described behaviour.

--

>Comment By: Michael Hudson (mwh)
Date: 2006-01-09 11:54

Message:
Logged In: YES 
user_id=6656

Hmm, I was kind of hoping this report would get more attention.

The problem is obvious if you read typeobject.c around line 660: the weakref 
list is cleared before __del__ is called, so any weakrefs added during the 
execution of __del__ are never informed of the object's death.  One fix for 
this 
would be to clear the weakref list _after_ calling __del__ but that led to 
other 
mayhem in ways I haven't boethered to understand  (see SF bug 
#742911).  I guess we could just clear out any weakrefs created in __del__ 
without calling their callbacks.

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1377858&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-1377858 ] segfaults when using __del__ and weakrefs

2006-01-09 Thread SourceForge.net
Bugs item #1377858, was opened at 2005-12-10 21:20
Message generated for change (Comment added) made by mwh
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1377858&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Python Interpreter Core
Group: Python 2.4
Status: Open
Resolution: None
Priority: 7
Submitted By: Carl Friedrich Bolz (cfbolz)
Assigned to: Nobody/Anonymous (nobody)
Summary: segfaults when using __del__ and weakrefs

Initial Comment:
You can segfault Python by creating a weakref to an
object in its __del__ method, storing it somewhere and
then trying to dereference the weakref afterwards. the
attached file shows the described behaviour.

--

>Comment By: Michael Hudson (mwh)
Date: 2006-01-09 11:58

Message:
Logged In: YES 
user_id=6656

Hmm, maybe the referenced mayhem is more to do with clearing __dict__ than 
calling __del__.  What breaks if we do things in this order:

1. call __del__
2. clear weakrefs
3. clear __dict__

?

--

Comment By: Michael Hudson (mwh)
Date: 2006-01-09 11:54

Message:
Logged In: YES 
user_id=6656

Hmm, I was kind of hoping this report would get more attention.

The problem is obvious if you read typeobject.c around line 660: the weakref 
list is cleared before __del__ is called, so any weakrefs added during the 
execution of __del__ are never informed of the object's death.  One fix for 
this 
would be to clear the weakref list _after_ calling __del__ but that led to 
other 
mayhem in ways I haven't boethered to understand  (see SF bug 
#742911).  I guess we could just clear out any weakrefs created in __del__ 
without calling their callbacks.

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1377858&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-874534 ] 2.[345]: --with-wctype-functions 4 test failures

2006-01-09 Thread SourceForge.net
Bugs item #874534, was opened at 2004-01-10 19:32
Message generated for change (Comment added) made by lemburg
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=874534&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: Python 2.5
Status: Open
Resolution: None
Priority: 5
Submitted By: Pierre (pierre42)
Assigned to: Neal Norwitz (nnorwitz)
Summary: 2.[345]: --with-wctype-functions 4 test failures

Initial Comment:
# gmake test
case $MAKEFLAGS in \
*-s*)
LD_LIBRARY_PATH=/tmp/Python-2.3.3:/usr/local/lib:/usr/local/qt/lib:/usr/local/kde/lib:/usr/local/pwlib/lib:/usr/local/openh323/lib
CC='gcc' LDSHARED='gcc -shared' OPT='-DNDEBUG -g -O3
-Wall -Wstrict-prototypes' ./python -E ./setup.py -q
build;; \
*)
LD_LIBRARY_PATH=/tmp/Python-2.3.3:/usr/local/lib:/usr/local/qt/lib:/usr/local/kde/lib:/usr/local/pwlib/lib:/usr/local/openh323/lib
CC='gcc' LDSHARED='gcc -shared' OPT='-DNDEBUG -g -O3
-Wall -Wstrict-prototypes' ./python -E ./setup.py build;; \
esac
running build
running build_ext
building 'dbm' extension
gcc -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -fPIC
-fno-strict-aliasing -DHAVE_NDBM_H -I.
-I/tmp/Python-2.3.3/./Include -I/usr/local/include
-I/tmp/Python-2.3.3/Include -I/tmp/Python-2.3.3 -c
/tmp/Python-2.3.3/Modules/dbmmodule.c -o
build/temp.linux-i686-2.3/dbmmodule.o
gcc -shared build/temp.linux-i686-2.3/dbmmodule.o
-L/usr/local/lib -o build/lib.linux-i686-2.3/dbm.so
*** WARNING: renaming "dbm" since importing it failed:
build/lib.linux-i686-2.3/dbm.so: undefined symbol:
dbm_firstkey
running build_scripts
find ./Lib -name '*.py[co]' -print | xargs rm -f
LD_LIBRARY_PATH=/tmp/Python-2.3.3:/usr/local/lib:/usr/local/qt/lib:/usr/local/kde/lib:/usr/local/pwlib/lib:/usr/local/openh323/lib
./python -E -tt ./Lib/test/regrtest.py -l
test_grammar
[...]
test_codecs
test test_codecs failed -- Traceback (most recent call
last):
  File "/tmp/Python-2.3.3/Lib/test/test_codecs.py",
line 333, in test_nameprep
raise test_support.TestFailed("Test 3.%d: %s" %
(pos+1, str(e)))
TestFailed: Test 3.5: u'\u0143 \u03b9' != u'\u0144 \u03b9'
 
test_codeop
[...]
test_format
/tmp/Python-2.3.3/Lib/test/test_format.py:19:
FutureWarning: %u/%o/%x/%X of negative int will return
a signed string in Python 2.4 and up
  result = formatstr % args
test_fpformat
[...]
test_re
test test_re produced unexpected output:
**
*** lines 2-3 of actual output doesn't appear in
expected output after line 1:
+ === Failed incorrectly ('(?u)\\b.\\b', u'\xc4', 0,
'found', u'\xc4')
+ === Failed incorrectly ('(?u)\\w', u'\xc4', 0,
'found', u'\xc4')
**
test_regex
[...]
test_unicode
test test_unicode failed -- errors occurred in
test.test_unicode.UnicodeTest
test_unicode_file
test_unicode_file skipped -- No Unicode filesystem
semantics on this platform.
test_unicodedata
test test_unicodedata failed -- Traceback (most recent
call last):
  File
"/tmp/Python-2.3.3/Lib/test/test_unicodedata.py", line
62, in test_method_checksum
self.assertEqual(result, self.expectedchecksum)
  File "/tmp/Python-2.3.3/Lib/unittest.py", line 302,
in failUnlessEqual
raise self.failureException, \
AssertionError:
'c269de8355871e3210ae8710b45c2ddb0675b9d5' !=
'a37276dc2c158bef6dfd908ad34525c97180fad9'
 
test_univnewlines
[...]
test_zlib
222 tests OK.
4 tests failed:
test_codecs test_re test_unicode test_unicodedata
29 tests skipped:
test_aepack test_al test_bsddb185 test_bsddb3
test_cd test_cl
test_curses test_dbm test_email_codecs test_gl
test_imgfile
test_linuxaudiodev test_locale test_macfs
test_macostools test_nis
test_normalization test_ossaudiodev test_pep277
test_plistlib
test_scriptpackages test_socket_ssl test_socketserver
test_sunaudiodev test_timeout test_unicode_file
test_urllibnet
test_winreg test_winsound
2 skips unexpected on linux2:
test_dbm test_locale
gmake: *** [test] Error 1


--

>Comment By: M.-A. Lemburg (lemburg)
Date: 2006-01-09 13:11

Message:
Logged In: YES 
user_id=38388

This option should/will go away in Python 2.5, so I don't
think there's a need to bother with trying to fix problems
related to it.

The reason for the removal is that the option causes
semantical problems and makes Unicode work in non-standard
ways on platforms that use locale-aware extensions to the
wc-type functions.


--

Comment By: Neal Norwitz (nnorwitz)
Date: 2006-01-09 06:47

Message:
Logged In: YES 
user_id=33168

Confirmed these are still a current problem in SVN.  The
problem is: --with-wctype-functions.  With this option all 4
tests fail on amd64 gentoo linux.


[ python-Feature Requests-1353344 ] python.desktop

2006-01-09 Thread SourceForge.net
Feature Requests item #1353344, was opened at 2005-11-10 19:22
Message generated for change (Comment added) made by sonderblade
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=355470&aid=1353344&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Installation
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Björn Lindqvist (sonderblade)
Assigned to: Nobody/Anonymous (nobody)
Summary: python.desktop

Initial Comment:
I would very much like a
/usr/share/applications/python.desktop file so that
Python can be started from the Program-menu in Linux,
just like you can from the Start-menu in Windows. I
think it would be very neat and good for beginners.

--

>Comment By: Björn Lindqvist (sonderblade)
Date: 2006-01-09 18:52

Message:
Logged In: YES 
user_id=51702

In trunk there are PC/py.ico, PC/pyc.ico, PC/pycon.ico. I
guess they would all work as icons, but I choose pycon.ico
because that is the icon used on windows. I also wonder if
the desktop file can be applied soon? It seems pretty
trivial and uncontroversial to me. 

--

Comment By: Georg Brandl (birkenfeld)
Date: 2005-11-17 14:43

Message:
Logged In: YES 
user_id=1188172

I added German translation. Regarding the icon: I do not
like that very much. Isn't there another Python icon
available in the standard sizes?

--

Comment By: Björn Lindqvist (sonderblade)
Date: 2005-11-16 19:16

Message:
Logged In: YES 
user_id=51702

I have attached a .desktop file and an icon. python.desktop
goes into /usr/share/applications and pycon.png into
/usr/share/pixmaps. It's only translated to Swedish because
I don't know other languages to well.

--

Comment By: Martin v. Löwis (loewis)
Date: 2005-11-13 23:41

Message:
Logged In: YES 
user_id=21627

Would you be willing to provide one?

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=355470&aid=1353344&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Feature Requests-1400252 ] invoking an external Java program from Python script

2006-01-09 Thread SourceForge.net
Feature Requests item #1400252, was opened at 2006-01-09 11:31
Message generated for change (Comment added) made by birkenfeld
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=355470&aid=1400252&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
>Status: Closed
>Resolution: Invalid
Priority: 5
Submitted By: Laure (elsa_petit)
Assigned to: Nobody/Anonymous (nobody)
Summary: invoking an external Java program from Python script

Initial Comment:
I would like to invoke a .jar Java file from a Python 
script (python24). I am new to Java and don't want to 
use JPype or Jython.
-What is the code I should use as command line?
-Where should I place my .jar file, should it be 
placed in the Python directory?
- I am in windows but would like to know what are the 
differences according to each OS used?




--

>Comment By: Georg Brandl (birkenfeld)
Date: 2006-01-09 19:58

Message:
Logged In: YES 
user_id=1188172

Please ask such questions in the comp.lang.python newsgroup.

This tracker is for feature requests. What you're asking is
already possible with today's Python.

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=355470&aid=1400252&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-1281383 ] array.arrays are not unpickleable

2006-01-09 Thread SourceForge.net
Bugs item #1281383, was opened at 2005-09-03 13:16
Message generated for change (Comment added) made by mbrighton
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1281383&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Extension Modules
Group: Python 2.4
Status: Closed
Resolution: Invalid
Priority: 6
Submitted By: Georg Brandl (birkenfeld)
Assigned to: Nobody/Anonymous (nobody)
Summary: array.arrays are not unpickleable

Initial Comment:
Credits to John Machin for discovering this.

"""
Googling for "pickle array" in comp.lang.python yields
old messages that 
show a PickleError -- plus one message where Alex
Martelli writes "I am 
but an egg" :O)
Looks like arrays are NOW (2.4.1) pickleable but not
unpickleable -- see 
below.
I appreciate that arrays are inherently not pickleable
because of the 
type code.
However:
(1) Anyone know why/when the world changed?
(2) If we had alternative constructors like
array.iarray(contents) in 
parallel to array.array('i', contents), those objects
could be 
pickled/unpickled -- yes/no?

Cheers,
John

Python 2.4.1 (#65, Mar 30 2005, 09:13:57) [MSC v.1310
32 bit (Intel)] on 
win32
Type "help", "copyright", "credits" or "license" for
more information.
 >>> import pickle, array
 >>> class Foo(object):
...pass
...
 >>> foo = Foo()
 >>> foo.ia = array.array('i', [3,2,1])
 >>> foo.ia
array('i', [3, 2, 1])
 >>> s = pickle.dumps(foo, -1)
 >>> bar = pickle.loads(s)
Traceback (most recent call last):
  File "", line 1, in ?
  File "C:\Python24\lib\pickle.py", line 1394, in loads
return Unpickler(file).load()
  File "C:\Python24\lib\pickle.py", line 872, in load
dispatch[key](self)
  File "C:\Python24\lib\pickle.py", line 1097, in
load_newobj
obj = cls.__new__(cls, *args)
TypeError: array() takes at least 1 argument (0 given)
===
"""

--

Comment By: Mark C. Brighton (mbrighton)
Date: 2006-01-09 15:07

Message:
Logged In: YES 
user_id=1423362

>From the comments, it appears that the developers didn't
notice that the example used protocol '-1' (highest
protocol, which is 2 in Py2.4).  Using protocol 0 (default)
or 1 will give the TypeError (which is appropriate).  

Using protocol 2, pickle.dumps() will accept a pickle object
without an exception, but it doesn't seem to pickle it
properly (see log below).  

Python 2.4.2 (#67, Sep 28 2005, 12:41:11) [MSC v.1310 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more
information.
>>> import array
>>> import pickle
>>> a=array.array('B')
>>> s= pickle.dumps(a,2);s
'\x80\x02carray\narray\nq\x00)\x81q\x01.'
>>> pickle.load(s)
Traceback (most recent call last):
  File "", line 1, in ?
  File "C:\Python24\lib\pickle.py", line 1390, in load
return Unpickler(file).load()
  File "C:\Python24\lib\pickle.py", line 855, in __init__
self.readline = file.readline
AttributeError: 'str' object has no attribute 'readline'
>>>
>>> a=array.array('B', [1,2,3,4,5])
>>> a
array('B', [1, 2, 3, 4, 5])
>>> s2=pickle.dumps(a,2);s2
'\x80\x02carray\narray\nq\x00)\x81q\x01.'

--

Comment By: Terry J. Reedy (tjreedy)
Date: 2005-09-08 12:39

Message:
Logged In: YES 
user_id=593130

http://python.org/sf/1281556 appears to be a duplicate.
You wish to close it too? (I won't, don't know enough here.)

--

Comment By: Raymond Hettinger (rhettinger)
Date: 2005-09-07 23:36

Message:
Logged In: YES 
user_id=80475

I think you're misunderstanding.  Direct pickling of arrays
does raise a TypeError.  It would be nice if it also did as
an object attribute; however, I'm not bothered by it enough
to spend development time tracing down the issue and then
altering otherwise correct Py2.4 code just to generate a
prettier message.  It is enough for me that the docs do not
promise pickling, that a message is generated by a direct
attempt to pickle, that the OP's buggy code eventually
errors out, and that everything works fine in Py2.5.

I have no objections to someone finding a way to generate a
better error message but think the time would better be
spent elsewhere.

>>> from array import array
>>> from pickle import dumps, loads
>>> ia = array('i', [3,2,1])
>>> ib = loads(dumps(ia))

Traceback (most recent call last):
 . . .
TypeError: can't pickle array objects

--

Comment By: Josiah Carlson (josiahcarlson)
Date: 2005-09-07 23:04

Message:
Logged In: YES 
user_id=341410

Raymond, they seem to be asking for Pickle and cPickle to
raise an exception when someone attempts to pickle arrays in
a future Python 2.4.2 release.  I don't think that is a new
feature.


[ python-Bugs-1400822 ] Extended version of _curses over{lay, write} does not work.

2006-01-09 Thread SourceForge.net
Bugs item #1400822, was opened at 2006-01-09 18:27
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400822&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Extension Modules
Group: Python 2.3
Status: Open
Resolution: None
Priority: 5
Submitted By: J. Sipprell (jsipprell)
Assigned to: Nobody/Anonymous (nobody)
Summary: Extended version of _curses over{lay,write} does not work.

Initial Comment:
2.3/2.4 library docs indicate the following for the
curses window object methods 'overlay' and 'overwrite':

"To get fine-grained control over the copied region,
the second form of overwrite() can be used. sminrow and
smincol are the upper-left coordinates of the source
window, the other variables mark a rectangle in the
destination window."

[syntax: overlay(destwin[, sminrow, smincol, dminrow,
dmincol, dmaxrow, dmaxcol])]

However, attempting to use the 7 arg form of either
overlay or overwrite results in a TypeError being raised.

Inspection of the PyCursesWindow_Overlay and
PyCursesWindow_Overwrite functions from _cursesmodule.c
reveals an incorrect format for the 7-arg specific call
to PyArg_ParseTuple, such that a single argument tuple
is expected which would contain the method arguments. 
Obviously, this is incompatible with the general
argument length conditional used to decide which
PyArg_ParseTuple will be used.

The bug has only been verified on python 2.3.5, not
2.4, however a cursory examination of 2.4 code reveals
no differences in these functions.

The attached patch alters the PyArg_ParseTuple format
string for both functions such that seven arguments are
parsed as expected and the related copywin() code is
thus executed.


--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400822&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-1281383 ] array.arrays are not unpickleable

2006-01-09 Thread SourceForge.net
Bugs item #1281383, was opened at 2005-09-03 13:16
Message generated for change (Comment added) made by josiahcarlson
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1281383&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Extension Modules
Group: Python 2.4
Status: Closed
Resolution: Invalid
Priority: 6
Submitted By: Georg Brandl (birkenfeld)
Assigned to: Nobody/Anonymous (nobody)
Summary: array.arrays are not unpickleable

Initial Comment:
Credits to John Machin for discovering this.

"""
Googling for "pickle array" in comp.lang.python yields
old messages that 
show a PickleError -- plus one message where Alex
Martelli writes "I am 
but an egg" :O)
Looks like arrays are NOW (2.4.1) pickleable but not
unpickleable -- see 
below.
I appreciate that arrays are inherently not pickleable
because of the 
type code.
However:
(1) Anyone know why/when the world changed?
(2) If we had alternative constructors like
array.iarray(contents) in 
parallel to array.array('i', contents), those objects
could be 
pickled/unpickled -- yes/no?

Cheers,
John

Python 2.4.1 (#65, Mar 30 2005, 09:13:57) [MSC v.1310
32 bit (Intel)] on 
win32
Type "help", "copyright", "credits" or "license" for
more information.
 >>> import pickle, array
 >>> class Foo(object):
...pass
...
 >>> foo = Foo()
 >>> foo.ia = array.array('i', [3,2,1])
 >>> foo.ia
array('i', [3, 2, 1])
 >>> s = pickle.dumps(foo, -1)
 >>> bar = pickle.loads(s)
Traceback (most recent call last):
  File "", line 1, in ?
  File "C:\Python24\lib\pickle.py", line 1394, in loads
return Unpickler(file).load()
  File "C:\Python24\lib\pickle.py", line 872, in load
dispatch[key](self)
  File "C:\Python24\lib\pickle.py", line 1097, in
load_newobj
obj = cls.__new__(cls, *args)
TypeError: array() takes at least 1 argument (0 given)
===
"""

--

Comment By: Josiah Carlson (josiahcarlson)
Date: 2006-01-09 17:03

Message:
Logged In: YES 
user_id=341410

mbrighton:

You get a string from pickle.dumps(), and to load strings,
you should use pickle.loads() .

The AttributeError you are recieving is the result of using
pickle.load() with a string, not a file object, as required,
and as described by the documentation.

--

Comment By: Mark C. Brighton (mbrighton)
Date: 2006-01-09 15:07

Message:
Logged In: YES 
user_id=1423362

>From the comments, it appears that the developers didn't
notice that the example used protocol '-1' (highest
protocol, which is 2 in Py2.4).  Using protocol 0 (default)
or 1 will give the TypeError (which is appropriate).  

Using protocol 2, pickle.dumps() will accept a pickle object
without an exception, but it doesn't seem to pickle it
properly (see log below).  

Python 2.4.2 (#67, Sep 28 2005, 12:41:11) [MSC v.1310 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more
information.
>>> import array
>>> import pickle
>>> a=array.array('B')
>>> s= pickle.dumps(a,2);s
'\x80\x02carray\narray\nq\x00)\x81q\x01.'
>>> pickle.load(s)
Traceback (most recent call last):
  File "", line 1, in ?
  File "C:\Python24\lib\pickle.py", line 1390, in load
return Unpickler(file).load()
  File "C:\Python24\lib\pickle.py", line 855, in __init__
self.readline = file.readline
AttributeError: 'str' object has no attribute 'readline'
>>>
>>> a=array.array('B', [1,2,3,4,5])
>>> a
array('B', [1, 2, 3, 4, 5])
>>> s2=pickle.dumps(a,2);s2
'\x80\x02carray\narray\nq\x00)\x81q\x01.'

--

Comment By: Terry J. Reedy (tjreedy)
Date: 2005-09-08 12:39

Message:
Logged In: YES 
user_id=593130

http://python.org/sf/1281556 appears to be a duplicate.
You wish to close it too? (I won't, don't know enough here.)

--

Comment By: Raymond Hettinger (rhettinger)
Date: 2005-09-07 23:36

Message:
Logged In: YES 
user_id=80475

I think you're misunderstanding.  Direct pickling of arrays
does raise a TypeError.  It would be nice if it also did as
an object attribute; however, I'm not bothered by it enough
to spend development time tracing down the issue and then
altering otherwise correct Py2.4 code just to generate a
prettier message.  It is enough for me that the docs do not
promise pickling, that a message is generated by a direct
attempt to pickle, that the OP's buggy code eventually
errors out, and that everything works fine in Py2.5.

I have no objections to someone finding a way to generate a
better error message but think the time would better be
spent elsewhere.

>>> from array import array
>>> from pickle import dumps, loads
>>> ia = array('i', [3,2,1])
>>> ib = loads(dumps(ia))

T

[ python-Bugs-1281383 ] array.arrays are not unpickleable

2006-01-09 Thread SourceForge.net
Bugs item #1281383, was opened at 2005-09-03 13:16
Message generated for change (Comment added) made by mbrighton
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1281383&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Extension Modules
Group: Python 2.4
Status: Closed
Resolution: Invalid
Priority: 6
Submitted By: Georg Brandl (birkenfeld)
Assigned to: Nobody/Anonymous (nobody)
Summary: array.arrays are not unpickleable

Initial Comment:
Credits to John Machin for discovering this.

"""
Googling for "pickle array" in comp.lang.python yields
old messages that 
show a PickleError -- plus one message where Alex
Martelli writes "I am 
but an egg" :O)
Looks like arrays are NOW (2.4.1) pickleable but not
unpickleable -- see 
below.
I appreciate that arrays are inherently not pickleable
because of the 
type code.
However:
(1) Anyone know why/when the world changed?
(2) If we had alternative constructors like
array.iarray(contents) in 
parallel to array.array('i', contents), those objects
could be 
pickled/unpickled -- yes/no?

Cheers,
John

Python 2.4.1 (#65, Mar 30 2005, 09:13:57) [MSC v.1310
32 bit (Intel)] on 
win32
Type "help", "copyright", "credits" or "license" for
more information.
 >>> import pickle, array
 >>> class Foo(object):
...pass
...
 >>> foo = Foo()
 >>> foo.ia = array.array('i', [3,2,1])
 >>> foo.ia
array('i', [3, 2, 1])
 >>> s = pickle.dumps(foo, -1)
 >>> bar = pickle.loads(s)
Traceback (most recent call last):
  File "", line 1, in ?
  File "C:\Python24\lib\pickle.py", line 1394, in loads
return Unpickler(file).load()
  File "C:\Python24\lib\pickle.py", line 872, in load
dispatch[key](self)
  File "C:\Python24\lib\pickle.py", line 1097, in
load_newobj
obj = cls.__new__(cls, *args)
TypeError: array() takes at least 1 argument (0 given)
===
"""

--

Comment By: Mark C. Brighton (mbrighton)
Date: 2006-01-09 17:11

Message:
Logged In: YES 
user_id=1423362

Thatks for catching that.  Unfortunatly, that's just a
function of me editing the example.  I ment to edit that out
and instead took out the exception I was trying to show. 
Here's what I ment to demonstrate:

>>> import array
>>> import pickle
>>> a=array.array('B')
>>> s= pickle.dumps(a,2);s
'\x80\x02carray\narray\nq\x00)\x81q\x01.'
>>> pickle.loads(s)
Traceback (most recent call last):
  File "", line 1, in ?
  File "C:\Python24\lib\pickle.py", line 1394, in loads
return Unpickler(file).load()
  File "C:\Python24\lib\pickle.py", line 872, in load
dispatch[key](self)
  File "C:\Python24\lib\pickle.py", line 1097, in load_newobj
obj = cls.__new__(cls, *args)
TypeError: array() takes at least 1 argument (0 given)

The part of the problem appears to be with dumps(), as the
same string is returned independent of the array provided:

>>> pickle.dumps(array.array('B'),2)
'\x80\x02carray\narray\nq\x00)\x81q\x01.'
>>> pickle.dumps(array.array('B', [1,2,3,4,5]),2)
'\x80\x02carray\narray\nq\x00)\x81q\x01.'
>>> pickle.dumps(array.array('B', [230,]*100),2)
'\x80\x02carray\narray\nq\x00)\x81q\x01.'
>>> pickle.dumps(array.array('H', [1,2,3,4,5]),2)
'\x80\x02carray\narray\nq\x00)\x81q\x01.'

--

Comment By: Josiah Carlson (josiahcarlson)
Date: 2006-01-09 17:03

Message:
Logged In: YES 
user_id=341410

mbrighton:

You get a string from pickle.dumps(), and to load strings,
you should use pickle.loads() .

The AttributeError you are recieving is the result of using
pickle.load() with a string, not a file object, as required,
and as described by the documentation.

--

Comment By: Mark C. Brighton (mbrighton)
Date: 2006-01-09 15:07

Message:
Logged In: YES 
user_id=1423362

>From the comments, it appears that the developers didn't
notice that the example used protocol '-1' (highest
protocol, which is 2 in Py2.4).  Using protocol 0 (default)
or 1 will give the TypeError (which is appropriate).  

Using protocol 2, pickle.dumps() will accept a pickle object
without an exception, but it doesn't seem to pickle it
properly (see log below).  

Python 2.4.2 (#67, Sep 28 2005, 12:41:11) [MSC v.1310 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more
information.
>>> import array
>>> import pickle
>>> a=array.array('B')
>>> s= pickle.dumps(a,2);s
'\x80\x02carray\narray\nq\x00)\x81q\x01.'
>>> pickle.load(s)
Traceback (most recent call last):
  File "", line 1, in ?
  File "C:\Python24\lib\pickle.py", line 1390, in load
return Unpickler(file).load()
  File "C:\Python24\lib\pickle.py", line 855, in __init__
self.readline = file.readline
AttributeError: 'str' object has no attribute 'readline'
>>>
>>> 

[ python-Bugs-1400822 ] Extended version of _curses over{lay, write} does not work.

2006-01-09 Thread SourceForge.net
Bugs item #1400822, was opened at 2006-01-09 15:27
Message generated for change (Comment added) made by nnorwitz
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400822&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Extension Modules
Group: Python 2.3
>Status: Closed
>Resolution: Fixed
Priority: 5
Submitted By: J. Sipprell (jsipprell)
>Assigned to: Neal Norwitz (nnorwitz)
Summary: Extended version of _curses over{lay,write} does not work.

Initial Comment:
2.3/2.4 library docs indicate the following for the
curses window object methods 'overlay' and 'overwrite':

"To get fine-grained control over the copied region,
the second form of overwrite() can be used. sminrow and
smincol are the upper-left coordinates of the source
window, the other variables mark a rectangle in the
destination window."

[syntax: overlay(destwin[, sminrow, smincol, dminrow,
dmincol, dmaxrow, dmaxcol])]

However, attempting to use the 7 arg form of either
overlay or overwrite results in a TypeError being raised.

Inspection of the PyCursesWindow_Overlay and
PyCursesWindow_Overwrite functions from _cursesmodule.c
reveals an incorrect format for the 7-arg specific call
to PyArg_ParseTuple, such that a single argument tuple
is expected which would contain the method arguments. 
Obviously, this is incompatible with the general
argument length conditional used to decide which
PyArg_ParseTuple will be used.

The bug has only been verified on python 2.3.5, not
2.4, however a cursory examination of 2.4 code reveals
no differences in these functions.

The attached patch alters the PyArg_ParseTuple format
string for both functions such that seven arguments are
parsed as expected and the related copywin() code is
thus executed.


--

>Comment By: Neal Norwitz (nnorwitz)
Date: 2006-01-09 23:08

Message:
Logged In: YES 
user_id=33168

It was still a problem.  Also UngetMouse(). All are fixed.

Committed revision 41998.
Committed revision 41999. (2.4)

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1400822&group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-1196154 ] Error: ... ossaudiodev.c, line 48: Missing type specifier

2006-01-09 Thread SourceForge.net
Bugs item #1196154, was opened at 2005-05-05 12:53
Message generated for change (Comment added) made by nnorwitz
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1196154&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Build
Group: Python 2.4
Status: Open
Resolution: None
>Priority: 5
Submitted By: Will L G (diskman)
>Assigned to: Neal Norwitz (nnorwitz)
Summary: Error: ... ossaudiodev.c, line 48: Missing type specifier

Initial Comment:
RedHat Linux 7.2 [alpha]
Kernel 2.6.11.6
Compaq C 6.5.2
Binutils 2.15
Make 2.8

Was receiving the error below and then a few little 
changes to make the configure script think I was using 
gcc while still using ccc...

[EMAIL PROTECTED] Python-2.4.1]# make
case $MAKEFLAGS in \
*-s*) LD_LIBRARY_PATH=/usr2/www/linux-
related/programming/python/Python-
2.4.1:/usr/X11R6/lib:/usr/lib:/usr/local/lib CC='ccache 
ccc -
pthread' LDSHARED='ccache ccc -pthread -shared' 
OPT='-
DNDEBUG -O' ./python -E ./setup.py -q build;; \
*) LD_LIBRARY_PATH=/usr2/www/linux-
related/programming/python/Python-
2.4.1:/usr/X11R6/lib:/usr/lib:/usr/local/lib CC='ccache 
ccc -
pthread' LDSHARED='ccache ccc -pthread -shared' 
OPT='-
DNDEBUG -O' ./python -E ./setup.py build;; \
esac
Could not find platform independent libraries 
Could not find platform dependent libraries 
Consider setting $PYTHONHOME to 
[:]
'import site' failed; use -v for traceback
Traceback (most recent call last):
  File "./setup.py", line 6, in ?
import sys, os, getopt, imp, re
ImportError: No module named os
make: *** [sharedmods] Error 1
[EMAIL PROTECTED] Python-2.4.1]# 


Here is a copy of the little script I used to set the env to 
use ccc while configuring python to compile using gcc 
and thus build the appropriate extensions:

./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --build=alphapca56-alpha-linux-gnu \
  --without-gcc \
  --enable-shared \
  --with-dec-threads \
  --with-cxx="ccache cxx" \
  --with-cc="ccache ccc" \
  --without-threads

make CC="ccache ccc"  CXX="ccache cxx" \
CFLAGS="-O5 -fast -mtune=ev56 -w -pipe -
lpthread -threads" \
CXXFLAGS="-O5 -fast -mtune=ev56 -w -pipe -
lpthread -threads"

EVERYTHING compiled fine but for one little thing, two 
extensions didn't compile:
building 'ossaudiodev' extension
ccache ccc -DNDEBUG -O -fPIC -OPT:Olimit=0 -I. -
I/usr2/www/pub/alpha-RH7/programming/python/Python-
2.4.1/./Include -I/usr/local/include -I/usr2/www/pub/alpha-
RH7/programming/python/Python-2.4.1/Include -
I/usr2/www/pub/alpha-RH7/programming/python/Python-
2.4.1 -c /usr2/www/pub/alpha-
RH7/programming/python/Python-
2.4.1/Modules/ossaudiodev.c -o build/temp.linux-alpha-
2.4/ossaudiodev.o
cc: Error: /usr2/www/pub/alpha-
RH7/programming/python/Python-
2.4.1/Modules/ossaudiodev.c, line 48: Missing type 
specifier or type qualifier. (missingtype)
PyObject_HEAD;
-^
cc: Error: /usr2/www/pub/alpha-
RH7/programming/python/Python-
2.4.1/Modules/ossaudiodev.c, line 57: Missing type 
specifier or type qualifier. (missingtype)
PyObject_HEAD;
-^



ccache ccc -DNDEBUG -O -fPIC -OPT:Olimit=0 -I. -
I/usr2/www/pub/alpha-RH7/programming/python/Python-
2.4.1/./Include -I/usr/local/include -I/usr2/www/pub/alpha-
RH7/programming/python/Python-2.4.1/Include -
I/usr2/www/pub/alpha-RH7/programming/python/Python-
2.4.1 -c /usr2/www/pub/alpha-
RH7/programming/python/Python-
2.4.1/Modules/ossaudiodev.c -o build/temp.linux-alpha-
2.4/ossaudiodev.o
cc: Error: /usr2/www/pub/alpha-
RH7/programming/python/Python-
2.4.1/Modules/ossaudiodev.c, line 48: Missing type 
specifier or type qualifier. (missingtype)
PyObject_HEAD;
-^
cc: Error: /usr2/www/pub/alpha-
RH7/programming/python/Python-
2.4.1/Modules/ossaudiodev.c, line 57: Missing type 
specifier or type qualifier. (missingtype)
PyObject_HEAD;
-^
cc: Info: /usr2/www/pub/alpha-
RH7/programming/python/Python-
2.4.1/./Include/objimpl.h, line 255: In this declaration, 
type long double has the same representation as type 
double on this platform. (longdoublenyi)
  long double dummy;  /* force worst-case alignment */


--

>Comment By: Neal Norwitz (nnorwitz)
Date: 2006-01-09 23:20

Message:
Logged In: YES 
user_id=33168

The problem could be an extra ; on the PyObject_HEAD line.
(There shouldn't be any.)  The semi-colon has been removed
in SVN.  Can you verify that is the problem?  The fix wasn't
ported to 2.4, but that's easy enough if removing the
semi-colon fixes the problem.

If you want faster resolution, perhaps you can volunteer to
help out.

--

Comment By: Will L G (diskman)
Date: 2005-08-04 09:13

Message:
Logged In: YES 
user_