[issue26685] Raise errors from socket.close()

2016-10-18 Thread Martin Panter

Martin Panter added the comment:

If libuv closes the FD (step 3), won’t you get the same sort of problem if the 
uvloop user tries to do something else with the Python socket object, e.g. call 
getpeername()?

I see the fileno=... parameter for sockets as a parallel to the os.fdopen() 
function, which does raise exceptions from FileIO.close().

Maybe one option is to only trigger a DeprecationWarning, and raise a proper 
OSError in a future version.

--

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



[issue26685] Raise errors from socket.close()

2016-10-18 Thread Martin Panter

Martin Panter added the comment:

I think your code example is not very robust, because the “sock” object refers 
to a freed file descriptor, and could easily close an unrelated file:

$ python3.5 -q
>>> import socket
>>> sock0 = socket.socket()
>>> sock = socket.socket(fileno=sock0.fileno())
>>> sock0.close()
>>> f = open("/dev/null")  # Unrelated code/thread opens a file
>>> sock.close()  # Closes unrelated file descriptor!
>>> f.close()  # Error even in 3.5
Traceback (most recent call last):
  File "", line 1, in 
OSError: [Errno 9] Bad file descriptor

I am not familiar with your use case or library, but I would suggest that 
either:

1. Your code should call sock0.detach() rather than fileno(), so that sock0 no 
longer “owns” the file descriptor, or

2. libuv should not close file descriptors that it doesn’t own.

Calling socket.close() should be safe if the Python socket object is registered 
as closed, but IMO calling close(), or any other method, when the OS socket 
(file descriptor) has been released behind Python’s back is a programming error.

--

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



[issue26240] Docstring of the subprocess module should be cleaned up

2016-10-18 Thread Martin Panter

Martin Panter added the comment:

Thanks for tackling this one Tim. I agree with Berker that the :const:`True` 
changes are out of scope (some introduce errors and inaccuracies).

 class CalledProcessError(SubprocessError):
-"""Raised when a check_call() or check_output() process returns non-zero.
+"""Raised when a process run by check_call() or check_output() process
+returns a non-zero exit status.

New text has stray “process” noun. The old text was good enough IMO.

+  output:  Output of the child process if it was captured by run() or
+   check_output(). Otherwise, None.
 check_output() will also store the output in the output attribute.

I think that last paragraph is redundant and strange now that you already 
described the “output” attribute.

 class TimeoutExpired(SubprocessError):
+Attributes:

The “cmd” attribute is missing from the list.

 class Popen(object):

Your patch seems to be based on 3.6 or 3.7, but you have omitted the new 
“encoding” etc parameters from the signature (and list of constructor 
parameters). What about just relying on the automatic signature for __init__()?

