[issue1676] Fork/exec issues with Tk 8.5/Python 2.5.1 on OS X

2007-12-20 Thread Martin v. Löwis

Martin v. Löwis added the comment:

I would expect that this is a Tk bug, primarily, not a Python bug. If
somebody could reproduce it with Tk alone, it would be good to report it
at http://sourceforge.net/tracker/?group_id=12997

--
nosy: +loewis

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1673] test_pep277 fails

2007-12-20 Thread Martin v. Löwis

Changes by Martin v. Löwis:


--
status: pending -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1677] Ctrl-C will exit out of Python interpreter in Windows

2007-12-20 Thread Isaul Vargas

New submission from Isaul Vargas:

When running Python 2.5.1 stable in Windows, you can press Ctrl-C as 
many times as you want and it will always output Keyboard Interrupt in 
the interpreter.
Python 3.0a+ will quit if you press ctrl-c too many times. The last 
release of 3.0a2 can handle many interrupts before quitting, but the 
latest snapshot (Dec 20th) can not.

Steps to reproduce:
Run python.exe
hold down ctrl-c, or press it many times. It will quit the interpreter 
eventually.

--
components: Interpreter Core
messages: 58933
nosy: Dude-X
severity: normal
status: open
title: Ctrl-C will exit out of Python interpreter in Windows
type: behavior
versions: Python 3.0

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1700288] Armin's method cache optimization updated for Python 2.6

2007-12-20 Thread Raymond Hettinger

Raymond Hettinger added the comment:

Okay, this patch is accepted.  We'll likely do additional tweaks after
it goes in.

Please close the other tracker items for this same issue.

If no one applies this, I'll do it when I return from the holidays.

--
resolution:  -> accepted

_
Tracker <[EMAIL PROTECTED]>

_
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1676] Fork/exec issues with Tk 8.5/Python 2.5.1 on OS X

2007-12-20 Thread Kevin Walzer

New submission from Kevin Walzer:

I've just updated to Tk 8.5 on OS X (Leopard, 10.5.1) and have rebuilt 
Python to link to the new version of Tk. I'm seeing tons of weird error 
messages in my logs when I run IDLE:

12/20/07 8:18:46 PM [0x0-0xa50a5].org.python.IDLE[1300] Break on 
__THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTION
ALITY___YOU_MUST_EXEC__() to debug. 
12/20/07 8:18:46 PM [0x0-0xa50a5].org.python.IDLE[1300] The process has 
forked and you cannot use this CoreFoundation functionality safely. You 
MUST exec(). 

I'm not sure if this is a showstopper bug or not, but I'm a bit 
concerned about all these error messages. Can someone investigate?

--
components: Tkinter
messages: 58931
nosy: wordtech
severity: normal
status: open
title: Fork/exec issues with Tk 8.5/Python 2.5.1 on OS X
type: behavior
versions: Python 2.5

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1666] integer subclass range behavior

2007-12-20 Thread Martin v. Löwis

Martin v. Löwis added the comment:

As of r59585, _PyLong_FitsInLong() is no longer.

--
resolution:  -> fixed
status: open -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1609] test_re.py fails

2007-12-20 Thread Ismail Donmez

Ismail Donmez added the comment:

Tried like ,

unicode("iii").encode("iso-8859-9").upper()

doesn't work, I'll ask on python users list. Thanks.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1609] test_re.py fails

2007-12-20 Thread Martin v. Löwis

Martin v. Löwis added the comment:

> print "".encode("iso-8859-9").upper().decode("iso-8859-9")
> does not

Please get your types right. "" is a byte string (in Python 2.x).
encode: unicode -> string
decode: string -> unicode

That you still can apply .encode to the byte string is a bug/pit fall in
Python 2.x, which gets fixed in 3.x (by only supporting .encode on the
unicode type).

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1675] Race condition in os.makedirs

2007-12-20 Thread Isaac Morland

Isaac Morland added the comment:

Yes, I'm really combining two things here - the race condition, which I
argue is a (minor) bug, and a feature request to be able to "ensure
exists" a directory.

I have not produced a proper Python patch before and I have other things
to do so this will take longer than one might hope, but I would be happy
to create a patch.  Note too that the file I uploaded is from my
project; I will attempt to make the patch be more appropriate for the
standard library than an extract from my project.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1675] Race condition in os.makedirs

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

Can you rephrase this as svn diff output?

Also, mkdir() is a confusing name for the helper -- I'd call it
forgiving_mkdir() or something like that.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1675] Race condition in os.makedirs

2007-12-20 Thread Isaac Morland

Changes by Isaac Morland:


Added file: http://bugs.python.org/file9016/makedirs.py

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1675] Race condition in os.makedirs

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

I think we can fix this as follows: whenever it calls os.mkdir() and an
error is returned, check if that is EISDIR or EEXISTS, and if so, check
that indeed it now exists as a directory, and then ignore the error.

Moreover, I'd like to do this for the ultimate path to be created as
well, so that os.makedirs() will succeed instead of
failing.  This would make the common usage pattern much simpler.

I think it should still fail if the path exists as a file though.  (Or
as a symlink to a file.)

Patch welcome!

I think this is a feature request and hence should only be fixed in 2.6.

--
nosy: +gvanrossum
priority:  -> low

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue766910] fix one or two bugs in trace.py

2007-12-20 Thread Isaac Morland

Isaac Morland added the comment:

I would suggest that the need to create directories that may already
exist (really "ensure existence of" directories) is not exclusive to
trace.py.  I am suggesting this be added as an option to os.mkdir and
os.makedirs.  See Issue 1675.

--
nosy: +ijmorlan


Tracker <[EMAIL PROTECTED]>


___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1675] Race condition in os.makedirs

2007-12-20 Thread Isaac Morland

Isaac Morland added the comment:

The only thing I found in the bug database concerning os.makedirs was
Issue 766910 (http://bugs.python.org/issue766910).  I realized
os.makedirs had a race condition because in my application I want to
create directories but it's perfectly fine if they already exist.  This
is exactly what trace.py in Issue 766910 seems to need.

I started writing my own, which was basically just os.makedirs but
calling my own version of os.mkdir which didn't worry about
already-existing directories, but realized that wouldn't work. 
Eventually I ended up with the routines I've put in the attached
makedirs.py.

I think os.makedirs can be fixed by making what is now its recursive
call instead call my version of makedirs.  I also think both my mkdir
and my makedirs should be present in the standard library as well as the
existing versions.  Possibly this could be done by adding a flag to the
existing versions, defaulted to obtain the current behaviour.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1657] [patch] epoll and kqueue wrappers for the select module

2007-12-20 Thread Christian Heimes

Christian Heimes added the comment:

> Some remarks:
>  * the name of the function used for PyArg_ParseTupleAndKeywords in
> register, modify, unregister is set to control instead of the good name.

Fixed

>  * there is a leak in pyepoll_new if the parsing of arguments fails.

Fixed

>  * the indentation is sometimes tabs, sometimes spaces. That should be
> good to unify this (to tabs I guess, since the select module used tabs
> before).

Fixed except for switch() and goto. I find the 4 space indention of the
case and the goto lables easier to read.

>  * it seems there is an unrelated change in sunau.py

Fixed

>  * I don't think the stdlib unittest module has skip support. You have
> to find another way to skip the tests if the modules aren't present.

Fixed ;)

> I've been able to port the epollreactor to your implementation and run
> the whole twisted tests with it, so I don't think there are outstanding
> problems. The code is fairly simple anyway.
> 
> That's it for epoll and general remarks. I'll look at kqueue asap. Thanks!

Thansk for the code review and your remarks. I've fixed the problems
locally. I've also fixed a problem in unregister when fd is already
closed and I'm using PyFile_AsFileDescriptor(). It supports ints and
objects with a fileno() method.

I'm waiting for your test of kqueue before I upload the patch.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1675] Race condition in os.makedirs

2007-12-20 Thread Raghuram Devarakonda

Raghuram Devarakonda added the comment:

I don't think os.makedirs() can do anything here. It should be caller's
responsibility to check for this kind of issues.

--
nosy: +draghuram

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1675] Race condition in os.makedirs

2007-12-20 Thread Isaac Morland

New submission from Isaac Morland:

There appears to be a race condition in os.makedirs.  Suppose two
processes simultaneously try to create two different directories with a
common non-existent ancestor.  For example process 1 tries to create
"a/b" and process 2 tries to create "a/c".  They both check that "a"
does not exist, then both invoke makedirs on "a".  One of these will
throw OSError (due to the underlying EEXIST system error), and this
exception will be propagated.  Note that this happens even though the
two processes are trying to create two different directories and so one
would not expect either to report a problem with the directory already
existing.

--
messages: 58919
nosy: ijmorlan
severity: minor
status: open
title: Race condition in os.makedirs
type: behavior
versions: Python 2.5

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1669] shutil.rmtree fails on symlink, after deleting contents

2007-12-20 Thread Raghuram Devarakonda

Raghuram Devarakonda added the comment:

Index: Lib/shutil.py
===
--- Lib/shutil.py   (revision 59581)
+++ Lib/shutil.py   (working copy)
@@ -156,6 +156,16 @@
 elif onerror is None:
 def onerror(*args):
 raise
+
+try:
+if os.path.islink(path):
+if ignore_errors:
+return
+else:
+raise IOError('path can not be symbolic link')
+except IOError, err:
+onerror(os.path.islink, path, sys.exc_info())
+
 names = []
 try:
 names = os.listdir(path)
---

How does this look? The error handling is slightly different for this
case because it can not continue if 'ignore_errors' is True. I will
update the doc if the code change is ok.

On Dec 20, 2007 12:43 PM, Guido van Rossum <[EMAIL PROTECTED]> wrote:
>
> Guido van Rossum added the comment:
>
> Thanks for the patch. I think it should raise IOError, not ValueError,
> and it should use the onerror() handling used for all other errors.
> Also, can you include an update for the docs in the Doc tree?
>
>
> __
> Tracker <[EMAIL PROTECTED]>
> 
> __
>

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Joseph Armbruster

Joseph Armbruster added the comment:

Looks good :-)

