[issue42248] Raised exception in Enum keeping user objects alive unnecessarily
Gerald Dalley added the comment: I and a few others have run into issues with the Enum constructors producing spurious reference cycles. This can cause memory explosions if large objects like numpy arrays are held in any of the relevant stack frames. Based on https://bugs.python.org/issue36820, it looks like the maintainers of CPython are open to fixing similar issues, and PRs look like the way to make progress. -- nosy: +gerald.dalley2 type: -> enhancement ___ Python tracker <https://bugs.python.org/issue42248> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue13337] IGNORE_CASE doctest option flag
New submission from Gerald Dalley dall...@alum.mit.edu: It would be helpful to have a doctest flag that makes the test case insensitive. Use case: nan values are printed as nan with typical Linux implementations, but as NaN on other operating systems like Solaris. In a naive implementation, the core change to doctest.OutputChecker.check_output is: +if optionflags IGNORE_CASE: +got= got.lower() +want = want.lower() +true_line = true\n +false_line = false\n +else: +true_line = True\n +false_line = False\n + # Handle the common case first, for efficiency: # if they're string-identical, always return true. if got == want: return True # The values True and False replaced 1 and 0 as the return # value for boolean comparisons in Python 2.3. if not (optionflags DONT_ACCEPT_TRUE_FOR_1): -if (got,want) == (True\n, 1\n): +if (got,want) == (true_line, 1\n): return True -if (got,want) == (False\n, 0\n): +if (got,want) == (false_line, 0\n): return True -- components: Library (Lib) messages: 146961 nosy: Gerald.Dalley priority: normal severity: normal status: open title: IGNORE_CASE doctest option flag versions: Python 2.6, Python 2.7, Python 3.1, Python 3.2, Python 3.3, Python 3.4 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue13337 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue13337] IGNORE_CASE doctest option flag
Changes by Gerald Dalley dall...@alum.mit.edu: -- type: - feature request ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue13337 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue13337] IGNORE_CASE doctest option flag
Gerald Dalley dall...@alum.mit.edu added the comment: ITSM? The motivating use case here comes from nan strings produced by libc in extension modules (even though python itself and some major libraries like numpy are consistent). At least some versions Solaris and Linux differ in this particular case. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue13337 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue7689] Pickling of classes with a metaclass and copy_reg
Gerald Dalley dall...@deshaw.com added the comment: Another use case: for distributed processing, it's handy to be able to pickle interactive functions and functions that are part of a script. The user can then remotely execute a broader set of functions than can be pickled by default. This is especially helpful for interactive exploration of data. Pickling most types of functions is possible by serializing a function's bytecode, etc. and registering a handler with copy_reg. Unfortunately, this handler is ignored under some conditions (e.g. copy_reg is ignored when attempting to serialize top-level functions in a script) but the copy_reg handler does get used for lambdas and inner functions. This patch looks like it will allow FunctionType's pickle handler to be overridden in all cases. -- nosy: +dalleyg ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue7689 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com