+""" [. . .]
+  universal_newlines:
+If universal_newlines is True, the file objects stdout and stderr are
+opened as a text file, but lines may be terminated by any of '\n',

“opened as text files” would read better I think.

The escape codes will be translated to literal newlines etc in the doc string. 
The best solution is probably to make it a raw string: r""". . .""".

This universal_newlines entry has lots of details about newline translation of 
stdout and stderr, but fails to mention the translation of stdin. And I think 
the details about the child decoding its input should be added to the RST 
documentation before we consider adding it to the doc string.

--

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



[issue28466] SIGALRM fails to interrupt time.sleep() call on Python 3.5

2016-10-17 Thread Martin Panter

Martin Panter added the comment:

This is by design; see PEP 475, and the documentation 
<https://docs.python.org/3.5/library/time.html#time.sleep>.

If you make your signal handler raise an exception, it will interrupt the 
sleep() call most of the time. But if the signal happens to be received just 
before the sleep() call is about to be entered, the handler will only be run 
when the underlying OS sleep() call returns 10 s later.

--
nosy: +martin.panter
resolution:  -> not a bug
status: open -> closed

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



[issue27659] Check for the existence of crypt()

2016-10-17 Thread Martin Panter

Martin Panter added the comment:

If there is an obscure platform where we don’t include the right header file 
for a function, changing the warning into an error would cause the build to 
fail. If we do make it an error, it should only be so for 3.7.

--

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



[issue28444] Missing extensions modules when cross compiling python 3.5.2 for arm on Linux

2016-10-17 Thread Martin Panter

Martin Panter added the comment:

PS: I agree it would be good to add more documentation for cross-compiling. I 
tried to suggest something in an outdated patch once before; see the bottom of 
<https://bugs.python.org/file42143/cross-override.patch>.

--

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



[issue28444] Missing extensions modules when cross compiling python 3.5.2 for arm on Linux

2016-10-17 Thread Martin Panter

Martin Panter added the comment:

Well, I am not really an expert on the setup.py stuff, but I will ask a 
question anyway that may help the review process: Why do you remove the code 
that loops over Modules/Setup? Maybe is it redundant with the other code for 
removing the already-built-in modules?

Looking at the repository history, the code for avoiding already-built-in 
modules was first added as part of revision c503fa9b265e; see the __import__() 
call. Later, the second chunk of code looping over Setup was added in revision 
90e90c92198b, with discussion at 
<https://marc.info/?i=e14wl9x-cp...@usw-sf-web3.sourceforge.net>.

The logic matching MODOBJS doesn’t look super robust. E.g. I suspect it will 
get confused if there are two Python modules that happen to use the same C 
filename in different subdirectories. Also, I suspect it could get confused by 
_math.c, which is shared by the “math” and “cmath” modules.

Perhaps I don’t know what I am talking about, but if you added 
Modules/Setup.config to the list of Setup files to process, would that 
eliminate the need to look at both MODOBJS and sys.builtin_module_names?

--
stage:  -> patch review

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



[issue28462] subprocess pipe can't see EOF from a child in case of a few children run with subprocess

2016-10-17 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


--
components: +Windows
nosy: +paul.moore, steve.dower, tim.golden, zach.ware

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



[issue28447] socket.getpeername() failure on broken TCP/IP connection

2016-10-16 Thread Martin Panter

Martin Panter added the comment:

So is your “automatic closing” due to your program, or a bug in Python? You 
will have to give more information if you want anyone else to look at this. 
When I run the code you posted (with various modules imported) all I get is

NameError: name 'yellow_page' is not defined

--

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



[issue27815] Make SSL suppress_ragged_eofs default more secure

2016-10-15 Thread Martin Panter

Martin Panter added the comment:

Patch v2 also adds a new attribute to context objects. With this I can work 
around my Google server bug:

context = ssl.create_default_context(ssl.Purpose.SERVER_AUTH)
context.suppress_ragged_eofs = True
handler = urllib.request.HTTPSHandler(context=context)
urlopen = urllib.request.build_opener(handler).open
urlopen(Request(url="https://accounts.google.com/o/oauth2/token;, ...))

--
Added file: http://bugs.python.org/file45106/ragged-eofs.v2.patch

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



[issue28447] socket.getpeername() failure on broken TCP/IP connection

2016-10-15 Thread Martin Panter

Martin Panter added the comment:

I still think something is closing your socket object. I cannot see what it is 
from the code you posted though. If you update the print() call, I expect you 
will see that it is closed, and the file descriptor is set to -1:

print("sock_err @ ", msg[1], msg[1]._closed, msg[1].fileno())  # Expect True, -1

--

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



[issue28143] ASDL compatibility with Python 3 system interpreter

2016-10-15 Thread Martin Panter

Martin Panter added the comment:

Are you sure about adding the space after tab? I am no Python 2 expert, but I 
don’t see it:

$ python2 -c 'print "\t", ""' | cat -A
^I$

Anyway, I’m not happy applying this patch unless it is clear that raising the 
Python version required to rebuild ASDL stuff is okay in the 2.7 branch. Maybe 
a query to the python-dev mail list might help.

--

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



[issue28447] socket.getpeername() failure on broken TCP/IP connection

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

This indicated to me that the socket object has indeed been closed _before_ you 
call getpeername():

-
print(sock)>>>

sock.getpeername()>>>
OS.Error[WinError10038]an operation was attempted on something that is not a 
socket
===

In this case, I think “[closed] fd=-1” means that both the Python-level socket 
object, and all objects returned by socket.makefile(), have been closed, so the 
OS-level socket has probably been closed. In any case, getpeername() is 
probably trying the invalid file descriptor -1. If there are no copies of the 
OS-level socket open (e.g. in other processes), then the TCP connection is 
probably also shut down, but I suspect the problem is the socket object, not 
the TCP connection.

Without code or something demonstrating the bug, I’m pretty sure it is a bug in 
your program, not in Python.

--
resolution: remind -> not a bug
stage:  -> test needed
status: open -> closed

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



[issue27800] Regular expressions with multiple repeat codes

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

I committed my patch as it was. I understand Silent Ghost’s objection was 
mainly that they thought the new paragraph or its positioning wouldn’t be very 
useful, but hopefully it is better than nothing. Perhaps in the future, the 
documentation could be restructured with subsections for repetition qualifiers 
and other kinds of special codes, which may help.

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

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



[issue28290] BETA report: Python-3.6 build messages to stderr: AIX and "not GCC"

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

For the blake problem, I guess the structures may either get laid out 
incorrectly, or you might be lucky and they will get the desired packing by 
default. You might have to find if XLC has another way to enable struct 
packing. Or in the worst case, rewrite the code to pack data in a portable 
manner without using a struct.

The feature test macros like _POSIX_C_SOURCE are also discussed in various bug 
reports, including Issue 17120. How are you invoking /usr/include/standards.h? 
Perhaps there is a compiler mode or buggy header file that is getting in the 
way?

Regarding the data and function pointer confusion, this is a tricky case. I 
understand standard C (C99 etc) does not require function pointers to be 
compatible with void pointers. However, POSIX might require partial 
compatibility, at least for casting the void pointer from dlsym() to a function 
pointer: 
<http://pubs.opengroup.org/onlinepubs/9699919799/functions/dlsym.html#tag_16_96_07>.

Does AIX actually have incompatible (e.g. different size) function and void 
pointers, or can we safely ignore those warnings? I think it may be annoying to 
change Python’s PyType_Slot and PyModuleDef_Slot structures to be compatible 
with function pointers, though perhaps it could be done with anonymous unions 
or something.

--
nosy: +martin.panter

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



[issue27844] Python-3.6a4 build messages to stderr (on AIX and xlc compiler)

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

The warnings about platform-dependent libraries should be suppressed now thanks 
to Issue 27713.

The warnings from Modules/_ctypes/_ctypes_test.c about bitfields are covered by 
Issue 27643. Can you help with developing the patch?

The remaning warnings all seem to be duplicates of Issue 28290.

--
nosy: +martin.panter
resolution:  -> duplicate
status: open -> closed
superseder:  -> BETA report: Python-3.6 build messages to stderr: AIX and "not 
GCC"

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



[issue23231] Fix codecs.iterencode/decode() by allowing data parameter to be omitted

2016-10-14 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed
versions: +Python 3.7

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



[issue28447] socket.getpeername() failure on broken TCP/IP connection

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

The getpeername() method is just a wrapper around the OS function, so it is not 
going to work if the socket file descriptor is closed or invalid (-1).

You haven’t provided enough code or information for someone else to reproduce 
the problem. But it sounds like you may be closing the socket in one thread, 
and trying to use it in another thread. This is going to be unreliable and 
racy, depending on which thread acts on the socket first. Perhaps you should 
save the peer address in the same thread that closes it, so you can guarantee 
when it is open and when it is closed. Or use something else to synchronize the 
two threads and ensure the socket is always closed after getpeername() is 
called.

BTW it looks like I have to remove George’s username from the nosy list because 
it contains a comma!

--
nosy: +martin.panter -George,Y
resolution:  -> not a bug

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



[issue28435] test_urllib2_localnet.ProxyAuthTests fails with no_proxy and NO_PROXY env

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

The test tries using ProxyHandler directly. It looks like that handler 
intentionally ignores the request if it matches no_proxies (Issue 6894), so I 
think Piotr’s approach of adjusting the tests is correct. The patch looks good 
to me, though I would drop that blank line in test_proxy_qop_auth_works().

It looks like setting a temporary environment variable should disable any 
settings from Windows registry or OS X config, so this patch should even help 
in those cases.

--
versions: +Python 2.7, Python 3.5

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



[issue26439] ctypes.util.find_library fails when ldconfig/glibc not available (e.g., AIX)

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

Just some minor comments on aix-library.161004.patch:

Instead of _util.py, I wonder if the new file should have a different name, 
like _util_common.py, to avoid being too similar to util.py.

+def get_shared(input):
+"""Internal support function: examine the get_dumpH() output and
+return a list of all shareable objects indicated in the output the
+character "[" is used to strip off the path information.

Needs a newline or new sentance to separate “output” and “the character”.

+def get_legacy(members):
+[. . .]
+# shr.o is the preffered name so we look for shr.o first

Spelling: preferred [single F, double R]

