[issue23496] Steps for Android Native Build of Python 3.4.2
Ryan Gonzalez added the comment: Doesn't Python still have debug symbols? The system ones don't matter too much. On August 12, 2015 6:21:23 AM CDT, Cyd Haselton rep...@bugs.python.org wrote: Cyd Haselton added the comment: After struggling to get helpful output from gdb it is looking like it will not be possible due to the lack of debugging symbols in the libs on the android device. Still investigating. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23496 ___ -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23496 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23906] poplib maxline behaviour may be wrong
R. David Murray added the comment: If maxline is too small, messages won't get through. If maxline is too large *huge* messages will get through...and the DDOS danger of exhausting the server's resources will occur. So, we really ought to provide a way to limit the maximum message size *anyway*...at which point a separate maxline value doesn't make any sense, since the RFC specifies no maximum line size. I'm much more comfortable setting a large maximum message size than setting a large enough maximum line size to permit that size of message consisting of mostly a single line. Since we aren't going to back out the DDOS fix, we have to put the limit *somewhere*. At least in 3.6 we can make it easy for the application to set it. (Programs using earlier versions will just have to monkey-patch, unfortunately...which they have to do right now anyway.) -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23906 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23906] poplib maxline behaviour may be wrong
shiyao.ma added the comment: Instead of setting a MAXSIZE for the email body, rasing up the MAXLINE might be more meaningful. Consider the case of MAXSIZE, it's essentially the same as MAXLINE. If MAXSIZE is relatively small, some messages won't pass through. If the MAXSIZE is relatively large, then what's the meaning of setting it? Thus, it might be more practical to increase the value of MAXLINE so that 99% messages can pass through. -- nosy: +introom ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23906 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24039] Idle: some modal dialogs maximize, don't minimize
Changes by Mark Roseman m...@markroseman.com: -- nosy: +markroseman ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24039 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue2053] IDLE - standardize dialogs
Changes by Mark Roseman m...@markroseman.com: -- nosy: +markroseman ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue2053 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24849] Add __len__ to map, everything in itertools
Changes by Serhiy Storchaka storch...@gmail.com: -- assignee: - rhettinger ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24849 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24844] Python 3.5rc1 compilation error with Apple clang 4.2 included with Xcode 4
STINNER Victor added the comment: You can try to add an ifdef in Include/pyatomic.h. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24844 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24849] Add __len__ to map, everything in itertools
flying sheep added the comment: Hi, and sorry David, but I think you haven’t understood what I was proposing. Maybe that was too much text and detail to read at once, while skipping the relevant details: Python has iterators and iterables. iterators are non-reentrant iterables: once they are exhausted, they are useless. But there are also iterables that create new, iterators whenever iter(iterable) is called (e.g. implicitly in a for loop). They are reentrant. This is why you can loop sequences such as lists more than once. ——— One of those reentrant iterables is range(), whose __iter__ functions creates new lazy iterables, which has a __len__, and so on. It even has random access just like a sequence. Now it’s always entirely possible to *lazily* determine len(chain(range(200), [1,2,5])), which is of course len(range(200)) + len([1,2,5]) = 200 + 3 = 203. No reentrant iterables are necessary here, only iterables with a __len__. (Simply calling len() on them all is sufficient, as it could only create a TypeError which would propagate upwards) ——— To reiterate: 1. Lazy doesn’t mean non-reentrant, just like range() demonstrates. 2. I didn’t propose that this works on arbitrary iterables, only that it works if you supply iterables with suitable properties (and throws ValueError otherwise, just like len(some_generator_function()) already does) 3. I know what I’m doing, please trust me and read my proposal carefully ;) -- resolution: rejected - status: closed - open ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24849 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24849] Add __len__ to map, everything in itertools
flying sheep added the comment: To elaborate more on my second point (“No reentrant iterables are necessary here, only iterables with a __len__”) What i meant here is that inside a call of chain(*iterables), such as chain(foo, bar, *baz_generator()), the paramter “iterables” is always a tuple, i.e. a sequence. So it is always possible to just call len() on each element of “iterables” and either get a ValueError or a collection of summable integers. With other itertools functions, we’d need to determine beforehand if we have reentrant iterables or not. This might be a problem, and for some too un-lazy (e.g. groupby) But at the very very least, we could implement this for everything where i didn’t write “(r)”: map, accumulate, chain, islice, starmap, tee, product, permutations, combinations, combinations_with_replacement -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24849 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24852] Python 3.5.0rc1 HOWTO Use Python in the web needs fix
New submission from John Hagen: https://docs.python.org/3.5/howto/webservers.html#setting-up-fastcgi The HOWTO Use Python in the web documentation for 3.5.0rc1 prescribes to use flup in its example, which is not compatible with Python 3. This has led to some confusion: https://stackoverflow.com/questions/23482357/fastcgi-wsgi-library-in-python-3 Perhaps the whole article could be given a once over to ensure it is still the best advice as of 2015. -- assignee: docs@python components: Documentation messages: 248491 nosy: John Hagen, docs@python priority: normal severity: normal status: open title: Python 3.5.0rc1 HOWTO Use Python in the web needs fix type: enhancement versions: Python 3.5 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24852 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24841] Some test_ssl network tests fail if svn.python.org is not accessible.
Changes by Berker Peksag berker.pek...@gmail.com: -- keywords: +easy nosy: +berker.peksag stage: - needs patch versions: -Python 3.3 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24841 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24440] Move the buildslave setup information from the wiki to the devguide
R. David Murray added the comment: Here is an updated version of my buildslave patch, incorporating what I've learned in getting the Intel mac buildbot fully functional, and some additions from my review of the issue 13124 patch. This is ready for final review and commit. Note that the windows stuff is 'TBD'; hopefully someone who has actually set up a Windows buildslave (Zach?) will fill in those sections, updating the information from http://wiki.python.org/moin/BuildbotOnWindows to modern reality. But I think we can commit this before making those additions, and deal with that in a separate patch. -- stage: patch review - commit review Added file: http://bugs.python.org/file40171/buildslave.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24440 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue17703] Trashcan mechanism segfault during interpreter finalization in Python 2.7.4
Larry Hastings added the comment: Can anyone else confirm this bug in 3.4? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue17703 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24079] xml.etree.ElementTree.Element.text does not conform to the documentation
Robert Collins added the comment: So it is downplayed but it is still documented as being application usable. I'll give this another week for Ned to reply, then commit it in the absence of a reply: I think its ok as is. I'd be ok with a tweaked version along the lines Ned proposed too: both ways are better than whats in tree today. -- nosy: +rbcollins ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24079 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24440] Move the buildslave setup information from the wiki to the devguide
Carol Willing added the comment: This looks great. Two very minor typos. Overall, the patch renders nicely and can be merged. I agree that it is worth merging with or without windows instructions (which may be added later). Missing 'd' in email address +python-builsb...@python.org to discuss adding your buildslave and to obtain the Missing 'd' in title of section +Builslave operation Thanks David! -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24440 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23725] update tempfile docs to say that TemporaryFile is secure
Roundup Robot added the comment: New changeset 51d00482d403 by Robert Collins in branch '3.5': Issue #23725: Overhaul tempfile docs. https://hg.python.org/cpython/rev/51d00482d403 New changeset 256d2f01e975 by Robert Collins in branch 'default': Issue #23725: Overhaul tempfile docs. https://hg.python.org/cpython/rev/256d2f01e975 -- nosy: +python-dev ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23725 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21167] float('nan') returns 0.0 on Python compiled with icc
R. David Murray added the comment: I've applied this patch to 2.7 on OSX and compiled without -fp-model strict, and all of the tests now pass. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21167 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue18383] test_warnings modifies warnings.filters when running with -W default
Robert Collins added the comment: @ashkop so append=True could be clearer as 'atend=True' - both forms of call are expected to add the filter, but one adds to the front, one to the end. Looking at warn_explicit, its takes the first matching filter, and then acts on its action. So the following: simplefilter(ignore) simplefilter(error, append=True) simplefilter(ignore, append=True) will ignore all warnings today. With this patch it will error on all warnings. So at *best* I think this is a breaking API change. Old: from warnings import simplefilter, warn simplefilter(ignore) simplefilter(error, append=True) simplefilter(ignore, append=True) warn(boo) With this patch: from warnings import simplefilter, warn simplefilter(ignore) simplefilter(error, append=True) simplefilter(ignore, append=True) warn(boo) Traceback (most recent call last): File stdin, line 1, in module UserWarning: boo Now, perhaps its desirable to make this change. I haven't decided yet about the tastefulness of the new API, but if we do we're going to need docstring updates, and API doc changes to match it. Since the goal here is to fix module reloads, I think the right way to do that is to only change the module initialisation code. e.g. add an optional 'no_duplicate' parameter to simplefilter and use that from the module initialisation. Thats backwards compatible and opt-in. If we don't think it should be public, make it a _ prefixed parameter. I think it would be fine to be public though. -- nosy: +rbcollins stage: commit review - patch review ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue18383 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23725] update tempfile docs to say that TemporaryFile is secure
Robert Collins added the comment: Sorry, I didn't realise that Zbigniew was an alternative spelling of your first name. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23725 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21167] float('nan') returns 0.0 on Python compiled with icc
R. David Murray added the comment: Now, what's the equivalent patch for python3? Should I open a new issue for that? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21167 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24440] Move the buildslave setup information from the wiki to the devguide
R. David Murray added the comment: Drat, I keep forgetting to put issue numbers in devguide commits :(. Changeset id is 7368a61d28de. Thanks for the review, Carol. -- resolution: - fixed stage: commit review - resolved status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24440 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23725] update tempfile docs to say that TemporaryFile is secure
Robert Collins added the comment: Thanks for the patch. I've committed the current status as an unambiguous improvement; we can add tempdir as deprecated later if there is consensus on that, the current patch did improve its docs per R. David Murray's request anyhow. -- resolution: - fixed stage: commit review - resolved status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23725 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24851] infinite loop in faulthandler._stack_overflow
New submission from Paul Murphy: This is a duplicate of Issue 23654, except it occurs on GCC 5.1 with -O2 when building for a ppc64le target. GCC is optimizes this as a tail call, removing the accesses to the unused stack variables. -- components: Extension Modules files: fix_stack_overflow.patch keywords: patch messages: 248472 nosy: Paul Murphy priority: normal severity: normal status: open title: infinite loop in faulthandler._stack_overflow versions: Python 3.4 Added file: http://bugs.python.org/file40170/fix_stack_overflow.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24851 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21126] Return results from doctest.run_docstring_examples()
Robert Collins added the comment: So, I think this needs a test; returning a generator would be nice but would be an API break. Also the doc update needs to say 3.6 now. Thanks; moving back to patch review. -- nosy: +rbcollins stage: commit review - patch review ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21126 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24849] Add __len__ to map, everything in itertools
R. David Murray added the comment: No, I guessed that despite saying some arguments have to be iterated that you were really talking about arguments that had __len__. That's why I added the sentence about it not being appropriate even if you only did it when the inputs had __len__. But I'll let Raymond re-close this. Who knows, maybe I'll be surprised and it will turn out that he's interested :) -- nosy: +rhettinger ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24849 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21167] float('nan') returns 0.0 on Python compiled with icc
R. David Murray added the comment: Nevermind, I forgot to try and see if it applied...and it does :) -- versions: +Python 3.4, Python 3.5, Python 3.6 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21167 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24570] IDLE Autocomplete and Call Tips Do Not Pop Up on OS X with ActiveTcl 8.5.18
Mark Roseman added the comment: I did some followup on this today, and could reproduce it with a few lines of Tcl/Tk code. As Ned noted, it seems particular to the ActiveTcl build, as when I built my own 8.5.18 it also worked fine. (If you're curious, the thing that is failing is the MacWindowStyle call to set the window to type help. If you use that, the window just doesn't show up. Oddly, other types, e.g. utility work properly). I tried various introspection techniques to see if I could detect that this problem had occurred from code, but no luck. As far as Tk was concerned, the window was there. Will send a message to tcl-core list regarding this. For reference, Tcl script to reproduce is: wm geometry . +32+32 toplevel .t wm geometry .t +60+60 tk::unsupported::MacWindowStyle style .t help noActivates grid [label .t.l -bg yellow -text tooltip window] -- nosy: +markroseman ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24570 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24570] IDLE Autocomplete and Call Tips Do Not Pop Up on OS X with ActiveTcl 8.5.18
Kevin Walzer added the comment: I experimented with Mark's sample code (thanks for that, BTW), and found that the window with the help tag applied would display with this simple addition: raise .t I believe the equivalent call in Tinter is lift(), because raise() is for error handling? Perhaps someone can experiment with appropriate calls to lift() in the relevant sections of IDLE. The help style is excluded from becoming a frontmost window by default in OS X. Here is the relevant code in tkMacOSXWm.c: - (BOOL) canBecomeKeyWindow { TkWindow *winPtr = TkMacOSXGetTkWindow(self); return (winPtr winPtr-wmInfoPtr (winPtr-wmInfoPtr-macClass == kHelpWindowClass || winPtr-wmInfoPtr-attributes kWindowNoActivatesAttribute)) ? NO : YES; } Therefore, an explicit call to raise may be helpful in displaying the window. I realize that such calls are not present in the current IDLE code, and did not seem to be required previously--there likely was some change in recent Tk-Cocoa commits in event loop handling, memory management, window display, and drawing that caused this new bug to crop up. Tracking the actual source of the bug at the C level is likely to prove very difficult because there have been so many changes. However, since the fix at the script level is trivial, I do not think a major effort is necessary to step through the code at the C level. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24570 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24570] IDLE Autocomplete and Call Tips Do Not Pop Up on OS X with ActiveTcl 8.5.18
Terry J. Reedy added the comment: Yes, *raise* is a keyword and .lift() is the substitute. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24570 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue15601] tkinter test_variables fails with OS X Aqua Tk 8.4
Laura Creighton added the comment: Terry Reedy asked me to add this here. Either this bug is not fixed, or I am getting a new one. I have tried this on several debian unstable releases. lac at smartwheels:~$ lsb_release -a LSB Version: core-2.0-amd64:core-2.0-noarch:core-3.0-amd64:core-3.0-noarch:core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-noarch:core-4.0-amd64:core-4.0-noarch:core-4.1-amd64:core-4.1-noarch:security-4.0-amd64:security-4.0-noarch:security-4.1-amd64:security-4.1-noarch Distributor ID:Debian Description: Debian GNU/Linux unstable (sid) Release: unstable Codename: sid Idle shows my tk version as 8.6.4 python3 -m test -ugui -v test_tk gives 3 failures = CPython 3.4.3+ (default, Jul 28 2015, 13:17:50) [GCC 4.9.3] == Linux-3.16.0-4-amd64-x86_64-with-debian-stretch-sid little-endian == hash algorithm: siphash24 64bit == /tmp/test_python_7974 Testing with flags: sys.flags(debug=0, inspect=0, interactive=0, optimize=0, dont_write_bytecode=0, no_user_site=0, no_site=0, ignore_environment=0, verbose=0, bytes_warning=0, quiet=0, hash_randomization=1, isolated=0) test_default (tkinter.test.test_tkinter.test_variables.TestBooleanVar) ... FAIL test_get (tkinter.test.test_tkinter.test_variables.TestBooleanVar) ... FAIL test_set (tkinter.test.test_tkinter.test_variables.TestBooleanVar) ... FAIL == FAIL: test_default (tkinter.test.test_tkinter.test_variables.TestBooleanVar) -- Traceback (most recent call last): File /usr/lib/python3.4/tkinter/test/test_tkinter/test_variables.py, line 163, in test_default self.assertIs(v.get(), False) AssertionError: 0 is not False == FAIL: test_get (tkinter.test.test_tkinter.test_variables.TestBooleanVar) -- Traceback (most recent call last): File /usr/lib/python3.4/tkinter/test/test_tkinter/test_variables.py, line 167, in test_get self.assertIs(v.get(), True) AssertionError: 1 is not True == FAIL: test_set (tkinter.test.test_tkinter.test_variables.TestBooleanVar) -- Traceback (most recent call last): File /usr/lib/python3.4/tkinter/test/test_tkinter/test_variables.py, line 186, in test_set self.assertEqual(self.root.globalgetvar(name), true) AssertionError: 42 != 1 -- Ran 660 tests in 3.901s FAILED (failures=3) 1 test failed: test_tk -- nosy: +lac ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue15601 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24853] Py_Finalize doesn't clean up PyImport_Inittab
New submission from Alex Budovski: This means initialize/run script/finalize will crash the second time, since the inittab can have stale entries. -- messages: 248495 nosy: Alex Budovski priority: normal severity: normal status: open title: Py_Finalize doesn't clean up PyImport_Inittab type: crash versions: Python 3.6 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24853 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24851] infinite loop in faulthandler._stack_overflow
Changes by Yury Selivanov yseliva...@gmail.com: -- nosy: +haypo ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24851 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24849] Add __len__ to map, everything in itertools
Steven D'Aprano added the comment: On Wed, Aug 12, 2015 at 09:23:26PM +, flying sheep wrote: Python has iterators and iterables. iterators are non-reentrant iterables: once they are exhausted, they are useless. Correct. But there are also iterables that create new, iterators whenever iter(iterable) is called (e.g. implicitly in a for loop). They are reentrant. This is why you can loop sequences such as lists more than once. The *iterable* itself may be reentrant, but the iterator formed from iter(iterable) is not. So by your previous comment, giving the iterator form a length is not appropriate. Do you know of any non-iterator iterables which do not have a length when they could? With the exception of tee, all the functions in itertools return iterators. One of those reentrant iterables is range(), whose __iter__ functions creates new lazy iterables, which has a __len__, and so on. It even has random access just like a sequence. You are misinterpreting what you are seeing. range objects already are sequences with a length, and nothing needs be done with them. But iter(range) are not sequences, they are iterators, and then are not sized and have no __len__ method: py it = iter(range(10)) py len(it) Traceback (most recent call last): File stdin, line 1, in module TypeError: object of type 'range_iterator' has no len() If range_iterator objects were given a length, what would it be? Should it be the length of the underlying range object, which is easy to calculate but wrong? That's what you suggest below (your comments about chain). Or the length of how many items are yet to be seen, which is surprising in other ways? Now it’s always entirely possible to *lazily* determine len(chain(range(200), [1,2,5])), Sure. But chain doesn't just accept range objects and lists as arguments, it accepts *arbitrary iterables* which you accept cannot be sized. So len(chain_obj) *may or may not* raise TypeError. Since you can't rely on it having a length, you have to program as if it doesn't. So in practice, I believe this will just add complication. which is of course len(range(200)) + len([1,2,5]) = 200 + 3 = 203. No reentrant iterables are necessary here, only iterables with a __len__. (Simply calling len() on them all is sufficient, as it could only create a TypeError which would propagate upwards) That would be wrong. Consider: it = chain(ab, cd) throw_away = next(it) assert len(it) == 2 + 2 # call len() on the sequences assert len(list(it)) == len(it) # fails since 3 != 4 -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24849 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue3244] multipart/form-data encoding
Changes by raylu lur...@gmail.com: -- nosy: +raylu ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue3244 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24849] Add __len__ to map, everything in itertools
Raymond Hettinger added the comment: I had explored this idea previously at some length (no pun intended) but it was mostly a dead-end. The best we ended-up with has having __length_hint__ to indicate size to list(). There were several issues some of which at detailed in the comment at the top of https://hg.python.org/cpython/file/tip/Lib/test/test_iterlen.py . Another *big* issue was that Guido was adamantly opposed to iterators having a length because it changed their boolean value from always-true and it broke some of his published code that depended on iterators never being false, even when empty. -- priority: normal - low ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24849 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue9232] Allow trailing comma in any function argument list.
Guido van Rossum added the comment: To be explicit, yes, I want to allow trailing comma even after *args or **kwds. And that's what the patch does. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9232 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24848] Warts in UTF-7 error handling
New submission from Serhiy Storchaka: Trying to implement UTF-7 codec in Python I found some warts in error handling. 1. Non-ASCII bytes. No errors: 'a€b'.encode('utf-7') b'a+IKw-b' b'a+IKw-b'.decode('utf-7') 'a€b' Terminating '-' at the end of the string is optional. b'a+IKw'.decode('utf-7') 'a€' And sometimes it is optional in the middle of the string (if following char is not used in BASE64). b'a+IKw;b'.decode('utf-7') 'a€;b' But if following char is not ASCII, it is accepted as well, and this looks as a bug. b'a+IKw\xffb'.decode('utf-7') 'a€ÿb' In all other cases non-ASCII byte causes an error: b'a\xffb'.decode('utf-7') Traceback (most recent call last): File stdin, line 1, in module File /home/serhiy/py/cpython/Lib/encodings/utf_7.py, line 12, in decode return codecs.utf_7_decode(input, errors, True) UnicodeDecodeError: 'utf7' codec can't decode byte 0xff in position 1: unexpected special character b'a\xffb'.decode('utf-7', 'replace') 'a�b' 2. Ending lone high surrogate. Lone surrogates are silently accepted by utf-7 codec. '\ud8e4\U0001d121'.encode('utf-7') b'+2OTYNN0h-' '\U0001d121\ud8e4'.encode('utf-7') b'+2DTdIdjk-' b'+2OTYNN0h-'.decode('utf-7') '\ud8e4턡' b'+2OTYNN0h'.decode('utf-7') '\ud8e4턡' b'+2DTdIdjk-'.decode('utf-7') '턡\ud8e4' Except at the end of unterminated shift sequence: b'+2DTdIdjk'.decode('utf-7') Traceback (most recent call last): File stdin, line 1, in module File /home/serhiy/py/cpython/Lib/encodings/utf_7.py, line 12, in decode return codecs.utf_7_decode(input, errors, True) UnicodeDecodeError: 'utf7' codec can't decode bytes in position 0-8: unterminated shift sequence 3. Incorrect shift sequence. Strange behavior happens when shift sequence ends with wrong bits. b'a+IKx-b'.decode('utf-7', 'ignore') 'a€b' b'a+IKx-b'.decode('utf-7', 'replace') 'a€�b' b'a+IKx-b'.decode('utf-7', 'backslashreplace') 'a€\\x2b\\x49\\x4b\\x78\\x2db' The decoder first decodes as much characters as can, and then pass all shift sequence (including already decoded bytes) to error handler. Not sure this is a bug, but this differs from common behavior of other decoders. -- components: Unicode messages: 248450 nosy: ezio.melotti, haypo, lemburg, loewis, serhiy.storchaka priority: normal severity: normal status: open title: Warts in UTF-7 error handling type: behavior versions: Python 2.7, Python 3.4, Python 3.5, Python 3.6 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24848 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue22598] Add mUTF-7 codec (UTF-7 modified for IMAP)
Changes by Serhiy Storchaka storch...@gmail.com: -- dependencies: +Warts in UTF-7 error handling ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue22598 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23496] Steps for Android Native Build of Python 3.4.2
Cyd Haselton added the comment: After struggling to get helpful output from gdb it is looking like it will not be possible due to the lack of debugging symbols in the libs on the android device. Still investigating. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23496 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24849] Add __len__ to map, everything in itertools
New submission from flying sheep: Things like progressbars want len() to work on iterated objects. It’s possible to define __len__ for many of the iterables returned by itertools. some arguments have to be iterated to find the len(): of course we have to check if those are reentrant, and raise a TypeError if they are non-reentrant. (signified by “(r)→”) for the predicate functions, it’s questionable if we should offer it, since they might take a long time and “len” is a property-like function that feels like it should return fast. map(func, iterable) → len(iterable) count(), cycle(), repeat() → infinty, but because len() returns integers, and there’s only float infinity, that’s impossible accumulate(iterable) → len(iterable) chain(*iterables) → sum(len(it) for it in iterables) chain.from_iterable(iterables) (r)→ like the above compress(data, selectors) (r)→ sum(1 for s in selectors if s) dropwhile(pred, iterable) (r)→ for skip, r in enumerate(map(pred, iterable)): if r: return len(iterable) - skip filterfalse(pred, iterable) (r)→ sum(1 for r in map(pred, iterable) if r) groupby(iterable[, keyfunc]) (r)→ no way but to actually execute it all islice(seq, [start,] stop [, step]) → calculatable if len(seq) is possible starmap(function, iterables) → len(iterables) takewhile(pred, iterable) (r)→ for skip, r in enumerate(map(pred, iterable)): if not r: return skip tee(iterable[, n]) → n zip_longest(*iterables[, fillvalue]) (r)→ max(len(it) for it in iterables) product(), permutations(), combinations(), combinations_with_replacement() → there’s math for that. -- components: Library (Lib) messages: 248451 nosy: flying sheep priority: normal severity: normal status: open title: Add __len__ to map, everything in itertools type: enhancement versions: Python 3.6 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24849 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue9262] IDLE: Use tabbed shell and edit windows
Terry J. Reedy added the comment: A tabbed widget, however implemented, should be a component that can either be in a Toplevel with menu by itself, or added to an application window (#24826). -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9262 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24850] syslog.syslog() does not return error when unable to send the log
R. David Murray added the comment: Hmm. Normally the way errors are reported in python is via exception. personally I would not want syslog raising an exception if it couldn't deliver the message. I suppose we could have it return a status code. That would be a new feature, though. -- nosy: +r.david.murray type: behavior - enhancement versions: +Python 3.6 -Python 2.7, Python 3.2, Python 3.3, Python 3.4, Python 3.5 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24850 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24850] syslog.syslog() does not return error when unable to send the log
New submission from Cyril Bouthors: Hi guys, syslog.syslog() does not report any error when it fails to send messages to syslog. To reproduce: Stop sysglog: sudo /etc/init.d/rsyslog stop Run than Python code: import syslog syslog.syslog('test') It does not fail. Strace shows that's it's been unable to send the message to syslog: connect(3, {sa_family=AF_LOCAL, sun_path=/dev/log}, 110) = -1 ENOENT (No such file or directory) close(3)= 0 rt_sigaction(SIGINT, {SIG_DFL, [], SA_RESTORER, 0x7fc899e4a8d0}, {0x55e6b0, [], SA_RESTORER, 0x7fc899e4a8d0}, 8) = 0 brk(0x20ed000) = 0x20ed000 exit_group(0) = ? +++ exited with 0 +++ I've tested all those versions: echo -e import syslog\nsyslog.syslog('test')\n | python3.5 echo -e import syslog\nsyslog.syslog('test')\n | python3.4 echo -e import syslog\nsyslog.syslog('test')\n | python3.3 echo -e import syslog\nsyslog.syslog('test')\n | python3.2 echo -e import syslog\nsyslog.syslog('test')\n | python2.7 echo -e import syslog\nsyslog.syslog('test')\n | python2.6 Can we please get syslog() to report errors? Thanks. -- components: Library (Lib) messages: 248462 nosy: Cyril Bouthors priority: normal severity: normal status: open title: syslog.syslog() does not return error when unable to send the log type: behavior versions: Python 2.7, Python 3.2, Python 3.3, Python 3.4, Python 3.5 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24850 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue9262] IDLE: Use tabbed shell and edit windows
Mark Roseman added the comment: Roger's extension is an amazingly cool hack. With some of the decoupling mentioned in #24826, the actual switching should get easier. Regarding cosmetics, I wanted to make a suggestion. The tabs provided by ttk::notebook aren't ideally suited for this task, both visually on some platforms (hello Mac) and also because they're designed for a fixed (small) number of tabs. One of the better implementations of tabs I've seen is in the Mac editor TextMate. I've attached a set of annotated screenshots as tmtabs.png. It's nice and clean. Doing this as a widget based on the Tkinter canvas looks very feasible. -- versions: +Python 2.7, Python 3.5, Python 3.6 -Python 3.3 Added file: http://bugs.python.org/file40167/tmtabs.png ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9262 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24826] ability to integrate editor, shell, debugger in one window
Terry J. Reedy added the comment: #9262 is step b) above, and therefore a dependency for this issue. -- dependencies: +IDLE: Use tabbed shell and edit windows ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24826 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue9262] IDLE: Use tabbed shell and edit windows
Changes by Brian Curtin br...@python.org: -- nosy: -brian.curtin ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9262 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24849] Add __len__ to map, everything in itertools
Steven D'Aprano added the comment: Unfortunately, this fails because there is no way to tell how long an arbitrary iterable is, or whether it is reentrant or not. Consider: def gen(): while True: if random.random() 0.5: return random.random() Not only is it not reentrant, but you cannot tell in advance how long it will be. There's also the problem that not all iterables need to have a defined length. The iterator protocol, for example, does not demand that iterators define a length, and we should not put that burden on the programmer. There's one more serious problem with the idea of giving iterators a length. Consider this case: it = iter([1, 2, 3, 4, 5]) next(it) next(it) print(len(it)) What should be printed? 5, the length of the underlying list, or 3, the number of items still remaining to be seen? Whichever answer you give, it will be misleading and a bug magnet under certain circumstances. I don't believe it is worth giving iterators like map, zip etc. a length depending on the nature of what they are iterating over. That can only lead to confusion. Programmers just have to understand that sequences have lengths, but arbitrary iterables may not. -- nosy: +steven.daprano ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24849 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue16041] poplib: unlimited readline() from connection
R. David Murray added the comment: It has been, see the referenced issue. Now we just need someone to write a patch. -- nosy: +r.david.murray ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue16041 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24849] Add __len__ to map, everything in itertools
R. David Murray added the comment: No, you may not iterate the iterator in order to compute the len, because then the iterator would be exhausted. In addition, the point of itertools is to *lazily* do operations on iterables of indefinite length, so to offer __len__ if and only if the arguments supported len (for cases where that would work) would be essentially false advertising :) -- nosy: +r.david.murray resolution: - rejected stage: - resolved status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24849 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23906] poplib maxline behaviour may be wrong
R. David Murray added the comment: Note that the max message size solution can be applied to the maintenance releases as a fix for this issue by choosing a suitable large default message size. The 'feature' part is just the part exposing the size limit in the library API...that part is a feature for 3.6. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23906 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue17703] Trashcan mechanism segfault during interpreter finalization in Python 2.7.4
Stian Lode added the comment: I'm seeing this bug in Python 3.4.2 as well, and the patch here (tstate_trashcan.patch) appears to fix it. I'm using boost 1.57.0, and Python was compiled on a vanilla rhel6 system. -- nosy: +Stian Lode, larry versions: +Python 3.4 -Python 2.7 Added file: http://bugs.python.org/file40166/bt.txt ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue17703 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24846] Add tests for ``from ... import ...` code
Changes by Eric Snow ericsnowcurren...@gmail.com: -- nosy: +eric.snow ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24846 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24826] ability to integrate editor, shell, debugger in one window
Terry J. Reedy added the comment: #24760 - config dialog not modal, is part of c) -- dependencies: +IDLE settings dialog shouldn't be modal ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24826 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue21167] float('nan') returns 0.0 on Python compiled with icc
Chris Hogan added the comment: From Clark Nelson: In my opinion, exactly how and where the macro is defined that indicates our conformance to the FP standard doesn't really matter. The point is that it is our intention to conform, at least to some degree and under some circumstances. Under those circumstances, it would be wrong to map (0 * x) to 0 without regard to what x might be. Clark -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue21167 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue16296] Patch to fix building on Win32/64 under VS 2010
Ralf Gommers added the comment: I'll note that in Numpy we have now worked around the issue (with https://github.com/numpy/numpy/pull/4892), basically by monkeypatching distutils and doing: if '/MANIFEST' not in ldflags: ldflags.append('/MANIFEST') The bug report is still valid though; it should not be specific to numpy. A more detailed report of what was broken before and fixed by this patch would have been helpful. I cannot be sure that this is 100% correct because I don't have Windows+MSVC available, but it should be this: - Take Python 3.4 installed from the python.org .exe installer - Create a new virtualenv and activate it - pip install numpy==1.8.0 # this will fail - apply the patch - pip install numpy==1.8.0 # this will work Furthermore I think that this is a duplicate of http://bugs.python.org/issue4431, which is also a valid bug report confirmed by multiple people (but closed as not a bug). Given that applying the patch is harmless and not applying it clearly does create problems for users, it would make sense to apply it. But honestly, given for how long the bug reports on 4431 were ignored, I'm not willing to spend much effort on this. So if no one else does either, this issue may indeed just as well be closed as outdated like Marc Lawrence suggests. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue16296 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24847] Can't import tkinter in Python 3.5.0rc1
Steve Dower added the comment: Attaching two patches that fix the tcl/tk build to not require vcruntime140.dll at all. This is the better fix, though I haven't yet tested it thoroughly enough to convince myself that it's ready. One patch is for tcl/tk/tix themselves (which I'll submit upstream if accepted) and the other is for our side of the build process. (There'll also be a change to our installer if these go in.) Presented here for openness, reviews and feedback. Still want to get testing on the existing 3.5.0 change to convince Larry that it's good to go. -- keywords: +patch Added file: http://bugs.python.org/file40168/remove_vc140_ext.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24847 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24847] Can't import tkinter in Python 3.5.0rc1
Changes by Steve Dower steve.do...@python.org: Added file: http://bugs.python.org/file40169/remove_vc140_py.patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24847 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue24745] Better default font for editor
Terry J. Reedy added the comment: I just returned from a trip. I think restoring the status quo is sufficient, so I will likely apply to 2.7 and 3.4 and null merge forward. Is there anyway to get test run with 8.4 automatically, as least intermittantly, before the rc? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24745 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23749] asyncio missing wrap_socket (starttls)
Changes by Alex Grönholm alex.gronholm+pyt...@nextday.fi: -- nosy: +alex.gronholm ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23749 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue5288] tzinfo objects with sub-minute offsets are not supported (e.g. UTC+05:53:28)
Tim Peters added the comment: The only reason for the restriction that I can think of is that some text representation of datetime only provide 4 digits for timezone. There never was a compelling reason. It was simply intended to help catch programming errors for a (at the time) brand new feature, and one where no concrete timezone support was supplied at first. Lots of people were writing their own tzinfo subclasses, and nobody at the time was, e.g., volunteering to wrap the Olson database. I'm in favor of removing all restrictions on offsets. Speed is of minor concern here - if it simplifies the code to delegate all offset arithmetic to classic datetime +/- timedelta operations, fine. String representations are a mess. If some popular standard doesn't cater to sub-minute (or sub-second!) offsets, fine, make up a format consistent with what such a standard would have defined had it addressed the issue, and document that if a programmer picks a timezone whose offsets go beyond what that standard supports, tough luck. Then Python will give something sensible Python can live with, but won't try to hide that what they're doing does in fact go beyond what the standard supports. -- nosy: +tim.peters ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue5288 ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com