Python 3.0a2 (py3k:59579M, Dec 20 2007, 08:46:46) [MSC v.1500 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> license()
A. HISTORY OF THE SOFTWARE
==

Python was created in the early 1990s by Guido van Rossum at Stichting
Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands
as a successor of a language called ABC.  Guido remains Python's
principal author, although it includes many contributions from others.

In 1995, Guido continued his work on Python at the Corporation for
National Research Initiatives (CNRI, see http://www.cnri.reston.va.us)
in Reston, Virginia where he released several versions of the
software.

In May 2000, Guido and the Python core development team moved to
BeOpen.com to form the BeOpen PythonLabs team.  In October of the same
year, the PythonLabs team moved to Digital Creations (now Zope
Corporation, see http://www.zope.com).  In 2001, the Python Software
Foundation (PSF, see http://www.python.org/psf/) was formed, a
non-profit organization created specifically to own Python-related
Intellectual Property.  Zope Corporation is a sponsoring member of
the PSF.

All Python releases are Open Source (see http://www.opensource.org for
Hit Return for more, or q (and Return) to quit:
the Open Source Definition).  Historically, most, but not all, Python
releases have also been GPL-compatible; the table below summarizes
the various releases.

Release Derived YearOwner   GPL-
fromcompatible? (1)

0.9.0 thru 1.2  1991-1995   CWI yes
1.3 thru 1.5.2  1.2 1995-1999   CNRIyes
1.6 1.5.2   2000CNRIno
2.0 1.6 2000BeOpen.com  no
1.6.1   1.6 2001CNRIyes (2)
2.1 2.0+1.6.1   2001PSF no
2.0.1   2.0+1.6.1   2001PSF yes
2.1.1   2.1+2.0.1   2001PSF yes
2.2 2.1.1   2001PSF yes
2.1.2   2.1.1   2002PSF yes
2.1.3   2.1.2   2002PSF yes
2.2.1   2.2 2002PSF yes
2.2.2   2.2.1   2002PSF yes
2.2.3   2.2.2   2003PSF yes
2.3 2.2.2   2002-2003   PSF yes
2.3.1   2.3 2002-2003   PSF yes
Hit Return for more, or q (and Return) to quit: yay
Hit Return for more, or q (and Return) to quit: q
>>>

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

Ah d'oh!

The 3.0 code was wrong.  I've fixed it now in SVN by going back to input()

Committed revision 59583.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1665] re.match.func_code.co_filename returns "re.py"

2007-12-20 Thread thekorn

thekorn added the comment:

Thanks a lot, this works.

Markus

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1657] [patch] epoll and kqueue wrappers for the select module

2007-12-20 Thread Thomas Herve

Thomas Herve added the comment:

Some remarks:
 * the name of the function used for PyArg_ParseTupleAndKeywords in
register, modify, unregister is set to control instead of the good name.
 * there is a leak in pyepoll_new if the parsing of arguments fails.
 * the indentation is sometimes tabs, sometimes spaces. That should be
good to unify this (to tabs I guess, since the select module used tabs
before).
 * it seems there is an unrelated change in sunau.py
 * I don't think the stdlib unittest module has skip support. You have
to find another way to skip the tests if the modules aren't present.

I've been able to port the epollreactor to your implementation and run
the whole twisted tests with it, so I don't think there are outstanding
problems. The code is fairly simple anyway.

That's it for epoll and general remarks. I'll look at kqueue asap. Thanks!

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Joseph Armbruster

Joseph Armbruster added the comment:

Ok, just did as so:

sys.stdout.write(prompt)
sys.stdout.flush()
key = sys.stdin.readline()
print(repr(key))
print(len(key))
if key not in ('', 'q'):

Results:

All Python releases are Open Source (see http://www.opensource.org for
Hit Return for more, or q (and Return) to quit:
'\n'
1
Hit Return for more, or q (and Return) to quit: q
'q\n'
2

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

> >>> import sys
> >>> x = input()
> Hi:
> >>> repr(x)
> "'Hi:'"
> >>> x = sys.stdin.readline()
> Hi:
> >>> repr(x)
> "'Hi:\\n'"

Hm, that works as expected (except I meant "Hi:" to be the prompt, but
that's okay :-). Why doesn't it inside license()? Can you put a "print
repr(key)" in the site.py code right after the input() call?

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Joseph Armbruster

Joseph Armbruster added the comment:

>>> import sys
>>> x = input()
Hi:
>>> repr(x)
"'Hi:'"
>>> x = sys.stdin.readline()
Hi:
>>> repr(x)
"'Hi:\\n'"

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

> >>> len(x)

Please print repr(x). That should be safe even if it contains control
characters.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Joseph Armbruster

Joseph Armbruster added the comment:

Here's the results, i'll look into it briefly.

>>> import sys
>>> x = input()
Hi:
>>> len(x)
3
>>> x = sys.stdin.readline()
Hi:
>>> len(x)
4

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1669] shutil.rmtree fails on symlink, after deleting contents

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

Thanks for the patch. I think it should raise IOError, not ValueError,
and it should use the onerror() handling used for all other errors.
Also, can you include an update for the docs in the Doc tree?

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

Very odd.  Can you experiment with input() and sys.stdin.readline() to
see what exactly gets returned? It seems that somehow the CRLF -> LF
translation isn't working, and that should be fixed somewhere else,
not in license().

I imagine you could just do this:

Hi: 
'\r'
>>>

It should return '' but I think you will see '\r'. I'd like to see
someone else with access to Windows confirm this though.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1672] test_subprocess tempfile issue

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

Fixed in 2.6.
Committed revision 59582.
3.0 will follow at the next merge.

--
keywords: +patch
nosy: +gvanrossum
resolution:  -> accepted
status: open -> closed
versions: +Python 2.6 -Python 3.0

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1674] pythonw.exe crashes when run in one particular account on Windows XP Pro

2007-12-20 Thread Eric Moyer

Eric Moyer added the comment:

I tried rolling back the computer and installing it on my normal account
with added super-user privileges and though the install succeeded, I
still couldn't run it.  However, the normal super-user could run it just
fine.

Looks like this is some weird misconfiguration on my normal account. 
I'd delete this report if I could now, because it looks like this bug
will be irreproducible.

--
title: pythonw.exe crashes when run as non-installer on Windows XP Pro -> 
pythonw.exe crashes when run in one particular account on Windows XP Pro

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1669] shutil.rmtree fails on symlink, after deleting contents

