New submission from Xavier de Gaye :
A regression occurs in python 3.2 when doing a copy of an asyncore
dispatcher.
$ python3.1
Python 3.1.2 (r312:79147, Apr 4 2010, 17:46:48)
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" f
Xavier de Gaye added the comment:
The infinite recursion occurs also when running python 3.2 with the
extension modules copy, copyreg and asyncore from python 3.1. So it
seems this regression is not caused by a modification in these
modules.
Anyway, the bug is in asyncore. The attached patch
Xavier de Gaye added the comment:
About why the asyncore bug shows up in python 3.2:
The simple test below is ok with python 3.1 but triggers a
"RuntimeError: maximum recursion depth exceeded..." with python 3.2:
$ python3.1
Python 3.1.2 (r312:79147, Apr 4 2010, 17:46:48)
[GCC
Xavier de Gaye added the comment:
> So, in 3.1 hasattr(y, '__setstate__') *did* recurse and hit the limit,
> but the exception was caught and hasattr returned False?
This is right.
> I think I prefer the new behavior...
> The patch looks good, I would simply have rais
New submission from Xavier de Gaye :
Pdb skips frames after hitting a breakpoint and running step commands
that walk back the frame stack.
Run the following two tests with the two files named foo.py and bar.py:
=== foo.py
from bar import bar
Changes by Xavier de Gaye :
--
type: -> behavior
___
Python tracker
<http://bugs.python.org/issue13183>
___
___
Python-bugs-list mailing list
Unsubscri
Xavier de Gaye added the comment:
Uploaded restore_trace_2.patch that improves the test case.
--
Added file: http://bugs.python.org/file23418/restore_trace_2.patch
___
Python tracker
<http://bugs.python.org/issue13
Xavier de Gaye added the comment:
Uploaded restore_trace.py27.patch with a fix and test case for python 2.7.
--
Added file: http://bugs.python.org/file23419/restore_trace.py27.patch
___
Python tracker
<http://bugs.python.org/issue13
Xavier de Gaye added the comment:
> I am not marking 'test needed' since the problem is 'hardly reproducible'.
The attached script named 'asyncore_epipe.py' may be used to reproduce
systematically the EPIPE error on linux with Python 3.2:
* the Reader clos
Xavier de Gaye added the comment:
Uploaded the patch 'epipe-default.patch' with a test case that breaks
on linux when EPIPE is not handled by asyncore, which is the case with
Python 3.2 and previous versions.
--
Added file: http://bugs.python.org/file23533/epipe-def
Xavier de Gaye added the comment:
Uploaded the same test case for Python 2.7.
--
Added file: http://bugs.python.org/file23534/epipe-2.7.patch
___
Python tracker
<http://bugs.python.org/issue5
Xavier de Gaye added the comment:
> Did you try with the current branches?
Yes, the test is pass against the current default and 2.7 branches.
One must remove EPIPE from the asyncore._DISCONNECTED frozenset to
make the test to fail.
> Yes, see RFC1122 section 4.2.2.13:
> "&quo
Xavier de Gaye added the comment:
The test fails when use_poll is True.
The difference between using poll() and poll2():
poll: All the read events are processed before the write events,
so the close after the first recv by TestHandler will be followed
by a send by TestClient within
Xavier de Gaye added the comment:
> Actually the class asyncore.dispatcher_with_send do not handle
> properly disconnection. When the endpoint shutdown his sending part
> of the socket, but keep the socket open in reading, the current
> implementation of dispatcher_with_send wi
Xavier de Gaye added the comment:
Thanks for the explanations.
I confirm that the patch fixes 'asyncore_12498.py' with your changes
applied to this script.
Note that the patch may break applications that have given different
semantics to 'closing' ('closing'
Xavier de Gaye added the comment:
> Note that the patch may break applications that have given different
> semantics to 'closing' ('closing' being such a common name for a
> network application) after they noticed that this attribute is never
> used by asyncore
Changes by Xavier de Gaye :
Added file: http://bugs.python.org/file23559/asyncore_shutdown.py
___
Python tracker
<http://bugs.python.org/issue12498>
___
___
Python-bug
Xavier de Gaye added the comment:
While writing the test case, I found out that the test case does not
fail before the patch. It seems that draining the output buffer
already works:
The attached script 'asyncore_shutdown.py' drains the output buffer
when run without the patch, with
Xavier de Gaye added the comment:
> That's because you didn't define a handle_read() method
Ooops...
Attached is a patch for dispatcher_with_send and asynchat with a test
case for each, that fail when the fix is not applied.
--
Added file: http://bugs.python.
New submission from Xavier de Gaye :
Add the following lines to test_handle_expt (this makes sense, a
dispatcher instance is supposed to implement handle_read and call recv
in order to detect that the remote end has closed the socket):
--- a/Lib/test/test_asyncore.py
+++ b/Lib/test
New submission from Xavier de Gaye :
When the remote end disconnects, handle_close is only called if recv
is called (from handle_read). The default implementation of
handle_read does not call recv.
Not having the default implementation of handle_read call recv, has
the following drawbacks
Xavier de Gaye added the comment:
Hi Charles-François,
> And indeed, that's a known kernel regression introduced in 2.6.28,
> and fixed by this commit:
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b634f87522dff87712df8bda2a6c9061954d552a
> http
New submission from Xavier de Gaye :
When an asyncore dispatcher initiates a tcp connection, its
representation lacks the peer address. The output of the attached
script 'dispatcher_addr.py' gives on linux with Python 3.2:
call stack in handle_connect_event:
->main->l
Changes by Xavier de Gaye :
Added file: http://bugs.python.org/file23593/dispatcher_addr.py
___
Python tracker
<http://bugs.python.org/issue13325>
___
___
Python-bug
Changes by Xavier de Gaye :
--
keywords: +patch
Added file: http://bugs.python.org/file23594/dispatcher_addr.diff
___
Python tracker
<http://bugs.python.org/issue13
Xavier de Gaye added the comment:
Review done after Charles-François review.
--
___
Python tracker
<http://bugs.python.org/issue12498>
___
___
Python-bugs-list m
Xavier de Gaye added the comment:
Attached is a new patch following the code review.
After rewriting the asyncore test to check that the data has been
successfully received by the client, the test fails when
using poll() and a data size of 4096 bytes. The reason is that when
TestHandler closes
Xavier de Gaye added the comment:
> I'd say your patch can be useful only in case the dispatcher subclass
> doesn't send() neither recv() any data, in which case the connection
> is supposed to remain open forever.
There are some cases where it is important to detect tha
Xavier de Gaye added the comment:
> In this kind of situation, it is perfectly legitimate for the client
> to perform a half-duplex close (shutdown(SHUT_WR)), since it does
> not intend to send data (which is implied by the fact that the sever
> doesn't implement an han
Xavier de Gaye added the comment:
> I think the best would be to not handle POLLHUP events while POLLIN
> is set, so that the handlers can have a chance to drain the input
> socket buffer.
Ok.
> But it's a separate issue, could you create a new one?
The test case fails if
Xavier de Gaye added the comment:
Follow my comments about half_duplex_close.diff (current latest patch).
+def handle_close(self):
+if not self._closing:
+self._closing = True
+# try to drain the output buffer
+while self.writable() and
Xavier de Gaye added the comment:
> this is the handling of a half-duplex disconnection on the remote
> side ?
Actually this is not the handling of a half-duplex disconnection on the
remote side, but we need a half-duplex disconnection to t
Xavier de Gaye added the comment:
Attached yet another patch.
This patch does not use a while loop in handle_close() and handles
POLLHUP as suggested by Charles-François. No changes have been made to
both tests (test_half_duplex_close).
--
Added file: http://bugs.python.org/file23609
New submission from Xavier de Gaye :
When use_poll is True, test_handle_close in test_asyncore.py invokes
twice the handle_close() method.
The attached patch:
modifies test_handle_close so that it fails when handle_close() is
called more than once
includes a fix that makes
New submission from Xavier de Gaye :
The 'Advanced Logging Tutorial' states about the lastResort handler:
"The handler’s level is set to WARNING, so all events at this and
greater severities will be output."
Python 3.2 does not follow this behavior:
Python 3.2 (r32:88445, J
New submission from Xavier de Gaye :
Description:
1. When deleting a single breakpoint, all the breakpoints located on
the line of this breakpoint are also deleted. See the test case
below.
2. The pdb 'clear' command documentation does not mention that all the
b
Xavier de Gaye added the comment:
According to my last post on this issue 2 years ago, this test "does not fail
on android-24-x86_64". This means that it does not fail on API level 24. IMO
the issue may be closed.
--
___
Python track
Xavier de Gaye added the comment:
test_crypt fails on android following last changes made at
243a73deee4ac61fe06602b7ed56b6df01e19f27.
The android libc does not have a crypt() function and the _crypt module is not
built.
generic_x86_64:/data/local/tmp/python $ python
Python 3.9.0a0 (heads
New submission from Xavier de Gaye :
On android which is a platform that is missing the shared memory
implementation, test___all__ fails because 'multiprocessing.managers' has no
attribute 'SharedMemoryManager' which is listed in __all__.
2|generic_x86_64:/data/local
New submission from Xavier de Gaye :
This is the same kind of issue as reported in #28684.
python -m test -v test_asyncio -m
test_create_datagram_endpoint_existing_sock_unix
== CPython 3.9.0a0 (heads/abifa-dirty:cf805c25e6, Nov 18 2019, 16:40:26) [Clang
8.0.2 (https://andro
New submission from Xavier de Gaye :
See also the related issues:
#32126: [asyncio] test failure when the platform lacks a functional sem_open()
#28668: instanciation of multiprocessing.Queue raises ImportError in
test_logging
The test failure on android API 24:
generic_x86_64:/data/local
Change by Xavier de Gaye :
--
resolution: fixed ->
stage: resolved -> needs patch
status: closed -> open
___
Python tracker
<https://bugs.python.or
New submission from Xavier de Gaye :
test_timestamp_naive of test_datetime fails on android API 24:
generic_x86_64:/data/local/tmp/python $ python -m test -v test_datetime -m
test_timestamp_naive
== CPython 3.9.0a0 (heads/abifa-dirty:cf805c25e6, Nov 18 2019, 16:40:26) [Clang
8.0.2 (https
New submission from Xavier de Gaye :
The failure on andoid API 24:
generic_x86_64:/data/local/tmp/python $ python -m test -v test_largefile -m
test_it
== CPython 3.9.0a0 (heads/abifa-dirty:cf805c25e6, Nov 18 2019, 16:40:26) [Clang
8.0.2 (https://andro
id.googlesource.com/toolchain/clang
Xavier de Gaye added the comment:
No, it is the SELinux configuration on android devices that forbids binds to
named UNIX sockets. Changing from a named UNIX socket to an unnamed UNIX socket
would fix the problem. I don't know if all platforms support unnamed UNIX
sockets.
The fix in
New submission from Xavier de Gaye :
Attached test_socket.txt is the output of running 'python -m test -v
test_socket' on android API 24. The 108 tests in error are UDPLITE tests
introduced in issue #37345.
--
components: Tests
files: test_socket.txt
messages: 356985
nosy
New submission from Xavier de Gaye :
Actually it is the script that is spawned by test_recursion_limit that crashes
with SIGSEGV on android API 24. Lowering the recursion limit in the script from
1000 to 100 with sys.setrecursionlimit() fixes the problem.
Here is the error:
generic_x86_64
Change by Xavier de Gaye :
--
keywords: +patch
pull_requests: +16787
stage: needs patch -> patch review
pull_request: https://github.com/python/cpython/pull/17294
___
Python tracker
<https://bugs.python.org/issu
Change by Xavier de Gaye :
--
keywords: +patch
pull_requests: +16788
stage: needs patch -> patch review
pull_request: https://github.com/python/cpython/pull/17296
___
Python tracker
<https://bugs.python.org/issu
Xavier de Gaye added the comment:
Changing the title to "compileall fails when the platform lacks a functional
sem_open()" as the problem lies in the compileall module itself.
Nosying Antoine as the author of issue #36786.
compileall fails on android API 24:
generic_x86_64:/data
Change by Xavier de Gaye :
--
resolution: -> fixed
stage: patch review -> resolved
status: open -> closed
versions: +Python 3.8
___
Python tracker
<https://bugs.python.or
Change by Xavier de Gaye :
--
keywords: +patch
pull_requests: +16792
stage: needs patch -> patch review
pull_request: https://github.com/python/cpython/pull/17300
___
Python tracker
<https://bugs.python.org/issu
Xavier de Gaye added the comment:
The crash occurs only on debug builds.
See the FreeBSD related issue #37906.
--
___
Python tracker
<https://bugs.python.org/issue38
Xavier de Gaye added the comment:
See the android related issue #38852.
--
nosy: +xdegaye
___
Python tracker
<https://bugs.python.org/issue37906>
___
___
Pytho
Change by Xavier de Gaye :
--
keywords: +patch
pull_requests: +16821
stage: needs patch -> patch review
pull_request: https://github.com/python/cpython/pull/17337
___
Python tracker
<https://bugs.python.org/issu
Xavier de Gaye added the comment:
Using test and try with _thread.stack_size(new_size), the pthread stack sizes
must be set to the following minimums to prevent stack overflow and get a
RecursionError:
* debug builds:7 Mb
* no-debug builds: 1 Mb
The default stack size for the main
Change by Xavier de Gaye :
--
pull_requests: +16901
pull_request: https://github.com/python/cpython/pull/17420
___
Python tracker
<https://bugs.python.org/issue28
Xavier de Gaye added the comment:
PR 17420 fixes cross-compilation of third-party extension modules.
The PYTHON_PROJECT_BASE environment variable is the path to the directory where
Python has been cross-compiled. It is used by the native python interpreter to
find the target sysconfigdata
New submission from Xavier de Gaye :
In function finalize_options() of Lib/distutils/command/install.py at
https://github.com/python/cpython/blob/575d0b46d122292ca6e0576a91265d7abf7cbc3d/Lib/distutils/command/install.py#L284
(prefix, exec_prefix) is set using get_config_vars(). This may be
New submission from Xavier de Gaye :
Title: testFsum failure caused by constant folding of a float expression
Description:
Python (Python 3.9.0a1+ heads/master-dirty:ea9835c5d1) is built on a Linux
x86_64. This native interpreter is used to cross-compile Python (using the same
Change by Xavier de Gaye :
Added file: https://bugs.python.org/file48763/foo.arm64
___
Python tracker
<https://bugs.python.org/issue38992>
___
___
Python-bugs-list mailin
Xavier de Gaye added the comment:
Yes PR GH-17513 does fix the problem.
Thanks Mark.
--
___
Python tracker
<https://bugs.python.org/issue38992>
___
___
Pytho
Xavier de Gaye added the comment:
get_config_vars() defined in distutils.sysconfig sets 'prefix' and
'exec_prefix' using sys.prefix (resp. sys.exec_prefix) on non nt platforms so
there is no problem. Closing the issue as not a bug.
--
resolution: -> not a
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue38852>
___
___
Python-bugs-list mailing list
Unsubscribe:
Xavier de Gaye added the comment:
Not interested anymore in android stuff.
--
___
Python tracker
<https://bugs.python.org/issue38840>
___
___
Python-bugs-list m
Xavier de Gaye added the comment:
Not interested anymore in android stuff.
--
___
Python tracker
<https://bugs.python.org/issue38848>
___
___
Python-bugs-list m
Xavier de Gaye added the comment:
Not interested anymore in android stuff.
--
___
Python tracker
<https://bugs.python.org/issue38851>
___
___
Python-bugs-list m
Xavier de Gaye added the comment:
Not interested anymore in android stuff.
--
___
Python tracker
<https://bugs.python.org/issue38850>
___
___
Python-bugs-list m
Xavier de Gaye added the comment:
Not interested anymore in android stuff.
--
stage: needs patch -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.org/i
Xavier de Gaye added the comment:
Not interested anymore in android stuff.
--
___
Python tracker
<https://bugs.python.org/issue25172>
___
___
Python-bugs-list m
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue36414>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue36758>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue35813>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue38840>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue38848>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue38851>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue38850>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
stage: resolved ->
___
Python tracker
<https://bugs.python.org/issue38849>
___
___
Python-bugs-list mailing list
Unsubscrib
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue25172>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue28833>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue28190>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue36361>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue36351>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
stage: patch review -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.org/issue36214>
___
___
Pyth
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue36125>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue27640>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue36141>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue36145>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue35997>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue31046>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue26852>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue35953>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue13886>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue26855>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue32203>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue32202>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
resolution: -> not a bug
stage: needs patch -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue29267>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue28542>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Xavier de Gaye :
--
nosy: -xdegaye
___
Python tracker
<https://bugs.python.org/issue20211>
___
___
Python-bugs-list mailing list
Unsubscribe:
1 - 100 of 1492 matches
Mail list logo