[issue31145] PriorityQueue.put() fails with TypeError if priority_number in tuples of (priority_number, data) are the same.

2017-12-04 Thread Raymond Hettinger

Raymond Hettinger  added the comment:

FWIW, the new dataclasses module makes it really easy to create a wrapper:

from dataclasses import dataclass, field
from typing import Any

@dataclass(order=True)
class KeyedItem:
key: int
item: Any=field(compare=False)

def f(): pass
def g(): pass
print(sorted([KeyedItem(10, f), KeyedItem(5, g)]))

I'm thinking of just making an example in the docs and closing this out.

--

___
Python tracker 

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



[issue19610] Give clear error messages for invalid types used for setup.py params (e.g. tuple for classifiers)

2017-12-04 Thread Berker Peksag

Berker Peksag  added the comment:

Thank you for fixing this, Neil. Can we close this issue now?

--
priority: release blocker -> normal

___
Python tracker 

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



[issue31380] test_undecodable_filename() in Lib/test/test_httpservers.py broken on APFS

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:

I've chosen to unconditionally skip test_undecodable_filename on macOS; it was 
already skipped for older macOS systems and I think it would be a mistake to 
test for a specific error code that could change in later releases.  As Ronald 
points out, testing on Linux should be sufficient.  Thanks everyone for your 
input.  Fixed in 3.6.4 and 3.7.0.

--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 

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



[issue32218] add __iter__ to enum.Flag members

2017-12-04 Thread Berker Peksag

Change by Berker Peksag :


--
nosy: +ethan.furman

___
Python tracker 

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



[issue31380] test_undecodable_filename() in Lib/test/test_httpservers.py broken on APFS

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:


New changeset d9cadc5f597e5966132c9249f6c7ff0ed1eba0cb by Ned Deily (Miss 
Islington (bot)) in branch '3.6':
[3.6] bpo-31380: Skip test_httpservers test_undecodable_file on macOS. 
(GH-4720) (#4721)
https://github.com/python/cpython/commit/d9cadc5f597e5966132c9249f6c7ff0ed1eba0cb


--

___
Python tracker 

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



[issue27240] 'UnstructuredTokenList' object has no attribute '_fold_as_ew'

2017-12-04 Thread Berker Peksag

Berker Peksag  added the comment:

All three examples in test2.py correctly folded (doesn't hit the ``except 
Exception as e:`` branch anymore) in current master. Can this issue be closed 
now?

--
nosy: +berker.peksag

___
Python tracker 

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



[issue31380] test_undecodable_filename() in Lib/test/test_httpservers.py broken on APFS

2017-12-04 Thread Roundup Robot

Change by Roundup Robot :


--
pull_requests: +4630

___
Python tracker 

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



[issue31380] test_undecodable_filename() in Lib/test/test_httpservers.py broken on APFS

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:


New changeset b3edde8dd44c878e9f039a2165d00ff075157d4b by Ned Deily in branch 
'master':
bpo-31380: Skip test_httpservers test_undecodable_file on macOS. (#4720)
https://github.com/python/cpython/commit/b3edde8dd44c878e9f039a2165d00ff075157d4b


--

___
Python tracker 

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



[issue32204] async/await performance is very low

2017-12-04 Thread Liran Nuna

Liran Nuna  added the comment:

> Also I suggest you to try uvloop

Sadly, uvloop does not offer any noticeable improvement in performance for us. 
Our usage is very similar to the "benchmarks" I posted - we don't do any actual 
async I/O because asynq does not offer that. 

> I suggest you to profile it and post real profiles here

Gladly! Would you like profiles of python within itself (as in, made with 
`cProfile`) or gmon.out profiles? the latter would be a little more difficult 
to run since we run a web server which needs to accept traffic, but I do have 
plenty of `cProfile` profiles I could share with you.

> I just don't think that asyncio.gather can be the main bottleneck you have, 
> it must be something else

I think my PR and the examples I have provided set a different mindset to this 
issue - the issue in question is that the "sync" performance of async/await is 
very poor when used to execute things in "sync". The benchmarks provided are an 
example of what a request life time looks like - there's a lot of 
scatter-gather to batch database queries that happen in sync (for the time 
being) which in the benchmark being simulated as simple math operations. To 
reiterate, I do not think `asyncio.gather` is the main performance bottleneck. 
I do not know how to better identify it with my limited knowledge about cpython.

--

___
Python tracker 

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



[issue31380] test_undecodable_filename() in Lib/test/test_httpservers.py broken on APFS

2017-12-04 Thread Ned Deily

Change by Ned Deily :


--
keywords: +patch
pull_requests: +4629
stage:  -> patch review

___
Python tracker 

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



[issue32217] freeze.py fails to work.

2017-12-04 Thread Decorater

Decorater  added the comment:

I have found an temporary fix for now after reading that abiflags is posix only.

--

___
Python tracker 

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



[issue32217] freeze.py fails to work.

2017-12-04 Thread Decorater

Change by Decorater :


--
keywords: +patch
pull_requests: +4628
stage:  -> patch review

___
Python tracker 

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



[issue28791] update SQLite libraries for Windows and macOS installers

2017-12-04 Thread Mariatta Wijaya

Mariatta Wijaya  added the comment:

Backport to 3.6 is done. But I personally won't be bothering with 2.7 :)

--

___
Python tracker 

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



[issue28791] update SQLite libraries for Windows and macOS installers

2017-12-04 Thread Mariatta Wijaya

Mariatta Wijaya  added the comment:


New changeset e2ba5523192a9cff125fce2ce530bec574353f7b by Mariatta in branch 
'3.6':
bpo-28791: Update Windows builds to use SQLite 3.21.0. (GH-4246). (GH-4717)
https://github.com/python/cpython/commit/e2ba5523192a9cff125fce2ce530bec574353f7b


--

___
Python tracker 

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



[issue32219] SSLWantWriteError being raised by blocking SSL socket

2017-12-04 Thread Nathaniel Smith

Nathaniel Smith  added the comment:

Oh darn, I restarted the 311618077 build on Travis and apparently that makes it 
delete the log. Well, it was the same traceback as the one that's left, but 
triggered by a different test.

--

___
Python tracker 

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



[issue31392] Upgrade installers to OpenSSL 1.1.0g and 1.0.2m

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:

Updated the 3.7.0a3 and 3.6.4 macOS installer builds to 1.0.2m; I'll get 3.7.x 
to 1.1.0 before 3.7.0a4.

--

___
Python tracker 

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



[issue32219] SSLWantWriteError being raised by blocking SSL socket

2017-12-04 Thread Nathaniel Smith

New submission from Nathaniel Smith :

I have a test case that sets up a blocking SSLSocket, and eventually calls 
unwrap() to do a proper SSL shutdown.

Every once in a while, the test blows up, because unwrap() unexpectedly raises 
SSLWantWriteError. This is very unexpected for a blocking socket.

Unfortunately, since this is intermittent, I don't have a reliable reproducer.

Both of the times I've seen this so far, it was on MacOS with CPython 3.6 (the 
official python.org build, so whichever openssl it uses), and it was 
specifically in unwrap():

https://travis-ci.org/python-trio/trio/jobs/298164123
https://travis-ci.org/python-trio/trio/jobs/311618077

Here's the code that fails -- as you can see it's just a straightforward 
blocking echo server using SSLContext.wrap_socket:


https://github.com/python-trio/trio/blob/3e62bf64946b1dcbf42c2d03e39435d4b1ba00ac/trio/tests/test_ssl.py#L92

--
assignee: christian.heimes
components: SSL
messages: 307634
nosy: alex, christian.heimes, dstufft, janssen, njs
priority: normal
severity: normal
status: open
title: SSLWantWriteError being raised by blocking SSL socket
versions: Python 3.6

___
Python tracker 

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



[issue31392] Upgrade installers to OpenSSL 1.1.0g and 1.0.2m

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:


New changeset 0bec5e147a6c0f62517df8e7033a38087451d5d4 by Ned Deily (Miss 
Islington (bot)) in branch '3.6':
[3.6] bpo-31392: Update macOS installer to use OpenSSL 1.0.2m (GH-4715) (#4716)
https://github.com/python/cpython/commit/0bec5e147a6c0f62517df8e7033a38087451d5d4


--

___
Python tracker 

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



[issue32204] async/await performance is very low

2017-12-04 Thread Yury Selivanov

Yury Selivanov  added the comment:

Also I suggest you to try uvloop.  If your production code is still slower that 
with asynq, I suggest you to profile it and post real profiles here.  I just 
don't think that asyncio.gather can be the main bottleneck you have, it must be 
something else.

--

___
Python tracker 

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



[issue32204] async/await performance is very low

2017-12-04 Thread Yury Selivanov

Yury Selivanov  added the comment:

> I agree that the PR I offers little (or no) improvement but I implore you to 
> explore performance bottlenecks in async/await.

And I'm saying that there are no "performance bottlenecks in async/await".  
async/await is *not* asyncio.  async/await and yield are language constructs 
that use generator objects.

Your benchmark *does not* test async/await vs yield.  It compares 
asyncio.gather to batches in asynq.

Now, maybe asyncio.gather can be optimized, but we should open a separate issue 
for that if we can have a better implementation of it.

Your benchmark doesn't test the performance of IO -- that's the thing we 
actually optimize in asyncio and that we usually benchmark.  asyncio.gather is 
a niche thing, and usually network applications don't have it as a bottleneck.

Closing this issue.

--
resolution:  -> not a bug
stage:  -> resolved
status: open -> closed

___
Python tracker 

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



[issue32217] freeze.py fails to work.

2017-12-04 Thread Decorater

Change by Decorater :


--
versions: +Python 3.7, Python 3.8

___
Python tracker 

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



[issue32217] freeze.py fails to work.

2017-12-04 Thread Decorater

Decorater  added the comment:

Seems that freeze.py was not updated since 3.6.0b2 and also fails like this in 
master as well. (specifically commit 10108a7b9affa61719a1dc1863edb2bdb3402fd1) 
was last edit to the file in both the 3.6 and the master branch.

Could it be that ``sys.abiflags`` was removed from the sys module and so freeze 
stopped working due to that?

--

___
Python tracker 

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



[issue32218] add __iter__ to enum.Flag members

2017-12-04 Thread Guy Gangemi

New submission from Guy Gangemi :

I'm proposing to extend enum.Flag member functionality so it is iterable in a 
manner similar to enum.Flag subclasses.

from enum import Flag, auto


class FlagIter(Flag):
def __iter__(self):
for memeber in self._member_map_.values():
if member in self:
yield member


class Colour(FlagIter):
RED = auto()
GREEN = auto()
BLUE = auto()
YELLOW = RED | GREEN

cyan = Colour.GREEN | Colour.Blue

print(*Colour)  # Colour.RED Colour.GREEN Colour.BLUE Colour.YELLOW

# Without the enhancement, 'not iterable' is thrown for these
print(*cyan)  # Colour.GREEN Colour.BLUE
print(*Colour.YELLOW)  # Colour.RED Colour.GREEN Colour.YELLOW
print(*~Colour.RED)  # Colour.GREEN Colour.BLUE

--
messages: 307629
nosy: Guy Gangemi
priority: normal
severity: normal
status: open
title: add __iter__ to enum.Flag members
type: enhancement

___
Python tracker 

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



[issue20891] PyGILState_Ensure on non-Python thread causes fatal error

2017-12-04 Thread Nick Coghlan

Nick Coghlan  added the comment:

+1 for making this change 3.6+ only.

Victor, could you run your patch through the performance benchmarks? While I 
suspect Antoine is right that our current GIL management heuristics will mean 
we don't need the lazy initialisation optimisation any more, it's still 
preferable to have the specific numbers before merging it.

--

___
Python tracker 

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



[issue28791] update SQLite libraries for Windows and macOS installers

2017-12-04 Thread Mariatta Wijaya

Change by Mariatta Wijaya :


--
pull_requests: +4627
stage: needs patch -> patch review

___
Python tracker 

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



[issue31392] Upgrade installers to OpenSSL 1.1.0g and 1.0.2m

2017-12-04 Thread Roundup Robot

Change by Roundup Robot :


--
pull_requests: +4626

___
Python tracker 

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



[issue31392] Upgrade installers to OpenSSL 1.1.0g and 1.0.2m

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:


New changeset 24e046987b8e34bb4f1f3fd9bd31f1d605e347dc by Ned Deily in branch 
'master':
bpo-31392: Update macOS installer to use OpenSSL 1.0.2m (#4715)
https://github.com/python/cpython/commit/24e046987b8e34bb4f1f3fd9bd31f1d605e347dc


--

___
Python tracker 

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



[issue32204] async/await performance is very low

2017-12-04 Thread Liran Nuna

Liran Nuna  added the comment:

> which makes them faster in some specific micro-benchmarks

I'm not talking about micro-benchmarks, we are actively using asynq in 
production. Recent efforts to migrate to async/await have hit a major  
performance hit - our response times nearly doubled.

I agree that the PR I offers little (or no) improvement but I implore you to 
explore performance bottlenecks in async/await.

--

___
Python tracker 

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



[issue31392] Upgrade installers to OpenSSL 1.1.0g and 1.0.2m

2017-12-04 Thread Ned Deily

Change by Ned Deily :


--
pull_requests: +4625
stage: needs patch -> patch review

___
Python tracker 

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



[issue28791] update SQLite libraries for Windows and macOS installers

2017-12-04 Thread Mariatta Wijaya

Mariatta Wijaya  added the comment:

Tried to get miss-islington to backport Windows installer change to 3.6, did 
not work.

I'll work on the backport PR.

--

___
Python tracker 

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



[issue28556] typing.py upgrades

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:


New changeset b0576278b2d44472c73696f6dea4855f7ffb7ff1 by Ned Deily (Miss 
Islington (bot)) in branch '3.6':
[bpo-28556] Minor fixes for typing module (GH-4710) (#4713)
https://github.com/python/cpython/commit/b0576278b2d44472c73696f6dea4855f7ffb7ff1


--

___
Python tracker 

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



[issue32217] freeze.py fails to work.

2017-12-04 Thread Decorater

Decorater  added the comment:

It seems to also give the same traceback when using the build from the latest 
commit on branch 3.6 as well as 3.6.0 when using the freeze.py from the clone 
as well (The way I tested it was manually patching the binaries in my my 3.6 
install).

--

___
Python tracker 

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



[issue19610] Give clear error messages for invalid types used for setup.py params (e.g. tuple for classifiers)

2017-12-04 Thread Neil Schemenauer

Neil Schemenauer  added the comment:


New changeset 8837dd092fe5ad5184889104e8036811ed839f98 by Neil Schemenauer in 
branch 'master':
bpo-19610: Warn if distutils is provided something other than a list to some 
fields (#4685)
https://github.com/python/cpython/commit/8837dd092fe5ad5184889104e8036811ed839f98


--

___
Python tracker 

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



[issue12851] ctypes: getbuffer() never provides strides

2017-12-04 Thread Jeff VanOss

Change by Jeff VanOss :


--
keywords: +patch
pull_requests: +4624
stage: needs patch -> patch review

___
Python tracker 

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



[issue28556] typing.py upgrades

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:


New changeset 29bc19321018ec6e58f9f4da9c18c42e9a9c580e by Ned Deily (Ivan 
Levkivskyi) in branch 'master':
[bpo-28556] Minor fixes for typing module (#4710)
https://github.com/python/cpython/commit/29bc19321018ec6e58f9f4da9c18c42e9a9c580e


--
nosy: +ned.deily

___
Python tracker 

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



[issue28556] typing.py upgrades

2017-12-04 Thread Roundup Robot

Change by Roundup Robot :


--
pull_requests: +4623

___
Python tracker 

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



[issue28791] update SQLite libraries for Windows and macOS installers

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:

I've updated the macOS installer for 3.7.0 and for 3.6.4.  I'll leave this open 
for possible updating the Windows installer for 3.6.x (OK by me) and for 
possible updates for 2.7.x.

--
stage: patch review -> needs patch
title: update sqlite to latest version before beta 1 -> update SQLite libraries 
for Windows and macOS installers
versions: +Python 3.6

___
Python tracker 

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



[issue32217] freeze.py fails to work.

2017-12-04 Thread R. David Murray

R. David Murray  added the comment:

Does the 3.6.0 freeze fail under 3.6.0, or the 3.6.3 freeze fail under 3.6.3?  
If not, there's no bug to report.

--
nosy: +r.david.murray

___
Python tracker 

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



[issue28791] update SQLite libraries for Windows and macOS installers

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:

> Should we mark issue 30952 'deferred blocker' too?

No, that's a different matter.  AFAICT, there is no standard option for that.

--

___
Python tracker 

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



[issue28791] update sqlite to latest version before beta 1

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:


New changeset a72e7bf563d5a9fb706a1775f5ae883a91b8a99f by Ned Deily in branch 
'3.6':
[3.6] bpo-28791: Update macOS installer to use SQLite 3.21.0. (#4245) (#4711)
https://github.com/python/cpython/commit/a72e7bf563d5a9fb706a1775f5ae883a91b8a99f


--

___
Python tracker 

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



[issue15873] datetime: add ability to parse RFC 3339 dates and times

2017-12-04 Thread Paul Ganssle

Paul Ganssle  added the comment:

> The other difference is Mattieu guarantees ValueError for invalid input 
> strings, which I think is good.

I forgot to address this - but I don't think this is a difference in 
approaches. If you pass `None` or an int or something, the problem is with the 
type, not the value, so at a minimum you're looking at TypeError and ValueError 
- and those are the only exceptions raised in my patch.

(I'll note that my patch does not accept bytes, though this is something of an 
artificial limitation, since the patch makes use of the fact that all valid 
isoformat() strings will contain at most exactly 1 non-ascii character in 
position 10, so we could easily work around this, but I think the trend for 
CPython is to avoid blurring the lines between bytes and str rather than 
encouraging their interchangeable use.)

--

___
Python tracker 

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



[issue32217] freeze.py fails to work.

2017-12-04 Thread Decorater

New submission from Decorater :

It seems on my system installed python 3.6.0 when invoking python 3.6.3's 
freeze.py it seems to fail with this traceback:

python ..\externals\cpython\Tools\freeze\freeze.py pyeimport.py
Traceback (most recent call last):
  File "..\externals\cpython\Tools\freeze\freeze.py", line 491, in 
main()
  File "..\externals\cpython\Tools\freeze\freeze.py", line 220, in main
flagged_version = version + sys.abiflags
AttributeError: module 'sys' has no attribute 'abiflags'

--
components: Demos and Tools, Windows
messages: 307615
nosy: Decorater, paul.moore, steve.dower, tim.golden, zach.ware
priority: normal
severity: normal
status: open
title: freeze.py fails to work.
versions: Python 3.6

___
Python tracker 

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



[issue28791] update sqlite to latest version before beta 1

2017-12-04 Thread Ned Deily

Change by Ned Deily :


--
pull_requests: +4622

___
Python tracker 

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



[issue32216] Document PEP 557 Data Classes

2017-12-04 Thread Eric V. Smith

New submission from Eric V. Smith :

The documentation needs to be added.

--
assignee: docs@python
components: Documentation
messages: 307614
nosy: docs@python, eric.smith
priority: high
severity: normal
status: open
title: Document PEP 557 Data Classes
versions: Python 3.7

___
Python tracker 

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



[issue28791] update sqlite to latest version before beta 1

2017-12-04 Thread Ned Deily

Ned Deily  added the comment:


New changeset ca7562a7fea61646c1b40ace04deecf9903d34a1 by Ned Deily (Mariatta) 
in branch 'master':
bpo-28791: Update macOS installer to use SQLite 3.21.0. (#4245)
https://github.com/python/cpython/commit/ca7562a7fea61646c1b40ace04deecf9903d34a1


--

___
Python tracker 

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



[issue32215] sqlite3 400x-600x slower depending on formatting of an UPDATE statement in a string

2017-12-04 Thread R. David Murray

Change by R. David Murray :


--
versions: +Python 3.7

___
Python tracker 

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



[issue32215] sqlite3 400x-600x slower depending on formatting of an UPDATE statement in a string

2017-12-04 Thread R. David Murray

R. David Murray  added the comment:

...using the *same* sqlite version...

--

___
Python tracker 

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



[issue32215] sqlite3 400x-600x slower depending on formatting of an UPDATE statement in a string

2017-12-04 Thread R. David Murray

R. David Murray  added the comment:

I can confirm that there is a difference on linux as well, using the sqlite 
version for both 2.7 and 3.7:

rdmurray@pydev:~/python/p27[2.7]>./python sqlite3_27_36_performance_bug.py
First step: 3.22849011421
Second step: 3.2167429924

rdmurray@pydev:~/python/p37[master]>./python 
../p27/sqlite3_27_36_performance_bug.py
First step: 3.2722721099853516
Second step: 4.094221353530884

(I changed time.clock() to time.time()).

--
nosy: +r.david.murray

___
Python tracker 

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



[issue28556] typing.py upgrades

2017-12-04 Thread Ivan Levkivskyi

Change by Ivan Levkivskyi :


--
pull_requests: +4621

___
Python tracker 

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



[issue32215] sqlite3 400x-600x slower depending on formatting of an UPDATE statement in a string

2017-12-04 Thread Brian Forst

New submission from Brian Forst :

We're moving some code from Python 2.7 to 3.6 and found a weird performance 
issue using SQLite in-memory and on-disk DBs with the built-in sqlite3 library. 
In Python 2.7, the two update statements below (excerpted from the attached 
file) run in the same amount of time. In Python 3.6 the update statement with 
the table name on a separate line runs 400x-600x slower with the example data 
provided in the file.

"""
UPDATE tbl
SET col2 = NULL
WHERE col1 = ?
"""

"""
UPDATE
  tbl
SET col2 = NULL
WHERE col1 = ?
"""

We have verified this using Python installs from python.org on macOS Sierra and 
Windows 7 for Python 2.7 and 3.6.

We have tried formatting the SQL strings in different ways and it appears that 
the speed change only occurs when the table name is on a different line than 
the "UPDATE".

This also appears to be hitting some type of quadratic behaviour as with 10x 
less records, it only takes 10-15x as long. With the demo in the file we are 
seeing it take 1.6s on the fast string and ~1000s on the slow string.

--
components: Interpreter Core, Library (Lib)
files: sqlite3_27_36_performance_bug.py
messages: 307609
nosy: bforst
priority: normal
severity: normal
status: open
title: sqlite3 400x-600x slower depending on formatting of an UPDATE statement 
in a string
type: performance
versions: Python 2.7, Python 3.6
Added file: https://bugs.python.org/file47315/sqlite3_27_36_performance_bug.py

___
Python tracker 

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



[issue15873] datetime: add ability to parse RFC 3339 dates and times

2017-12-04 Thread Alexander Belopolsky

Alexander Belopolsky  added the comment:

+1 on what Paul said.

Mathieu, the goal for 3.7 will be to get Paul's PR merged.  It will be great if 
you could help in reviewing it.  We can return to the features in your PR 
during the 3.8 development cycle.

--

___
Python tracker 

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



[issue32208] Improve semaphore documentation

2017-12-04 Thread Garrett Berg

Garrett Berg  added the comment:

Gave it a shot!

--
keywords: +patch
pull_requests: +4620
stage: needs patch -> patch review

___
Python tracker 

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



[issue15873] datetime: add ability to parse RFC 3339 dates and times

2017-12-04 Thread Paul Ganssle

Paul Ganssle  added the comment:

> The better is the enemy of the good here.  Given the history of this issue, I 
> would rather accept a well documented restrictive parser than wait for a more 
> general code to be written.  Note that we can always relax the parsing rules 
> in the future.

This is in fact the exact reason why I wrote the isoformat parser like I did, 
because ISO 8601 is actually a quite expansive standard, and this is the least 
controversial subset of the features. In fact, I spent quite a bit of time on 
adapting the general purpose ISO8601 parser I wrote for dateutil *into* one 
that only accepts the output of isoformat() because it places a minimum burden 
on ongoing support, so it's not really a matter of waiting for a more general 
parser to be written.

I suggest that for Python 3.7 we *only* support output of isoformat(). Many 
general iso8601 parsers exist, including the one I have already implemented for 
python-dateutil (which will be part of the dateutil 2.7.0 release). We can have 
further discussion later about what exactly should be supported in Python 3.8, 
but even in the pre-release discussions I'm already seeing pushback about some 
of the more unusual 8601 formats, and it's a *lot* easier to explain (in 
documentation) that `fromisoformat()` is intended to be the inverse of 
`isoformat()` than it is to explain which variations of ISO 8601 are and are 
not supported (fractional minutes? if you're following the standard, the 
separator has to be a T, so what other variations of the standard are allowed?).

--

___
Python tracker 

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



[issue15873] datetime: add ability to parse RFC 3339 dates and times

2017-12-04 Thread Mathieu Dupuy

Mathieu Dupuy  added the comment:

I'm right now available again to work on this issue. I'll submit a pull
request within a week with all issues addressed

Le 4 déc. 2017 11:45 PM, "Alexander Belopolsky"  a
écrit :

>
> Alexander Belopolsky  added the comment:
>
> The better is the enemy of the good here.  Given the history of this
> issue, I would rather accept a well documented restrictive parser than wait
> for a more general code to be written.  Note that we can always relax the
> parsing rules in the future.
>
> --
>
> ___
> Python tracker 
> 
> ___
>

--

___
Python tracker 

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



[issue15873] datetime: add ability to parse RFC 3339 dates and times

2017-12-04 Thread Alexander Belopolsky

Alexander Belopolsky  added the comment:

The better is the enemy of the good here.  Given the history of this issue, I 
would rather accept a well documented restrictive parser than wait for a more 
general code to be written.  Note that we can always relax the parsing rules in 
the future.

--

___
Python tracker 

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



[issue15873] datetime: add ability to parse RFC 3339 dates and times

2017-12-04 Thread Martin Panter

Martin Panter  added the comment:

The other difference is Mattieu guarantees ValueError for invalid input 
strings, which I think is good.

--

___
Python tracker 

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



[issue15873] datetime: add ability to parse RFC 3339 dates and times

2017-12-04 Thread Martin Panter

Martin Panter  added the comment:

P-ganssle seems to be proposing to limit parsing to exactly what 
“datetime.isoformat” produces; i.e. whole number of seconds, milliseconds or 
microseconds. Personally I would prefer it without this limitation, like in 
Mathieu’s patches. But P-ganssle has done some documentation, so perhaps we can 
combine the work of each?

--
nosy: +p-ganssle

___
Python tracker 

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



[issue32210] Add the versions of the Android SDK and NDK to test.pythoninfo

2017-12-04 Thread STINNER Victor

STINNER Victor  added the comment:

Oh, I forgot that pythoninfo already has:

call_func(info_add, 'sys.androidapilevel', sys, 'getandroidapilevel')

Well, that's the *build time* API level, not the most useful one, but still 
useful.

--

___
Python tracker 

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



[issue32175] Add hash auto-randomization

2017-12-04 Thread STINNER Victor

STINNER Victor  added the comment:

By the way, for a few other reasons, Python 3 is more secure than Python 2.7. 
If you care of security, please upgrade!

--

___
Python tracker 

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



[issue30928] Copy modified blurbs to idlelib/NEWS.txt

2017-12-04 Thread Roundup Robot

Change by Roundup Robot :


--
pull_requests: +4619

___
Python tracker 

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



[issue30928] Copy modified blurbs to idlelib/NEWS.txt

2017-12-04 Thread Terry J. Reedy

Terry J. Reedy  added the comment:


New changeset 2c0c68d927bfa557f98bac26644f5b64c4b135a7 by Terry Jan Reedy in 
branch 'master':
bpo-30928: update idlelib/NEWS.txt. (#4706)
https://github.com/python/cpython/commit/2c0c68d927bfa557f98bac26644f5b64c4b135a7


--

___
Python tracker 

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



[issue32214] Implement PEP 557: Data Classes

2017-12-04 Thread Eric V. Smith

Change by Eric V. Smith :


--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 

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



[issue32207] IDLE: run's tk update adds context traceback on callback error

2017-12-04 Thread Terry J. Reedy

Change by Terry J. Reedy :


--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 

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



[issue32207] IDLE: run's tk update adds context traceback on callback error

2017-12-04 Thread Terry J. Reedy

Terry J. Reedy  added the comment:


New changeset 9da33c82124f27eb58ba4cf145675fe7a1035744 by Terry Jan Reedy (Miss 
Islington (bot)) in branch '3.6':
bpo-32207: Improve tk event exception tracebacks in IDLE. (GH-4703) (#4705)
https://github.com/python/cpython/commit/9da33c82124f27eb58ba4cf145675fe7a1035744


--

___
Python tracker 

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



[issue32214] Implement PEP 557: Data Classes

2017-12-04 Thread Eric V. Smith

Eric V. Smith  added the comment:


New changeset f0db54a0a1823534606ed5ce5a772365ba694c41 by Eric V. Smith in 
branch 'master':
bpo-32214: Implement PEP 557: Data Classes (#4704)
https://github.com/python/cpython/commit/f0db54a0a1823534606ed5ce5a772365ba694c41


--

___
Python tracker 

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



[issue30928] Copy modified blurbs to idlelib/NEWS.txt

2017-12-04 Thread Terry J. Reedy

Change by Terry J. Reedy :


--
pull_requests: +4618

___
Python tracker 

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



[issue32207] IDLE: run's tk update adds context traceback on callback error

2017-12-04 Thread Roundup Robot

Change by Roundup Robot :


--
pull_requests: +4617

___
Python tracker 

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



[issue32207] IDLE: run's tk update adds context traceback on callback error

2017-12-04 Thread Terry J. Reedy

Terry J. Reedy  added the comment:


New changeset 1e2fcac4972530aa2c963d7e4011021df5ba866e by Terry Jan Reedy in 
branch 'master':
bpo-32207: Improve tk event exception tracebacks in IDLE. (#4703)
https://github.com/python/cpython/commit/1e2fcac4972530aa2c963d7e4011021df5ba866e


--

___
Python tracker 

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



[issue32214] Implement PEP 557: Data Classes

2017-12-04 Thread Eric V. Smith

Change by Eric V. Smith :


--
keywords: +patch
pull_requests: +4616
stage:  -> patch review

___
Python tracker 

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



[issue32207] IDLE: run's tk update adds context traceback on callback error

2017-12-04 Thread Terry J. Reedy

Change by Terry J. Reedy :


--
stage: needs patch -> patch review

___
Python tracker 

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



[issue32214] Implement PEP 557: Data Classes

2017-12-04 Thread Eric V. Smith

New submission from Eric V. Smith :

PR to follow. Development was at https://github.com/ericvsmith/dataclasses

--
assignee: eric.smith
components: Library (Lib)
messages: 307596
nosy: eric.smith, ned.deily
priority: normal
severity: normal
status: open
title: Implement PEP 557: Data Classes
type: enhancement
versions: Python 3.7

___
Python tracker 

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



[issue30928] Copy modified blurbs to idlelib/NEWS.txt

2017-12-04 Thread Terry J. Reedy

Terry J. Reedy  added the comment:


New changeset 6e687948b0025a1ab0d0773efe62ce64f0c745fc by Terry Jan Reedy (Miss 
Islington (bot)) in branch '3.6':
bpo-30928: Update idlelib/NEWS.txt to 2017 Dec 3. (GH-4701) (#4702)
https://github.com/python/cpython/commit/6e687948b0025a1ab0d0773efe62ce64f0c745fc


--

___
Python tracker 

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



[issue32207] IDLE: run's tk update adds context traceback on callback error

2017-12-04 Thread Terry J. Reedy

Terry J. Reedy  added the comment:

Thanks.  I am still puzzled why the nested within nested try-except did not 
work as I expected, but I care more about fixing this. The result based on your 
suggestion is better (to read, I think) than extra nesting that did work.

--
stage: patch review -> needs patch

___
Python tracker 

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



[issue32207] IDLE: run's tk update adds context traceback on callback error

2017-12-04 Thread Terry J. Reedy

Change by Terry J. Reedy :


--
keywords: +patch
pull_requests: +4615
stage: needs patch -> patch review

___
Python tracker 

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



[issue32175] Add hash auto-randomization

2017-12-04 Thread Raymond Hettinger

Raymond Hettinger  added the comment:

Marking as closed for the reasons listed by the other respondents.

--
resolution:  -> rejected
stage:  -> resolved
status: open -> closed

___
Python tracker 

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



[issue30928] Copy modified blurbs to idlelib/NEWS.txt

2017-12-04 Thread Roundup Robot

Change by Roundup Robot :


--
pull_requests: +4614

___
Python tracker 

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



[issue30928] Copy modified blurbs to idlelib/NEWS.txt

2017-12-04 Thread Terry J. Reedy

Terry J. Reedy  added the comment:


New changeset 21255fc3932a60c064f85c0fe68f2840f390ebe4 by Terry Jan Reedy in 
branch 'master':
bpo-30928: Update idlelib/NEWS.txt to 2017 Dec 3. (#4701)
https://github.com/python/cpython/commit/21255fc3932a60c064f85c0fe68f2840f390ebe4


--

___
Python tracker 

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



[issue21621] Add note to 3.x What's New re Idle changes in bugfix releases

2017-12-04 Thread Terry J. Reedy

Terry J. Reedy  added the comment:

#21961 ends with the entry I added for 3.4 and 3.5.  3.7 (and checking 3.6) 
will be a new issue.

--
resolution:  -> duplicate
stage: needs patch -> resolved
status: open -> closed
superseder:  -> Add What's New for Idle.

___
Python tracker 

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



[issue32175] Add hash auto-randomization

2017-12-04 Thread Antoine Pitrou

Antoine Pitrou  added the comment:

Agreed this is not desirable at this point.  Let's leave 2.7 like it is.

--
nosy: +pitrou

___
Python tracker 

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



[issue32208] Improve semaphore documentation

2017-12-04 Thread Antoine Pitrou

Antoine Pitrou  added the comment:

The changes you are proposing sound reasonable to me.  Would you like to submit 
a pull request for them?

--
assignee:  -> docs@python
components: +Documentation
nosy: +docs@python, pitrou
stage:  -> needs patch
versions:  -Python 3.4, Python 3.5, Python 3.8

___
Python tracker 

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



[issue30928] Copy modified blurbs to idlelib/NEWS.txt

2017-12-04 Thread Terry J. Reedy

Change by Terry J. Reedy :


--
pull_requests: +4613

___
Python tracker 

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



[issue19610] Give clear error messages for invalid types used for setup.py params (e.g. tuple for classifiers)

2017-12-04 Thread Neil Schemenauer

Neil Schemenauer  added the comment:

Don't be sorry.  We are all passionate about making Python better.  distutils 
will be better once we gets this sorted out.  Berker deserves credit for seeing 
an issue and developing on a fix for it.  The collaboration between all the 
core developers is making the final fix better than what any one of us could 
make.

The process is working quite well IMHO.  I had a small patch a few days ago 
that I was considering just committing without reviews.  I went through the 
review process though and the patch was better as a result of the review 
feedback I got.

The documentation says that the argument needs to be a list of strings or a 
string.  So, unless we change the documentation, a string must be accepted 
without warnings or errors.  The current PR works pretty well.  Figuring out 
how to best warn is the trickiest bit.  Sometimes it seems like 
DepreciationWarning doesn't work as we would like, since it often gets 
suppressed.  It seems pip is especially "good" at hiding it.

--

___
Python tracker 

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



[issue32205] test.pythoninfo does not print the cross-built sysconfig data

2017-12-04 Thread Xavier de Gaye

Xavier de Gaye  added the comment:

I may have misunderstood the scope of pythoninfo. On Android the readline or 
sqlite versions are known at build time since they have to be built at that 
time, but much more useful information can be obtained (or will be obtained) 
from python running on the device or the emulator.

For the NDK and SDK versions (issue 32210), these can be printed by the 'all' 
target for the NDK and by one of the emulator targets for the SDK.

This means that both this issue and #32210 may be closed as wont fix.

--

___
Python tracker 

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



[issue20891] PyGILState_Ensure on non-Python thread causes fatal error

2017-12-04 Thread Guido van Rossum

Guido van Rossum  added the comment:

For 2.7 I hesitate to OK this, who knows what skeletons are still in that
closet. It doesn't sound like a security fix to me. For 3.6 I'm fine with
it as a bugfix.

--

___
Python tracker 

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



[issue17611] Move unwinding of stack for "pseudo exceptions" from interpreter to compiler.

2017-12-04 Thread Neil Schemenauer

Neil Schemenauer  added the comment:

After studying the patch and doing some reading, I prefer the finally-block 
duplication approach as well.  Java does it that way as well and it works for 
them.  It would be be interesting to compile a large body of packages and see 
what the increase in bytecode size actually is with the duplication.  My gut 
feeling is that it will not be a big deal.

There is a bug with the PR regarding the final bodies.  Exits from the final 
body cause the whole fblock stack to unwind, not just the blocks enclosing the 
final body.  Unwind looks at 'c' to get the fblock stack. I think we need to 
allocate fblockinfo on the C stack and then use a back pointer to enclosing 
block.  When you get into a final body that creates its own fblockinfo (e.g. a 
try/except inside the finally), the current code doesn't work.

The fact that the whole test suite passes with these issues tells me that the 
amount of stuff happening in final bodies must be pretty simple in most code.  

I spent a good part of Sunday trying to understand how the PR works.  It seems 
to me that the ceval/bytecode changes are pretty solid.  The compiler needs 
some bug fixes.  Further optimisations could be done at a later time.  I'm 
curious to see Serhiy's approach though.

--

___
Python tracker 

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



[issue17611] Move unwinding of stack for "pseudo exceptions" from interpreter to compiler.

2017-12-04 Thread Mark Shannon

Mark Shannon  added the comment:

Actually looking back at the original patch, the gap between __enter__ and 
SETUP_FINALLY *was* in the original patch. My mistake. 

The fix would to be restore SETUP_WITH. The complexity we really want to get 
rid of is at the end of the with statement not the start.

--

___
Python tracker 

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



[issue15873] datetime: add ability to parse RFC 3339 dates and times

2017-12-04 Thread Paul Ganssle

Change by Paul Ganssle :


--
pull_requests: +4611

___
Python tracker 

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



[issue20891] PyGILState_Ensure on non-Python thread causes fatal error

2017-12-04 Thread STINNER Victor

STINNER Victor  added the comment:

I wrote the PR 4700 to create the GIL in Py_Initialize().

Would you be ok to backport this fix to Python 2.7 and 3.6 as well?

--

___
Python tracker 

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



[issue20891] PyGILState_Ensure on non-Python thread causes fatal error

2017-12-04 Thread STINNER Victor

Change by STINNER Victor :


--
pull_requests: +4612
stage: resolved -> patch review

___
Python tracker 

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



[issue17611] Move unwinding of stack for "pseudo exceptions" from interpreter to compiler.

2017-12-04 Thread Mark Shannon

Mark Shannon  added the comment:

On 04/12/17 16:56, Serhiy Storchaka wrote:
> 
> Serhiy Storchaka  added the comment:
> 
> Right, this is similar to how the JSR/RET pair was used in for calling the
> finally block.
> 
> It seems the main drawback of duplicating of the finally code is not 
> increasing
> the code size (which can be exponential in degenerate cases), but the problem
> with determining the boundaries of the finally block.

What exactly is the problem?
Why do you need to determine the boundaries of finally blocks?

...

> 
> This is the first step. In the second step I'm going to get rid of dynamic
> PyTryBlock and instructions like SETUP_EXCEPT and POP_BLOCK. I think all
> necessary information can be determined at compile time and saved in an
> auxiliary structure, similarly as line numbers are saved in the packed
> co_lnotab array instead of be set by SET_LINENO instructions. Boundaries of
> finally block could be stored in the same structure. This will make 
> try/except/
> finally virtually zero-overhead.

Fine, but it isn't necessary for this issue. The overhead of try/except 
is already quite low.

> 
> Currently there is other problem with Antoine's PR (I didn't know about them
> when made a review). There is a gap between calling the __enter__ method and
> the SETUP_FINALLY instruction. 

That wasn't a problem with the original patch.

--

___
Python tracker 

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




[issue19610] Give clear error messages for invalid types used for setup.py params (e.g. tuple for classifiers)

2017-12-04 Thread STINNER Victor

Change by STINNER Victor :


--
nosy:  -vstinner

___
Python tracker 

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



[issue32210] Add the versions of the Android SDK and NDK to test.pythoninfo

2017-12-04 Thread STINNER Victor

STINNER Victor  added the comment:

Maybe add a collect_android() function which would exit early if 
sys.getandroidapilevel() doesn't exist?

> * The NDK version can be obtained by parsing the file 
> $ANDROID_NDK_ROOT/source.properties.
> * The versions of the SDK build-tools, emulator and platform-tools packages 
> as well as those of the system images can be obtained by parsing the output 
> of "$ANDROID_SDK_ROOT/tools/bin/sdkmanager --list".

You are free to add whatever you want/need, but just try to handle properly 
errors to collect other info even if these data cannot be read.

--

___
Python tracker 

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



[issue32213] assertRaises and subTest context managers cannot be nested

2017-12-04 Thread R. David Murray

Change by R. David Murray :


--
resolution:  -> not a bug

___
Python tracker 

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



[issue32205] test.pythoninfo does not print the cross-built sysconfig data

2017-12-04 Thread STINNER Victor

STINNER Victor  added the comment:

See also bpo-32210: Add the versions of the Android SDK and NDK to 
test.pythoninfo.

--

___
Python tracker 

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



[issue32205] test.pythoninfo does not print the cross-built sysconfig data

2017-12-04 Thread STINNER Victor

STINNER Victor  added the comment:

"make pythoninfo" is an alias for ./python -m test.pythoninfo. I added to 
support Python compiled in shared mode (./configure --enable-shared) and macOS 
which requires ./python.exe.

Obviously, for a specific buildbot or specific script, you are free to run 
directly ./python -m test.pythoninfo, rather than running "make pythoninfo" ;-)

--

___
Python tracker 

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



[issue32213] assertRaises and subTest context managers cannot be nested

2017-12-04 Thread R. David Murray

R. David Murray  added the comment:

Yes, that's an easy mistake to make.  I avoided it by only running one of the 
tests cases at a time, and I'll admit I had to think about it for a while to 
understand what was going on in your first case.

--

___
Python tracker 

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



[issue17611] Move unwinding of stack for "pseudo exceptions" from interpreter to compiler.

2017-12-04 Thread Serhiy Storchaka

Serhiy Storchaka  added the comment:

Right, this is similar to how the JSR/RET pair was used in for calling the 
finally block.

It seems the main drawback of duplicating of the finally code is not increasing 
the code size (which can be exponential in degenerate cases), but the problem 
with determining the boundaries of the finally block.

The main purpose of this issue (getting rid of "pseudo exceptions" in the 
interpreter) will be achieved in any case.

This is the first step. In the second step I'm going to get rid of dynamic 
PyTryBlock and instructions like SETUP_EXCEPT and POP_BLOCK. I think all 
necessary information can be determined at compile time and saved in an 
auxiliary structure, similarly as line numbers are saved in the packed 
co_lnotab array instead of be set by SET_LINENO instructions. Boundaries of 
finally block could be stored in the same structure. This will make try/except/
finally virtually zero-overhead.

In the third step we could generate duplicates of finally blocks. This will be 
easier if other changes already applied and tested.

Currently there is other problem with Antoine's PR (I didn't know about them 
when made a review). There is a gap between calling the __enter__ method and 
the SETUP_FINALLY instruction. If the exception is raised in the gap, the 
__exit__ method will be never called. For example:

a = []
with CM() as a[0]: # IndexError
...

I still haven't fixed this problem. Maybe the simplest solution would be to 
return the SETUP_WITH instruction which calls __enter__ and creates the finally 
block prior to saving the result of __enter__.

--

___
Python tracker 

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



[issue32213] assertRaises and subTest context managers cannot be nested

2017-12-04 Thread Paul Ganssle

Paul Ganssle  added the comment:

@r.david.murray So it is, my mistake. I think I was conflating issues when this 
first came up, and then I didn't notice that the order the test cases printed 
in was different than I expected.

--
stage:  -> resolved
status: open -> closed

___
Python tracker 

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



[issue32213] assertRaises and subTest context managers cannot be nested

2017-12-04 Thread R. David Murray

R. David Murray  added the comment:

To be pedantic, are not macros, they are context managers :)

Your first case is not something I would have thought of coding.  In the 
to_raise=True case, the subTest is failing because an exception is raised 
inside its scope.  In the to_raise=False case, the subTest scope has already 
ended before the assertRaises scope completes and raises its error because no 
exception was raised.  That is, there is no subTest in effect to be reported 
when that failure occurs.

In your second case, when to_raise is False, no exception is raised, so the 
assertRaises correctly fails, and the subtest reports that to_raise is False.  
When to_raise is true, the exception is raised, the assertRaises passes and so 
does the subtest.  In other words, I can't reproduce the problem you cite for 
the second case.  Looking at what you pasted, it looks like you confused a 
test_assert_outer report with a test_report_inner report.

So, as far as I can see, there's nothing broken here, everything is working 
according to the documentation :)

--
nosy: +r.david.murray

___
Python tracker 

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



[issue31901] atexit callbacks should be run at subinterpreter shutdown

2017-12-04 Thread Marcel Plch

Marcel Plch  added the comment:

I created a PR with fix on this issue - 
https://github.com/python/cpython/pull/4611

This makes Py_EndInterpreter() call atexit callbacks for the subinterpreter it 
is destroying.

It doesn't make Py_Finalize() end all subinterpreters, as the current 
implementation of subinterpreters makes it hard to do so. This is the same as 
the current behaviour: you need to end all subinterpreters before calling 
Py_Finalize().

--

___
Python tracker 

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



  1   2   >