[issue21462] PEP 466: upgrade OpenSSL in the Python 2.7 Windows builds
Nick Coghlan added the comment: Yes, since OpenSSL 1.0.2 is still in beta, the target version for 2.7.7 would be 1.0.1g -- nosy: +benjamin.peterson ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21462 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21474] Idle: updata fixwordbreaks() for unicode identifiers
Serhiy Storchaka added the comment: I think it is enough to get rid of this function. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21474 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21469] False positive hazards in robotparser
Changes by Ethan Furman et...@stoneleaf.us: -- nosy: +ethan.furman ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21469 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21452] make_buildinfo.exe with VS2013 fails due ill-formed IntDir path
Mateusz Łoskot added the comment: On 9 May 2014 19:21, Tim Golden rep...@bugs.python.org wrote: Fixed. Thanks for the report Thank you for the fix. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21452 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue1599254] mailbox: other programs' messages can vanish without trace
Changes by Jakub Wilk jw...@jwilk.net: -- nosy: +jwilk ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue1599254 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue20115] NUL bytes in commented lines
Changes by Jakub Wilk jw...@jwilk.net: -- nosy: +jwilk ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue20115 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21475] Support the Sitemap and Crawl-delay extensions in robotparser
Berker Peksag added the comment: There is a patch for Crawl-delay in issue 16099. -- nosy: +berker.peksag ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21475 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21221] Minor struct_time documentation bug
Changes by Jakub Wilk jw...@jwilk.net: -- nosy: +jwilk ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21221 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21423] concurrent.futures.ThreadPoolExecutor should accept an initializer argument
Changes by Martin Dengler mar...@martindengler.com: -- nosy: +mdengler ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21423 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue17756] test_syntax_error fails when run in the installed location
Michael Foord added the comment: It looks like the simplest fix would be to change NameError: to NameError, as the problem is that they're (sometimes!?) on separate lines. This still tests what we want to test. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue17756 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue17756] test_syntax_error fails when run in the installed location
Matthias Klose added the comment: sure, doing this. my follow-up question was if it is necessary to fix anything else in unittest. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue17756 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21478] mock calls don't propagate to parent (autospec)
New submission from Dmitry Andreychuk: Calls to autospecced mock functions are not recorded to mock_calls list of parent mock. This only happens if autospec is used and the original object is a function. Example: import unittest.mock as mock def foo(): pass parent = mock.Mock() parent.child = mock.create_autospec(foo) parent.child() print(parent.mock_calls) Output: [] Expected output: [call.child()] It works fine if foo function is substituted with a class. Initially I came across this problem with patch() and attach_mock() but I simplified it for the demonstration. -- components: Library (Lib) messages: 218321 nosy: and priority: normal severity: normal status: open title: mock calls don't propagate to parent (autospec) type: behavior versions: Python 3.3, Python 3.4 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21478 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue9400] multiprocessing.pool.AsyncResult.get() messes up exceptions
Changes by Martin Dengler mar...@martindengler.com: -- nosy: +mdengler ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9400 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue8296] multiprocessing.Pool hangs when issuing KeyboardInterrupt
Changes by Martin Dengler mar...@martindengler.com: -- nosy: +mdengler ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue8296 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21198] Minor tarfile documentation bug
Changes by Berker Peksag berker.pek...@gmail.com: -- nosy: +berker.peksag, serhiy.storchaka stage: needs patch - patch review Added file: http://bugs.python.org/file35223/issue21198.diff ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21198 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10744] ctypes arrays have incorrect buffer information (PEP-3118)
mattip added the comment: Updated patch for default for empty shape, thanks eryksun -- Added file: http://bugs.python.org/file35224/hg-default-ctypes-fix-pep3118-format-strings-for-arrays-update.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10744 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue16099] robotparser doesn't support request rate and crawl delay parameters
Changes by Raymond Hettinger raymond.hettin...@gmail.com: -- assignee: - rhettinger nosy: +rhettinger ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue16099 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21479] Document TarFile.open() as a classmethod
New submission from Berker Peksag: The patch also updates the signature of TarFile.open(). -- assignee: docs@python components: Documentation files: tarfile-open-classmethod.diff keywords: patch messages: 218323 nosy: berker.peksag, docs@python, serhiy.storchaka priority: normal severity: normal stage: patch review status: open title: Document TarFile.open() as a classmethod versions: Python 2.7, Python 3.4, Python 3.5 Added file: http://bugs.python.org/file35225/tarfile-open-classmethod.diff ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21479 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue20872] dbm/gdbm/ndbm close methods are not document
Changes by Berker Peksag berker.pek...@gmail.com: -- keywords: +patch nosy: +berker.peksag stage: needs patch - patch review versions: -Python 3.3 Added file: http://bugs.python.org/file35226/issue20872.diff ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue20872 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21480] A build now requires...
New submission from Skip Montanaro: It's been awhile since I pulled from Mercurial and built, but I tried today. I almost immediately ran into an error. The configure step worked fine, but make, not so much: % make python ./Tools/scripts/generate_opcode_h.py ./Lib/opcode.py ./Include/opcode.h /opt/TWWfsw/bin/gmkdir -p Include python ./Parser/asdl_c.py -h Include ./Parser/Python.asdl Traceback (most recent call last): File ./Parser/asdl_c.py, line 1312, in module main(args[0], dump_module) File ./Parser/asdl_c.py, line 1251, in main if not asdl.check(mod): File /home/skipm/3rdParty/python/cpython/Parser/asdl.py, line 183, in check v = Check() File /home/skipm/3rdParty/python/cpython/Parser/asdl.py, line 140, in __init__ super().__init__() TypeError: super() takes at least 1 argument (0 given) make: *** [Include/Python-ast.h] Error 1 Trying to figure out what went wrong, I peeked in the Makefile and found: ASDLGEN_FILES= $(srcdir)/Parser/asdl.py $(srcdir)/Parser/asdl_c.py # XXX Note that a build now requires Python exist before the build starts ASDLGEN= python $(srcdir)/Parser/asdl_c.py This is bothersome on a couple levels. One, it assumes that python means Python 3 (which it doesn't mean here in the office). Two, it doesnt' offer any suggestions about how to work around this missing bootstrap. After a couple minutes fussing around, I finally got around the problem with a few judicious touch commands. It would be nice if * The above XXX comment was expanded to describe the necessary workaround * Even better, some sort of asdl-bootstrap target (referenced in the above comment) was added to the Makefile which sprinkled the necessary pixie dust to artificially satisfy the AST_H and AST_C targets. The bootstrap target shouldn't ever be executed automatically, but be available to execute manually. I think this would be sufficient: # For people building for the first time without an existing Python 3 asdl-bootstrap: touch $(AST_H) $(AST_C) -- messages: 218324 nosy: skip.montanaro priority: normal severity: normal status: open title: A build now requires... ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21480 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21469] False positive hazards in robotparser
Tal Einat added the comment: Changes LGTM. This module could certainly use some cleanup and updates. For example, last_changed should be a property and always accessed one way (instead of either .mtime() or .last_changed) and should be initialized to None instead of zero to avoid ambiguity, and the and/or trick should be replaced with if/else. Would anyone review such a patch if I created one? -- nosy: +taleinat ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21469 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21481] Argpase Namespace object methods __eq__ and __ne__ raise TypeError when comparing to None
New submission from Joe Borg: See example: import argparse a = argparse.ArgumentParser() b = a.parse_args([]) if b != None: ... print hey File stdin, line 2 print hey ^ SyntaxError: invalid syntax if b != None: ... print(hey) ... Traceback (most recent call last): File stdin, line 1, in module File /cfd/software/Python/340/lib/python3.4/argparse.py, line 1202, in __ne__ return not (self == other) File /cfd/software/Python/340/lib/python3.4/argparse.py, line 1199, in __eq__ return vars(self) == vars(other) TypeError: vars() argument must have __dict__ attribute -- components: Library (Lib) messages: 218326 nosy: Joe.Borg priority: normal severity: normal status: open title: Argpase Namespace object methods __eq__ and __ne__ raise TypeError when comparing to None versions: Python 2.7, Python 3.1, Python 3.2, Python 3.3, Python 3.4, Python 3.5 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21481 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21482] get_versions() in cygwinccomiler.py cannot return correct gcc version
New submission from Joe Chan: cannot return correct gcc version if the path name contains space. Suggest to change to: $ diff -rupN cygwinccompiler.py.original cygwinccompiler.py --- cygwinccompiler.py.original 2014-05-12 23:54:01.296303800 +0800 +++ cygwinccompiler.py 2014-05-12 23:59:57.429673400 +0800 @@ -418,14 +418,14 @@ def get_versions(): gcc_exe = find_executable('gcc') if gcc_exe: -out = os.popen(gcc_exe + ' -dumpversion','r') +out = os.popen('%s -dumpversion'%gcc_exe,'r') out_string = out.read() out.close() result = re.search('(\d+\.\d+(\.\d+)*)',out_string) if result: gcc_version = LooseVersion(result.group(1)) else: -gcc_version = None +gcc_version = None else: gcc_version = None ld_exe = find_executable('ld') -- components: Windows messages: 218327 nosy: 3togo priority: normal severity: normal status: open title: get_versions() in cygwinccomiler.py cannot return correct gcc version type: compile error versions: Python 2.7 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21482 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21480] A build now requires...
Antoine Pitrou added the comment: Does make touch work for you as well? -- components: +Devguide nosy: +eli.bendersky, ezio.melotti, pitrou ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21480 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue20969] Author of EPUB version of Python docs is set to Unknown instead of PSF
Berker Peksag added the comment: Here's a patch. I followed Antoine's name suggestion. PSF would more suitable for the epub_publisher option: http://sphinx-doc.org/config.html#confval-epub_publisher -- keywords: +patch nosy: +berker.peksag stage: needs patch - patch review Added file: http://bugs.python.org/file35227/issue20969.diff ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue20969 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21481] Argpase Namespace object methods __eq__ and __ne__ raise TypeError when comparing to None
Joe Borg added the comment: I believe this comes from doing vars(None). But why would this be happening if Namespace is empty. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21481 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21480] A build now requires...
Eli Bendersky added the comment: Skip, PTAL at the devguide. https://docs.python.org/devguide/setup.html#avoiding-re-creating-auto-generated-files -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21480 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21482] get_versions() in cygwinccomiler.py cannot return correct gcc version
Joe Chan added the comment: better to parenthesis all three exes[gcc, ld and dllwrap] with %s to better support path names that contain non-alphanumeric characters. $ diff -rupN cygwinccompiler.py.original cygwinccompiler.py --- cygwinccompiler.py.original 2014-05-12 23:54:01.296303800 +0800 +++ cygwinccompiler.py 2014-05-13 00:24:08.754684500 +0800 @@ -418,19 +418,19 @@ def get_versions(): gcc_exe = find_executable('gcc') if gcc_exe: -out = os.popen(gcc_exe + ' -dumpversion','r') +out = os.popen('%s -dumpversion'%gcc_exe,'r') out_string = out.read() out.close() result = re.search('(\d+\.\d+(\.\d+)*)',out_string) if result: gcc_version = LooseVersion(result.group(1)) else: -gcc_version = None +gcc_version = None else: gcc_version = None ld_exe = find_executable('ld') if ld_exe: -out = os.popen(ld_exe + ' -v','r') +out = os.popen('%s -v'%ld_exe,'r') out_string = out.read() out.close() result = re.search('(\d+\.\d+(\.\d+)*)',out_string) @@ -442,7 +442,7 @@ def get_versions(): ld_version = None dllwrap_exe = find_executable('dllwrap') if dllwrap_exe: -out = os.popen(dllwrap_exe + ' --version','r') +out = os.popen('%s --version'%dllwrap_exe,'r') out_string = out.read() out.close() result = re.search(' (\d+\.\d+(\.\d+)*)',out_string) -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21482 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21480] A build now requires...
Skip Montanaro added the comment: Does make touch work for you as well? Hadn't tried, and wasn't aware of its existence. I searched Makefile for things like AST_H. Perhaps: * Note make touch where the A build now requires... comment exists. That comment currently discourages users, as it gives no idea about the possibility of a workaround for a missing python. * Add a comment to the touch target identifying its purpose. It hadn't occurred to me to read the dev guide. That's for new contributors, not for old, lapsed contributors. wink Also, it still seems to me that the ASDLGEN definition should reference something that is explicitly Python 3 and can't accidentally execute a Python 2.x interpreter (or, the AST-generation script should work in both Python 2.x and 3.x). S -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21480 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue20826] Faster implementation to collapse consecutive ip-networks
Antoine Pitrou added the comment: Here is a much faster patch, around 30x faster than the original code. With exhuma's data set and tester.py, the original code gives: $ time python3.4 tester.py Execution time: 5.949284339199949 seconds real0m30.152s user0m30.104s sys 0m0.016s The patched code gives: $ time ./python tester.py Execution time: 0.25444041779992405 seconds real0m1.695s user0m1.681s sys 0m0.012s exhuma, perhaps you want to test with other data sets? -- Added file: http://bugs.python.org/file35228/faster_collapse.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue20826 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12556] Disable size checks in mmap.mmap()
Josh Triplett added the comment: This rejection is indeed problematic. If mmap.mmap receives an explicit size, checking that size against stat will break on devices or special files. It's perfectly reasonable that mmap.mmap's automatic logic when passed length=0 (to map the entire file) won't work if stat says the file has length 0, but the mmap syscall works fine on special files with length 0 (or devices), and mmap.mmap should work in that case as well. -- nosy: +joshtriplett ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12556 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21483] Skip os.utime() test on NFS?
New submission from Skip Montanaro: I got a strange error during make test in a fresh build (hg clone ; ./configure ; make ; make test) Traceback (most recent call last): File Lib/test/test_import.py, line 293, in test_timestamp_overflow os.utime(source, (2 ** 33 - 5, 2 ** 33 - 5)) OSError: [Errno 22] Invalid argument It took me a little while to figure out what was wrong. A simple check succeeded: import os os.utime(/tmp/trash, (2 ** 33 - 5, 2 ** 33 - 5)) 2**33-5 8589934587 After a bit of poking around, I realized test.support.TESTFN is on an NFS filesystem in my work environment: import importlib from test.support import TESTFN TESTFN '@test_31576_tmp' import sys sys.path.insert(0, os.curdir) source = TESTFN + .py compiled = importlib.util.cache_from_source(source) compiled '__pycache__/@test_31576_tmp.cpython-35.pyc' open(source, 'w') _io.TextIOWrapper name='@test_31576_tmp.py' mode='w' encoding='ANSI_X3.4-1968' source '@test_31576_tmp.py' os.path.getmtime(source) 1399912946.9349897 2**33-5 8589934587 os.utime(source, (2 ** 33 - 5, 2 ** 33 - 5)) Traceback (most recent call last): File stdin, line 1, in module OSError: [Errno 22] Invalid argument os.utime(/tmp/trash, (2 ** 33 - 5, 2 ** 33 - 5)) os.curdir '.' os.getcwd() '/home/skipm/3rdParty/python/cpython' blade% df -h . Filesystem Size Used Avail Use% Mounted on nfshost3:/global/export/home/skipm 2.1T 1.5T 639G 71% /home/skipm Should this test be skipped on NFS-mounted filesystems? Or should the test environment try to insure TESTFN is created on a local filesystem? Skip -- messages: 218336 nosy: skip.montanaro priority: normal severity: normal status: open title: Skip os.utime() test on NFS? ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21483 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue20826] Faster implementation to collapse consecutive ip-networks
Antoine Pitrou added the comment: Uh, those measurements are wrong, sorry, since tester.py doesn't consume the iterator. When consuming the iterator, the patch is ~ 4x faster than the original code, which is more reasonable :-) -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue20826 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21484] More clarity needed about difference between x += e and x = x + e
New submission from Feliks: In Sec. 7.2.1 of the Language Reference, in the description of += we have: Also, when possible, the actual operation is performed in-place, meaning that rather than creating a new object and assigning that to the target, the old object is modified instead. Although this is quite accurate, not all the consequences are immediately obvious, and sometimes they are quite serious. I would suggest adding a note that points the reader's attention in particular to the phenomenon exhibited in the following example: def f(ls): ls += [2] ... def g(ls): ls = ls + [2] ... a = [1] g(a) a [1] f(a) a [1, 2] -- assignee: docs@python components: Documentation messages: 218338 nosy: Kluzniak, docs@python priority: normal severity: normal status: open title: More clarity needed about difference between x += e and x = x + e type: enhancement versions: Python 3.4 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21484 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue16531] Allow IPNetwork to take a tuple
Changes by Antoine Pitrou pit...@free.fr: -- stage: needs patch - patch review versions: +Python 3.5 -Python 3.4 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue16531 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21484] More clarity needed about difference between x += e and x = x + e
Josh Rosenberg added the comment: It seems to me like that is one of the most obvious consequences. How is this not an immediately obvious consequence? -- nosy: +josh.rosenberg ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21484 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue20826] Faster implementation to collapse consecutive ip-networks
Antoine Pitrou added the comment: It seems like the speed of Network.supernet() is a bottleneck here. issue16531 would probably allow making supernet() much faster. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue20826 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue16531] Allow IPNetwork to take a tuple
Antoine Pitrou added the comment: Updated patch with more tests, documentation updates, and an optimized version of the supernet() that's now 5x faster than the original. I would like to commit this if there's no further comment. -- Added file: http://bugs.python.org/file35229/issue16531-3.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue16531 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue13742] Add a key parameter (like sorted) to heapq.merge
Changes by Eric Snow ericsnowcurren...@gmail.com: -- nosy: +eric.snow ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue13742 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue17794] Add a key parameter to PriorityQueue
Changes by Eric Snow ericsnowcurren...@gmail.com: -- nosy: +eric.snow ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue17794 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21485] remove unnecesary .flush() calls in the asyncio subprocess code example
New submission from akira: The current code example contains [1]: print(Python failed with exit code %s: % exitcode) sys.stdout.flush() sys.stdout.buffer.flush() sys.stdout.buffer.write(stdout) sys.stdout.buffer.flush() that looks bizarre. Either a comment should be added that explains why the `.flush()` calls are necessary or they should be removed. I've attached the documentation patch that removes the calls. [1] http://hg.python.org/cpython/file/2af5a52b9b87/Doc/library/asyncio-subprocess.rst#l227 -- assignee: docs@python components: Documentation files: docs-subprocess-remove-unnecessary-flush-from-code-example.patch keywords: patch messages: 218342 nosy: akira, docs@python priority: normal severity: normal status: open title: remove unnecesary .flush() calls in the asyncio subprocess code example versions: Python 3.4, Python 3.5 Added file: http://bugs.python.org/file35230/docs-subprocess-remove-unnecessary-flush-from-code-example.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21485 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue1475692] replacing obj.__dict__ with a subclass of dict
Changes by Eric Snow ericsnowcurren...@gmail.com: -- nosy: +eric.snow ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue1475692 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21422] int 0: return the number unmodified
Francisco Martín Brugué added the comment: Hi, sorry if it's trivial but shouldn't we add a 'shifted_true' test some were to make sure that this behavior change gets noticed next time? def test_shifted_true(self): self.assertEqual(True 0, 1) self.assertEqual(True 1, 2) -- nosy: +francismb ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21422 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21486] optimize v4 netmask parsing
Changes by Antoine Pitrou pit...@free.fr: -- dependencies: +Allow IPNetwork to take a tuple ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21486 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21486] optimize v4 netmask parsing
New submission from Antoine Pitrou: Here is a patch to optimize ipv4 netmask parsing by maintaining a cache (there are not many valid ipv4 netmask representations). This should be especially useful with #16531. -- components: Library (Lib) files: v4_netmask.patch keywords: patch messages: 218344 nosy: ncoghlan, pitrou, pmoody priority: low severity: normal stage: patch review status: open title: optimize v4 netmask parsing type: performance versions: Python 3.5 Added file: http://bugs.python.org/file35231/v4_netmask.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21486 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue16531] Allow IPNetwork to take a tuple
pmoody added the comment: fine by me. this has been on my todo list forever by $payingjob and $family have prevented me from devoting any time. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue16531 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue16531] Allow IPNetwork to take a tuple
Roundup Robot added the comment: New changeset 4e33c343a264 by Antoine Pitrou in branch 'default': Issue #16531: ipaddress.IPv4Network and ipaddress.IPv6Network now accept an (address, netmask) tuple argument, so as to easily construct network objects from existing addresses. http://hg.python.org/cpython/rev/4e33c343a264 -- nosy: +python-dev ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue16531 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue16531] Allow IPNetwork to take a tuple
Antoine Pitrou added the comment: Thanks for the approval, Peter! -- resolution: - fixed stage: patch review - resolved status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue16531 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21422] int 0: return the number unmodified
R. David Murray added the comment: Francisco: I'd say that was a good idea. Would you like to propose a patch? (ie: figure out where it should go) -- nosy: +r.david.murray ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21422 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21486] optimize v4 v6 netmask parsing
Antoine Pitrou added the comment: Updated patch, also optimizing v6 netmask parsing (same principle). Before patch: $ ./python -m timeit -s import ipaddress net = ipaddress.IPv6Network(('2001:db8::', 96)) 1 loops, best of 3: 26.1 usec per loop $ ./python -m timeit -s import ipaddress net = ipaddress.IPv4Network(('10.0.0.0', 23)) 10 loops, best of 3: 17 usec per loop After patch: $ ./python -m timeit -s import ipaddress net = ipaddress.IPv6Network(('2001:db8::', 96)) 10 loops, best of 3: 13.8 usec per loop $ ./python -m timeit -s import ipaddress net = ipaddress.IPv4Network(('10.0.0.0', 23)) 10 loops, best of 3: 14.3 usec per loop -- title: optimize v4 netmask parsing - optimize v4 v6 netmask parsing Added file: http://bugs.python.org/file35232/netmask.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21486 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21422] int 0: return the number unmodified
Arfrever Frehtes Taifersar Arahesis added the comment: Use assertIs, since True == 1, but True is not 1. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21422 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12556] Disable size checks in mmap.mmap()
Charles-François Natali added the comment: From a cursory inspection, we only check the size for regular files. What exception are you seeing exactly? What does stat return on this file? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12556 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21482] get_versions() in cygwinccomiler.py cannot return correct gcc version
Joe Chan added the comment: To prevent system crashes, I have to exclude msvc runtime library $ diff -rupN cygwinccompiler.py.original cygwinccompiler.py --- cygwinccompiler.py.original 2014-05-12 23:54:01.296303800 +0800 +++ cygwinccompiler.py 2014-05-13 02:59:37.870414900 +0800 @@ -341,7 +341,7 @@ class Mingw32CCompiler (CygwinCCompiler) # Include the appropriate MSVC runtime library if Python was built # with MSVC 7.0 or later. -self.dll_libraries = get_msvcr() +#self.dll_libraries = get_msvcr() # __init__ () @@ -418,19 +418,19 @@ def get_versions(): gcc_exe = find_executable('gcc') if gcc_exe: -out = os.popen(gcc_exe + ' -dumpversion','r') +out = os.popen('%s -dumpversion'%gcc_exe,'r') out_string = out.read() out.close() result = re.search('(\d+\.\d+(\.\d+)*)',out_string) if result: gcc_version = LooseVersion(result.group(1)) else: -gcc_version = None +gcc_version = None else: gcc_version = None ld_exe = find_executable('ld') if ld_exe: -out = os.popen(ld_exe + ' -v','r') +out = os.popen('%s -v'%ld_exe,'r') out_string = out.read() out.close() result = re.search('(\d+\.\d+(\.\d+)*)',out_string) @@ -442,7 +442,7 @@ def get_versions(): ld_version = None dllwrap_exe = find_executable('dllwrap') if dllwrap_exe: -out = os.popen(dllwrap_exe + ' --version','r') +out = os.popen('%s --version'%dllwrap_exe,'r') out_string = out.read() out.close() result = re.search(' (\d+\.\d+(\.\d+)*)',out_string) -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21482 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue7776] http.client.HTTPConnection tunneling is broken
Changes by Barry A. Warsaw ba...@python.org: -- nosy: +barry ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue7776 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21485] remove unnecesary .flush() calls in the asyncio subprocess code example
Changes by Berker Peksag berker.pek...@gmail.com: -- nosy: +giampaolo.rodola, gvanrossum, haypo, pitrou, yselivanov ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21485 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12556] Disable size checks in mmap.mmap()
Charles-François Natali added the comment: Scratch that. I'll try to work on a patch that doesn't break guarantees for regular files (we try to limit the possibilities of segfault). -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12556 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue20826] Faster implementation to collapse consecutive ip-networks
Antoine Pitrou added the comment: Updated patch, a bit faster yet. After issue16531 is committed, it is now ~15x faster than 3.4. -- Added file: http://bugs.python.org/file35233/faster_collapse2.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue20826 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue7776] http.client.HTTPConnection tunneling is broken
Donald Stufft added the comment: Just an update, the issue is fixed in urllib3 and that has been pulled into requests. Requests is currently prepping to release a new version which I'll pull into pip and issue a pip 1.5.6 release which can be pulled into CPython which should fix this. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue7776 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21469] False positive hazards in robotparser
Skip Montanaro added the comment: Can this change be (easily) tested? If so, a test case akin to your original example would be nice. -- nosy: +skip.montanaro ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21469 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21487] Assorted ipaddress performance improvements
New submission from Antoine Pitrou: Now that issue #16531 has been committed, it becomes possible to make some operations faster. Attached patch makes summarize_address_range() ~2x faster and Network.subnets() ~4x faster. -- components: Library (Lib) files: ipaddr_perf.patch keywords: patch messages: 218357 nosy: ncoghlan, pitrou, pmoody priority: normal severity: normal stage: patch review status: open title: Assorted ipaddress performance improvements type: performance versions: Python 3.5 Added file: http://bugs.python.org/file35234/ipaddr_perf.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21487 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21422] int 0: return the number unmodified
Roundup Robot added the comment: New changeset ef49aaad3812 by Victor Stinner in branch '3.4': Issue #21422: Add a test to check that bool int and bool int return an int http://hg.python.org/cpython/rev/ef49aaad3812 New changeset 3da4aed1d18a by Victor Stinner in branch 'default': (Merge 3.4) Issue #21422: Add a test to check that bool int and bool int http://hg.python.org/cpython/rev/3da4aed1d18a -- nosy: +python-dev ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21422 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21422] int 0: return the number unmodified
STINNER Victor added the comment: Ok, 3 core dev are opposed to the change, I close the issue. I added a test on bool int and bool int to ensure that the result is an int. -- resolution: - rejected status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21422 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21478] mock calls don't propagate to parent (autospec)
Changes by Ned Deily n...@acm.org: -- nosy: +michael.foord ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21478 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21420] Optimize 2 ** n: implement it as 1 n
STINNER Victor added the comment: My main motivation was to use calloc() (issue #21419) for 2**n. It looks like using calloc() for this is only useful for very rare cases (very large value of n: result larger than 1 MB). I close the issue. -- resolution: - rejected status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21420 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21419] Use calloc() instead of malloc() for int int (lshift)
STINNER Victor added the comment: The optimization of 2**n looks to be only useful for very large value of n, result larger than 1 MB. This use case is very rare, and you should probably use another library (GMP, numpy, or something else) for such large numbers. I close the issue. -- resolution: - rejected status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21419 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21478] mock calls don't propagate to parent (autospec)
Michael Foord added the comment: Mock objects detect when another mock is added as a child, but they don't currently detect that a function created by autospec has been added. It should be a fairly easy fix. -- assignee: - michael.foord ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21478 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21478] mock calls don't propagate to parent (autospec)
Changes by Michael Foord mich...@voidspace.org.uk: -- nosy: +kushal.das stage: - needs patch versions: +Python 3.5 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21478 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21422] int 0: return the number unmodified
Francisco Martín Brugué added the comment: I Victor you were so fast, I started with one patch also in bool (at least the place was right). The problem is that I was getting some extrage (for me at least). As far I hat: def test_shifted_true(self): with self.assertRaises(ValueError): True -1 self.assertIs(True 0, 1) self.assertIs(True 1, 2) self.assertEqual(True 63, 1 63) self.assertIs(True 63, 1 63) And I'm getting: == FAIL: test_shifted_true (test.test_bool.BoolTest) -- Traceback (most recent call last): File /home/ci/Prog/cpython/src/Lib/test/test_bool.py, line 349, in test_shifted_true self.assertIs(True 63, 1 63) AssertionError: 9223372036854775808 is not 9223372036854775808 -- That's: ./python --version Python 3.5.0a0 type(True63) class 'int' type(163) class 'int' hg tip changeset: 90664:4e33c343a264 What I'm doing wrong? That's: ./python --version Python 3.5.0a0 type(True63) class 'int' type(163) class 'int' hg tip changeset: 90664:4e33c343a264 What I was doing wrong? Thanks in advance! francis -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21422 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21422] int 0: return the number unmodified
STINNER Victor added the comment: What I was doing wrong? The is operator should only be used to compare identical objects. Small integers (range -5..255 if I remember correctly) are singletons. I prefer to not rely on this implementation detail in a unit test of the Python standard library. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21422 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21384] Windows: Make handle non inheritable by default
STINNER Victor added the comment: For example, hCryptProv in Python/random.c is inheritable or not? This is not a standard handle. GetHandleInformation() fails with a Windows error 6 (invalid descriptor). I listed inheritable handles with a loop on range(0, 0x1001): only handles of stdin, stdout and stderr are inheritable. The other handles are not inheritable. I also listed handles of parent and child processes using handle.exe tool from Microsoft. I see that the child has less open handle, all file handles that I opened manually are not inheried, and everything looks fine. So I think that the issue can now be closed. -- resolution: - fixed status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21384 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21485] remove unnecesary .flush() calls in the asyncio subprocess code example
Roundup Robot added the comment: New changeset c0404f0da01a by Victor Stinner in branch '3.4': Issue #21485: remove unnecesary .flush() calls in the asyncio subprocess code http://hg.python.org/cpython/rev/c0404f0da01a New changeset 3c26389d741c by Victor Stinner in branch 'default': (Merge 3.4) Issue #21485: remove unnecesary .flush() calls in the asyncio http://hg.python.org/cpython/rev/3c26389d741c -- nosy: +python-dev ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21485 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21485] remove unnecesary .flush() calls in the asyncio subprocess code example
STINNER Victor added the comment: I wrote the example and the first call to buffer.flush() is a mistake. Thanks for your patch, I applied it. -- resolution: - fixed status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21485 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21470] Better seeding for the random module
STINNER Victor added the comment: MT is equidistributed. This a major point in its favor but also implies that there are long stretches of uninteresting sequences. When we seed with only a subset the state space, there is a risk of systematically landing in those stretches. What is an uninteresting sequence? What are the problem of these sequences? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21470 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21455] add default backlog to socket.listen()
STINNER Victor added the comment: Py_MIN(SOMAXCONN, 128) On Windows, it's not the best choice to use this hardcoded limit. socket.SOMAXCONN is 2^31-1. listen() documentation says that Windows chooses a reasonable backlog value for you if you pass SOMAXCONN: http://msdn.microsoft.com/en-us/library/windows/desktop/ms739168%28v=vs.85%29.aspx You should maybe use SOMAXCONN by default on Windows, and Py_MIN(SOMAXCONN, 128) by default on other platforms (UNIX). -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21455 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21470] Better seeding for the random module
Tim Peters added the comment: [haypo] What is an uninteresting sequence? What are the problem of these sequences? A sequence that would greatly surprise a user. For example, if you generate 32-bit ints from the Twister in one obvious way, there are starting places where you'll get 623 zeroes in a row. And places where you'll get 2**32-1 623 times in a row. Pick a sequence of any 623 32-bit ints, and there's a starting place that will deliver that sequence. And, indeed, a truly random sequence must also display that behavior, but it's nevertheless very surprising when you see one. It's very rare, both in a truly random sequence and in sequences derived from the Twister. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21470 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21470] Better seeding for the random module
STINNER Victor added the comment: A sequence that would greatly surprise a user. No user complained past years. I don't think that we should worry so much, because it looks like reading more data from /dev/urandom can be a more serious and concrete issue. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21470 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21422] int 0: return the number unmodified
R. David Murray added the comment: Arfrever's advice was misleading...the test would have needed to be assertIsNot(True 0, 1), but the fact that True is not preserved is not really what we want to test. What we want to test is that the return value is of type 'int', which is what Victor's test checks. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21422 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21470] Better seeding for the random module
Tim Peters added the comment: [haypo] No user complained past years. Raymond said We've previously had this problem with MT (since resolved, where it is was landed in a very non-random zone). Do you believe he was wrong? I don't think that we should worry so much, because it looks like reading more data from /dev/urandom can be a more serious and concrete issue. Why do you say that? Most links people have found and posted here clearly say that the Linux warnings about urandom are basically nonsense. Please supply references to back up serious and concrete (or point to earlier references, if you found them convincing). I'm with Raymond on this. There is no useful theory that allows us to predict the characteristics of the produced sequences from a set of possible seeds, so limiting the set of possible seeds is potentially dangerous. The theory about equidistribution (etc) is very useful, but relies on mathematical analysis of the _entire_ period of the generator. The only way to span the entire period is to allow for all possible seeds. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21470 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21455] add default backlog to socket.listen()
STINNER Victor added the comment: An article suggests to use max(1024, socket.SOMAXCONN) (to listen() backlog as large as possible) instead of socket.SOMAXCONN because the OS maximum can be larger than SOMAXCONN (and that it's not possible in Python to get the OS value): http://utcc.utoronto.ca/~cks/space/blog/python/AvoidSOMAXCONN?showcomments#comments The following article tries to explain why the default limit is 128 on Linux: https://derrickpetzold.com/p/somaxconn/ Article giving the value chosen by Windows when SOMAXCONN is passed: it depends on the Windows version (between 5 and 50, hard limit of 200 on Windows 7): http://stackoverflow.com/questions/4709756/listen-maximum-queue-size-per-windows-version -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21455 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21470] Better seeding for the random module
Antoine Pitrou added the comment: There is no useful theory that allows us to predict the characteristics of the produced sequences from a set of possible seeds, so limiting the set of possible seeds is potentially dangerous. I still find it difficult to understand where is the said danger. As you point out, a sequence of zeroes is a valid random sequence, and there is no reason to believe that a sequence of zeroes is more likely with a 256 bits seed, than with a 20 kbits seed (it might as well be less likely, for all we know). We may as well bump it from 256 to 512 or 1024 bits, but 20 kbits sounds extremely unusual for a program to read from /dev/urandom at startup. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21470 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21422] int 0: return the number unmodified
R. David Murray added the comment: Arfrever pointed out on irc that I misread. It would indeed be assertIs(True 0, 1), but that wouldn't make a good test because the fact that '1 is 1' is an implementation detail of CPython and can't be relied upon. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21422 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21437] document that asyncio.ProactorEventLoop doesn't support SSL
Changes by STINNER Victor victor.stin...@gmail.com: -- nosy: +gvanrossum, haypo, yselivanov ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21437 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21418] Segv during call to super_init in application embedding Python interpreter.
Roundup Robot added the comment: New changeset cee528d44b1e by Victor Stinner in branch '3.4': Issue #21418: Fix a crash in the builtin function super() when called without http://hg.python.org/cpython/rev/cee528d44b1e New changeset 53cf343c4fff by Victor Stinner in branch 'default': (Merge 3.4) Issue #21418: Fix a crash in the builtin function super() when http://hg.python.org/cpython/rev/53cf343c4fff -- nosy: +python-dev ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21418 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21418] Segv during call to super_init in application embedding Python interpreter.
STINNER Victor added the comment: While embedding the Python interpreter in an application, I have encountered a crash when the built-in function 'super' is invoked with no arguments. This is not supported. When super() is invoked with no arguments, the class is retrieved (indirectly) from the current frame. In your example, there is no current frame. You can workaround this limitation by passing explicitly the class to super. The crash should be fixed: a RuntimeError is now raised. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21418 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21418] Segv during call to super_init in application embedding Python interpreter.
Changes by STINNER Victor victor.stin...@gmail.com: -- resolution: - fixed status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21418 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21470] Better seeding for the random module
Tim Peters added the comment: [pitrou] I still find it difficult to understand where is the said danger. The theoretical properties that make the Twister so attractive were all proved based on mathematical analysis of its entire period. The only way to get at the whole period is to allow for all possible seeds. If the seeds Python can use are drawn from a relatively tiny subset of the possible seeds, nothing can be said about most of the proved correct properties anymore. Maybe they still hold. Maybe they don't. In the absence of analysis (which, AFAIK, is still too difficult to do), the only way to be safe is to refrain from being so bloody clever in the interest of saving a few microseconds. As you point out, a sequence of zeroes is a valid random sequence, and there is no reason to believe that a sequence of zeroes is more likely with a 256 bits seed, than with a 20 kbits seed (it might as well be less likely, for all we know). That's the point: we don't _know_ much of anything if we restrict to a subset of possible seeds. But we DO know if all possible seeds are allowed for. Then the Twister has many nice properties, and provably so. Allowing for all possible seeds is judicious: it's an acknowledgement of our ignorance, and a statement that we're more concerned with correctness than micro-efficiency in a (typically) zero- or one-time-per-process `random` initialization cost. We may as well bump it from 256 to 512 or 1024 bits, That's as unprincipled as using 1 bit - although _likely_ to give better results ;-) but 20 kbits sounds extremely unusual for a program to read from /dev/urandom at startup. At least on my box, starting Python does not import `random`, and the seeding code isn't called at all. It's only called when `random` is imported. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21470 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21488] codecs.encode/decode documentation inconsistency
New submission from Brad Aylsworth: The documentation page for codecs (https://docs.python.org/2/library/codecs.html) shows keyword arguments for codecs.encode and codecs.decode, but they throw an error if keyword arguments are used. codecs.decode.__doc__ reports 'decode(obj, [encoding[,errors]]) - object. This happens on both 2.7.6 and 3.4.0. -- assignee: docs@python components: Documentation messages: 218380 nosy: Ouaouaron, docs@python priority: normal severity: normal status: open title: codecs.encode/decode documentation inconsistency type: resource usage versions: Python 2.7 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21488 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21088] curses addch() argument position reverses in Python3.4.0
STINNER Victor added the comment: Can we now close this issue? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21088 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21308] PEP 466: backport ssl changes
Changes by Mark Nottingham m...@mnot.net: -- nosy: +mnot ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21308 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21470] Better seeding for the random module
Antoine Pitrou added the comment: The theoretical properties that make the Twister so attractive were all proved based on mathematical analysis of its entire period. The only way to get at the whole period is to allow for all possible seeds. If the seeds Python can use are drawn from a relatively tiny subset of the possible seeds, nothing can be said about most of the proved correct properties anymore. Maybe they still hold. Maybe they don't. In the absence of analysis (which, AFAIK, is still too difficult to do), the only way to be safe is to refrain from being so bloody clever in the interest of saving a few microseconds. Thanks for the explanation. It's much clearer now. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21470 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21385] in debug mode, compile(ast) fails with an assertion error if an AST node has no line number information
STINNER Victor added the comment: With the development version (Python 3.5), I reproduce the crash when Python is compiled in debug mode: $ ./python astlinenotest.py python: Python/compile.c:3975: assemble_lnotab: Assertion `d_lineno = 0' failed. Abandon (core dumped) The problem is that astlinenotest.py creates an AST node without lineno information, which makes an assertion to fail in the compiler. In my astoptimizer project, I use this function to not have to worry of the lineno: def copy_lineno(node, new_node): ast.fix_missing_locations(new_node) ast.copy_location(new_node, node) return new_node -- nosy: +haypo title: Compiling modified AST crashes on debug build unless linenumbering discarded - in debug mode, compile(ast) fails with an assertion error if an AST node has no line number information ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21385 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21470] Better seeding for the random module
Tim Peters added the comment: Thanks for the explanation. It's much clearer now. Maybe, but it's also overblown - LOL ;-) That is, no matter what the starting seed, the user will see a microscopically tiny span of the Twister's entire period. So all those provably correct properties that depend on whole-period analysis remain pretty much theoretical no matter what we do. It's just a better safe than sorry thing. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21470 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21489] Switching from -OO to -O still uses cached bytecode
New submission from Matthew Fernandez: Perhaps others wouldn't consider this a bug, but it was definitely surprising to me. When switching between optimisation levels -OO (optimise and strip docstrings) and -O (just optimise), you will find the docstrings are still stripped. E.g. $ ls hello.py world.py $ cat hello.py import world $ cat world.py def foo(): '''I'm a docstring''' pass import sys print 'optimization: %d' % sys.flags.optimize if sys.flags.optimize 2: print foo.__doc__ else: print 'optimisation is enabled; no docstrings' $ python -OO hello.py optimization: 2 optimisation is enabled; no docstrings $ python -O hello.py optimization: 1 None $ rm world.pyo $ python -O hello.py optimization: 1 I'm a docstring Is this behaviour intentional? -- messages: 218385 nosy: Matthew.Fernandez priority: normal severity: normal status: open title: Switching from -OO to -O still uses cached bytecode versions: Python 2.7 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21489 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21412] core dump in PyThreadState_Get when built --with-pymalloc
STINNER Victor added the comment: Victor: sure; see attached. Ok, so the error occurs when Python tries to import the _heapq dynamic module: PyModule_Create2() calls PyThreadState_Get() to retrieve to current thread, but it fails. There is a current thread because PyModule_Create2() is called indirectly by PyEval_EvalFrameExReal() (and I don't see where the GIL would be released in the call stack). It looks like a bug in PyThreadState_Get(). This function relies on _Py_atomic_load_relaxed() which is defined in Include/pyatomic.h. This file has an implementation of atomic functions for Intel processors and contains an interesting comment: ... #else /* !gcc x86 */ /* Fall back to other compilers and processors by assuming that simple volatile accesses are atomic. This is false, so people should port this. */ ... It looks like John tries Python on SPARC which may explain the issue. This is just a theory. It also looks like we had SPARC buildbots running on Solaris with system C compiler (/opt/solarisstudio12.3/bin/cc) and it was able to run tests. I don't understand the link with pymalloc. @John: Did you try to build Python 3.3? Did it work? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21412 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21489] Switching from -OO to -O still uses cached bytecode
Antoine Pitrou added the comment: Not really intentional, it's just a limitation of the current implementation (where the same .pyo files are used for both -O and -OO). Already reported as issue1538778 (which was closed as won't fix). -- nosy: +barry, pitrou superseder: - pyo's are not overwritten by different optimization levels ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21489 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21398] LC_CTYPE=C: pydoc leaves terminal in an unusable state
Roundup Robot added the comment: New changeset 89a29e92416f by Victor Stinner in branch '3.4': Issue #21398: Fix an unicode error in the pydoc pager when the documentation http://hg.python.org/cpython/rev/89a29e92416f New changeset 3424d65ad5ce by Victor Stinner in branch 'default': (Merge 3.4) Issue #21398: Fix an unicode error in the pydoc pager when the http://hg.python.org/cpython/rev/3424d65ad5ce -- nosy: +python-dev ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21398 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21398] LC_CTYPE=C: pydoc leaves terminal in an unusable state
STINNER Victor added the comment: I fixed the initial bug and so I close the issue. Open a new issue if you have an idea to restore the terminal state when the pager breaks the terminal. I don't think that it's possible to save/restore the terminal state in a portable way. -- resolution: - fixed status: open - closed versions: +Python 3.4 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21398 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21489] Switching from -OO to -O still uses cached bytecode
Matthew Fernandez added the comment: Ah thanks, Antoine. Sorry, failed to find that issue in my prior searching. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21489 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21226] PyImport_ExecCodeModuleObject not setting module attributes
Roundup Robot added the comment: New changeset 7d20e30bd540 by Eric Snow in branch '3.4': Issue #21226: Set all attrs in PyImport_ExecCodeModuleObject. http://hg.python.org/cpython/rev/7d20e30bd540 New changeset bc324a49d0fc by Eric Snow in branch 'default': Merge from 3.4 (for #21226). http://hg.python.org/cpython/rev/bc324a49d0fc -- nosy: +python-dev ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21226 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21226] PyImport_ExecCodeModuleObject not setting module attributes
Changes by Eric Snow ericsnowcurren...@gmail.com: -- resolution: - fixed stage: patch review - resolved status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21226 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com