[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

New submission from STINNER Victor:

The failure is minor, it's just a suboptimal code. Calling _run_once() 4 times 
instead of 3.

http://buildbot.python.org/all/builders/x86%20Ubuntu%20Shared%203.x/builds/9630/steps/test/logs/stdio

==
FAIL: test_timeout_rounding (test.test_asyncio.test_events.EPollEventLoopTests)
--
Traceback (most recent call last):
  File 
/srv/buildbot/buildarea/3.x.bolen-ubuntu/build/Lib/test/test_asyncio/test_events.py,
 line 1180, in test_timeout_rounding
self.assertEqual(calls, [1, 3, 5, 6])
AssertionError: Lists differ: [1, 4, 6, 7] != [1, 3, 5, 6]

First differing element 1:
4
3

- [1, 4, 6, 7]
+ [1, 3, 5, 6]



I'm unable to reproduce the error on my Linux box. When we had the rounding 
away from zero in epoll directly, the epoll test failed on the same buildbot:
http://bugs.python.org/issue20311#msg208601

http://buildbot.python.org/all/builders/x86%20Ubuntu%20Shared%203.3/builds/1360/steps/test/logs/stdio

==
FAIL: test_timeout_rounding (test.test_epoll.TestEPoll)
--
Traceback (most recent call last):
  File /srv/buildbot/buildarea/3.3.bolen-ubuntu/build/Lib/test/test_epoll.py, 
line 58, in test_timeout_rounding
self.assertGreaterEqual(dt, timeout)
AssertionError: 0.009388947859406471 not greater than or equal to 0.01

--
components: Tests
messages: 209749
nosy: gvanrossum, haypo
priority: normal
severity: normal
status: open
title: test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x 
buildbot
versions: Python 3.4

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



[issue20451] os.exec* mangles argv on windows (splits on spaces, etc)

2014-01-31 Thread R. David Murray

Changes by R. David Murray rdmur...@bitdance.com:


--
nosy: +r.david.murray

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 5545634d98a1 by Victor Stinner in branch 'default':
Issue #20452: add more info in case of test_asyncio failure to try to debug the
http://hg.python.org/cpython/rev/5545634d98a1

--
nosy: +python-dev

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

_run_once() can be called more than expected if selector.select() was 
interrupted by a signal or because the granularity is wrong. If we want to 
avoid that, a simple fix is just to loop again in this case. Attached patch 
implements that (I wrote it for Tulip, it cannot applied cleanly on Python 
because I added debug code to investigate this issue).

The patch should also fix the sporadic issue of signal interrupting 
_run_once(). The unit test should not be interrupted by a signal, but it can 
occur on a real application. For example when your resize a terminal.

--
keywords: +patch
Added file: http://bugs.python.org/file33821/loop_run_once.patch

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



[issue20406] Use application icon for IDLE

2014-01-31 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Yes, the default option of wm_iconbitmap works only on Windows. Does 
wm_iconbitmap affect taskbar icon and icon used in task switching?

Here is a patch which supports also X11 systems. I'm nor sure about Mac.

--
Added file: http://bugs.python.org/file33822/idle_appicon_2.patch

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



[issue20406] Use application icon for IDLE

2014-01-31 Thread Serhiy Storchaka

Changes by Serhiy Storchaka storch...@gmail.com:


Removed file: http://bugs.python.org/file33822/idle_appicon_2.patch

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



[issue20406] Use application icon for IDLE

2014-01-31 Thread Serhiy Storchaka

Changes by Serhiy Storchaka storch...@gmail.com:


Added file: http://bugs.python.org/file33823/idle_appicon_2.patch

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



[issue20406] Use application icon for IDLE

2014-01-31 Thread Terry J. Reedy

Terry J. Reedy added the comment:

Yes, 'works' means displayed for title bar and task switching.

Related but separate issue. A TreeWidget used for browsing files uses the old 
python.gif icon for .py files. I think we should switch to the modern one that 
you uploaded as python_16x16.gif. Agree?

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 83e110399f3c by Victor Stinner in branch 'default':
Issue #20452: Oops, fix debug code :-/
http://hg.python.org/cpython/rev/83e110399f3c

--

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



[issue20453] json.load() error message changed in 3.4

2014-01-31 Thread Barry A. Warsaw

New submission from Barry A. Warsaw:

Run the attached file under Python 3.3 and you get:

No JSON object could be decoded

Run the same file under Python 3.4 and you get:

Expecting value: line 1 column 1 (char 0)

So a couple of things:

Since the error message changed, it makes it difficult to test in doctest and 
other text-based matches.  I'm also not sure the new message is better.  
Objectively speaking, probably both error messages are useful (i.e. that no 
json object was found, and where the problem was found).  I think the second 
message by itself is pretty mysterious.

I want to make sure the change was deliberate.  I couldn't find anything in 
Misc/NEWS which might not be entirely unexpected since specific error messages 
aren't generally a part of the guaranteed API.  Perhaps at the least, if the 
change was deliberate, let's document it in Misc/NEWS.

--
files: foo.py
messages: 209755
nosy: barry
priority: normal
severity: normal
status: open
title: json.load() error message changed in 3.4
versions: Python 3.4
Added file: http://bugs.python.org/file33824/foo.py

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



[issue20406] Use application icon for IDLE

2014-01-31 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

 Related but separate issue. A TreeWidget used for browsing files uses the
 old python.gif icon for .py files. I think we should switch to the modern
 one that you uploaded as python_16x16.gif. Agree?

Agree.

As for 2.7, we can use

root.tk.call('wm', 'iconphoto', str(root), -default, *icons)

In Ubuntu (and perhaps other Linux distributives), just main Python logo (as 
in favicon) is used as IDLE desktop icon. May be we should discuss IDLE icon 
and logo (which can be shown in the About window) on Python-Dev.

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

It looks like select() and poll() in Linux  2.6.28 has a resolution of 1/HZ, 
where HZ can be retrieved from os.sysconf('SC_CLK_TCK'). Since Linux 2.6.28, 
hrtimers are now used for timeouts.

High- (but not too high-) resolution timeouts
http://lwn.net/Articles/296578/

What's in hrtimer.git for 2.6.28
https://lkml.org/lkml/2008/9/20/136

Attached patch improves the resolution field of selectors.BaseSelector.

By the way, resolution should be a method (selector.resolution()) rather than a 
property, because we may query the kernel to compute the resolution, as shown 
in the patch.

--
Added file: http://bugs.python.org/file33825/selector_resolution.patch

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

Platform of x86 Ubuntu Shared 3.x buildbot: 
Linux-2.6.31.5-linode21-i686-with-debian-lenny-sid little-endian, so a Linux 
kernel 2.6.31.

It looks common on this buildbot that selector.select(timeout) takes less 
timeout seconds (without returning any event). dt+granularity  timeout test 
is False and so _run_once() does nothing, a new call is required.

Debug output of test_asyncio on x86 Ubuntu Shared 3.x (build 9632, 
test_asyncio passed):
---
[ 75/389] test_asyncio
WARNING: selector.select(timeout=0.09994344785809516907) took 
dt=0.09897190984338521957 sec (dt-timeout=-0.00097153801470994949)
WARNING: dt+0.0012  timeout? True
WARNING: selector.select(timeout=0.09991932008415460587) took 
dt=0.09855401515960693359 sec (dt-timeout=-0.00136530492454767227)
WARNING: dt+0.0012  timeout? False
WARNING: selector.select(timeout=0.00097305513918399811) took 
dt=0.2539902925491333 sec (dt-timeout=-0.00094765610992908478)
WARNING: dt+0.0012  timeout? True
WARNING: selector.select(timeout=0.49995081406086683273) took 
dt=0.10032826289534568787 sec (dt-timeout=-0.39962255116552114487)
WARNING: dt+0.0012  timeout? False
WARNING: selector.select(timeout=0.39888287801295518875) took 
dt=0.39831575006246566772 sec (dt-timeout=-0.00056712795048952103)
WARNING: dt+0.0012  timeout? True
WARNING: selector.select(timeout=None) took dt=0.01029967889189720154 sec
WARNING: selector.select(timeout=None) took dt=0.07110145408660173416 sec
WARNING: selector.select(timeout=None) took dt=0.00214391853660345078 sec
WARNING: selector.select(timeout=None) took dt=0.00361407827585935593 sec
WARNING: selector.select(timeout=0.00991696026176214218) took 
dt=0.00975166168063879013 sec (dt-timeout=-0.00016529858112335205)
WARNING: dt+0.0012  timeout? True
WARNING: selector.select(timeout=0.49995493795722723007) took 
dt=0.10188415739685297012 sec (dt-timeout=-0.39807078056037425995)
WARNING: dt+0.0012  timeout? False
WARNING: selector.select(timeout=None) took dt=0.01038167160004377365 sec
WARNING: selector.select(timeout=None) took dt=0.00922694429755210876 sec
WARNING: selector.select(timeout=None) took dt=0.00215751212090253830 sec
WARNING: selector.select(timeout=None) took dt=0.01459381356835365295 sec
WARNING: selector.select(timeout=0.49995700363069772720) took 
dt=0.10038192663341760635 sec (dt-timeout=-0.39957507699728012085)
WARNING: dt+0.0100  timeout? False
WARNING: selector.select(timeout=None) took dt=0.01037232112139463425 sec
WARNING: selector.select(timeout=None) took dt=0.00168939027935266495 sec
WARNING: selector.select(timeout=None) took dt=0.00139459036290645599 sec
WARNING: selector.select(timeout=None) took dt=0.00180943403393030167 sec
WARNING: selector.select(timeout=None) took dt=0. sec
WARNING: selector.select(timeout=None) took dt=0. sec
WARNING: selector.select(timeout=None) took dt=0. sec
WARNING: selector.select(timeout=None) took dt=0. sec
WARNING: selector.select(timeout=None) took dt=0. sec
WARNING: selector.select(timeout=None) took dt=0. sec
WARNING: selector.select(timeout=None) took dt=0. sec
WARNING: selector.select(timeout=None) took dt=0. sec
WARNING: selector.select(timeout=None) took dt=0. sec
---

--

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



[issue20453] json.load() error message changed in 3.4

2014-01-31 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Yes, the change is deliberate (issue16009).

--
nosy: +ezio.melotti, pitrou, rhettinger, serhiy.storchaka

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread Charles-François Natali

Charles-François Natali added the comment:

 It looks like select() and poll() in Linux  2.6.28 has a resolution
 of 1/HZ, where HZ can be retrieved from os.sysconf('SC_CLK_TCK'). Since
 Linux 2.6.28, hrtimers are now used for timeouts.

 Attached patch improves the resolution field of selectors.BaseSelector.
 By the way, resolution should be a method (selector.resolution())
 rather than a property, because we may query the kernel to compute the
 resolution, as shown in the patch.

That's exactly why I said that an explicit resolution is a bad idea:
- it's an implementation detail
- it's fragile (just look at your latest patch)
- it's useless

Just round the timeout away from 0 and be happy: this will fix the busy-wait 
problem, and that's all we want.
Once again, I know I keep repeating myself, but having select/epoll/whatever 
wake up 10usec before the timeout isn't an issue: *all* async-IO frameworks out 
there work just fine with this.

So please, revert all this granuarity complexity, and re-apply the timeout 
rounding.

--
nosy: +neologix

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



[issue20453] json.load() error message changed in 3.4

2014-01-31 Thread Barry A. Warsaw

Barry A. Warsaw added the comment:

What do you think of combining the error messages, e.g.

No JSON object could be decoded, expecting value: line 1 column 1 (char 0)

?

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

 Just round the timeout away from 0 and be happy: this will fix the busy-wait 
 problem, and that's all we want.

I didn't work, see:
http://bugs.python.org/issue20311#msg208601

 Once again, I know I keep repeating myself, but having select/epoll/whatever 
 wake up 10usec before the timeout isn't an issue: *all* async-IO frameworks 
 out there work just fine with this.

The previous issue #20311 and this one are not critical bug, just performance 
issues. I would prefer to not call _run_once() and epoll_wait() too many times 
if it's useless (if it can be avoided).

 So please, revert all this granuarity complexity, and re-apply the timeout 
 rounding.

*If* we come back to the rounding aways zero option and granularity is removed 
from asyncio.BaseEventLoop, the issue should also be fixed in the IOCP selector 
used by the proactor event loop in Python.

--

If we decide that it's not an issue that _run_once() is called too many times, 
the unit test can be changed to ensure that _run_once() is called less than 10 
times, instead of expecting an exact number of calls (7 at the end): so 
tolerate 3 useless calls.

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

More debug info on a new failure: test_timeout_rounding failed because once 
EPollSelector.select(timeout=0.0099) took dt=0.0086 seconds. dt-timeout=-0.0014 
and dt+granularity  timeout is False (granularity=0.001, 1 millisecond).

* Buildbot: x86 Gentoo Non-Debug 3.x
* Linux kernel 2.6.35 (i686)
* clock_getres(CLOCK_MONOTONIC) = 1e-9 (1 nanosecond)
* os.sysconf('SC_CLK_TCK') = 100 (1/HZ = 10 ms ?)

http://buildbot.python.org/all/builders/x86%20Gentoo%20Non-Debug%203.x/builds/6121/steps/test/logs/stdio

Re-running test 'test_asyncio' in verbose mode

test_call_later (test.test_asyncio.test_events.EPollEventLoopTests) ...
WARNING: selector.select(timeout=0.09998385910876095295) took 
dt=0.09878822183236479759 sec (dt-timeout=-0.00119563727639615536)
WARNING: dt+0.0012  timeout? False
WARNING: selector.select(timeout=0.00106247211806476116) took 
dt=0.00085310707800090313 sec (dt-timeout=-0.00020936504006385803)
WARNING: dt+0.0012  timeout? True
ok

test_run_until_complete (test.test_asyncio.test_events.EPollEventLoopTests) ...
WARNING: selector.select(timeout=0.09997870912775397301) took 
dt=0.09859465109184384346 sec (dt-timeout=-0.00138405803591012955)
WARNING: dt+0.0012  timeout? False
WARNING: selector.select(timeout=0.00126257794909179211) took 
dt=0.00086452695541083813 sec (dt-timeout=-0.00039805099368095398)
WARNING: dt+0.0012  timeout? True
ok


test_signal_handling_args (test.test_asyncio.test_events.EPollEventLoopTests) 
...
WARNING: selector.select(timeout=0.49998698616400361061) took 
dt=0.10008734907023608685 sec (dt-timeout=-0.39989963709376752377)
WARNING: dt+0.0012  timeout? False

WARNING: selector.select(timeout=0.3996819572522259) took 
dt=0.39848947990685701370 sec (dt-timeout=-0.00119248009286820889)
WARNING: dt+0.0012  timeout? False

WARNING: selector.select(timeout=0.00107327196747064590) took 
dt=0.00087298289872705936 sec (dt-timeout=-0.00020028906874358654)
WARNING: dt+0.0012  timeout? True
ok

test_signal_handling_while_selecting 
(test.test_asyncio.test_events.EPollEventLoopTests) ... 
WARNING: selector.select(timeout=None) took dt=0.01009305310435593128 sec
ok

test_subprocess_close_after_finish 
(test.test_asyncio.test_events.EPollEventLoopTests) ... 
WARNING: selector.select(timeout=None) took dt=0.00544960913248360157 sec
ok

test_timeout_rounding (test.test_asyncio.test_events.EPollEventLoopTests) ...
WARNING: selector.select(timeout=0.00997558492235839367) took 
dt=0.00856216903775930405 sec (dt-timeout=-0.00141341588459908962)
WARNING: dt+0.0012  timeout? False

WARNING: selector.select(timeout=0.00129276583902537823) took 
dt=0.00085931317880749702 sec (dt-timeout=-0.00043345266021788120)
WARNING: dt+0.0012  timeout? True

WARNING: selector.select(timeout=0.7506809197366238) took 
dt=0.0555603764951229 sec (dt-timeout=-0.6951205432415009)
WARNING: dt+0.0012  timeout? True
FAIL

test_signal_handling_args (test.test_asyncio.test_events.PollEventLoopTests) 
... WARNING: selector.select(timeout=0.49998601293191313744) took 
dt=0.10008832695893943310 sec (dt-timeout=-0.39989768597297370434)
WARNING: dt+0.0012  timeout? False
ok

(...)

==
FAIL: test_timeout_rounding (test.test_asyncio.test_events.EPollEventLoopTests)
--
Traceback (most recent call last):
  File 
/var/lib/buildslave/3.x.murray-gentoo-wide/build/Lib/test/test_asyncio/test_events.py,
 line 1195, in test_timeout_rounding
platform.platform()))
AssertionError: Lists differ: [1, 4, 6, 7] != [1, 3, 5, 6]

