[issue16399] argparse: append action with default list adds to list instead of overriding

2018-07-30 Thread Evgeny
Evgeny added the comment: You don't need action='append'. For desired behavior you can pass action='store' with nargs='*'. I think it's a simplest workaround. -- nosy: +gun146 ___ Python tracker <https://bugs.python.org/issue16

[issue14243] tempfile.NamedTemporaryFile not particularly useful on Windows

2020-09-27 Thread Evgeny
Evgeny added the comment: Hello, this is to let you know, that I have created a pull request for this issue https://github.com/python/cpython/pull/22431 I am not really an experienced programmer, but I will give it a try -- nosy: +ev2geny

[issue14243] tempfile.NamedTemporaryFile not particularly useful on Windows

2020-12-14 Thread Evgeny
Change by Evgeny : -- keywords: +patch pull_requests: +22618 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/22431 ___ Python tracker <https://bugs.python.org/issu

[issue14243] tempfile.NamedTemporaryFile not particularly useful on Windows

2021-04-30 Thread Evgeny
Evgeny added the comment: >Eryk Sun added the comment: >I replied twice that I thought using the CM exit instead of O_TEMPORARY is >okay for NamedTemporaryFile() -- but only if a separate implementation of >TemporaryFile() that uses O_TEMPORARY is added at the same

[issue14243] tempfile.NamedTemporaryFile not particularly useful on Windows

2021-04-30 Thread Evgeny
Evgeny added the comment: >Paul Moore added the comment: >Evgeny, would you be willing to update your PR (including adding the docs >change, and tests to catch as many edge cases as you can think up) to match >this behaviour? Paul, thank you for moving this forward. I will g

[issue14243] tempfile.NamedTemporaryFile not particularly useful on Windows

2021-04-30 Thread Evgeny
Evgeny added the comment: > Eryk Sun added the comment: > Just implement a separate function for TemporaryFile() instead of aliasing it > to NamedTemporaryFile(). See msg390814. Eryk, forgive my ignorance, but aren't in your msg390814 you are proposing yet another enhancement

[issue14243] tempfile.NamedTemporaryFile not particularly useful on Windows