2007-12-20 Thread Raghuram Devarakonda

Raghuram Devarakonda added the comment:

I am ok with disallowing symlinks in rmtree() because if it were to be
allowed, the semantics are not clear. In addition, neither 'rmdir' nor
'rm -rf' delete the target directory. 

The attached patch would raise error if symbolic link is passed to
rmtree. Even though there is a parameter 'ignore_errors", I don't think
it should be used in suppressing symbolic link error. Comments?

Added file: http://bugs.python.org/file9015/rmtree.diff

__
Tracker <[EMAIL PROTECTED]>

__Index: Lib/shutil.py
===
--- Lib/shutil.py	(revision 59581)
+++ Lib/shutil.py	(working copy)
@@ -140,7 +140,8 @@
 raise Error, errors
 
 def rmtree(path, ignore_errors=False, onerror=None):
-"""Recursively delete a directory tree.
+"""Recursively delete a directory tree. Fail if path is symbolic
+link.
 
 If ignore_errors is set, errors are ignored; otherwise, if onerror
 is set, it is called to handle the error with arguments (func,
@@ -150,6 +151,10 @@
 is false and onerror is None, an exception is raised.
 
 """
+
+if os.path.islink(path):
+raise ValueError('path can not be symbolic link')
+
 if ignore_errors:
 def onerror(*args):
 pass
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1669] shutil.rmtree fails on symlink, after deleting contents

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

I agree with Tesiph, more useful behavior would be to raise an error
immediately because the argument is not a directory. If you wanted to
remove the think linked to, you could use rmtree("foo/.",
ignore_errors=True).

--
nosy: +gvanrossum

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1668] -E command line parameter intent

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

I believe its original intent was to only ignore variables starting with
PYTHON, but I'm not 100% sure.  Ignoring PATH seems counterintuitive. 
I'm not sure about THREADDEBUG -- I'm thinking that variable should be
renamed PYTHONTHREADDEBUG?

BTW, doesn't this apply to 2.6 as well?

--
keywords: +patch
nosy: +gvanrossum

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1674] pythonw.exe crashes when run as non-installer on Windows XP Pro

2007-12-20 Thread Eric Moyer

Eric Moyer added the comment:

I tried adding my normal account to the administrators group and that
did not fix the problem.

And my system:
I am running fully patched Windows XP professional SP 2 on a Presario
V2000 (AMD Turion 64 ML-37 with 480 MB ram (the other 32 MB RAM is used
by the video card))

--
title: pythonw.exe crashes when run as non-administrator on Windows XP Pro -> 
pythonw.exe crashes when run as non-installer on Windows XP Pro

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1669] shutil.rmtree fails on symlink, after deleting contents

2007-12-20 Thread Tim Koopman

Tim Koopman added the comment:

> While we are removing the contents of the target directory as expected,

This is not what I expected at all. I expected the function to fail,
because the target was not a directory, just a symlink to a directory.
That, or behavior similar to the command "rm -rf" which only removes the
symlink, but not the contents.

The current behavior is in my opinion inconsistent; if the symlink is
treated as a normal directory, it should also get deleted.

As I said, if the current behavior is apparently expected, it should be
documented, because I can think of no program that follow symlinks while
deleting unless specifically instructed to.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Joseph Armbruster

Joseph Armbruster added the comment:

Here are two examples of why I created this issue:

example 1: that is the output I received when pressing Return 5 times
using license()

python
Python 3.0a2 (py3k:59579M, Dec 20 2007, 08:46:46) [MSC v.1500 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> license()
A. HISTORY OF THE SOFTWARE
==

Python was created in the early 1990s by Guido van Rossum at Stichting
Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands
as a successor of a language called ABC.  Guido remains Python's
principal author, although it includes many contributions from others.

In 1995, Guido continued his work on Python at the Corporation for
National Research Initiatives (CNRI, see http://www.cnri.reston.va.us)
in Reston, Virginia where he released several versions of the
software.

In May 2000, Guido and the Python core development team moved to
BeOpen.com to form the BeOpen PythonLabs team.  In October of the same
year, the PythonLabs team moved to Digital Creations (now Zope
Corporation, see http://www.zope.com).  In 2001, the Python Software
Foundation (PSF, see http://www.python.org/psf/) was formed, a
non-profit organization created specifically to own Python-related
Intellectual Property.  Zope Corporation is a sponsoring member of
the PSF.

All Python releases are Open Source (see http://www.opensource.org for
Hit Return for more, or q (and Return) to quit:
Hit Return for more, or q (and Return) to quit:
Hit Return for more, or q (and Return) to quit:
Hit Return for more, or q (and Return) to quit:
Hit Return for more, or q (and Return) to quit:


example 2: this is the output i received when pressing return two times,
q then return two times

D:\work\py3ktrunk\PCbuild9>python
Python 3.0a2 (py3k:59579M, Dec 20 2007, 08:46:46) [MSC v.1500 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> license()
A. HISTORY OF THE SOFTWARE
==

Python was created in the early 1990s by Guido van Rossum at Stichting
Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands
as a successor of a language called ABC.  Guido remains Python's
principal author, although it includes many contributions from others.

In 1995, Guido continued his work on Python at the Corporation for
National Research Initiatives (CNRI, see http://www.cnri.reston.va.us)
in Reston, Virginia where he released several versions of the
software.

In May 2000, Guido and the Python core development team moved to
BeOpen.com to form the BeOpen PythonLabs team.  In October of the same
year, the PythonLabs team moved to Digital Creations (now Zope
Corporation, see http://www.zope.com).  In 2001, the Python Software
Foundation (PSF, see http://www.python.org/psf/) was formed, a
non-profit organization created specifically to own Python-related
Intellectual Property.  Zope Corporation is a sponsoring member of
the PSF.

All Python releases are Open Source (see http://www.opensource.org for
Hit Return for more, or q (and Return) to quit:
Hit Return for more, or q (and Return) to quit:
Hit Return for more, or q (and Return) to quit: q
Hit Return for more, or q (and Return) to quit:
Hit Return for more, or q (and Return) to quit:

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1667] license() does not process keyboard input correctly

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

I think you misunderstand raw_input().  It just returns
sys.stdin.readline().rstrip("\n").  I don't think it's worth fixing. 
The 'q' processing works fine as long as you didn't type \r first. :-)

--
nosy: +gvanrossum
resolution:  -> wont fix
status: open -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1671] "World" tool ported to py3k

2007-12-20 Thread Quentin Gallet-Gilles

Quentin Gallet-Gilles added the comment:

That was quick, thanks!

I'll make sure to remember that sorted() and keys() aren't needed together.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1674] pythonw.exe crashes when run as non-administrator on Windows XP Pro

2007-12-20 Thread Eric Moyer

New submission from Eric Moyer:

I installed the python-2.5.1.msi stable package from the python.org
website using a super-user account on my system.  I installed "for all
users" and used the default location and chose to install everything,
not omitting any component.

After installation, I moved the startup menu folder to be a sub-menu of
my Programming startup menu folder.  Then I ran IDLE and typed in a few
recipes from the itertools package to ensure that everything worked. 
Then I logged out and logged back in with my normal user account.  In my
normal account, the three startup menu items "IDLE (Python GUI)",
"Module Docs", and "Python (command line)" all crash.  The first two
crash with a window titled "pythonw.exe - Application Error".  The last
one opens an empty command prompt window before dying with a window
titled "python.exe - Application Error".  All the error windows have the
text, "The application failed to initialize properly (0xc022). Click
on OK to terminate the application"

Since it works when I am logged in as an administrator, my guess is that
the error has something to do with windows security.

--
components: IDLE, Installation, Interpreter Core, Windows
messages: 58896
nosy: Mr.E
severity: major
status: open
title: pythonw.exe crashes when run as non-administrator on Windows XP Pro
type: crash
versions: Python 2.5

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1671] "World" tool ported to py3k

2007-12-20 Thread Barry A. Warsaw

Barry A. Warsaw added the comment:

The change looks good to me, thanks!  I made a minor change to your
patch (i.e. .keys() not needed in sorted()), did some whitespace
normalization, and fixed up the --dump output.  Otherwise, the patch is
quentin's and I've committed it to the tree.

r59581

--
resolution:  -> fixed
status: open -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1623] Implement PEP-3141 for Decimal

2007-12-20 Thread Jeffrey Yasskin

Jeffrey Yasskin added the comment:

Right. Will do.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1328851] pclose raises spurious exception on win32

2007-12-20 Thread Joseph Armbruster

Joseph Armbruster added the comment:

Here's some other quick tests for posterity:

TEST 1 [from a downloaded msi from a while ago]

Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> p = os.popen("net share >> print p.read()
The Server service is not started.

Is it OK to start it? (Y/N) [Y]:

>>> p.close()
Traceback (most recent call last):
  File "", line 1, in 
IOError: [Errno 0] Error
>>>

TEST 2

Python 3.0a2 (py3k:59579M, Dec 20 2007, 08:46:46) [MSC v.1500 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> p = os.popen("net share >> print(p.read())
No valid response was provided.
The Server service is not started.

Is it OK to start it? (Y/N) [Y]:

>>> p.close()
-256

--
nosy: +JosephArmbruster

_
Tracker <[EMAIL PROTECTED]>

_
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1669] shutil.rmtree fails on symlink, after deleting contents

2007-12-20 Thread Raghuram Devarakonda

Raghuram Devarakonda added the comment:

Please try to include stack trace in bug reports. I reproduced the error
on my Linux (SuSE 10). 

marvin:tmp$ ls -l dirlink testdir
lrwxrwxrwx 1 raghu users7 2007-12-20 10:10 dirlink -> testdir/

testdir:
total 0
-rw-r--r-- 1 raghu users 0 2007-12-20 10:36 testfile

shutil.rmtree('dirlink') produces:

--
Traceback (most recent call last):
  File "t.py", line 4, in 
shutil.rmtree('dirlink')
  File "/localhome/raghu/localwork/cpython/python/Lib/shutil.py", line
194, in rmtree
onerror(os.rmdir, path, sys.exc_info())
  File "/localhome/raghu/localwork/cpython/python/Lib/shutil.py", line
192, in rmtree
os.rmdir(path)
OSError: [Errno 20] Not a directory: 'dirlink'
--

While we are removing the contents of the target directory as expected,
the final 'rmdir' fails on removing the symbolic link. For the sake of
consistency, we can explicitly remove the target directory and leave the
symbolic link intact. Is this what you are expecting?

--
nosy: +draghuram

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1670] Threading.Condition.wait is non-iteruptable

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

This can't be fixed directly -- the pthreads mutex is not an
interruptable system call.

However there's a simple (though expensive) work-around: use a very long
timeout. The timeout version of waiting for a lock is a busy-wait with a
short sleep (much less than a second I recall), and it is interruptable
while sleeping.

Only do this when it's really important to be interruptable -- the
busy-waiting makes your code use up battery power (see #1583).

--
nosy: +gvanrossum
resolution:  -> wont fix
status: open -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1609] test_re.py fails

2007-12-20 Thread Ismail Donmez

Ismail Donmez added the comment:

I guess so, I will no longer spam this bug. Thanks for the suggestions.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1671] "World" tool ported to py3k

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

Maybe the original author (Barry Warsaw) can review this?

--
assignee:  -> barry
nosy: +barry, gvanrossum

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1609] test_re.py fails

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

> Funnily,
>
> print "".encode("iso-8859-9").decode("iso-8859-9").upper()
>
> works, but
>
> print "".encode("iso-8859-9").upper().decode("iso-8859-9")
>
> not.

You'll have to debug this yourself.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1609] test_re.py fails

2007-12-20 Thread Ismail Donmez

Ismail Donmez added the comment:

Funnily,

print "".encode("iso-8859-9").decode("iso-8859-9").upper()

works, but

print "".encode("iso-8859-9").upper().decode("iso-8859-9")

not.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1623] Implement PEP-3141 for Decimal

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

If there aren't too many differences between the 2.6 and 3.0 version of
decimal.py and your patch, do 2.6 first, then the next time we merge
stuff into 3.0 from the trunk it'll be forward-ported automatically.

Though you'd have to start by backporting *numbers.py first.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1646] Make socket support TIPC.

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

Tickle the interest of one of the many folks with commit privileges. 
Since 2.6 isn't going to be released for months there's no great hurry,
but waiting until the last minute would be a mistake.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1609] test_re.py fails

2007-12-20 Thread Guido van Rossum

Guido van Rossum added the comment:

Two easy ways to get the functionality using 8-bit strings, assuming
you've already set your locale properly:

(1) If your data is already an 8-bit string (i.e. isinstance(data,
str)), simply use data.upper() or data.lower()

(2) If your data is Unicode (i.e. isinstance(data, unicode)), convert to
8-bit using encode, apply upper/lower, and convert back to unicode. 
E.g. data.encode("Latin-1").upper().decode("Latin-1").  (I don't know
which encoding to use though -- So substitute whatever you have for
Latin-1, but don't use UTF-8.)

PS Martin: the 2.4/2.5 differences were caused by Cartman having hacked
his 2.4 installation to change the default encoding.

--
resolution:  -> invalid
status: open -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1671] "World" tool ported to py3k

2007-12-20 Thread Quentin Gallet-Gilles

Quentin Gallet-Gilles added the comment:

You're welcome :-)

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1673] test_pep277 fails

2007-12-20 Thread Joseph Armbruster

Joseph Armbruster added the comment:

and.. after performing an svn update :-)

rt test_pep277
Deleting .pyc/.pyo files ...
36 .pyc deleted, 0 .pyo deleted

python  -E -tt ../lib/test/regrtest.py test_pep277
test_pep277
1 test OK.
About to run again without deleting .pyc/.pyo first:
Press any key to continue . . .
Terminate batch job (Y/N)? y

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1671] "World" tool ported to py3k

2007-12-20 Thread Christian Heimes

Christian Heimes added the comment:

Thx :)

--
keywords: +patch, py3k
nosy: +tiran
priority:  -> normal

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1673] test_pep277 fails

2007-12-20 Thread Joseph Armbruster

Joseph Armbruster added the comment:

I used str( instead of unicode(

python  -E -tt ../lib/test/regrtest.py test_pep277

test_pep277
1 test OK.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1673] test_pep277 fails

2007-12-20 Thread Christian Heimes

Christian Heimes added the comment:

Fixed in r59580
Please test it, I don't have access to a Windows box right now.

--
nosy: +tiran
resolution:  -> fixed
status: open -> pending

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1673] test_pep277 fails

2007-12-20 Thread Joseph Armbruster

Changes by Joseph Armbruster:


--
title: test_pep277 missing unicode import -> test_pep277 fails

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1673] test_pep277 missing unicode import

2007-12-20 Thread Joseph Armbruster

Joseph Armbruster added the comment:

had to rush this one as i'm at work right now and did not verify it.
disregard that patch!

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1673] test_pep277 missing unicode import

2007-12-20 Thread Joseph Armbruster

New submission from Joseph Armbruster:

test_pep277 failed on one of my windows boxes.  It looks as if an import
unicode is missing.

See attached patch.

--
components: Tests
files: testpep277.patch
messages: 58876
nosy: JosephArmbruster
severity: normal
status: open
title: test_pep277 missing unicode import
versions: Python 3.0
Added file: http://bugs.python.org/file9013/testpep277.patch

__
Tracker <[EMAIL PROTECTED]>

__Index: Lib/test/test_pep277.py
===
--- Lib/test/test_pep277.py	(revision 59579)
+++ Lib/test/test_pep277.py	(working copy)
@@ -1,6 +1,6 @@
 # Test the Unicode versions of normal file functions
 # open, os.open, os.stat. os.listdir, os.rename, os.remove, os.mkdir, os.chdir, os.rmdir
-import sys, os, unittest
+import sys, os, unittest, unicode
 from test import test_support
 if not os.path.supports_unicode_filenames:
 raise test_support.TestSkipped("test works only on NT+")
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1672] test_subprocess tempfile issue

2007-12-20 Thread Joseph Armbruster

New submission from Joseph Armbruster:

Subprocess contains a minor temporary file getter that failed in one of
my terminals due to the method used to obtain a temporary directory
location.

Patch attached.

--
components: Tests
files: subprocess.patch
messages: 58875
nosy: JosephArmbruster
severity: minor
status: open
title: test_subprocess tempfile issue
versions: Python 3.0
Added file: http://bugs.python.org/file9012/subprocess.patch

__
Tracker <[EMAIL PROTECTED]>

__Index: Lib/test/test_subprocess.py
===
--- Lib/test/test_subprocess.py	(revision 59579)
+++ Lib/test/test_subprocess.py	(working copy)
@@ -242,7 +242,7 @@
 self.assertEquals(rc, 2)
 
 def test_cwd(self):
-tmpdir = os.getenv("TEMP", "/tmp")
+tmpdir = tempfile.gettempdir()
 # We cannot use os.path.realpath to canonicalize the path,
 # since it doesn't expand Tru64 {memb} strings. See bug 1063571.
 cwd = os.getcwd()
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1665] re.match.func_code.co_filename returns "re.py"

2007-12-20 Thread Georg Brandl

Changes by Georg Brandl:


--
status: pending -> closed
versions: +3rd party -Python 2.5

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1671] "World" tool ported to py3k

2007-12-20 Thread Quentin Gallet-Gilles

New submission from Quentin Gallet-Gilles:

The title says it all.

I also updated the country codes and other TLDs as things have evolved a
bit since 2002.

--
components: Demos and Tools
files: world_tool.patch
messages: 58874
nosy: quentin.gallet-gilles
severity: normal
status: open
title: "World" tool ported to py3k
versions: Python 3.0
Added file: http://bugs.python.org/file9011/world_tool.patch

__
Tracker <[EMAIL PROTECTED]>

__Index: Tools/world/world
===
--- Tools/world/world	(révision 59567)
+++ Tools/world/world	(copie de travail)
@@ -42,7 +42,7 @@
 
 The latest known change to this information was:
 
-Friday, 5 April 2002, 12.00 CET 2002
+Monday, 10 October 2006, 17:59:51 UTC 2006
 
 This script also knows about non-geographic top-level domains, and the
 additional ccTLDs reserved by IANA.
@@ -91,9 +91,9 @@
 
 
 def usage(code, msg=''):
-print __doc__ % globals()
+print(__doc__ % globals())
 if msg:
-print msg
+print(msg)
 sys.exit(code)
 
 
@@ -104,11 +104,11 @@
 # no top level domain found, bounce it to the next step
 return rawaddr
 addr = parts[-1]
-if nameorgs.has_key(addr):
-print rawaddr, 'is in the', nameorgs[addr], 'top level domain'
+if addr in nameorgs:
+print(rawaddr, 'is in the', nameorgs[addr], 'top level domain')
 return None
-elif countries.has_key(addr):
-print rawaddr, 'originated from', countries[addr]
+elif addr in countries:
+print(rawaddr, 'originated from', countries[addr])
 return None
 else:
 # Not resolved, bounce it to the next step
@@ -129,11 +129,11 @@
 return regexp
 if len(matches) == 1:
 code = matches[0]
-print regexp, "matches code `%s', %s" % (code, all[code])
+print(regexp, "matches code `%s', %s" % (code, all[code]))
 else:
-print regexp, 'matches %d countries:' % len(matches)
+print(regexp, 'matches %d countries:' % len(matches))
 for code in matches:
-print "%s: %s" % (code, all[code])
+print("%s: %s" % (code, all[code]))
 return None
 
 
@@ -141,14 +141,16 @@
 def parse(file, normalize):
 try:
 fp = open(file)
-except IOError, (err, msg):
-print msg, ':', file
+except IOError as err:
+errno, msg = err.args
+print(msg, ':', file)
+return
 
 cre = re.compile('(.*?)[ \t]+([A-Z]{2})[ \t]+[A-Z]{3}[ \t]+[0-9]{3}')
 scanning = 0
 
 if normalize:
-print 'countries = {'
+print('countries = {')
 
 while 1:
 line = fp.readline()
@@ -163,7 +165,7 @@
 elif line[0] == '-':
 break
 else:
-print 'Could not parse line:', line
+print('Could not parse line:', line)
 continue
 country, code = mo.group(1, 2)
 if normalize:
@@ -173,30 +175,30 @@
 # XXX special cases
 if w in ('AND', 'OF', 'OF)', 'name:', 'METROPOLITAN'):
 words[i] = w.lower()
-elif w == 'THE' and i <> 1:
+elif w == 'THE' and i != 1:
 words[i] = w.lower()
 elif len(w) > 3 and w[1] == "'":
 words[i] = w[0:3].upper() + w[3:].lower()
 elif w in ('(U.S.)', 'U.S.'):
 pass
-elif w[0] == '(' and w <> '(local':
+elif w[0] == '(' and w != '(local':
 words[i] = '(' + w[1:].capitalize()
-elif w.find('-') <> -1:
+elif w.find('-') != -1:
 words[i] = '-'.join(
 [s.capitalize() for s in w.split('-')])
 else:
 words[i] = w.capitalize()
 code = code.lower()
 country = ' '.join(words)
-print '"%s": "%s",' % (code, country)
+print('"%s": "%s",' % (code, country))
 else:
-print code, country
+print(code, country)
 
 elif line[0] == '-':
 scanning = 1
 
 if normalize:
-print '}'
+print('}')
 
 
 def main():
@@ -212,7 +214,7 @@
 sys.argv[1:],
 'p:rohd',
 ['parse=', 'reverse', 'outputdict', 'help', 'dump'])
-except getopt.error, msg:
+except getopt.error as msg:
 usage(1, msg)
 
 for opt, arg in opts:
@@ -231,17 +233,15 @@
 usage(status)
 
 if dump:
-print 'Non-geographic domains:'
-codes = nameorgs.keys()
-codes.sort()
+print('N

[issue1377] test_import breaks on Linux

2007-12-20 Thread Christian Heimes

Christian Heimes added the comment:

I've removed the disabled test from py3k. There is no chance it is going
to work on all systems.

--
status: open -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1465] building python 2.6 with VC Express 2008 Beta2

2007-12-20 Thread Christian Heimes

Christian Heimes added the comment:

The PCbuild9 directory works for 2.6 and 3.0.

--
resolution:  -> out of date
status: open -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1497] Patch to remove API to create new unbound methods

2007-12-20 Thread Christian Heimes

Christian Heimes added the comment:

Georg, do we need more docs?

--
assignee: tiran -> georg.brandl

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1570] Backport sys.maxsize to Python 2.6

2007-12-20 Thread Christian Heimes

Christian Heimes added the comment:

The GHOP task was a success. Georg will merge the new docs soonish.

--
resolution:  -> fixed
status: open -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1609] test_re.py fails

2007-12-20 Thread Ismail Donmez

Ismail Donmez added the comment:

Hi Martin,

Actually the only problem is how can I get wctype functionality with
8-bit strings, any example is appreciated.

This bug itself is invalid because --with-wctype-functions is
deprecated. But as I said I just hope removing that doesn't regress
Turkish functionality.

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1657] [patch] epoll and kqueue wrappers for the select module

2007-12-20 Thread Christian Heimes

Changes by Christian Heimes:


Added file: http://bugs.python.org/file9010/trunk_select_epoll_kqueue.patch

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1657] [patch] epoll and kqueue wrappers for the select module

2007-12-20 Thread Christian Heimes

Changes by Christian Heimes:


Removed file: http://bugs.python.org/file9009/trunk_select_epoll_kqueue.patch

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1657] [patch] epoll and kqueue wrappers for the select module

2007-12-20 Thread Christian Heimes

Changes by Christian Heimes:


Removed file: http://bugs.python.org/file8999/trunk_select_epoll3.patch

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1663] Modification HTMLParser.py

2007-12-20 Thread Facundo Batista

Facundo Batista added the comment:

This is not a bug, just a comment of a code you did.

If you think that there's actually a problem in HTMLParser.py, tell us
what you do, what you get, and what you expect to get.

When submitting changes, it's very useful to send the diff only, as in a
patch.

Thanks!

--
nosy: +facundobatista
resolution:  -> invalid
status: open -> closed

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1549] Regression with __hash__ definition and rich comparison operators

2007-12-20 Thread Thomas Herve

Thomas Herve added the comment:

Thanks a lot!

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1670] Threading.Condition.wait is non-iteruptable

2007-12-20 Thread Ronald Oussoren

New submission from Ronald Oussoren:

The scriptlet below hangs (as expected) but is also not interuptable by 
Ctrl+C, at least on Linux and Mac OS X:

from Queue import Queue, Empty, Full

q = Queue()
q.get(True)

This is due to Threading.Condition.wait not being interuptable.

--
components: Library (Lib)
messages: 58865
nosy: ronaldoussoren
priority: low
severity: minor
status: open
title: Threading.Condition.wait is non-iteruptable
type: behavior
versions: Python 2.5

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1669] shutil.rmtree fails on symlink, after deleting contents

2007-12-20 Thread Tim Koopman

Changes by Tim Koopman:


--
title: shutils.rmtree fails on symlink, after deleting contents -> 
shutil.rmtree fails on symlink, after deleting contents

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1669] shutils.rmtree fails on symlink, after deleting contents

2007-12-20 Thread Tim Koopman

New submission from Tim Koopman:

When using rmtree with a symlink to a directory as path, it will first
follow the symlink, (try to) remove all the contents of the source
directory and then raise the exception "OSError: [Errno 20] Not a
directory".

Expected behaviour: The function should only raise an exception.

If the current behaviour is indeed wanted, it should a least be documented.

--
components: Library (Lib)
messages: 58864
nosy: Tesiph
severity: normal
status: open
title: shutils.rmtree fails on symlink, after deleting contents
type: behavior
versions: Python 2.5

__
Tracker <[EMAIL PROTECTED]>

__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com