First differing element 1:
4
3

- [1, 4, 6, 7]
+ [1, 3, 5, 6] : (0.001, 0.001, namespace(adjustable=False, 
implementation='clock_gettime(CLOCK_MONOTONIC)', monotonic=True, 
resolution=1e-09), 100, 
'Linux-2.6.35-vs2.3.0.36.32-gentoo-i686-Intel-R-_Core-TM-2_CPU_6600_@_2.40GHz-with-gentoo-2.1')

--

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



[issue20454] platform.linux_distribution() returns empty value on Archlinux and python 2.7

2014-01-31 Thread Francis Moreau

Changes by Francis Moreau francis.m...@gmail.com:


--
type:  - behavior

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



[issue20454] platform.linux_distribution() returns empty value on Archlinux and python 2.7

2014-01-31 Thread Francis Moreau

New submission from Francis Moreau:

On Archlinux:

$ python2.7 -c 'import platform; print(platform.linux_distribution())'
('', '', '')

This is because Archlinux is not part of the '_supported_dists' list.

Could Archlinux be added to this list ?

Thanks.

--
components: Library (Lib)
messages: 209764
nosy: fmoreau, lemburg
priority: normal
severity: normal
status: open
title: platform.linux_distribution() returns empty value on Archlinux and 
python 2.7
versions: Python 2.7

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