+def get_version(name, members):
+"""[. . .]
+Before the GNU convention became the standard scheme regardless of
+binary size AIX packagers used GNU convention "as-is" for 32-bit
+archive members but used an "distinguishing" name for 64-bit members.

Should be: a "distinguishing" [not “an”]

--

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



[issue18235] _sysconfigdata.py wrong on AIX installations

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

This is my understanding:

We are talking about the code at 
<https://hg.python.org/cpython/annotate/v3.6.0b2/Lib/sysconfig.py#l377> that 
switches the values of LDSHARED and/or BLDSHARED.

Yes, Michael H. was suggesting to both move and change (revert) back to 
overwriting LDSHARED with the value of BLDSHARED. Since he is moving the code 
into _init_posix(), which I think only gets called at run time, the state of 
_PYTHON_BUILD won’t affect the value of LDSHARED saved in the installed config 
file.

--

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



[issue28445] Wrong documentation for GzipFile.peek

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

The peek() method was originally added by Issue 9962, where Antoine was trying 
to imitate the BufferedReader.peek() API. However because “the number of bytes 
returned may be more or less than requested”, I never understood what this 
methods were good for; see also Issue 5811.

I think we could at least remove the claim about “at most one single read”. 
That is just describing an internal detail.

The documentation for bzip and LZMA is slightly more useful IMO because it says 
“at least one byte of data will be returned, unless EOF has been reached”. This 
guarantee is actually missing from the underlying BufferedReader.peek() 
documentation, though I think both io and _pyio implement it.

--

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



[issue28436] GzipFile doesn't properly handle short reads and writes on the underlying stream

2016-10-14 Thread Martin Panter

Martin Panter added the comment:

I would fix the documentation to say the underlying stream should do “exact” 
reads and writes, e.g. one that implements io.BufferedIOBase.read(size) or 
write(). In my experience, most APIs in Python’s library assume or require 
this, rather than the “raw” behaviour.

Is it likely that people are passing raw FileIO or similar objects to GzipFile, 
or is this just a theoretical problem?

Also related: In Issue 24291 and Issue 26721, we realized that all the servers 
based on socketserver could unexpectedly do short writes, which was a practical 
bug (not just theoretical). I changed socketserver over to doing exact writes, 
and added a workaround in the wsgiref module to handle partial writes. See 
<https://docs.python.org/3.5/library/wsgiref.html#wsgiref.handlers.SimpleHandler>
 for the altered documentation.

Other APIs that come to mind are shutil.copyfileobj() (documentation proposed 
in Issue 24291), and io.TextIOWrapper (documented as requiring BufferedIOBase). 
Also, the bzip and LZMA modules seem equally affected as gzip.

--
assignee:  -> docs@python
components: +Documentation -Library (Lib)
nosy: +docs@python
stage:  -> needs patch
versions: +Python 3.6, Python 3.7

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



[issue27923] PEP 467 -- Minor API improvements for binary sequences

2016-10-11 Thread Martin Panter

Martin Panter added the comment:

For arbitrary C-contiguous buffers aka “bytes-like objects” (which are not just 
arrays of bytes), I think this trick relies on Issue 15944, which is only added 
in 3.5+.

--

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



[issue28418] Raise Deprecation warning for tokenize.generate_tokens

2016-10-11 Thread Martin Panter

Martin Panter added the comment:

There is related discussion in Issue 12486 about supporting unencoded text 
input. The current patch there actually already raises a warning and removes 
call sites from the Python library, though it does not add a doc string.

--
nosy: +martin.panter

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



[issue28394] Spelling fixes

2016-10-09 Thread Martin Panter

Martin Panter added the comment:

Thanks Ville. I added some more fixes of my own I had been saving up.

--
resolution:  -> fixed
stage:  -> resolved
status: open -> closed
versions: +Python 2.7, Python 3.5, Python 3.6, Python 3.7

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



[issue28373] input() prints to original stdout even if sys.stdout is wrapped

2016-10-09 Thread Martin Panter

Martin Panter added the comment:

>From memory, there are at least three code paths for input():

1. Fallback implementation, used when stdout is a pipe or other non-terminal
2. Default PyOS_ReadlineFunctionPointer() hook, used when stdout is a terminal: 
https://docs.python.org/3.5/c-api/veryhigh.html#c.PyOS_ReadlineFunctionPointer
3. Gnu Readline (or another hook installed by a C module)

Arnon’s problem only seems to occur in the last two cases, when 
PyOS_ReadlineFunctionPointer() is used. The problem is that 
PyOS_ReadlineFunctionPointer() uses C  FILE pointers, not Python file 
objects. Python calls sys.stdout.fileno() to see if it can substitute the 
C-level stdout FILE object.

Adam: I think your sys.readlinehook() proposal is independent of Arnon’s 
problem. We would still need some logic to decide what to pass to libraries 
like Gnu Readline that want a FILE pointer instead of a Python file object.

The fileno() method is documented all file objects, including text files like 
sys.stdout. So I think implementing your own fileno() method is completely 
valid.

One other idea that comes to mind is if Python checked if the sys.stdout object 
has been changed (e.g. sys.stdout != sys.__stdout__), rather than just 
comparing fileno() values. But I am not sure if this change is worth it.

BTW if I revert the fix for Issue 24402 (I also tried 3.3.3), the problem 
occurs even when a custom fileno() is defined. On the other hand, Python 2’s 
raw_input() is not affected, presumably because it uses PyFile_AsFile() and 
fails immediately if stdout is a custom class.

--
nosy: +martin.panter

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



[issue28092] Build failure for 3.6 on Centos 5.11

2016-10-09 Thread Martin Panter

Martin Panter added the comment:

For replacing macros, I think “static inline” may be fine, even with older 
compilers. Maybe these PyDTrace_ functions could also be static inline, since 
they were originally macros. Or do they really need to be linkable inline 
functions?

--

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



[issue26439] ctypes.util.find_library fails when ldconfig/glibc not available (e.g., AIX)

2016-10-01 Thread Martin Panter

Martin Panter added the comment:

Hi Michael, I have done some cleanup and modifications to your patch. The 
result is in aix-library.161001.patch, which has all the changes, i.e. it is 
not based on another patch. More significant changes I made:

* Change getExecLibPath_aix() and find_parts() to return a list object, rather 
than building a colon-separated string only to be pulled apart again
* Escape dots in get_legacy() regular expressions, so that they no longer match 
[shr_64xo], [shrxo], etc.
* Make get_dumpH() return the a list of (object, objectinfo) tuples, where 
objectinfo is a list of lines; avoids building multiline strings and then 
splitting them apart again
* Rewrite get_exactMatch() and get_version() without nested inline “for” loops; 
use RE capture group
* Reuse util._last_version() instead of copying the _num_version() function
* Use lower case B for liB in get_member(). This means e.g. libcrypto.so is now 
preferred over libcrypto.so.1.0.0.

I did test it a bit on Linux with faked dump -H output, but I may have made 
mistakes that I did not pick up.

Also, this still needs documentation, and I think some more tests for the test 
suite exercising various aspects of find_library() would be nice if possible.

Another thing: in the last few patches, you dropped the definition of 
RTLD_MEMBER from Modules/_ctypes/_ctypes.c. Is that intended, or just a 
temporary thing?

--
versions:  -Python 3.6
Added file: http://bugs.python.org/file44902/aix-library.161001.patch

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



[issue28275] LZMADecompressor.decompress Use After Free

2016-09-30 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


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

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



[issue28276] test_loading.py - false positive result for "def test_find" when find_library() is not functional or the (shared) library does not exist

2016-09-30 Thread Martin Panter

Martin Panter added the comment:

Other tests in this file skip the test if libc_name is None. So I think it 
would make more sense to skip the test rather than fail in test_find(). I.e.

if not found:
self.skipTest("Could not find c and m libraries")

If you are confident that find_library() will always find libc on AIX, perhaps 
you can suggest an extra test (or add to an existing test), to first check for 
the AIX platform, and only then fail if find_library() returned None.

--

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



[issue27897] Avoid possible crash in pysqlite_connection_create_collation

2016-09-30 Thread Martin Panter

Martin Panter added the comment:

The test in 2.7 (1aae9b7ff321) seems to cause a Windows 8.1 buildbot to hang in 
test_sqlite. I deduced this because there is no mention of "test_sqlite" in the 
test log output, compared to a previous successful test log.

http://buildbot.python.org/all/builders/AMD64%20Windows8.1%20Non-Debug%202.7/builds/474

--
nosy: +martin.panter

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



[issue28311] AIX shared library extension modules installation broken - Python2.7

2016-09-30 Thread Martin Panter

Martin Panter added the comment:

I think this might be separate to Issue 25825, but my investigation at 
<https://bugs.python.org/issue25825#msg273425> may be relevant. Following on 
from that, I reopened Issue 18235, which seems to be about the same LDSHARED vs 
BLDSHARED problem, but never fixed in 2.7.

--
nosy: +martin.panter
resolution:  -> duplicate
status: open -> closed
superseder:  -> _sysconfigdata.py wrong on AIX installations

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



[issue18235] _sysconfigdata.py wrong on AIX installations

2016-09-30 Thread Martin Panter

Martin Panter added the comment:

Reopening this to fix the original bug in 2.7, and to improve things for Python 
3.

Michael Felt (or anyone else): Can you confirm if Michael Haubenwallner’s 
suggested patch from <https://bugs.python.org/issue18235#msg219888> is 
appropriate? It looks like that patch won’t apply directly to 2.7, but the 
spirit of that patch looks sensible to me for Python 2 and 3. I.e. don’t mess 
with the variables in _generate_posix_vars(), which writes them to a data file, 
but overwrite LDSHARED in _init_posix(), which happens at run time.

--
nosy: +Michael.Felt
stage: resolved -> patch review
status: closed -> open
superseder: AIX shared library extension modules installation broken - 
Python2.7 -> 
versions: +Python 2.7, Python 3.5, Python 3.6, Python 3.7 -Python 3.3, Python 
3.4

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



[issue18235] _sysconfigdata.py wrong on AIX installations

2016-09-30 Thread Martin Panter

Martin Panter added the comment:

It might have been good to get this reopened to attract more attention to it. 
Anyway, Issue 28311 has now been opened for 2.7, and it seems to be about the 
same problem.

--
nosy: +martin.panter
superseder:  -> AIX shared library extension modules installation broken - 
Python2.7

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



[issue28275] LZMADecompressor.decompress Use After Free

2016-09-28 Thread Martin Panter

Martin Panter added the comment:

Here is a patch to fix the corresponding bug in the bzip decompressor. I will 
try to commit it soon if there are no objections.

For the record, these bugs were introduced with the max_length support in Issue 
15955. The bzip code was modelled after the LZMA code.

--
assignee: serhiy.storchaka -> martin.panter
nosy: +martin.panter
status: closed -> open
Added file: http://bugs.python.org/file44873/bzip-failure.patch

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



[issue28276] test_loading.py - false positive result for "def test_find" when find_library() is not functional or the (shared) library does not exist

2016-09-26 Thread Martin Panter

Martin Panter added the comment:

The purpose of the test seems to be to check that finding and loading works for 
widely-available libraries. However I suspect find_library("c") can fail on 
other platforms as well. Presumably that is why there is the special case for 
Cygwin at the top of the file.

Open SSL is also widely available, but not universal. I think it is even 
possible to build Python without SSL support, and the tests should not fail in 
this case.

Perhaps it would be okay to remove "m" and just run the test on 
find_library("c"). If so, we can adjust the test to call self.skipTest("C 
library not found"), which will warn that the test could not be run.

--
components: +Tests
nosy: +martin.panter
versions:  -Python 3.3, Python 3.4

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



[issue28282] find_library("c") defers to find_msvcrt()

2016-09-26 Thread Martin Panter

New submission from Martin Panter:

Issue 1793 added ctypes.util.find_msvcrt(), and special cases that map 
find_library("c") and "m" to the new function. However this contradicts the 
documentation 
<https://docs.python.org/3.5/library/ctypes.html#finding-shared-libraries>:

‘On Windows, . . . a call like find_library("c") will fail and return None.’

I think the documentation needs updating or clarifying.

--
assignee: docs@python
components: Documentation, Windows, ctypes
messages: 277479
nosy: docs@python, martin.panter, paul.moore, steve.dower, tim.golden, zach.ware
priority: normal
severity: normal
status: open
title: find_library("c") defers to find_msvcrt()
versions: Python 2.7, Python 3.5, Python 3.6, Python 3.7

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



[issue28270] [MinGW] Can't compile Modules/posixmodule.c by MinGW - several macro are missed

2016-09-25 Thread Martin Panter

Martin Panter added the comment:

This competes with the patch at Issue 17598.

How are you building Python? I presume you are not using the configure script. 
It would be good to come up with a patch that addresses for both cases.

--
nosy: +martin.panter

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



[issue28267] [MinGW] Crash at start when compiled by MinGW for 64-bit Windows using PC/pyconfig.h

2016-09-25 Thread Martin Panter

Martin Panter added the comment:

It looks like Issue 4709 may also be a duplicate.

Your added definition is distant from the comment explaining it. And why not 
open MS_WIN64 to any Windows compiler, rather than limiting it to just MSC and 
MINGW?

I presume you are not building by running the configure script, but some other 
method. The advantage of moving this stuff out of PC/pyconfig.h is it can also 
be used with the pyconfig.h generated by the configure script.

--

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



[issue10504] Trivial mingw compile fixes

2016-09-25 Thread Martin Panter

Martin Panter added the comment:

The patch seems to share some changes to Modules/posixmodule.c with parts of 
Issue 17598’s patch (and one common part has already been applied).

Issue 17591 already fixed  to lowercase.

Just now Issue 28269 has been opened about strcasecmp().

--
dependencies: +[MinGW] Can't compile Python/dynload_win.c due to static 
strcasecmp, mingw: init system calls, mingw: use header in lowercase
nosy: +martin.panter

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



[issue28267] [MinGW] Crash at start when compiled by MinGW for 64-bit Windows using PC/pyconfig.h

2016-09-25 Thread Martin Panter

Martin Panter added the comment:

This probably duplicates Issue 17590, although the extra context here is nice :)

What do you think of my patch there, which also removes them from 
PC/pyconfig.h? I think it is better to define things in one place if possible.

--
nosy: +martin.panter

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



[issue23505] Urlparse insufficient validation leads to open redirect

2016-09-24 Thread Martin Panter

Martin Panter added the comment:

It is not clear what Yassine’s bug is. Maybe it is about round-tripping from 
urlparse() → urlunparse(). If so, it could be solved by fixing either of the 
following two problems:

1. urlunparse() forgets the initial pair of slashes when netloc="". That might 
be addressed by Issue 22852, and documented as a limitation in the mean time.

2. urlunparse() accepts invalid components, such as netloc="", 
path="//evil.com", which transforms the path into a hostname. Yassine preferred 
to percent-encode the path and pass it through, though I think an exception 
would be more sensible. Or just documenting that there is little or no 
validation.

When considering the second problem of validation, you have to be aware that 
urlunparse() is documented to handle schemes like “mailto:” not listed in 
“uses_netloc”. According to RFC 6068, mailto://evil.com is valid syntax, and is 
decoded to netloc="", path="//evil.com". In this case, netloc="evil.com" would 
probably be invalid instead.

--
dependencies: +urllib.parse wrongly strips empty #fragment, ?query, //netloc

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



[issue21109] tarfile: Traversal attack vulnerability

2016-09-24 Thread Martin Panter

Martin Panter added the comment:

Issue 17102 is open about the specific problem of escaping the destination 
directory. Maybe it is a duplicate, but this bug also discusses other problems.

--
dependencies: +tarfile extract can write files outside the destination path

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



[issue28221] Unused indata in test_ssl.ThreadedTests.test_asyncore_server

2016-09-23 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


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

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



[issue28143] ASDL compatibility with Python 3 system interpreter

2016-09-23 Thread Martin Panter

Martin Panter added the comment:

That would get the patch mostly working with 2.6+. Is it okay to break Python < 
2.6 support? I know there was an OS X Tiger buildbot using 2.5 until recently; 
see Issue 28039.

Personally, I would rather focus on the problems with make dependencies, build 
configuration, etc, rather than changing what versions of Python the code runs 
on.

Regarding CRLFs on Windows: the existing code opens files in binary mode (wb), 
so Windows will not translate \n into CRLF. Changing this behaviour is separate 
to the goal of Python 3 compatibility. IMO the build process should not change 
the contents of checked-in files, regardless of whether there is a version 
control system like Mercurial or Git in use or not. See also Issue 27425.

On the other hand, the Python 3 code does use text mode with CRLF translation, 
so maybe it is not a big deal. (I never built Python on Windows, so I don’t 
know.)

+++ b/Parser/spark.py
@@ -171,7 +171,7 @@ class GenericParser:
-rules = string.split(doc)
+rules = str.split(doc)

This would read better as doc.split(); see 
<http://svn.python.org/view?view=revision=55143>.

@@ -825,15 +828,15 @@ class GenericASTMatcher(GenericParser):
-print '\t', item
+print('\t', item)
 for (lhs, rhs), pos in states[item[0]].items:
-print '\t\t', lhs, '::=',
+print('\t\t', lhs, '::=', end=" ")
. . .
+print(string.join(rhs[:pos]), end=" ")
+print('.', end=" ")
+print(string.join(rhs[pos:]))

The string quoting is inconsistent. Also, I suspect string.join() is not right 
for Python 3. And you are adding an extra space after the '\t' characters.

For what it’s worth, here are some similar changes made to the Py 3 branch:

r57749: raise syntax
r51578: `. . .` → repr()
http://svn.python.org/view?view=revision=55329: Unpack tuples inside 
functions (Malthe’s patch unpacks as the function is called instead); map() → 
list comprehension
http://svn.python.org/view?view=revision=55143: Various Py 3 changes
r59154: Write files in text mode
r53189: Avoid has_key()
http://svn.python.org/view?view=revision=55167: xrange() → range()

--

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



[issue27950] Superfluous messages when running make

2016-09-22 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


--
versions: +Python 3.7 -Python 3.6

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



[issue27950] Superfluous messages when running make

2016-09-22 Thread Martin Panter

Martin Panter added the comment:

The version I committed has the space separating @ #

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

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



[issue27348] traceback (and threading) drops exception message

2016-09-22 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


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

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



[issue27815] Make SSL suppress_ragged_eofs default more secure

2016-09-22 Thread Martin Panter

Martin Panter added the comment:

I have been experimenting with a patch that changes the default to 
suppress_ragged_eofs=False.

One disadvantage of this change is it could make servers less robust. E.g. in 
the tests, I explicitly enabled suppress_ragged_eofs=True in a server, because 
otherwise I would have to add extra cleanup if an exception is raised on the 
server side. In another test server, based on socketserver, I added special 
code to silence logging an SSLEOFError exception (a side effect of a particular 
test case).

But ideally, real-world servers should already handle other exceptions that are 
triggered outside the server’s control like, ECONNRESET and 
TLSV1_ALERT_UNKNOWN_CA. Socketserver already logs all these kinds of errors. 
Plus I think SSLEOFError has always been possible in the handshake phase.

With HTTP I didn’t have to go further than Google to find a server that 
terminates the response with a non-SSL shutdown (although because truncated 
JSON is invalid, it is not a big deal). For the record, here is a stripped-down 
demo. The same problem also happens for a more complete request with valid 
parameters.

>>> import socket, ssl
>>> s = socket.create_connection(("accounts.google.com", 443))
>>> ss = ssl.wrap_socket(s, suppress_ragged_eofs=False)
>>> ss.sendall(b"POST /o/oauth2/token HTTP/1.1\r\n"
... b"Host: accounts.google.com\r\n"
... b"Content-Length: 0\r\n"
... b"Connection: close\r\n"
... b"\r\n")
>>> print("\n".join(map(repr, ss.recv(3000).splitlines(keepends=True
b'HTTP/1.1 400 Bad Request\r\n'
b'Content-Type: application/json; charset=utf-8\r\n'
b'Cache-Control: no-cache, no-store, max-age=0, must-revalidate\r\n'
b'Pragma: no-cache\r\n'
b'Expires: Mon, 01 Jan 1990 00:00:00 GMT\r\n'
b'Date: Thu, 22 Sep 2016 03:10:20 GMT\r\n'
b'X-Content-Type-Options: nosniff\r\n'
b'X-Frame-Options: SAMEORIGIN\r\n'
b'X-XSS-Protection: 1; mode=block\r\n'
b'Server: GSE\r\n'
b'Alt-Svc: quic=":443"; ma=2592000; v="36,35,34,33,32"\r\n'
b'Accept-Ranges: none\r\n'
b'Vary: Accept-Encoding\r\n'
b'Connection: close\r\n'
b'\r\n'
b'{\n'
b'  "error" : "invalid_request",\n'
b'  "error_description" : "Required parameter is missing: grant_type"\n'
b'}'
>>> ss.recv(3000)  # HTTP-level client does not know that this is the EOF yet
Traceback (most recent call last):
  File "", line 1, in 
  File "/home/proj/python/cpython/Lib/ssl.py", line 987, in recv
return self.read(buflen)
  File "/home/proj/python/cpython/Lib/ssl.py", line 865, in read
return self._sslobj.read(len, buffer)
  File "/home/proj/python/cpython/Lib/ssl.py", line 627, in read
v = self._sslobj.read(len)
ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:2176)

In this case, if the client does not send “Connection: close”, the server uses 
chunked encoding and there is no problem. So this is another instance of Issue 
12849 (Python’s unusual request triggering a server bug).

I wonder if a solution would be to use suppress_ragged_eofs=False by default, 
but add a way to let the user of the http.client module explicitly allow 
SSLEOFError to signal a proper EOF.

--
keywords: +patch
versions: +Python 3.7 -Python 3.6
Added file: http://bugs.python.org/file44784/ragged-eofs.patch

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



[issue28235] In xml.etree.ElementTree docs there is no parser argument in fromstring()

2016-09-22 Thread Martin Panter

Martin Panter added the comment:

Added review comment

--
nosy: +martin.panter

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



[issue28234] In xml.etree.ElementTree docs there are many absent Element class links

2016-09-22 Thread Martin Panter

Martin Panter added the comment:

Serhiy, what’s the relevance? In the built-in Element Tree package, it is a 
class: 
<https://docs.python.org/3.5/library/xml.etree.elementtree.html#element-objects>.

--

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



[issue28234] In xml.etree.ElementTree docs there are many absent Element class links

2016-09-21 Thread Martin Panter

Martin Panter added the comment:

Mostly looks good to me. I left some comments on the code review.

--
nosy: +martin.panter
versions: +Python 2.7, Python 3.5, Python 3.7

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



[issue28221] Unused indata in test_ssl.ThreadedTests.test_asyncore_server

2016-09-20 Thread Martin Panter

Martin Panter added the comment:

Actually in the Py 3 branch, I found an earlier revision that added 
indata="FOO\n": r59506 (Dec 2007).

Anyway, the server in the test case just does a simple lower() call on the 
data, so I think the simpler FOO line may be fine on its own.

--
stage:  -> needs patch

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



[issue28221] Unused indata in test_ssl.ThreadedTests.test_asyncore_server

2016-09-20 Thread Martin Panter

New submission from Martin Panter:

In r62273 (Apr 2008), method testAsyncoreServer() was added to the py3k branch 
with indata="FOO\n". In r64578 (Jun 2008), this test method was added to the Py 
2 branch, but with indata = "TEST MESSAGE of mixed case\n". Later, r80598 added 
the mixed case line to the Py 3 branch, but it is not used because the original 
FOO line overwrites it. Then revision 221a1f9155e2 backported the Py 3 code to 
2.7. So now both versions include the mixed case line but neither use it.

I haven’t investigated, but I presume either the mixed case version would test 
more stuff and should be enabled, or it would be overkill and should be dropped 
in favour of the simpler line.

--
assignee: christian.heimes
components: SSL, Tests
messages: 277085
nosy: christian.heimes, martin.panter
priority: normal
severity: normal
status: open
title: Unused indata in test_ssl.ThreadedTests.test_asyncore_server
type: enhancement
versions: Python 2.7, Python 3.5, Python 3.6, Python 3.7

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



[issue10808] ssl unwrap fails with Error 0

2016-09-17 Thread Martin Panter

Martin Panter added the comment:

I understand this condition happens when the local end calls unwrap(), but the 
low-level socket connection has already been shut down from the remote end. If 
the remote is too slow, I get ConnectionResetError instead.

There is some discussion of this at 
<http://www.mail-archive.com/search?l=mid=4bc200fe.4070...@netbauds.net>. I 
tend to agree with Antoine that unfortunately there is not much Python can do 
without help from Open SSL. I.e. can we rely on SSL_shutdown() always setting 
errno = 0 to indicate Python should raise SSLEOFError, or should Open SSL add 
some new way of indicating this condition?

--
nosy: +martin.panter

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



[issue27716] http.client truncates UTF-8 encoded headers

2016-09-17 Thread Martin Panter

Martin Panter added the comment:

Thanks to the fix for Issue 22233, now the response is parsed more sensibly, 
and the body can be read. The 0x85 byte now gets decoded with Latin-1:

>>> print(ascii(resp.getheader("Link")[:100]))
'<http://www.babla.cn/\xe8\x8b\xb1\xe8\xaf\xad-\xe6\xb3\xa2\xe5\x85\xb0\xe8\xaf\xad/>;
 rel="alternate"; hreflang="zh-Hans", <http://cs.bab.la/slov'

Here is a patch to document how to get the original bytes back (by “encoding” 
to Latin-1). Other than that, I don’t think there is much left to do for this 
bug.

--
keywords: +patch
Added file: http://bugs.python.org/file44733/header-decoding.patch

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



[issue28134] socket.socket(fileno=fd) does not work as documented

2016-09-17 Thread Martin Panter

Martin Panter added the comment:

Personally, I’m not too enthusiastic, because it is rather magical, and does 
not work in all cases. It seems more like a feature than a bug fix. But I have 
rarely used the fileno=... parameter, and it shouldn’t have much negative 
impact, so I’m not too fussed.

According to Issue 27377, these are some cases where parts won’t work:

* Windows and OS X (and older versions of Linux and BSD) don’t have SO_PROTOCOL
* getsockname() not guaranteed to work on unbound sockets, especially on 
Windows, and Free BSD with SCTP sockets

Also, if we are going to read SO_PROTOCOL when fileno=... is given, why not 
also read it in the normal case when proto=0 (unspecified) is given?

--

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



[issue28143] ASDL compatibility with Python 3 system interpreter

2016-09-17 Thread Martin Panter

Martin Panter added the comment:

This patch ports the logic written for Issue 26662 to Python 2. Basically, 
configure searches for commands called python2.7, python2, and python (in order 
of priority), and sets PYTHON_FOR_GEN to the result. PYTHON_FOR_GEN could be 
overridden by the user if desired. If no Python command is found, the build 
fails with an error message:

Cannot generate /home/proj/python/cpython/Python/Python-ast.c, python not found 
!
To skip re-generation of /home/proj/python/cpython/Python/Python-ast.c run 
 or .
Otherwise, set python in PATH and run configure or run .
--- Python/Python-ast.c ---
*** [Python/Python-ast.c] Error code 1

However if it finds “python” and that turns out to be version 3, it will still 
have the same problem as now, and you will have to manually use “make touch” or 
similar.

--
Added file: http://bugs.python.org/file44732/PYTHON_FOR_GEN.patch

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



[issue28139] Misleading Indentation in C source code

2016-09-17 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


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

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



[issue28187] Check return value of _PyBytes_Resize

2016-09-17 Thread Martin Panter

Martin Panter added the comment:

Can the resize fail if the buffer is only being strunk? I haven’t looked 
closely, but maybe that’s why some of the cases don’t check for failure.

--
nosy: +martin.panter

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



[issue27761] Private _nth_root function loses accuracy

2016-09-17 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


--
nosy:  -martin.panter

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



[issue27348] traceback (and threading) drops exception message

2016-09-16 Thread Martin Panter

Martin Panter added the comment:

Yes, a bug fix for 3.5+.

--

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



[issue28177] Compilation failure on Debian 4

2016-09-15 Thread Martin Panter

Martin Panter added the comment:

For the record, there is more discussion of this in Issue 28092

--
nosy: +martin.panter
superseder:  -> Build failure for 3.6 on Centos 5.11

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



[issue24363] httplib fails to handle semivalid HTTP headers

2016-09-15 Thread Martin Panter

Martin Panter added the comment:

I pushed my Py 2 patch, since it is simpler and does not interfere with other 
modules. But it would still be good to get feedback on policy-flag.patch for 
Python 3.

--

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



[issue15819] Unable to build Python out-of-tree when source tree is readonly.

2016-09-15 Thread Martin Panter

Martin Panter added the comment:

Just to clarify, the current status is that the revision that Koobs identified 
is still in place, meaning that the AST files are regenerated into the build 
tree, not the source tree.

I don’t think there is much else to do for this bug, unless Koobs can provide 
more info why the Free BSD build could not find Python/Python-ast.c, or Roumen 
can get back with more info. Closing for the moment, but I am happy to help if 
I can resolve any problems that remain.

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

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



[issue27348] traceback (and threading) drops exception message

2016-09-15 Thread Martin Panter

Martin Panter added the comment:

I plan to commit this soon, in time for the next release.

--
stage: patch review -> commit review
versions: +Python 3.7

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



[issue28134] socket.socket(fileno=fd) does not work as documented

2016-09-15 Thread Martin Panter

Martin Panter added the comment:

I agree the doc is far from perfect. The bit I was going off is just above 
<https://docs.python.org/3.5/library/socket.html#socket.socket.family>, saying 
“these (read-only) attributes that correspond to the values given to the socket 
constructor”.

My instinct would be to clarify that for existing versions 2.7, 3.5, etc, that 
the constructor arguments are _not_ ignored and should correspond to the file 
descriptor. Then in the next Python version we can make it more automatic using 
the getsockopt() techniques.

--

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



[issue28139] Misleading Indentation in C source code

2016-09-15 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


Added file: http://bugs.python.org/file44684/indent.py3.patch

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



[issue28139] Misleading Indentation in C source code

2016-09-15 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


Added file: http://bugs.python.org/file44683/indent.patch

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



[issue28143] ASDL compatibility with Python 3 system interpreter

2016-09-15 Thread Martin Panter

Martin Panter added the comment:

Another option I forgot to point out is that some of the other regeneration 
Python scripts (in Py 2 and/or 3; I forget which) have some autoconf magic to 
figure out the right installed python command to use. We should probably use 
that for Py 2’s ASDL script.

--

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



[issue28139] Misleading Indentation in C source code

2016-09-15 Thread Martin Panter

Martin Panter added the comment:

.
I found more messed up indentation looking through Antoine’s large “untabify” 
commit r81029. These don’t trigger compiler warnings, but I think it may be 
worth restoring them.

--
nosy: +martin.panter
stage: resolved -> patch review
status: closed -> open

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



[issue28143] ASDL compatibility with Python 3 system interpreter

2016-09-15 Thread Martin Panter

Martin Panter added the comment:

It seems a terrible idea to require Python 3 to be installed in order to 
regenerate the boot files for a Python 2 build. Maybe if we can figure out the 
minimum installed Python version expected for these ASDL scripts in 2.7, and 
maintain that while adding Python 3 support. But even that seems risky.

Your changes obviously make the files incompatible with Python 2:

print()  # Prints an empty tuple
print("Error visiting", repr(object))  # Prints a 2-tuple
f = open(p, "w")  # Writes CRLFs on Windows (I think; it’s been a while)

If we do go down this road, it may be worth looking at what has already been 
done to the corresponding scripts in Python 3.

But you may not actually need to regenerate the files. If you are building from 
the source directory, try “make touch” after generating the makefile. In 
general, try “touch Include/Python-ast.h Python/Python-ast.c”.

I would like to see this be made easier for both Python 2 and 3. I suggested 
some other ideas in Issue 23404.

--
nosy: +martin.panter

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



[issue28169] shift exponent overflow

2016-09-15 Thread Martin Panter

Martin Panter added the comment:

Perhaps this is a dupe of Issue 15119. When I was testing with the sanitizer, 
the only excessive shift error I got was explained by that bug.

--
nosy: +martin.panter

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



[issue28145] Fix whitespace in C source code

2016-09-14 Thread Martin Panter

Martin Panter added the comment:

What is the reasoning behind this? It seems like trading one person’s style, 
fashion, or editor settings for another. I think it is better to just tolerate 
existing styles, unless they cause significant problems. But maybe see what 
other people think.

The disadvantages of any change include adding extra noise to the history, 
conflicts with other patches people write, potential for error.

I am happy to commit your spelling fix though.

--
nosy: +martin.panter

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



[issue28149] Incorrect indentation under “else” in _bsddb.c

2016-09-14 Thread Martin Panter

New submission from Martin Panter:

Compiling Python 2.7 gives:

/home/proj/python/cpython/Modules/_bsddb.c: In function ‘newDBObject’:
/home/proj/python/cpython/Modules/_bsddb.c:936:5: warning: this ‘else’ clause 
does not guard... [-Wmisleading-indentation]
 else
 ^~~~
/home/proj/python/cpython/Modules/_bsddb.c:938:9: note: ...this statement, but 
the latter is misleadingly indented as if it is guarded by the ‘else’
 self->moduleFlags.cursorSetReturnsNone = 
DEFAULT_CURSOR_SET_RETURNS_NONE;
 ^~~~

The code in question was changed a long time ago in revision defa1d825b08:

 if (self->myenvobj)
-self->getReturnsNone = self->myenvobj->getReturnsNone;
+self->moduleFlags = self->myenvobj->moduleFlags;
 else
-self->getReturnsNone = GET_RETURNS_NONE_DEFAULT;
+self->moduleFlags.getReturnsNone = DEFAULT_GET_RETURNS_NONE;
+self->moduleFlags.cursorSetReturnsNone = 
DEFAULT_CURSOR_SET_RETURNS_NONE;

It looks like the solution is to group both statements with braces, but I don’t 
know this module, so I can’t be sure, and I don’t know how to test it.

--
components: Extension Modules
messages: 276422
nosy: gregory.p.smith, martin.panter
priority: normal
severity: normal
stage: test needed
status: open
title: Incorrect indentation under “else” in _bsddb.c
type: compile error
versions: Python 2.7

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



[issue28118] type-limits warning in PyMem_New() _ssl_locks_count

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

Thanks that works well Christian

--

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



[issue25868] test_eintr.test_sigwaitinfo() hangs on "AMD64 FreeBSD CURRENT 3.x" buildbot

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

Happened again:
http://buildbot.python.org/all/builders/AMD64%20FreeBSD%209.x%203.x/builds/4990/steps/test/logs/stdio
Timeout (0:10:00)!
Thread 0x000801807400 (most recent call first):
  File 
"/usr/home/buildbot/python/3.x.koobs-freebsd9/build/Lib/test/eintrdata/eintr_tester.py",
 line 420 in test_sigwaitinfo

Perhaps I will have another look at committing my patch. As I recall, it should 
make the test more robust.

--

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



[issue28128] Improve the warning message for invalid escape sequences

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

See also Issue 28028. Serhiy suggested translating warnings to SyntaxWarning in 
general. Looks like that may help narrowing down the location of escaping 
problems.

--

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



[issue28134] socket.socket(fileno=fd) does not work as documented

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

The documentation says that the family, type and proto attributes correspond to 
the constructor arguments. Although it is unfortunate and quirky, I think your 
behaviour does match the documentation.

Do the mismatched settings cause any serious problems with socket methods, or 
just affect the Python-level attributes and repr()?

Even without using fileno=..., you could argue that the proto attribute is not 
ideal:
>>> s = socket()
>>> s.proto
0
>>> s.getsockopt(SOL_SOCKET, SO_PROTOCOL)
6
>>> IPPROTO_TCP
6

Perhaps the way forward is to deprecate fileno=... in favour of Neil’s 
fromfd2() function. That would avoid any confusion about conflicting socket() 
constructor arguments and defaults. I.e. what does socket(AF_INET, SOCK_STREAM, 
fileno=unix_datagram_fd) mean, and is it equivalent to 
socket(filno=unix_datagram_fd)?

--
nosy: +martin.panter

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



[issue27778] PEP 524: Add os.getrandom()

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

I understand it’s already implemented, and Victor just reopened it for more 
documentation.

--

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



[issue16189] ld_so_aix not found

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

Closing this assuming that revision ca1ddd365f5f (committed to 3.5 and 3.6+ 
branches) fixed it.

--
nosy: +martin.panter
resolution:  -> duplicate
stage:  -> resolved
status: open -> closed
superseder:  -> AIX shared library extension modules installation broken

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



[issue23404] 'make touch' does not work with git clones of the source repository

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

Okay so my “make -t” trick has various flaws. You still have to know the 
filenames to specify, it requires Makefile to be generated by configure in the 
source tree, and it creates empty files if you use it in a separate build 
directory.

Another idea: instead of the “make touch” recipe, we add a simple shell script. 
Call it say “touch-bootstrap.sh”. Like what “make touch” already does in Python 
2, but without embedding it as a makefile rule.

Or add a flag variable so you can do a build without running any of the 
regeneration rules or worrying about timestamps: make BOOT="#".

--
Added file: http://bugs.python.org/file44627/boot-flag.patch

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



[issue28118] type-limits warning in PyMem_New() _ssl_locks_count

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

I was thinking of “static inline” for PyMem_New(). I understand the Centos and 
OS X Tiger problem is only related “extern inline” vs plain “inline”, and 
“static inline” should not be affected.

--

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



[issue28118] type-limits warning in PyMem_New() _ssl_locks_count

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

Perhaps another way to defeat the warning is to make PyMem_New() an inline 
function? I haven’t tried, but this way would make all the data types involved 
more explicit.

--

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



[issue28118] type-limits warning in PyMem_New() _ssl_locks_count

2016-09-13 Thread Martin Panter

Martin Panter added the comment:

As Serhiy suggested in the other bug, one workaround is just to disable the 
warning with -Wno-type-limits. It would depend if the benefits of the warning 
outweigh the annoyance of coming up with a more complicated workaround for this 
specific case.

--

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



[issue23545] Turn on extra warnings on GCC

2016-09-12 Thread Martin Panter

Martin Panter added the comment:

I think Silent Ghost is talking about my -Wtype-limits warning, which is still 
present. That is the only warning I am getting. I suspect you won’t see it with 
a 32-bit build.

--

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



[issue25895] urllib.parse.urljoin does not handle WebSocket URLs

2016-09-12 Thread Martin Panter

Martin Panter added the comment:

IMO if a versionadded/versionchanged notice is relevant, that is a good sign it 
is a feature rather than bug fix. If the 3.6.1 documentation says “added in 
3.5.3”, how do you know if it is in 3.6.0?

I looked at the history of other schemes being added to try and understand if 
it is a bug fix or not. I guess it is not that clear. In Python 2 the sftp and 
sips schemes are documented as a new feature in 2.5. Is that why you aren’t 
proposing any change to 2.7?

imap (Issue 618024), mms (7ec771893410): 2.3 features
rsync (Issue 981299): 2.3 bugfix (3a7e34dc6ae2)
svn: 2.4 bugfix (349a0fd598e0)
sftp (Issue 1407902): 2.5 feature (r42108); 2.4 bugfix reverted (r42123); 
documented (r42125) with version (r42158)
sips (r43520): 2.5 feature; documented with version
nfs (Issue 4962): 2.7 (r70757), 3.1 (r70760) features; 2.6 bugfix (r81131); 
undocumented
git (Issue 8657): 2.6, 2.7, 3.1 bugfixes; undocumented
tel (Issue 16713): 2.7, 3.2, 3.3 bugfixes; undocumented

--

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



[issue18828] urljoin behaves differently with custom and standard schemas

2016-09-12 Thread Martin Panter

Martin Panter added the comment:

Recording bugs reports for specific schemes as dependencies of this:

Issue 25895: ws(s)
Issue 16134: rtmp(e/s/t)
Issue 23759: coap(s)

--
dependencies: +Add support for RTMP schemes to urlparse, urllib.parse.urljoin 
does not handle WebSocket URLs, urllib.parse: make coap:// known

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



[issue28092] Build failure for 3.6 on Centos 5.11

2016-09-11 Thread Martin Panter

Martin Panter added the comment:

Benjamin changed PEP 7 to allow static inline functions directly in Python 3.6. 
But later he added program-wide, linkable inline functions in the Python 3.6 
code:

2f77a9f0b9d6: add plain “inline” to header file
63ae310b60ff: add “extern inline” stubs in a new file

It seems GCC does not support the C99 syntax for these kind of linkable inline 
functions until 4.3. Some possible fixes or workarounds:

1. Revert the offending functions back to macros

2. Clarify in PEP 7 that we intentionally use linkable C99 (extern) inline 
functions, therefore compilers like Steven’s and the buildbot’s aren’t 
supported for 3.6

3. Add some preprocessor magic based on __GNUC_STDC_INLINE__ to detect when the 
GCC 4.0 reversed meanings of “inline” and “extern inline” have to be used.

--

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



[issue15819] Unable to build Python out-of-tree when source tree is readonly.

2016-09-11 Thread Martin Panter

Martin Panter added the comment:

Matthias seems to have already applied his patch in Python 3.3 and 3.4+: 
revision f2cc3d8b88bb.

Roumen: Is your problem still relevant? If so, perhaps open a separate bug to 
elaborate.

Koobs: Is your problem with finding Python/Python-ast.c still relevant? Is the 
$(ASDLGEN) makefile rule being run? I tried building both Python 2 and 3 
outside the source tree, with Gnu and BSD Make. In all cases, if I hack the 
timestamps to force $(ASDLGEN) to run and remove the original source 
Python/Python-ast.c, it is correctly generated and compiled in the build 
directory. If I hack the timestamps the other way so that $(ASDLGEN) is not 
run, the file from the source directory is compiled into the build directory. 
So everything seems to be working reasonably well.

--

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



[issue28066] [Patch] Fix the ability to cross compile Python when doing a rebuild of importlib.h

2016-09-11 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed
versions: +Python 3.5, Python 3.6 -Python 3.7

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



[issue28092] Build failure for 3.6 on Centos 5.11

2016-09-11 Thread Martin Panter

Martin Panter added the comment:

This is like the OS X Tiger buildbot failure.
http://buildbot.python.org/all/builders/x86%20Tiger%203.x/builds/11323/steps/compile/logs/stdio
/usr/bin/ld: multiple definitions of symbol _PyDTrace_FUNCTION_ENTRY
Python/ceval.o definition of _PyDTrace_FUNCTION_ENTRY in section (__TEXT,__text)
Python/dtrace_stubs.o definition of _PyDTrace_FUNCTION_ENTRY in section 
(__TEXT,__text)

My stab in the dark is that the compiler (GCC?) being used is interpreting 
“inline” functions differently to C99.

--
nosy: +benjamin.peterson, martin.panter

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



[issue15819] Unable to build Python out-of-tree when source tree is readonly.

2016-09-11 Thread Martin Panter

Martin Panter added the comment:

I’m not sure what the overall status of this bug is, so I will leave the 
versions as they are. Are the three comments from 2013 relevant, and is there 
anything I can do to help?

The Python 2 code already unconditionally adds -IInclude (see Issue 786737), 
and does not use BASECPPFLAGS. I think it would better to remove Trent’s code, 
as in unused-flags.patch.

Python 3 also has this unconditional -IInclude, so maybe we can eliminate one 
of them in Python 3?

gcc -pthread -c -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall 
-Wstrict-prototypes-Werror=declaration-after-statement  -IObjects -IInclude 
-IPython -I. -IInclude -I../Include-DPy_BUILD_CORE -o Python/Python-ast.o 
Python/Python-ast.c

--
stage:  -> patch review
Added file: http://bugs.python.org/file44574/unused-flags.patch

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



[issue28084] Fatal Python error: Py_EndInterpreter: not the last thread

2016-09-11 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


--
resolution:  -> duplicate
status: open -> closed
superseder:  -> test_threading: test_threads_join_2() failed with "Fatal Python 
error: Py_EndInterpreter: not the last thread"

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



[issue27952] Finish converting fixcid.py from regex to re

2016-09-11 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


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

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



[issue28022] SSL releated deprecation for 3.6

2016-09-11 Thread Martin Panter

Martin Panter added the comment:

New test failure when using -Werror:

==
ERROR: test_local_bad_hostname (test.test_httplib.HTTPSTest)
--
Traceback (most recent call last):
  File "/media/disk/home/proj/python/cpython/Lib/test/test_httplib.py", line 
1646, in test_local_bad_hostname
check_hostname=True)
  File "/media/disk/home/proj/python/cpython/Lib/http/client.py", line 1373, in 
__init__
DeprecationWarning, 2)
DeprecationWarning: key_file, cert_file and check_hostname are deprecated, use 
a custom context instead.

--

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



[issue28066] [Patch] Fix the ability to cross compile Python when doing a rebuild of importlib.h

2016-09-11 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


Added file: http://bugs.python.org/file44549/srcdir-check.patch

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



[issue28066] [Patch] Fix the ability to cross compile Python when doing a rebuild of importlib.h

2016-09-11 Thread Martin Panter

Changes by Martin Panter <vadmium...@gmail.com>:


Removed file: http://bugs.python.org/file44548/srcdir-check.patch

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



[issue28066] [Patch] Fix the ability to cross compile Python when doing a rebuild of importlib.h

2016-09-11 Thread Martin Panter

Martin Panter added the comment:

There are various tricky cases to be considered with the regenerated files like 
importlib.h. One of them is that you are supposed to be able to build Python 
from a read-only source tree. See Issue 15819. Writing files into $(srcdir) 
would break this.

Also, as I just wrote in that bug, the built Python/importlib.h is already 
supposed to be searchable. However the logic seems to be broken. Can you see if 
this patch helps?

--
stage:  -> patch review
Added file: http://bugs.python.org/file44548/srcdir-check.patch

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



<    4   5   6   7   8   9   10   11   12   13   >