2021-04-30 Thread Evgeny
Evgeny added the comment: Eryk, I agree, that implementing TemporaryFile() in Windows goes hand in hand with the decision to stop using O_TEMPORARY in NamedTemporaryFile() The only thing I want to point out is that your suggestion also includes this "unlinking trick" (

[issue14243] tempfile.NamedTemporaryFile not particularly useful on Windows

2021-04-28 Thread Evgeny
Evgeny added the comment: Dear all, thank you very much for the discussion, I will just try to summarize the results of it. In my PR I used solution, proposed by Eryk. My solution involves introduction of the extra flag delete_on_close and making sure, that new situation is fully

[issue14243] tempfile.NamedTemporaryFile not particularly useful on Windows

2021-04-28 Thread Evgeny
Evgeny added the comment: On Mon, Apr 12, 2021 at 12:51 AM Jason R. Coombs wrote: > Jason R. Coombs added the comment: > At least I and Ethan and Martin have expressed a desire for the default, > preferred usage work well in a portable environment. Requiring > `delete_on

[issue14243] tempfile.NamedTemporaryFile not particularly useful on Windows

2021-04-11 Thread Evgeny
Evgeny added the comment: Dear all, how can we realistically move this forward? This issue is 9 years old by now. Everybody from the discussion agrees, this is an issue. There were several proposals made, all of them slightly different. 7 months ago I have implemented solution, pretty much

[issue10451] memoryview can be used to write into readonly buffer

2010-11-17 Thread Evgeny Kapun
New submission from Evgeny Kapun abacabadabac...@gmail.com: This code crashes Python: import io, mmap io.BytesIO(b' ').readinto(memoryview(mmap.mmap(-1, 1, prot=mmap.PROT_READ))) -- components: Interpreter Core messages: 121446 nosy: abacabadabacaba priority: normal severity: normal

[issue12251] subprocess(..., stdout=sys.stderr) closes stderr for child

2011-06-03 Thread Evgeny Tarasov
Changes by Evgeny Tarasov etarasov@gmail.com: -- nosy: +Evgeny.Tarasov ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12251 ___ ___ Python-bugs

[issue9334] argparse does not accept options taking arguments beginning with dash (regression from optparse)

2013-03-02 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9334 ___ ___ Python

[issue9334] argparse does not accept options taking arguments beginning with dash (regression from optparse)

2013-03-14 Thread Evgeny Kapun
Evgeny Kapun added the comment: The way how argparse currently parses option arguments is broken. If a long option requires an argument and it's value isn't specified together with the option (using --option=value syntax), then the following argument should be interpreted as that value

[issue12464] tempfile.TemporaryDirectory.cleanup follows symbolic links

2011-07-01 Thread Evgeny Kapun
New submission from Evgeny Kapun abacabadabac...@gmail.com: TemporaryDirectory.cleanup follows symbolic links to directories and tries to clean them as well. Try this (on Linux): import os, tempfile with tempfile.TemporaryDirectory() as d: os.symlink(/proc, d + /test

[issue12465] gc.get_referents can be used to crash Python

2011-07-01 Thread Evgeny Kapun
New submission from Evgeny Kapun abacabadabac...@gmail.com: This code crashes Python: import gc gc.get_referents(object.__dict__)[0].clear() gc.get_referents(type.__dict__)[0].clear() type(A, (), {})() -- components: Interpreter Core messages: 139572 nosy: abacabadabacaba priority

[issue12983] byte string literals with invalid hex escape codes raise ValueError instead of SyntaxError

2011-09-15 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12983 ___ ___ Python

[issue12729] Python lib re cannot handle Unicode properly due to narrow/wide bug

2011-09-15 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12729 ___ ___ Python

[issue1508475] transparent gzip compression in urllib

2012-03-04 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue1508475 ___ ___ Python

[issue18784] minor uuid.py loading optimization

2013-08-19 Thread Evgeny Sologubov
New submission from Evgeny Sologubov: Please see the patch attached. It quite is primitive and self-explanatory: the code wouldn't attempt to load *libc* via ctypes.CDLL, if all necessary functions are already found in *libuuid*. This patch also can serve as a work-around solution to issue

[issue19005] PyIter_Next crashes if passed a non-iterator

2013-09-11 Thread Evgeny Kapun
New submission from Evgeny Kapun: According to the documentation, PyIter_Next should raise TypeError if passed an object which is not an iterator as an argument. Instead, it calls a function through a null pointer, which leads to a crash. -- components: Interpreter Core messages

[issue19423] permutations len issue

2013-10-28 Thread Evgeny Luttsev
New submission from Evgeny Luttsev: Code: n = 2 perms = permutations(range(n), n) if list(perms) == [(0, 1), (1, 0)]: print(==) print(len(list(perms)):, len(list(perms))) Result: == len(list(perms)): 0 # SHOULD BE 2 -- components: Library (Lib) messages: 201556 nosy

[issue11406] There is no os.listdir() equivalent returning generator instead of list

2013-05-03 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue11406 ___ ___ Python

[issue17899] os.listdir() leaks FDs if invoked on FD pointing to a non-directory

2013-05-03 Thread Evgeny Kapun
New submission from Evgeny Kapun: When called with a file descriptor as an argument, os.listdir() duplicates it to pass to fdopendir(3). If this call fails, the new file descriptor is not closed, which leads to file descriptor leak. -- components: Library (Lib) messages: 188322 nosy

[issue17899] os.listdir() leaks FDs if invoked on FD pointing to a non-directory

2013-05-04 Thread Evgeny Kapun
Evgeny Kapun added the comment: To make fdopendir fail, just pass any valid FD which points to a non-directory, such as a file or a pipe. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue17899

[issue17899] os.listdir() leaks FDs if invoked on FD pointing to a non-directory

2013-05-04 Thread Evgeny Kapun
Evgeny Kapun added the comment: Simple test: while True: try: listdir(0) except NotADirectoryError: pass -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue17899

[issue6252] logging midnigh rotation

2009-06-10 Thread Turnaev Evgeny
New submission from Turnaev Evgeny xi...@yandex.ru: i have a very basic setup of logging in a long running daemon app.. I use TimedRotatingFileHandler with rotating at midnight. The bug: The last open logging file was for 2009-05-25.. app was running without logging anything for about a week

[issue6252] logging midnight rotation

2009-06-10 Thread Turnaev Evgeny
Turnaev Evgeny xi...@yandex.ru added the comment: I am sorry for my poor english. You must be misunderstood me. I attached a file try it like this: wget -o /dev/null http://localhost:9022/ then 5-7 times wget -o /dev/null http://localhost:9022/s then 4-5 times wget -o /dev/null http

[issue7434] general pprint rewrite

2013-11-17 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue7434 ___ ___ Python

[issue22524] PEP 471 implementation: os.scandir() directory scanning function

2014-09-30 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue22524 ___ ___ Python

[issue22609] Constructors of some mapping classes don't accept `self` keyword argument

2014-10-11 Thread Evgeny Kapun
New submission from Evgeny Kapun: import collections collections.Counter(self=1) Traceback (most recent call last): File stdin, line 1, in module TypeError: __init__() got multiple values for argument 'self' collections.OrderedDict(self=test) Traceback (most recent call last): File stdin

[issue23689] Memory leak in Modules/sre_lib.h

2015-03-18 Thread Evgeny Kapun
Evgeny Kapun added the comment: This patch doesn't fix the issue. The problem is that the list starting with state-repeat doesn't necessarily contains all repeat contexts that are allocated. Indeed, here [1] and here [2] repeat contexts are temporarily removed from the list. If the match

[issue2636] Adding a new regex module (compatible with re)

2015-03-18 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue2636 ___ ___ Python

[issue23689] Memory leak in Modules/sre_lib.h

2015-03-17 Thread Evgeny Kapun
Evgeny Kapun added the comment: Memory leak only happens if match operation terminates abruptly, e.g. because of SIGINT. In this case, DO_JUMP doesn't come back. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23689

[issue23689] Memory leak in Modules/sre_lib.h

2015-03-17 Thread Evgeny Kapun
Evgeny Kapun added the comment: Tracemalloc code: import re import signal import tracemalloc class AlarmError(Exception): pass def handle_alarm(signal, frame): raise AlarmError signal.signal(signal.SIGALRM, handle_alarm) s1

[issue23691] re.finditer iterator is not reentrant, but doesn't protect against nested calls to __next__

2015-03-17 Thread Evgeny Kapun
New submission from Evgeny Kapun: Iterator returned by re.finditer includes a SRE_STATE value, which is not designed to be used concurrently. However, it is possible to call __next__ on such iterator while another such call is in progress, e.g. from a signal handler. This may result

[issue9134] sre bug: lastmark_save/restore

2015-03-17 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9134 ___ ___ Python

[issue23690] re functions never release GIL

2015-03-17 Thread Evgeny Kapun
Evgeny Kapun added the comment: Aren't Python strings immutable? Also, match functions still permit execution of signal handlers, which can execute any Python code. If GIL is needed during matching, can it be released temporarily to permit thread switching

[issue433030] SRE: Atomic Grouping (?...) is not supported

2015-03-17 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue433030 ___ ___ Python

[issue23692] Undocumented feature prevents re module from finding certain matches

2015-03-17 Thread Evgeny Kapun
New submission from Evgeny Kapun: This pattern matches: re.match('(?:()|(?(1)()|z)){2}(?(2)a|z)', 'a') But this doesn't: re.match('(?:()|(?(1)()|z)){0,2}(?(2)a|z)', 'a') The difference is that {2} is replaced by {0,2}. This shouldn't prevent the pattern from matching anywhere where

[issue23689] Memory leak in Modules/sre_lib.h

2015-03-17 Thread Evgeny Kapun
New submission from Evgeny Kapun: In Modules/sre_lib.h on line 882 [1], a block of memory is allocated. If SRE(match) function later terminates abruptly, either because of a signal or because subsequent memory allocation fails, this block is never released. [1] https://hg.python.org/cpython

[issue23690] re functions never release GIL

2015-03-17 Thread Evgeny Kapun
New submission from Evgeny Kapun: Looks like function in re module (match, fullmatch and so on) don't release GIL, even though these operations can take much time. As a result, other threads can't run while a pattern is being matched, and thread switching doesn't happen as well

[issue22672] float arguments in scientific notation not supported by argparse

2015-03-28 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue22672 ___ ___ Python

[issue24129] Incorrect (misleading) statement in the execution model documentation

2015-06-22 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24129 ___ ___ Python

[issue24260] TabError behavior doesn't match documentation

2015-05-24 Thread Evgeny Kapun
Evgeny Kapun added the comment: Prohibiting tabs after spaces is not enough. For example, Python rejects this code: if 1: spaceif 1: tabpass because its indentation is invalid if tab width is 1. However, it accepts this code: if 1: tabif 1: 10 spacespass despite its

[issue24260] TabError behavior doesn't match documentation

2015-05-21 Thread Evgeny Kapun
New submission from Evgeny Kapun: In the documentation, it is said: Indentation is rejected as inconsistent if a source file mixes tabs and spaces in a way that makes the meaning dependent on the worth of a tab in spaces; a TabError is raised in that case. But that's not true

[issue24261] Add a command line flag to suppress default signal handlers

2015-05-21 Thread Evgeny Kapun
New submission from Evgeny Kapun: Currently, Python always changes handling of certain signals on startup: SIGPIPE is ignored, and SIGINT is handled by a function that raises KeyboardInterrupt exception. As a result, if the user presses Ctrl-C, a backtrace is printed to stderr. Some program

[issue14228] Don't display traceback when import site is interrupted by CTRL+c

2015-05-21 Thread Evgeny Kapun
Changes by Evgeny Kapun abacabadabac...@gmail.com: -- nosy: +abacabadabacaba ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue14228 ___ ___ Python

[issue25454] operator.methodcaller should accept additional arguments during the call

2015-10-21 Thread Evgeny Kapun
New submission from Evgeny Kapun: Currently, operator.methodcaller behaves like this: def methodcaller(name, *args, **kwargs): def caller(obj): return getattr(obj, name)(*args, **kwargs) return caller That is, it is possible to supply arguments when the object

[issue25455] Some repr implementations don't check for self-referential structures

2015-10-21 Thread Evgeny Kapun
New submission from Evgeny Kapun: Implementations of repr for some of the types in the standard library doesn't check for self-referential structures. As a result, when calling repr() on such objects, Python crashes due to infinite recursion. Example: >>> import functo

[issue25454] operator.methodcaller should accept additional arguments during the call

2015-10-25 Thread Evgeny Kapun
Evgeny Kapun added the comment: There are methods that accept a single argument and behave like a binary operation or a predicate. It would be useful to be able to turn them into binary functions for use with higher-order functions like map and reduce: reduce(methodcaller("combine&qu

[issue18531] Undocumented different between METH_KEYWORDS and **kws

2015-10-30 Thread Evgeny Kapun
Changes by Evgeny Kapun <abacabadabac...@gmail.com>: -- nosy: +abacabadabacaba ___ Python tracker <rep...@bugs.python.org> <http://bugs.python

[issue2142] difflib.unified_diff(...) produces invalid patches

2015-11-04 Thread Evgeny Kapun
Changes by Evgeny Kapun <abacabadabac...@gmail.com>: -- nosy: +abacabadabacaba ___ Python tracker <rep...@bugs.python.org> <http://bugs.pytho

[issue26254] ssl should raise an exception when trying to load an unusable key (ECC key not using a named curve)

2016-02-01 Thread Evgeny Kapun
Evgeny Kapun added the comment: So, it looks like OpenSSL doesn't support keys using arbitrary curves at all. Then why don't I get an exception when trying to load such a key? Instead it just quietly disables all authenticated ciphersuites (anonymous ciphersuites still work) and then I get

[issue26254] ssl server doesn't work with ECC certificates

2016-01-31 Thread Evgeny Kapun
New submission from Evgeny Kapun: I tried to use ssl module to create a server with a certificate that uses an ECC key. However, this didn't work. Here is how to reproduce this: First, generate a key and a certificate: $ openssl req -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -x509

[issue27085] Make it possible to select return type for os.listdir

2016-05-23 Thread Evgeny Kapun
Evgeny Kapun added the comment: Unfortunately, this doesn't work if I pass a file descriptor. -- resolution: rejected -> status: closed -> open ___ Python tracker <rep...@bugs.python.org> <http://bugs.python

[issue27085] Make it possible to select return type for os.listdir

2016-05-23 Thread Evgeny Kapun
Evgeny Kapun added the comment: Unfortunately, on Linux, handling names as Unicode can cause some problems. For example, merely print()-ing such a name can cause UnicodeEncodeError. -- ___ Python tracker <rep...@bugs.python.org>

[issue27084] Add dir_fd and follow_symlinks kwargs to os.listdir and os.scandir

2016-05-22 Thread Evgeny Kapun
Evgeny Kapun added the comment: Mostly for consistency with other functions. Also, this provides an easy way to walk a directory tree recursively: just call listdir on every member, and if it doesn't raise OSError, that member must be a directory. With follow_symlinks=False, this method

[issue27085] Make it possible to select return type for os.listdir

2016-05-22 Thread Evgeny Kapun
New submission from Evgeny Kapun: Currently, os.listdir returns a list of strings, unless called with a bytes argument, in which case a list of byte strings is returned. I think that there should be a keyword argument to override this selection. -- components: Library (Lib) messages

[issue27086] Add closefd argument to os.listdir

2016-05-22 Thread Evgeny Kapun
New submission from Evgeny Kapun: Currently, when given a file descriptor, os.listdir will duplicate it so that the original file descriptor is not closed. In many cases, a file descriptor is not needed anymore after directory is listed, so this is not necessary. I propose adding a keyword

[issue27084] Add dir_fd and follow_symlinks kwargs to os.listdir and os.scandir

2016-05-22 Thread Evgeny Kapun
Evgeny Kapun added the comment: 1. Yes, it's possible to emulate dir_fd this way, so this is just for convenience. 2. If follow_symlinks is False, O_NOFOLLOW is passed to the underlying open(2) syscall. Of course, this doesn't make sense if a file descriptor is passed already

[issue27086] Add closefd argument to os.listdir

2016-05-22 Thread Evgeny Kapun
Evgeny Kapun added the comment: Not a problem, just two unnecessary syscalls. Also, I think that many of those who pass a file descriptor to os.listdir don't need it afterwards, because after you fstat() a file descriptor (to discover that it points to a directory) and read the directory

[issue27084] Add dir_fd and follow_symlinks kwargs to os.listdir and os.scandir

2016-05-22 Thread Evgeny Kapun
New submission from Evgeny Kapun: Many functions in os module support dir_fd and follow_symlinks keyword arguments. I think that os.listdir and os.scandir should do likewise. See also: issue25996. -- components: Library (Lib) messages: 266091 nosy: abacabadabacaba priority: normal

[issue25996] Add support of file descriptor in os.scandir()

2016-05-22 Thread Evgeny Kapun
Changes by Evgeny Kapun <abacabadabac...@gmail.com>: -- nosy: +abacabadabacaba ___ Python tracker <rep...@bugs.python.org> <http://bugs.python

[issue13322] buffered read() and write() does not raise BlockingIOError

2016-10-14 Thread Evgeny Kapun
Changes by Evgeny Kapun <abacabadabac...@gmail.com>: -- nosy: +abacabadabacaba ___ Python tracker <rep...@bugs.python.org> <http://bugs.python

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

2016-10-13 Thread Evgeny Kapun
New submission from Evgeny Kapun: GzipFile's underlying stream can be a raw stream (such as FileIO), and such streams can return short reads and writes at any time (e.g. due to signals). The correct behavior in case of short read or write is to retry the call to read or write the remaining

[issue15994] memoryview to freed memory can cause segfault

2016-10-13 Thread Evgeny Kapun
Changes by Evgeny Kapun <abacabadabac...@gmail.com>: -- nosy: +abacabadabacaba ___ Python tracker <rep...@bugs.python.org> <http://bugs.python

[issue28445] Wrong documentation for GzipFile.peek

2016-10-14 Thread Evgeny Kapun
New submission from Evgeny Kapun: >From the documentation for GzipFile.peek(): At most one single read on the compressed stream is done to satisfy the call. If "compressed stream" means the underlying file object, then this is not true. The method tries to return at l

[issue30048] If a task is canceled at the right moment, the cancellation is ignored

2017-04-11 Thread Evgeny Kapun
New submission from Evgeny Kapun: If I run this code: import asyncio as a @a.coroutine def coro1(): yield from a.ensure_future(coro2()) print("Still here") yield from a.sleep(1) print("Still here 2") @a.coroutine def co

[issue30048] If a task is canceled at the right moment, the cancellation is ignored

2017-04-12 Thread Evgeny Kapun
Evgeny Kapun added the comment: The problem is that the task doesn't catch CancelledError, yet it disappears. -- ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/i

[issue30064] BaseSelectorEventLoop.sock_{recv, sendall}() don't remove their callbacks when canceled

2017-04-13 Thread Evgeny Kapun
New submission from Evgeny Kapun: Code: import asyncio as a import socket as s @a.coroutine def coro(): s1, s2 = s.socketpair() s1.setblocking(False) s2.setblocking(False) try: yield from a.wait_for(loop.sock_recv(s2, 1), 1

[issue30929] AttributeErrors after import in multithreaded environment

2017-07-14 Thread Evgeny Boytsov
New submission from Evgeny Boytsov: Hello everybody! We are using Python 3.4 running at CentOS 7 x64 and experiencing some problems with simulatenous import of modules from different threads of execution. The attached archive contains simple example, which demonstrates the issue

[issue30929] AttributeErrors after import in multithreaded environment

2017-07-15 Thread Evgeny Boytsov
Evgeny Boytsov added the comment: The same behaviour is reprodusible at ubuntu 16.04 with python 3.5.2. And a colleague of mine said that he was able to reproduce the issue with python 3.6. -- ___ Python tracker <rep...@bugs.python.org>

[issue34035] zipfile: AttributeError in "seek" method of "_SharedFile" class

2018-07-04 Thread Evgeny Prilepin
Evgeny Prilepin added the comment: Hi RĂ©mi, it would be great if you posted a PR. -- ___ Python tracker <https://bugs.python.org/issue34035> ___ ___ Python-bug

[issue34035] zipfile: AttributeError in "seek" method of "_SharedFile" class

2018-07-03 Thread Evgeny Prilepin
New submission from Evgeny Prilepin : The misprint in the file lib/zipfile.py in the line 704 leads to AttributeError: '_SharedFile' object has no attribute 'writing' "self.writing()" should be replaced by "self._writing()". I also think this code shold

[issue34035] zipfile: AttributeError in "seek" method of "_SharedFile" class

2018-07-03 Thread Evgeny Prilepin
Evgeny Prilepin added the comment: I think the line 1031 also contains the misprint and will raise NameError. > self._decompressor = zipfile._get_decompressor(self._compress_type) "zipfile." is not correct code in this place. -- _

[issue38430] Memory leak in ThreadPoolExecutor + run_in_executor

2019-10-10 Thread Evgeny Nizhibitsky
New submission from Evgeny Nizhibitsky : I have run into a memory leak caused by using run_in_executor + ThreadPoolExecutor while running some stability tests with custom web services. It was 1 MB leaked for 1k requests made for my case and I've extracted the root cause and converted

[issue38430] Memory leak in ThreadPoolExecutor + run_in_executor

2019-10-10 Thread Evgeny Nizhibitsky
Evgeny Nizhibitsky added the comment: Oh, I see that in the initial code with leakage (it was heavy ThreadPoolExecutor + xgboost thing) there was an await but I must have lost it somewhere while reducing it to the minimal example and finished in the wrong direction. Glad too see

[issue39776] PyContextVar_Get(): crash due to race condition in updating tstate->id

2020-03-04 Thread Evgeny Boytsov
Evgeny Boytsov added the comment: I checked both my test example and real production code with your patch. I'm unable to reproduce the bug, so I think it is fixed now. Thank you! -- ___ Python tracker <https://bugs.python.org/issue39

[issue39776] Crash in decimal module in heavy-multithreaded scenario

2020-02-27 Thread Evgeny Boytsov
Evgeny Boytsov added the comment: I'am unable to reproduce neither my or your issues with python 3.6. The program runs infinitely as it meant to be. Can you please give me C++ traceback from the core dump, which was created when you ran my program

[issue39776] Crash in decimal module in heavy-multithreaded scenario

2020-02-27 Thread Evgeny Boytsov
Evgeny Boytsov added the comment: Thank you for feedback. I will try to reproduce the issue with 3.6. By the way, haven't you used gdb with python pretty-printers enabled to examine the state of the program? I've got the same error message, then I breaked the execution in debugger and tried

[issue39776] Crash in decimal module in heavy-multithreaded scenario

2020-02-28 Thread Evgeny Boytsov
Evgeny Boytsov added the comment: Your callstack is very strange. At line 30 of main.cpp GIL is obviously locked: // importing module in this tread gstate = PyGILState_Ensure(); py::module crash_test = py::module::import( "crash_test" ); <-- import PyGILState_Re

[issue39776] Crash in decimal module in heavy-multithreaded scenario

2020-02-27 Thread Evgeny Boytsov
New submission from Evgeny Boytsov : Hello everybody! We are using Python 3.7 running at CentOS 7 x64. Python is used as a library to create dynamic extensions for our app server. Some time ago we began to experience crashes in decimal module in some heavy-multithreaded scenarios. After

[issue39776] Crash in decimal module in heavy-multithreaded scenario

2020-02-28 Thread Evgeny Boytsov
Evgeny Boytsov added the comment: Also I understood the source of your crash with my initial example. Since you haven't used CMake to configure project, pybind didn't setup required macroses to enable threading support. So no issues in pybind

[issue39776] Crash in decimal module in heavy-multithreaded scenario

2020-02-28 Thread Evgeny Boytsov
Evgeny Boytsov added the comment: I rewrote my example without pybind and eliminated C++ module (I realized that time.sleep() also releases the GIL, so we achieve the same effect). Still the same results: with python 3.7.3 app crashes with attached ASAN output, with python 3.7.3 without

[issue39776] Crash in decimal module in heavy-multithreaded scenario

2020-02-27 Thread Evgeny Boytsov
Evgeny Boytsov added the comment: Please note, that UnlockGILandSleep takes GIL back before returning. In a real production code there is a database query. In this example I emulate them with random sleep. So I don't see any problems here

[issue43141] `asdict` fails with frozen dataclass keys; tries to use raw dict form as key

2021-02-05 Thread Evgeny Naumov
New submission from Evgeny Naumov : A simple example is documented here: https://github.com/samuelcolvin/pydantic/issues/2233 but it doesn't look like it was actually filed as a bug against CPython... Copy paste of the minimal reproducing example: from dataclasses import asdict, dataclass