Oren added the comment:
You're right - I misread those examples, sorry about that. It looks like my
former colleague may have invented the bad code in question.
I'm ok with closing as "not a bug" - I do think not fixing it adds a small
potential friction for people upg
Oren added the comment:
The code that was causing this problem looked something like:
--
def emit(self, record):
...
response = requests.post(...)
if not response.ok:
self.handleError(record)
...
--
In this case, something does apparently go wrong, but it doesn't act
Oren added the comment:
I totally agree that this involves misusing handleError. I ended up fixing the
code that originally caused the problem, since it was wrong in the first place.
The reason I filed this bug and that I think it's worth fixing is that in
previous versions, the pr
Change by Oren :
--
nosy: +vinay.sajip
___
Python tracker
<https://bugs.python.org/issue34086>
___
___
Python-bugs-list mailing list
Unsubscribe:
Oren added the comment:
I realize that there is a legitimate argument that handleError() is being used
wrong in the example, but since it used to work, it'd be nice if it still did.
I came across this after converting a codebase to python3 and it took a while
for this problem to a
New submission from Oren :
In python2, calling Handler.handleError may not be strictly correct, but it
doesn't raise an exception. However, this has regressed since this patch:
https://hg.python.org/cpython/rev/d7b868cdd9bb
$ cat logbug.py
import logging
class CustomHandler(logging.Ha
Oren Milman added the comment:
I opened #4333 for 2.7, but it is quite straightforward.. Am i missing
something?
--
___
Python tracker
<https://bugs.python.org/issue31
Change by Oren Milman :
--
pull_requests: +4288
___
Python tracker
<https://bugs.python.org/issue31764>
___
___
Python-bugs-list mailing list
Unsubscribe:
New submission from Oren Tirosh :
The object types in the datetime module can produce a standard string
representation (rfc3339, a subset of iso8601) but they do not provide a method
to parse it.
Proposed method names: isoparse or fromisoformat.
In addition, a constructor call with a single
Oren Milman added the comment:
ISTM that PR 3840 resolved this issue (as part of bpo-28280).
--
___
Python tracker
<https://bugs.python.org/issue31486>
___
___
Change by Oren Milman :
--
pull_requests: +3972
___
Python tracker
<https://bugs.python.org/issue31758>
___
___
Python-bugs-list mailing list
Unsubscribe:
Oren Milman added the comment:
According to Serhiy's advice (https://bugs.python.org/issue31455#msg304338),
this issue now also includes some crashes in _elementtree:
The following code crashes:
import _elementtree
parser = _elementtree.XMLParser.__new__(_elementtree.XMLParser)
parser.
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3971
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31787>
___
___
Python-
New submission from Oren Milman :
Various __init__() methods don't decref (if needed) before assigning to fields
of the object's struct (i.e. assigning to `self->some_field`):
- _asyncio_Task___init___impl() (in Modules/_asynciomodule.c)
- _lzma_LZMADecompressor___init___impl(
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3962
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31781>
___
___
Python-
New submission from Oren Milman :
The following code crashes:
import zipimport
zi = zipimport.zipimporter.__new__(zipimport.zipimporter)
zi.find_module('foo')
This is because get_module_info() (in Modules/zipimport.c) assumes that the
zipimporter object is initialized, so it assumes
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3960
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31779>
___
___
Python-
New submission from Oren Milman :
The following code causes an assertion failure:
import _struct
struct_obj = _struct.Struct.__new__(_struct.Struct)
struct_obj.iter_unpack(b'foo')
This is because Struct_iter_unpack() (in Modules/_struct.c) assumes that
Struct.__init__()
Oren Milman added the comment:
Serhiy, in addition to the problems you mentioned with not calling __init__(),
it seems
that calling every method of an uninitialized XMLParser object would crash.
If you don't mind, i would be happy to open an issue to fix these crashes.
--
nosy:
Oren Milman added the comment:
Shame on me. I only now found out that Serhiy already mentioned most of the
refleaks
in https://bugs.python.org/issue31455#msg302103.
--
___
Python tracker
<https://bugs.python.org/issue31
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3946
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31770>
___
___
Python-
New submission from Oren Milman :
The following code crashes:
import sqlite3
import weakref
def callback(*args):
pass
connection = sqlite3.connect(":memory:")
cursor = sqlite3.Cursor(connection)
ref = weakref.ref(cursor, callback)
cursor.__init__(connection)
del cursor
del ref
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3934
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31764>
___
___
Python-
New submission from Oren Milman :
The following code causes a crash:
import sqlite3
cursor = sqlite3.Cursor.__new__(sqlite3.Cursor)
cursor.close()
this is because pysqlite_cursor_close() (in Modules/_sqlite/cursor.c) assumes
that `self->connection` is not NULL, and passes it
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3931
stage: needs patch -> patch review
___
Python tracker
<https://bugs.python.org/issu
New submission from Oren Milman :
The following code results in refleaks:
import sys
import _elementtree
builder = _elementtree.TreeBuilder()
parser = _elementtree.XMLParser(target=builder)
refcount_before = sys.gettotalrefcount()
parser.__init__(target=builder)
print(sys.gettotalrefcount
Change by Oren Milman :
--
pull_requests: +3927
stage: resolved -> patch review
___
Python tracker
<https://bugs.python.org/issue31490>
___
___
Python-bugs-lis
Change by Oren Milman :
--
pull_requests: +3926
stage: backport needed -> patch review
___
Python tracker
<https://bugs.python.org/issue31271>
___
___
Python-
Change by Oren Milman :
--
pull_requests: +3925
stage: backport needed -> patch review
___
Python tracker
<https://bugs.python.org/issue31728>
___
___
Python-
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3918
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31722>
___
___
Python-
Oren Milman added the comment:
(opened bpo-31746 for the crashes i mentioned)
--
___
Python tracker
<https://bugs.python.org/issue31740>
___
___
Python-bug
New submission from Oren Milman :
The following code causes a crash:
import sqlite3
connection = sqlite3.Connection.__new__(sqlite3.Connection)
connection.isolation_level
This is because pysqlite_connection_get_isolation_level() doesn't check whether
the Connection object is initia
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3917
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31740>
___
___
Python-
Oren Milman added the comment:
As serhiy pointed out in a comment in PR 3924, setting self->text or self->tail
to
NULL might lead to an assertion failure, so we should also prevent the following
assertion failure (and the similar one for tail):
import xml.etree.ElementTree
class X:
Oren Milman added the comment:
Ah, here also there are crashes when calling methods of uninitialized
connection objects.
Should i fix this as part of this issue, or open another one?
--
___
Python tracker
<https://bugs.python.org/issue31
New submission from Oren Milman :
The following code causes refleaks:
import sqlite3
connection = sqlite3.Connection.__new__(sqlite3.Connection)
connection.__init__('foo')
connection.__init__('foo')
This is because pysqlite_connection_init() (in Modules/_sqlite/connection.c
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3912
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31734>
___
___
Python-
Oren Milman added the comment:
Yes, i am going manually over the code to find similar stuff to #31718,
and i afraid i found quite a few, and still working on it..
--
___
Python tracker
<https://bugs.python.org/issue31
Oren Milman added the comment:
Also, the following code results in a memory leak:
import sqlite3
cache = sqlite3.Cache.__new__(sqlite3.Cache)
This is because pysqlite_cache_dealloc() just returns in case of an
uninitialized
Cache object
New submission from Oren Milman :
The following code causes a crash:
import sqlite3
cache = sqlite3.Cache.__new__(sqlite3.Cache)
cache.get(None)
This is because pysqlite_cache_get() (in Modules/_sqlite/cache.c) assumes that
the Cache object is initialized, and so it passes self->mapping
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3897
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31728>
___
___
Python-
New submission from Oren Milman :
The following code causes the interpreter to crash:
import xml.etree.ElementTree
class X:
def __del__(self):
elem.clear()
elem = xml.etree.ElementTree.Element('elem')
elem.text = X()
elem.clear()
This is because _elementtree_Element_
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3892
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31723>
___
___
Python-
New submission from Oren Milman :
The following code causes refleaks:
import zipimport
zi = zipimport.zipimporter.__new__(zipimport.zipimporter)
zi.__init__('bar.zip')
zi.__init__('bar.zip')
zi.__init__('bar.zip\\foo')
This is because zipimport_zipimport
New submission from Oren Milman :
The following code causes an assertion failure in FutureObj_finalize() (in
Modules/_asynciomodule.c):
import asyncio
asyncio.Future()._log_traceback = True
Maybe we should allow Python code to only set it to False, and raise a
ValueError in case Python code
Oren Milman added the comment:
With regard to refleaks in __init__() methods, i started looking for similar
refleaks
in the codebase, and hope to open an issue to fix them soon.
--
___
Python tracker
<https://bugs.python.org/issue31
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3886
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31718>
___
___
Python-
Oren Milman added the comment:
Yes, although i don't know if there are usecases for that.
--
___
Python tracker
<https://bugs.python.org/issue31718>
___
___
New submission from Oren Milman :
Given an uninitialized IncrementalNewlineDecoder:
uninitialized =
io.IncrementalNewlineDecoder.__new__(io.IncrementalNewlineDecoder)
each of the following calls would raise a SystemError ('null argument to
internal routine'):
uninitialize
Oren Milman added the comment:
Oh, and calls to PyObject_GC_NewVar() might also cause similar issues.
--
___
Python tracker
<https://bugs.python.org/issue31
Oren Milman added the comment:
Davin and Antoine, i added you to the nosy list because you are listed
as multiprocessing experts :)
--
nosy: +davin, pitrou
___
Python tracker
<https://bugs.python.org/issue31
Oren Milman added the comment:
Here is some similar code that crashes for the same reasons:
# create a circular reference with a malicious __del__().
class A:
def __del__(*args):
del list1[0]
circ_ref_obj = A()
circ_ref_obj._self = circ_ref_obj
list1 = [None]
list2 = []
del
Oren Milman added the comment:
Prof Plum, i changed the type of the issue to 'behavior', because Lang and me
both got a KeyError. if your interpreter actually crashed, please change it
back to 'crash'.
--
___
Python tracker
<
Oren Milman added the comment:
IIUC:
In Lang's example, doing `queue = None` caused the destruction of the shared
queue, which caused a call to BaseProxy._decref() (in
multiprocessing/managers.py),
which dispatched a decref request to the manager's server process.
Meanwhile, the poo
New submission from Oren Milman :
On my 64-bit Windows 10, the echo here would print -1073741571:
python -c "import faulthandler; faulthandler._fatal_error(b'a' * 2 ** 22)"
echo %errorlevel%
This is code c0fd, which windbg describes as 'Stack overflow'.
This
Oren Milman added the comment:
I am not sure, but ISTM that it isn't possible for the encoder to return a
unicode and not fail later.
This is because _textiowrapper_writeflush() would call _io.BytesIO.write()
(after it called _PyBytes_Join()), and bytesio_write() calls
PyObject_GetB
Oren Milman added the comment:
sure
--
___
Python tracker
<https://bugs.python.org/issue31271>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Oren Milman :
--
versions: +Python 2.7, Python 3.4
___
Python tracker
<https://bugs.python.org/issue21983>
___
___
Python-bugs-list mailing list
Unsub
Change by Oren Milman :
--
versions: +Python 3.7 -Python 2.7, Python 3.4
___
Python tracker
<https://bugs.python.org/issue21983>
___
___
Python-bugs-list mailin
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3839
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue21983>
___
___
Python-
Oren Milman added the comment:
Should i remove the code that i wasn't able to test from the PR, and
leave such changes to someone that is able to test it?
(of course, if there is some way i can do it using a VM, please point
that out, and i would try to set up th
Oren Milman added the comment:
IMHO, Lib/ctypes/test/test_cast.py is the relevant test.
Mark, do you still wish to provide a fix for that?
(Otherwise, i would be happy to open a PR.)
--
nosy: +Oren Milman
___
Python tracker
<ht
Change by Oren Milman :
--
pull_requests: +3826
___
Python tracker
<https://bugs.python.org/issue31478>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3821
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue28280>
___
___
Python-
Oren Milman added the comment:
(for knowledge preservation's sake)
Resolving this issue would also resolve #31486.
--
___
Python tracker
<https://bugs.python.org/is
Oren Milman added the comment:
I would be happy to write a PR that implements that.
However, i am not sure which way is better to construct a list from the return
value (an iterable, hopefully) of keys() etc.:
- Call PyList_Type() (in each of PyMapping_Keys() etc.) on the iterable, and
Change by Oren Milman :
--
pull_requests: +3808
___
Python tracker
<https://bugs.python.org/issue31285>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Oren Milman :
--
pull_requests: +3807
___
Python tracker
<https://bugs.python.org/issue29843>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Oren Milman :
--
resolution: -> duplicate
stage: -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.org/issue31637>
___
___
Oren Milman added the comment:
oh, i missed that. sorry.
--
___
Python tracker
<https://bugs.python.org/issue31637>
___
___
Python-bugs-list mailing list
Unsub
New submission from Oren Milman :
The following code:
from ctypes import *
from _testcapi import PY_SSIZE_T_MAX, LONG_MAX
if LONG_MAX == PY_SSIZE_T_MAX == (1 << 31) - 1:
class MyArray(Array):
_type_ = c_longlong
_length_ = 1 << 29
arr = MyArray()
for
Oren Milman added the comment:
But in case get_source() returned a unicode, is it likely that the splitlines()
method
of this unicode would return a 8-bit string? Currently show_warning() doesn't
handle this
scenario, as it assumes splitlines() returned an 8-bit string. Or do you think
Oren Milman added the comment:
oh, of course, checking that get_source() returned a string before passing it to
str.splitlines() is not needed.
--
___
Python tracker
<https://bugs.python.org/issue31
Oren Milman added the comment:
Another thought - the existing code assumes that splitlines() returned a string.
So maybe we could just check that get_source() returned a string, and then call
the method str.splitlines() on it?
--
___
Python tracker
Oren Milman added the comment:
In 2.7, PyUnicode_Splitlines() first does:
string = PyUnicode_FromObject(string);
So i thought that PyUnicode_Splitlines() would be fine with receiving a string.
But now i realize that even in case i was right there, PyUnicode_Splitlines()
returns a unicode, and
Change by Oren Milman :
--
pull_requests: +3791
___
Python tracker
<https://bugs.python.org/issue31285>
___
___
Python-bugs-list mailing list
Unsubscribe:
Change by Oren Milman :
--
pull_requests: +3789
___
Python tracker
<https://bugs.python.org/issue31285>
___
___
Python-bugs-list mailing list
Unsubscribe:
Oren Milman added the comment:
Shouldn't we close this issue?
--
___
Python tracker
<https://bugs.python.org/issue28129>
___
___
Python-bugs-list m
Oren Milman added the comment:
With regard to backporting to 2.7:
In 2.7 also, PyNumber_Absolute() is called, and its return value is stored in
the variable n.
However, there is no _PyLong_NumBits(n), so there is no assertion failure.
If n isn't an integer:
- if !PyObject_IsTrue(n), the
Oren Milman added the comment:
Serhiy, you suggested in https://bugs.python.org/issue15988#msg289799 that
uploading
diff files here is more convenient than in a github PR, so I uploaded my fixes
here,
and so https://github.com/python/cpython/pull/668 is now outdated, and merging
it
isn
Oren Milman added the comment:
fixed indeed. thanks! :)
--
___
Python tracker
<https://bugs.python.org/issue31605>
___
___
Python-bugs-list mailing list
Unsub
Oren Milman added the comment:
thanks :)
opened http://psf.upfronthosting.co.za/roundup/meta/issue642
--
___
Python tracker
<https://bugs.python.org/issue31
Oren Milman added the comment:
Yet another code that causes a SystemError:
import zipimport
importer = zipimport.zipimporter('foo.zip')
tup_as_list =
list(zipimport._zip_directory_cache['foo.zip']['foo\\__init__.py'])
tup_as_list[0] = None
zipimport._zip_d
Change by Oren Milman :
--
pull_requests: +3775
___
Python tracker
<https://bugs.python.org/issue6986>
___
___
Python-bugs-list mailing list
Unsubscribe:
Oren Milman added the comment:
I would be happy to open such a PR, if you don't mind.
--
nosy: +Oren Milman
___
Python tracker
<https://bugs.python.org/i
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3774
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31608>
___
___
Python-
New submission from Oren Milman :
The following code causes the interpreter to crash:
import _collections
class BadDeque(_collections.deque):
def __new__(cls, *args):
if len(args):
return 42
return _collections.deque.__new__(cls)
BadDeque() * 42
(The
Oren Milman added the comment:
Nick, maybe you tried to reproduce in release?
In debug (where I got the SystemError), you have in the beginning of
_PyFrame_New_NoTrack():
#ifdef Py_DEBUG
if (code == NULL || globals == NULL || !PyDict_Check(globals) ||
(locals != NULL
Change by Oren Milman :
--
nosy: +ezio.melotti
___
Python tracker
<https://bugs.python.org/issue31605>
___
___
Python-bugs-list mailing list
Unsubscribe:
Oren Milman added the comment:
I am not 100% sure that issues are showed because they had a recent activity,
but ISTM like the reason..
--
___
Python tracker
<https://bugs.python.org/issue31
New submission from Oren Milman :
For example, when I search for 'ctypes', I get only two results.
Just in case, i checked and got the same results in multiple browsers, and also
on Ubuntu and on Windows.
--
components: Demos and Tools
messages: 303114
nosy: Oren Milma
Change by Oren Milman :
--
keywords: +patch
pull_requests: +3769
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31602>
___
___
Python-
New submission from Oren Milman :
The following code causes an assertion failure (in case there exists a
compressed zip file named 'foo.zip' with a file called 'bar.py' in it):
import zlib
import zipimport
def bad_decompress(*args):
return None
zlib.decompr
Changes by Oren Milman :
--
keywords: +patch
pull_requests: +3752
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31592>
___
___
Py
New submission from Oren Milman:
The following code causes an assertion failure:
import unicodedata
def bad_normalize(*args):
return None
unicodedata.normalize = bad_normalize
import ast
ast.parse('\u03D5')
This is because init_normalization() (in Python/ast.c) as
Changes by Oren Milman :
--
keywords: +patch
pull_requests: +3749
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31588>
___
___
Py
Changes by Oren Milman :
--
keywords: +patch
pull_requests: +3748
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31586>
___
___
Py
New submission from Oren Milman:
The following code causes a SystemError:
class BadMetaclass(type):
def __prepare__(*args):
pass
class Foo(metaclass=BadMetaclass):
pass
This is because builtin___build_class__() assumes that __prepare__() returned a
mapping, and passes it to
New submission from Oren Milman:
The following code causes a SystemError:
class BadMapping:
get = dict.get
__setitem__ = dict.__setitem__
import _collections
_collections._count_elements(BadMapping(), [42])
This is because _count_elements() (in Modules/_collectionsmodule.c) assumes
Changes by Oren Milman :
--
keywords: +patch
pull_requests: +3739
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue31577>
___
___
Py
1 - 100 of 383 matches
Mail list logo