[issue20231] Argument Clinic accepts no-default args after default args

2014-01-31 Thread Larry Hastings

Larry Hastings added the comment:

Yup!

--
assignee:  - larry
resolution:  - fixed
stage:  - committed/rejected
status: open - closed

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



[issue20349] Argument Clinic: error on __new__ or __init__ with no arguments

2014-01-31 Thread Larry Hastings

Larry Hastings added the comment:

parser_body_fields is initialized to () these days, which should make this 
problem go away.  Do you still have the issue in current trunk?

Again, if you'd attached a reproducable test case, I could have independently 
verified the problem, and that it was fixed.

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 827d948ac6aa by Victor Stinner in branch 'default':
Issue #20452: select and selectors round (again) timeout away from zero for
http://hg.python.org/cpython/rev/827d948ac6aa

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

 New changeset 827d948ac6aa by Victor Stinner in branch 'default':
 Issue #20452: select and selectors round (again) timeout away from zero

Let's test Charles-Francois option.

 test_timeout_rounding failed because once 
 EPollSelector.select(timeout=0.0099) took dt=0.0086 seconds

We asked to wait 9.9 ms, which was rounding to 9 ms. But epoll_wait() took 8.6 
seconds: 8.6 is smaller than 9 ms.

In my opinion, rounding away from zero is not enough. We should probably round 
away from zero for selectors *and* compare times using the granularity.

Let's see what buildbots say :-)

--

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



[issue17162] Py_LIMITED_API needs a PyType_GenericDealloc

2014-01-31 Thread Martin v . Löwis

Martin v. Löwis added the comment:

It's certainly possible to write a proper dealloc - just call PyObject_Del 
directly. This is correct if the type isn't subclassable, and works if it 
actually isn't subclassed, or if the subclass object can also be released 
through PyObject_Del.

That this has *nobody* noticed yet isn't the case - the OP certainly noticed a 
year ago. Else, the limited API isn't in wide use yet, probably partly because 
it is too limited still for certain extension modules (but it is by design that 
it is limited at all, so that code might require active porting to use it, and 
may not be portable at all in certain cases).

If the typical use case is PyTYPE(self)-tp_free, then the type ought to be a 
heap type, so limiting the implementation to heap types should be sufficient. 
It would be feasible to extend it to non-heaptypes, although I do wonder what 
use case this would allow for.

--

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



[issue17162] Py_LIMITED_API needs a PyType_GenericDealloc

2014-01-31 Thread Larry Hastings

Larry Hastings added the comment:

I was thinking of a subclass of an existing class, both implemented in C.  
collections.Counter does that, but it uses _PyType_LookupId() which is in the 
limited API.

Would it be possible to achieve equivalent functionality by using 
_PyType_LookupId()?  If so, maybe instead of the proposed new function 
PyType_GetSlot, we should make _PyType_Lookup and _PyType_LookupId part of the 
public API.

--

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



[issue17162] Py_LIMITED_API needs a PyType_GenericDealloc

2014-01-31 Thread Larry Hastings

Larry Hastings added the comment:

(And, I freely admit I don't understand all this that well and that could be a 
very dumb question.)

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

Results on x86 Gentoo 3.x buildbot:

[136/389] test_asyncio
WARNING: selector.select(timeout=0.09997069113887846470) took 
dt=0.09961039200425148010 sec (dt-timeout=-0.00036029913462698460)
WARNING: dt+0.0012  timeout? True
WARNING: selector.select(timeout=0.09995610709302127361) took 
dt=0.09992253710515797138 sec (dt-timeout=-0.3356998786330223)
WARNING: dt+0.0012  timeout? True
WARNING: selector.select(timeout=0.00994763919152319431) took 
dt=0.00972709804773330688 sec (dt-timeout=-0.00022054114378988743)
WARNING: dt+0.0012  timeout? True

Ok, it looks better: waiting 99.9 ms took 99.6 ms and 99.9 ms, and waiting 9.9 
ms took 9.7 ms. So as I said, the granularity (of 1 ms) is still needed in 
asyncio (dt  timeout is sometimes False, but dt+granulary = timeout is always 
True).

We could round the timeout by adding 2 ms in epoll.poll(), but it would be 
inefficient: it reduces the accurary of 1 ms, whereas the change would only be 
needed by asyncio. IMO the granularity rounding is better because it uses also 
the resolution of the clock, which matters a lot on Windows whereas 
time.monotonic() has a resolution of 15.6 ms.

There are same results on x86 Gentoo Non-Debug 3.x and x86 Ubuntu Shared 
3.x buildbots.

--

In test_signal_handling_args, dt+granularity  timeout is still True, because 
the selector was interrupted by a signal. For this case, loop_run_once.patch 
avoids a second call to _run_once(), but in fact it doesn't optimize anything 
(calling _run_once() again is just the same). Calling _run_once() again if 
selector was interrupted is just fine IMO. Example of interrupted selector:

WARNING: selector.select(timeout=0.49998722597956657410) took 
dt=0.10003586183302104473 sec (dt-timeout=-0.39995136414654552937)
WARNING: dt+0.0012  timeout? False

--

For time handling on Linux, see also:
http://www.python.org/dev/peps/pep-0418/#linux-clocksource

--

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



[issue20311] epoll.poll(timeout) and PollSelector.select(timeout) must round the timeout to the upper bound

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset f9a09b40bc17 by Victor Stinner in branch 'default':
Issue #20311, #20452: poll and epoll now round the timeout away from zero,
http://hg.python.org/cpython/rev/f9a09b40bc17

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 21aa1a224049 by Victor Stinner in branch 'default':
Issue #20452: Remove debug code, no more needed
http://hg.python.org/cpython/rev/21aa1a224049

New changeset f9a09b40bc17 by Victor Stinner in branch 'default':
Issue #20311, #20452: poll and epoll now round the timeout away from zero,
http://hg.python.org/cpython/rev/f9a09b40bc17

--

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Stefan Behnel

Stefan Behnel added the comment:

pretty please? :)

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

Summary of this issue:

- test_asyncio was still failing because BaseEventLoop._granularity was not 
enough to round correctly timeouts, deadlines and times. poll/epoll rounded 
towards zero, whereas asyncio rounds away from zero. So the maximum difference 
in _run_once() was 2 x resolution (2 ms), not resolution (1 ms)
- I modified poll and epoll in select and selectors modules in Python 3.4 to 
round the timeout away from zero. So the maximum difference is now resolution 
(1 ms for poll/epoll).

Now the question is: should we backport the rounding changes in select and 
selectors in Python 3.3? It's not required for asyncio, since Tulip has its 
backport of selectors.py which has the fix. For avoid any regression, it's 
safer to leave Python 3.3 unchanged, since nobody complained. It looks like 
only asyncio is affected by this issue. In fact, I don't think that any large 
application relies on select for its event loop: C libraries like libev, 
libevent and libuv are usually preferred.

So I prefer to leave Python 3.3 unchanged.

Note: I removed my debug mode.

--

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



[issue20434] Process crashes if not enough memory to import module

2014-01-31 Thread Kristján Valur Jónsson

Kristján Valur Jónsson added the comment:

These are very unusual semantics.
The convention in the python api is that functions are refernece-invariant when 
there are errors.  i.e. if a function fails or not does not change the caller's 
reference passing assumptions.

For example, Py_BuildValue(N, myobject);
takes care to always steal the reference of myobject, even when Py_BuildValue 
fails.

Thi tehe case of _PyBytes_Resize(), the caller owns the (single) reference to 
the operand, and owns the reference to it (or a new one) on success.  It is 
highly unusual that the case of failure causes it to no longer own this 
reference.

Python 3 should have taken the opportunity to remove remove this unusual 
inheritance from _PyString_Resize()

--
nosy: +kristjan.jonsson

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



[issue20328] mailbox:

2014-01-31 Thread Jonathan Dowland

Jonathan Dowland added the comment:

Hi David, thanks for replying!

On Tue, Jan 21, 2014 at 03:08:04PM +, R. David Murray wrote:
 Conceptually the problem with this is that if you use the object to
 delete the folder, you now have an object with no folder...that is, an
 invalid object.

You're absolutely right, and it turns out that this library already has
this problem, because the mailbox.Maildir class has a remove_folder
method, which can delete nested Maildirs. The following python code is
enough to expose this problem:

 import mailbox, os
 
 # create foo/{cur,new,tmp,.bar{,/{cur,new,tmp}}}
 for d in foo foo/.bar.split():
   os.mkdir(d)
   for d2 in cur new tmp.split():
 os.mkdir(os.path.join(d,d2))
 
 mb1 = mailbox.Maildir(foo)
 mb2 = mb1.get_folder(bar)
 mb1.remove_folder(bar)
 print mb2.items()

Of course, if someone is using this module in any real environment where
folders might come and go due to other processes (e.g. an IMAPd - quite
a realistic prospect if you ask me), any mailbox.* object could become
invalid at any time.

Note that mailbox class has a 'lock/unlock' method, but this is a no-op
for mailbox.Maildir.

 Do we have any other stdlib examples of objects with a 'delete()'
 method...looks like bdb has a deleteMe on breakpoint objects, but it
 isn't clear that it tries to deal with what happens if a breakpoint
 object that has been deleted is accessed again.  There are also some
 in idlelib/tk, which I haven't looked at.

That's a very good question. I don't know, I will have to do some
research. I wonder if it's worth looking outside of the python ecosystem
too.

 So, I guess the issue is to work out what the semantics of the object
 would be if delete has been called, and make sure it actually makes
 sense to have a delete method.

Yes. My gut feeling is the module needs to gracefully handle situations
where objects are not valid anymore, to allow inter-operation with other
processes deleting or creating mailboxes outside of Python's control,
but I suppose the first step is the research.

If the consensus is that delete doesn't make sense, I think we need to
address the existing delete_folder methods.

Thanks for your interest,

--

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



[issue20328] mailbox:

2014-01-31 Thread Larry Hastings

Changes by Larry Hastings la...@hastings.org:


--
nosy:  -larry

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



[issue20328] mailbox:

2014-01-31 Thread Larry Hastings

Larry Hastings added the comment:

Could you give this issue a more descriptive name please?

--
nosy: +larry

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

Oh, another question: should I reopen the issue #20320 (round timeout in select 
and kqueue)?

--

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



[issue20434] Process crashes if not enough memory to import module

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

 Python 3 should have taken the opportunity to remove remove this unusual 
 inheritance from _PyString_Resize()

It's not so unusual. PyUnicode_InternInPlace() replaces also a pointer
to a object in the caller for example.

There are many other functions taking PyObject** parameters:
PyUnicode_Append(), PyDict_Next(), PyEval_EvalCodeEx(), PyErr_Fetch(),
etc.

Anyway, it's too late to change such major API, so it's not very
useful the discuss this theorical change :-) And the function is well
documented:
http://docs.python.org/dev/c-api/bytes.html#_PyBytes_Resize
If the reallocation fails, the original bytes object at *bytes is
deallocated, *bytes is set to NULL, a memory exception is set, and -1
is returned.

--

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



[issue20349] Argument Clinic: error on __new__ or __init__ with no arguments

2014-01-31 Thread Tal Einat

Tal Einat added the comment:

This has indeed been fixed by the change you mentioned.

--
resolution:  - fixed
status: open - closed

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



[issue20455] test_asyncio hangs on Windows

2014-01-31 Thread STINNER Victor

New submission from STINNER Victor:

It's probably a regression caused by my changeset 73dbb884eb09 which fixed a 
bug (issue #20449).

Related Tulip issue:
http://code.google.com/p/tulip/issues/detail?id=121

--
messages: 209783
nosy: gvanrossum, haypo, sbt
priority: normal
severity: normal
status: open
title: test_asyncio hangs on Windows
versions: Python 3.4

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



[issue20455] test_asyncio hangs on Windows

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 4c496d53b1e1 by Victor Stinner in branch 'default':
Issue #20455: asyncio: write a new write pipe transport class for proactor (on
http://hg.python.org/cpython/rev/4c496d53b1e1

--
nosy: +python-dev

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



[issue20456] Argument Clinic rollup patch, 2014/01/31

2014-01-31 Thread Larry Hastings

New submission from Larry Hastings:

Probably the last rollup patch for a while; I need to move on to code
reviewing.

Here's a list of changes in this patch:

* I added the oft-requested rename the C variable for a parameter
  functionality.  That works as follows:

 os.rename
 path as stinky: path_t

  Here the Python name is path, and the C name is stinky.
  Internally the name of the parameter is the Python name, and
  the name of the converter is the C name.  (But the converter
  gets the Python name too, because it needs it sometimes, e.g.
  for the keywords array.)

* Fixed a minor but difficult-to-fix problem: when cloning a function,
  the cloned function would still refer to the original function's
  name.  (You can see this in the PATH_T_INITIALIZE macros in
  os_replace in posixmodule.c.)

* While fixing the above I stumbled over a new problem: rendering
  often changes internal state of a parameter, which could cause
  problems if we clone an already-rendered parameter object.  The
  solution: make a copy of all the Parameter objects before rendering,
  then render from the copies.

* Fixing the above forced me to add a new initalizer to CConverter
  objects: pre_render(), which is called just before rendering.

* This change also means it's pretty important to call up to the super()
  for converter_init() and pre_render().

* Fixing the above also required new semantics for converter_init():
  you are no longer permitted to examine the function object in
  that method.  (I made it fail noisily with a LandMine.)

* clinic.py --converters was broken, I fixed it.  (It was confused
  by object_converter having format_unit=None.)

* I fixed the unit tests too.

* You can now specify blank lines between directives without Clinic
  getting angry at you.

* I redid how I store all those little C code snippet template.
  Originally they were inline, but flush left, and that made
  reading them tiresome--the indent was jumping around on you.
  Changing to a central list removed the jumping around but now
  you had to scroll back and forth to correlate the template with
  where it was used.  The final solution: have them inline again,
  but indented, and simply outdent the text before use.  Go ahead,
  tell me that's *not* an improvement.  :D  (The outdenting function
  uses functools.lru_cache, so processing is really no slower.)

And last but certainly not least...!

Following a suggestion by Serhiy Storchaka, Argument Clinic is now
incredibly sophisticated with respect to #if'd out code.  In less than
200 lines, I wrote a reasonable C preprocessor monitor class.  The
monitor parses C files in parallel to Argument Clinic.  At any time
you can ask the monitor what's the current preprocessor conditional
state?  If the current code is potentially if'd out, Argument Clinic
uses the same conditional to potentially #if out the parser function,
the docstring, etc, when writing those to buffer or file.  It even
adds this to the end:

  #ifndef YOUR_FUNCTION_METHODDEF
  #define YOUR_FUNCTION_METHODDEF
  #endif /* !defined(YOUR_FUNCTION_METHODDEF) */

But *only* when necessary.

You can see this in action in the diff for Modules/clinic/zlibmodule.c.h.

I think this is a huge improvement!  (Thanks for the suggestion, Serhiy!)

--
assignee: larry
files: larry.clinic.rollup.2014.01.31.1.diff
keywords: patch
messages: 209784
nosy: larry, ncoghlan, serhiy.storchaka, taleinat, zach.ware
priority: normal
severity: normal
stage: patch review
status: open
title: Argument Clinic rollup patch, 2014/01/31
type: enhancement
versions: Python 3.4
Added file: 
http://bugs.python.org/file33826/larry.clinic.rollup.2014.01.31.1.diff

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



[issue20455] test_asyncio hangs on Windows

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

I commited my patch before a review (even if Guido already wrote me that the 
approach is correct) because I wanted to unblock Windows buildbots (which were 
all red).

Please review http://hg.python.org/cpython/rev/4c496d53b1e1

--

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Larry Hastings

Larry Hastings added the comment:

Tell you what.  If this *specifically* is a fix for Cython, please add a some 
text saying that to the comment for the duck-type test function.

If you do that, and assuming that test_inspect still passes, then you may check 
it in.

--

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



[issue20152] Derby #15: Convert 50 sites to Argument Clinic across 9 files

2014-01-31 Thread Brett Cannon

Changes by Brett Cannon br...@python.org:


Removed file: http://bugs.python.org/file33594/pyexpat_derby.diff

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



[issue20152] Derby #15: Convert 50 sites to Argument Clinic across 9 files

2014-01-31 Thread Brett Cannon

Brett Cannon added the comment:

Here is pyexpat updated with ErrorString converted (and generally updated to 
manage changes now required by AC for class definitions).

--
Added file: http://bugs.python.org/file33827/pyexpat_derby.diff

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



[issue20152] Derby #15: Convert 50 sites to Argument Clinic across 9 files

2014-01-31 Thread Brett Cannon

Brett Cannon added the comment:

Should only have two modules left to convert:

Modules/cmathmodule.c: 8 sites
Modules/arraymodule.c: 27 sites

I have already started arraymodule.c; it's just taking a while.

--
assignee: larry - brett.cannon

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



[issue20152] Derby #15: Convert 50 sites to Argument Clinic across 9 files

2014-01-31 Thread Brett Cannon

Changes by Brett Cannon br...@python.org:


--
versions: +Python 3.5 -Python 3.4

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



[issue20152] Derby #15: Convert 50 sites to Argument Clinic across 9 files

2014-01-31 Thread Brett Cannon

Changes by Brett Cannon br...@python.org:


Added file: http://bugs.python.org/file33828/pyexpat_derby.diff

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



[issue20152] Derby #15: Convert 50 sites to Argument Clinic across 9 files

2014-01-31 Thread Brett Cannon

Changes by Brett Cannon br...@python.org:


Removed file: http://bugs.python.org/file33827/pyexpat_derby.diff

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



[issue20152] Derby #15: Convert 50 sites to Argument Clinic across 9 files

2014-01-31 Thread Brett Cannon

Changes by Brett Cannon br...@python.org:


Added file: http://bugs.python.org/file33829/multibytecodec_derby.diff

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



[issue20152] Derby #15: Convert 50 sites to Argument Clinic across 9 files

2014-01-31 Thread Brett Cannon

Changes by Brett Cannon br...@python.org:


Removed file: http://bugs.python.org/file33514/multibytecodec_derby.diff

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



[issue20390] Argument Clinic rollup patch, 2014/01/25

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 06b4fbb09c93 by Larry Hastings in branch 'default':
Issue #20390: Removing detritus from Argument Clinic file preset name change.
http://hg.python.org/cpython/rev/06b4fbb09c93

--

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



[issue20420] BufferedIncrementalEncoder violates IncrementalEncoder interface

2014-01-31 Thread Walter Dörwald

Walter Dörwald added the comment:

I dug up an ancient email about that subject:

 However, I've discovered that BufferedIncrementalEncoder.getstate()
 doesn't match the specification (i.e. it returns the buffer, not an
 int). However this class is unused (and probably useless, because it
 doesn't make sense to delay encoding the input). The simplest solution
 would be to simply drop the class.

 Sounds like a plan; go right ahead!

 Oops, there *is* one codec that uses it: The idna encoder. It buffers
 the input until a '.' is encountered (or encode() is called with
 final==True) and then encodes this part.

 Either the idna encoder encodes the unencoded input as a int, or we drop
 the specification that encoder.getstate() must return an int, or we
 change it to mirror the decoder specification (i.e. return a
 (buffered_input, additional_state_info) tuple.

 (A more radical solution would be to completely drop the incremental
 codecs for idna).

 Maybe we should wait and see how the implementation of writing turns out?

And indeed the incremental encoder for idna behaves strange:

 import io
 b = io.BytesIO()
 s = io.TextIOWrapper(b, 'idna')
 s.write('x')
1
 s.tell()
0
 b.getvalue()
b''
 s.write('.')
1
 s.tell()
2
 b.getvalue()
b'x.'
 b = io.BytesIO()
 s = io.TextIOWrapper(b, 'idna')
 s.write('x')
1
 s.seek(s.tell())
0
 s.write('.')
Traceback (most recent call last):
  File stdin, line 1, in module
  File /Users/walter/.local/lib/python3.3/codecs.py, line 218, in encode
(result, consumed) = self._buffer_encode(data, self.errors, final)
  File /Users/walter/.local/lib/python3.3/encodings/idna.py, line 246, in 
_buffer_encode
result.extend(ToASCII(label))
  File /Users/walter/.local/lib/python3.3/encodings/idna.py, line 73, in 
ToASCII
raise UnicodeError(label empty or too long)
UnicodeError: label empty or too long

The cleanest solution might probably by to switch to a (buffered_input, 
additional_state_info) state.

However I don't know what changes this would require in the seek/tell 
imlementations.

--

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



[issue20170] Derby #1: Convert 137 sites to Argument Clinic in Modules/posixmodule.c

2014-01-31 Thread Zachary Ware

Changes by Zachary Ware zachary.w...@gmail.com:


--
nosy: +zach.ware

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



[issue20328] mailbox: add method to delete mailbox

2014-01-31 Thread R. David Murray

R. David Murray added the comment:

I think your arguments are good ones.  So, if you want to propose a patch that 
defines some semantics for delete (and possibly address the maildir folder 
delete similarly), I will review it.  Also fine if you want to discuss it more 
before working on a patch.  (Also OK if you *don't* want to work on a patch, 
although in that case it is a lot less likely to happen :)

--
stage:  - needs patch
title: mailbox: - mailbox: add method to delete mailbox

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



[issue20453] json.load() error message changed in 3.4

2014-01-31 Thread R. David Murray

R. David Murray added the comment:

It seems to me that it should indeed have been that way.  I thought the 
referenced issue was *adding* the location information to the existing error 
messages.

--
nosy: +r.david.murray

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



[issue20434] Process crashes if not enough memory to import module

2014-01-31 Thread Kristján Valur Jónsson

Kristján Valur Jónsson added the comment:

I'm not talking about the PyObject** argument, Victor.
I'm talking about reference counting semantics.  It is a rule that reference 
counting semantics should be the same over a function call whether that 
function raised an exception or not.

The this function effectively steals a reference in case of error. The caller 
owns the reference to the argument (passed by ref) if it succeeds, but if id 
doesn't, then he doesn't own it anymore.

Reference counting invariance with errors is, as I mentioned, observed with 
e.g. the 'N' argument to Py_BuildValue(), which is defined to steal a 
reference and does so even if the call fails.  This behaviour is observed by 
other reference-stealing functions, such as PyTuple_SetItem().  Similarly, 
functions who don't steal a reference, i.e. take their own, will not change 
that behaviour if they error.

If you don't want to think about this in terms of reference counting semantics, 
think about it in terms of the fact that in case of error, most functions leave 
everything as it was.  PyList_Append(), if it fails, leaves everything as it 
was.
This function does not.  In case of failure, it will, as a convenience to the 
caller, release the original object.
It is equivalent to () realloc() freeing its operand if it cannot succeed.

It is precisely these 'unusual' exceptions from established semantics that 
cause these kind of programming errors.  Originally, this was probably designed 
as a convenience to the programmer for the handful of places that the function 
(_PyString_Resize) was used.  But this decision forces every new user of this 
function (and its descendents) to be acutely aware of its unusual error 
behaviour.

--

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



[issue20455] test_asyncio hangs on Windows

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 8fc69d43bc49 by Victor Stinner in branch 'default':
Issue #20455: math.ceil() returns an int in Python 3, no need to cast the
http://hg.python.org/cpython/rev/8fc69d43bc49

New changeset 3f54bc5392c3 by Victor Stinner in branch 'default':
Issue #20455: asyncio: use the same code to round a timeout than the selectors
http://hg.python.org/cpython/rev/3f54bc5392c3

New changeset 55abd847c9f5 by Victor Stinner in branch 'default':
Issue #20455: Add a resolution attribute to IocpProactor (1 ms)
http://hg.python.org/cpython/rev/55abd847c9f5

--

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



[issue20455] test_asyncio hangs on Windows

2014-01-31 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
Removed message: http://bugs.python.org/msg209795

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



[issue20455] test_asyncio hangs on Windows

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

(I removed the message msg209795 because the commits are related to #20452, not 
to this issue.)

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

Oops, I mentionned the wrong issue number in the following commits. There were 
related to this issue (#20452):

New changeset 8fc69d43bc49 by Victor Stinner in branch 'default':
Issue #20455: math.ceil() returns an int in Python 3, no need to cast the
http://hg.python.org/cpython/rev/8fc69d43bc49

New changeset 3f54bc5392c3 by Victor Stinner in branch 'default':
Issue #20455: asyncio: use the same code to round a timeout than the selectors
http://hg.python.org/cpython/rev/3f54bc5392c3

New changeset 55abd847c9f5 by Victor Stinner in branch 'default':
Issue #20455: Add a resolution attribute to IocpProactor (1 ms)
http://hg.python.org/cpython/rev/55abd847c9f5

--

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



[issue19363] Python 2.7's future_builtins.map is not compatible with Python 3's map

2014-01-31 Thread Eric V. Smith

Eric V. Smith added the comment:

I agree with Raymond: it would have been nice to do this, but it's too late. 
Closing.

--
nosy: +eric.smith
resolution:  - wont fix
stage:  - committed/rejected
status: open - closed

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 7f649ff0756c by Victor Stinner in branch 'default':
Issue #20452: test_asyncio: Add more info if the test fails
http://hg.python.org/cpython/rev/7f649ff0756c

--

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



[issue20452] test_timeout_rounding() of test_asyncio fails on x86 Ubuntu Shared 3.x buildbot

2014-01-31 Thread STINNER Victor

STINNER Victor added the comment:

There is a similar (but different?) issue on Windows XP. I tried to fix it with 
the 4 last commits.

The test uses a busy loop. The scheduled handle is called after 0.100 - 
granularity. The granularity is usually 15.6 ms on Windows, so the expected 
mimiumum is around 0.084 (not 0.090). Attached patch test_base_events.patch 
uses the granularity to test the minimum. The check on the maximum should maybe 
be removed because of our slow buildbots.

http://buildbot.python.org/all/builders/x86%20XP-4%203.x/builds/10071/steps/test/logs/stdio

==
FAIL: test_time_and_call_at 
(test.test_asyncio.test_base_events.BaseEventLoopTests)
--
Traceback (most recent call last):
  File 
D:\cygwin\home\db3l\buildarea\3.x.bolen-windows\build\lib\test\test_asyncio\test_base_events.py,
 line 124, in test_time_and_call_at
self.assertTrue(0.09 = t1-t0 = 0.9, t1-t0)
AssertionError: False is not true : 0.0899985098839

--
Added file: http://bugs.python.org/file33830/test_base_events.patch

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



[issue20152] Derby #15: Convert 50 sites to Argument Clinic across 9 files

2014-01-31 Thread Brett Cannon

Changes by Brett Cannon br...@python.org:


Added file: http://bugs.python.org/file33831/array_derby.diff

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



[issue20453] json.load() error message changed in 3.4

2014-01-31 Thread Barry A. Warsaw

Barry A. Warsaw added the comment:

So, here's a patch that should work.  One thing I'm not positive about is that 
this is a more expansive change then just merging the two messages in the one 
case in the original description.  But it probably makes sense to be 
consistent.  Or should we try for a narrower fix?

--
Added file: http://bugs.python.org/file33832/20453.expansive

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



[issue20457] Use partition and enumerate make getopt easier

2014-01-31 Thread dongwm

Changes by dongwm ciici...@gmail.com:


--
components: Library (Lib)
files: getopt_2.7_3.X.path
nosy: dongwm
priority: normal
severity: normal
status: open
title: Use partition and enumerate make getopt easier
type: enhancement
versions: Python 2.7, Python 3.1, Python 3.2, Python 3.3
Added file: http://bugs.python.org/file33833/getopt_2.7_3.X.path

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



[issue20458] ``clinic.py --converters`` raises an exception

2014-01-31 Thread Brett Cannon

New submission from Brett Cannon:

 ./python.exe Tools/clinic/clinic.py --converters  
 ~/Repositories/cpython/default

Legacy converters:
Traceback (most recent call last):
  File Tools/clinic/clinic.py, line 4045, in module
sys.exit(main(sys.argv[1:]))
  File Tools/clinic/clinic.py, line 3977, in main
print('' + ' '.join(c for c in legacy if c[0].isupper()))
  File Tools/clinic/clinic.py, line 3977, in genexpr
print('' + ' '.join(c for c in legacy if c[0].isupper()))
IndexError: string index out of range

--
assignee: larry
components: Build
messages: 209802
nosy: brett.cannon, larry
priority: release blocker
severity: normal
stage: needs patch
status: open
title: ``clinic.py --converters`` raises an exception
type: behavior
versions: Python 3.4

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



[issue20457] Use partition and enumerate make getopt easier

2014-01-31 Thread dongwm

Changes by dongwm ciici...@gmail.com:


--
keywords: +patch
Added file: http://bugs.python.org/file33834/getopt_3.3.patch

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



[issue20459] No Argument Clinic documentation on how to specify a return converter

2014-01-31 Thread Brett Cannon

New submission from Brett Cannon:

There's no actual example of using a return converter so it's not obvious how 
to specify one. Is it specifying an argument of 'return'?

--
assignee: larry
components: Documentation
messages: 209803
nosy: brett.cannon, larry
priority: normal
severity: normal
stage: needs patch
status: open
title: No Argument Clinic documentation on how to specify a return converter
versions: Python 3.4

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



[issue20453] json.load() error message changed in 3.4

2014-01-31 Thread R. David Murray

R. David Murray added the comment:

If backward compatibility is the concern, I'd think you'd just want to restore 
that one message.

--

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



[issue20456] Argument Clinic rollup patch, 2014/01/31

2014-01-31 Thread Zachary Ware

Changes by Zachary Ware zachary.w...@gmail.com:


--
nosy: +brett.cannon

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



[issue20458] ``clinic.py --converters`` raises an exception

2014-01-31 Thread Zachary Ware

Zachary Ware added the comment:

This is a duplicate of (part of) #20456; adding you there, Brett.

--
nosy: +zach.ware
resolution:  - duplicate
stage: needs patch - committed/rejected
status: open - closed
superseder:  - Argument Clinic rollup patch, 2014/01/31

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



[issue20457] Use partition and enumerate make getopt easier

2014-01-31 Thread Ethan Furman

Changes by Ethan Furman et...@stoneleaf.us:


--
nosy: +ethan.furman

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



[issue20460] Wrong markup in c-api/arg.rst

2014-01-31 Thread OSAMU NAKAMURA

New submission from OSAMU NAKAMURA:

:func:`bytes` in description for ``y`` format 
should be :class:`bytes`.

--
assignee: docs@python
components: Documentation
files: mywork.patch
keywords: patch
messages: 209806
nosy: OSAMU.NAKAMURA, docs@python
priority: normal
severity: normal
status: open
title: Wrong markup in c-api/arg.rst
type: behavior
versions: Python 3.4
Added file: http://bugs.python.org/file33835/mywork.patch

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



[issue20453] json.load() error message changed in 3.4

2014-01-31 Thread Barry A. Warsaw

Barry A. Warsaw added the comment:

On Jan 31, 2014, at 04:23 PM, R. David Murray wrote:

If backward compatibility is the concern, I'd think you'd just want to
restore that one message.

Yeah.  I think the tests are a little more difficult to adjust in that case,
and of course, if we do change that one message it *won't* be completely
backward compatible (because it will have the additional information).
It's not a critical issue for me, so let's see if anybody else chimes in.

--

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



[issue20461] Argument Clinic included return converters hard code use of ``_return_value``

2014-01-31 Thread Brett Cannon

New submission from Brett Cannon:

E.g. NoneType_return_converter assumes _return_value is used in render() 
although CReturnConverter.declare() stores it in data.return_value and it's a 
parameter to render().

--
assignee: larry
components: Build
messages: 209808
nosy: brett.cannon, larry
priority: normal
severity: normal
stage: test needed
status: open
title: Argument Clinic included return converters hard code use of 
``_return_value``
versions: Python 3.4

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



[issue20460] Wrong markup in c-api/arg.rst

2014-01-31 Thread Zachary Ware

Zachary Ware added the comment:

Fixed, thanks for the report and patch!

If you intend to ever contribute more than the simplest of patches, please 
consider signing a contributor's agreement: http://www.python.org/psf/contrib/

Thanks!

--
nosy: +zach.ware
resolution:  - fixed
stage:  - committed/rejected
status: open - closed
versions: +Python 3.3

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



[issue20460] Wrong markup in c-api/arg.rst

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 7a611b7aae38 by Zachary Ware in branch '3.3':
Issue #20460: Render 'bytes' as a class, not a function.
http://hg.python.org/cpython/rev/7a611b7aae38

New changeset b56ce3410ca6 by Zachary Ware in branch 'default':
Issue #20460: Merge with 3.3
http://hg.python.org/cpython/rev/b56ce3410ca6

--
nosy: +python-dev

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



[issue20462] Python IDLE auto closed when creating a new file or open existing file

2014-01-31 Thread Alessandro Reinoso

New submission from Alessandro Reinoso:

I looked for some online help and i found a question on stackoverflow wich 
shows my same problem except that i just installed python to get started:

http://stackoverflow.com/questions/20768949/python-idle-auto-closed-when-i-create-a-new-file-or-open-existing-file

when i choose Edit with IDLE, doesn't even bother to open. 

im using windows 7 SP1 64-bit
i tried using both python-3.3.3.msi and python-3.3.3.amd64.msi installers, both 
with same problem.

Thank You.

--
messages: 209811
nosy: Bishop
priority: normal
severity: normal
status: open
title: Python IDLE auto closed when creating a new file or open existing file
type: behavior
versions: Python 3.3

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Yury Selivanov

Yury Selivanov added the comment:

Third version of the patch is attached (sig_func_ducktype_03.patch).

Changes:

- Toughen the tests for duck-typed function -- do not accept classes
- Added comments to clarify the need of duck-typing
- NEWS item
- what's new item

Stefan, please take a look. I want to make sure, that the fact that we won't 
accept classes that look like a function, is OK with you.

--
keywords: +needs review -patch
Added file: http://bugs.python.org/file33836/sig_func_ducktype_03.patch

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Yury Selivanov

Changes by Yury Selivanov yselivanov...@gmail.com:


Removed file: http://bugs.python.org/file33836/sig_func_ducktype_03.patch

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



[issue17162] Py_LIMITED_API needs a PyType_GenericDealloc

2014-01-31 Thread Martin v . Löwis

Martin v. Löwis added the comment:

I'm not sure we are looking at the same code base, I look at

http://hg.python.org/cpython/file/b56ce3410ca6/Lib/collections/__init__.py#l401

and ISTM that collections.Counter is *not* implemented in C. Also, according to

http://hg.python.org/cpython/file/b56ce3410ca6/Include/object.h#l486

I see that _PyType_LookupId is *not* in the limited API (and it really 
shouldn't).

In any case, _PyType_LookupId cannot replace PyType_GetSlot, since it returns a 
PyObject* from the namespace of the type. Many of the slots don't actually have 
a Python name (including tp_free, which is the OP's original use case), plus 
the value returned ought to be a function pointer, not a PyObject*.

--

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Yury Selivanov

Changes by Yury Selivanov yselivanov...@gmail.com:


--
keywords: +patch
Added file: http://bugs.python.org/file33837/sig_func_ducktype_03.patch

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



[issue17128] OS X system openssl deprecated - installer should build local libssl

2014-01-31 Thread Ned Deily

Ned Deily added the comment:

Update: the MacPorts certsync daemon has matured and is now included as
an optional MacPorts port.

It's not a perfect solution as noted in the macports-devel thread:

The only catch is that custom added certificates or trust anchors need
to be in the system keychain to be picked up by certsync by default.
Yeah, this was an unfortunate trade-off; since certsync is a system-wide 
daemon, and the resulting CA certs file is also system-wide, it seemed to
be the most appropriate course of action. Most of the alternatives involve
patching OpenSSL and some of the software that depends on it, which is a
road I'm personally wary of committing to.

http://comments.gmane.org/gmane.os.apple.macports.devel/22653

It works by registering a launchd agent that is run whenever any of the
system keychain files or trust setting files are modified.  That raises the
issues of when and how a Python install should register the agent (will
likely need admin/root privileges to do that) and how to delete the agent
(we currently don't have a formal uninstall procedure on OS X).  It would
be easier to manage these things with the binary installer-based Pythons,
as provided by python.org, in which case Pythons built by users from source
would still use the deprecated Apple-supplied libssl and libcrypto.  But
I'd like to separate out the building of third-party libraries, like
openssl, from the installer build process so that user source builds can
take advantage of features like this.

--
versions: +Python 3.5 -Python 3.4

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



[issue13657] IDLE doesn't support sys.ps1 and sys.ps2.

2014-01-31 Thread Zachary Ware

Zachary Ware added the comment:

Robin Zimmermann on docs@ raised this issue again.  Is this likely to be fixed 
soon, or would it be good to document this limitation of IDLE in the tutorial 
(since the tutorial is the most likely place for someone to be confused by 
this)?

--
nosy: +zach.ware

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Stefan Behnel

Stefan Behnel added the comment:

Tried it, works for me.

Explicitly rejecting classes is a good idea, IMHO, as is requiring that any 
function-like object must be callable, obviously.

--

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



[issue18801] inspect.classify_class_attrs() misclassifies object.__new__()

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset c38f99554be4 by Yury Selivanov in branch 'default':
inspect.classify_class_attrs: Classify object.__new__ and __init__ correctly 
#18801
http://hg.python.org/cpython/rev/c38f99554be4

--
nosy: +python-dev

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



[issue18801] inspect.classify_class_attrs() misclassifies object.__new__()

2014-01-31 Thread Yury Selivanov

Yury Selivanov added the comment:

Not sure if we need to backport this to older python versions

--

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



[issue18801] inspect.classify_class_attrs() misclassifies object.__new__()

2014-01-31 Thread Yury Selivanov

Changes by Yury Selivanov yselivanov...@gmail.com:


--
resolution:  - fixed
status: open - closed

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



[issue18801] inspect.classify_class_attrs() misclassifies object.__new__()

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset d0f95094033d by Yury Selivanov in branch 'default':
NEWS: Add news item for #18801
http://hg.python.org/cpython/rev/d0f95094033d

--

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Yury Selivanov

Yury Selivanov added the comment:

 Explicitly rejecting classes is a good idea, IMHO, as is requiring that any 
 function-like object must be callable, obviously.

Yeah, I think it's good to restrict this duck-typing as much as possible. 
Committing the patch.

--

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 32a660a52aae by Yury Selivanov in branch 'default':
inspect.signature: Support duck-types of Python functions (Cython, for 
instance) #17159
http://hg.python.org/cpython/rev/32a660a52aae

--
nosy: +python-dev

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Yury Selivanov

Yury Selivanov added the comment:

OK, closing this one.
Stefan, Larry, thank you for your reviews and time.

--
resolution:  - fixed
stage: patch review - committed/rejected
status: open - closed

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



[issue18916] Various out-of-date Lock text in 3.2+

2014-01-31 Thread Christopher Welborn

Christopher Welborn added the comment:

Here's the 3.3 version, with the PyThread_allocate_lock comment in the lock 
type.
Still working on the 3.4 argument clinic version.

--
Added file: 
http://bugs.python.org/file33838/threading.lock.docs.3.3-with-comment.patch

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



[issue18916] Various out-of-date Lock text in 3.2+

2014-01-31 Thread Christopher Welborn

Changes by Christopher Welborn cjwelb...@live.com:


Removed file: http://bugs.python.org/file33819/threading.lock.docs3.3.patch

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



[issue17159] Remove explicit type check from inspect.Signature.from_function()

2014-01-31 Thread Stefan Behnel

Stefan Behnel added the comment:

Thanks a lot!

--

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



[issue20463] sqlite dumpiter dumps invalid script when virtual tables are used

2014-01-31 Thread Ronny Pfannschmidt

New submission from Ronny Pfannschmidt:

when using virtual tables, dumpiter generates a broken db script
virtual table entries must be created as master table entries
the sqlite tools dump does that correctly
however pythons iterdump  seems to do that rather different and wrong

sqlite3 test.db create virtual table test using fts4(example);
---
sqlite dump
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
PRAGMA writable_schema=ON;
INSERT INTO 
sqlite_master(type,name,tbl_name,rootpage,sql)VALUES('table','test','test',0,'CREATE
 VIRTUAL TABLE test using fts4(example)');
CREATE TABLE 'test_content'(docid INTEGER PRIMARY KEY, 'c0example');
CREATE TABLE 'test_segments'(blockid INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE 'test_segdir'(level INTEGER,idx INTEGER,start_block 
INTEGER,leaves_end_block INTEGER,end_block INTEGER,root BLOB,PRIMARY KEY(level, 
idx));
CREATE TABLE 'test_docsize'(docid INTEGER PRIMARY KEY, size BLOB);
CREATE TABLE 'test_stat'(id INTEGER PRIMARY KEY, value BLOB);
PRAGMA writable_schema=OFF;
COMMIT;
--
python iterdump import sqlite3;
c=sqlite3.connect(test.db);
print(\n.join(c.iterdump()))
BEGIN TRANSACTION;
CREATE VIRTUAL TABLE test using fts4(example);
CREATE TABLE 'test_content'(docid INTEGER PRIMARY KEY, 'c0example');
CREATE TABLE 'test_docsize'(docid INTEGER PRIMARY KEY, size BLOB);
CREATE TABLE 'test_segdir'(level INTEGER,idx INTEGER,start_block 
INTEGER,leaves_end_block INTEGER,end_block INTEGER,root BLOB,PRIMARY KEY(level, 
idx));
CREATE TABLE 'test_segments'(blockid INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE 'test_stat'(id INTEGER PRIMARY KEY, value BLOB);
COMMIT;

--
messages: 209825
nosy: Ronny.Pfannschmidt
priority: normal
severity: normal
status: open
title: sqlite dumpiter dumps invalid script when virtual tables are used
versions: Python 2.7

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



[issue20463] sqlite dumpiter dumps invalid script when virtual tables are used

2014-01-31 Thread Ronny Pfannschmidt

Changes by Ronny Pfannschmidt ronny.pfannschm...@gmail.com:


--
components: +Extension Modules
type:  - behavior

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



  1   2   >