[issue37461] email.parser.Parser hang
Change by George Zhang : -- pull_requests: +15137 pull_request: https://github.com/python/cpython/pull/15432 ___ Python tracker <https://bugs.python.org/issue37461> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37461] email.parser.Parser hang
Change by George Zhang : -- pull_requests: +15136 pull_request: https://github.com/python/cpython/pull/15430 ___ Python tracker <https://bugs.python.org/issue37461> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
George Zhang added the comment: Also, how should I get the new code coverage percentage (or should it be ignored for now)? I'm thinking of adding a few more tests that send invalid events which would raise KeyError but I don't think that this behaviour will be used (and it's not documented). Should it give a more specific error message? The test for multicall is only targeting the MultiCall class that gets returned. How should it check for any possible subclasses of it? -- ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
George Zhang added the comment: I renamed mousescroll to handlescroll as it's an independent callback function and I think it fits its use case better. I can keep it as mousescroll if you like though. The handlescroll function is now a standalone module function in tree.py and the EditorWindow imports it for use (instead of creating its own function). Its signature is `handlescroll(event, widget=None)` where event is the event (yeah...) and widget is an optional argument that overrides the widget to call `yview(SCROLL, lines, "units")` on. The second argument was added so that the nasty labels don't have to use the same function but with one line changed (we redirect handlescroll to use `self.canvas` because `event.widget` would refer to the Label which has no yview function). I've added tests on handlescroll with different events. I've also added a test on multicall that checks to test if MultiCallCreator overrides yview. Sorry about the PR closing and reopening. I was panicking about commiting more than once and saw that I should make a new branch for the patch (instead of using master branch). -- ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
George Zhang added the comment: Looks like my PRs are getting out of hand... This is the final PR :P -- ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
Change by George Zhang : -- pull_requests: +15079 pull_request: https://github.com/python/cpython/pull/15368 ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
Change by George Zhang : -- pull_requests: -15077 ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
Change by George Zhang : -- pull_requests: -15076 ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
Change by George Zhang : -- pull_requests: +15076 pull_request: https://github.com/python/cpython/pull/15360 ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
Change by George Zhang : -- pull_requests: +15076, 15077 pull_request: https://github.com/python/cpython/pull/15360 ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
Change by George Zhang : -- pull_requests: -15072 ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
George Zhang added the comment: I looked at the code for scrolling and moved it over to the ScrolledCanvas and TreeNode (because it uses a Label that sits on the canvas, meaning we have to rebind it here). I haven't figured out how to add the scroll-by-pressing-down-and-moving way but I'll look further into it. About the factoring out part, the ScrolledCanvas and TreeNode are both used by the two browsers, meaning that no code has to be added to them. In the future, a factory function could be made that when called with a canvas, it returns an event callback function that can be bound to the canvas. When called, it scrolls depending on the event type and other info. -- ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
Change by George Zhang : -- keywords: +patch pull_requests: +15072 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/15360 ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37902] Add scrolling for IDLE browsers
New submission from George Zhang : I've just started using IDLE's module/path browsers and they offer a lot! Putting aside the issue of them opening in separate windows, they have a small change that could be made to improve them. Both browsers have scrollbars, but (for me at least) I cannot scroll using my mouse. I propose adding support for scrolling similar to the editor/shell windows. -- assignee: terry.reedy components: IDLE messages: 350043 nosy: GeeVye, terry.reedy priority: normal severity: normal status: open title: Add scrolling for IDLE browsers type: enhancement versions: Python 3.7, Python 3.8, Python 3.9 ___ Python tracker <https://bugs.python.org/issue37902> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37882] Code folding in IDLE
Change by George Zhang : -- type: -> enhancement ___ Python tracker <https://bugs.python.org/issue37882> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37882] Code folding in IDLE
New submission from George Zhang : Congrats on adding line numbers to IDLE. With this change, a change to add code folding could be done more easily as the folding can reference the line numbers. Many other IDEs have code folding but IDLE should also have it. Code folding could be done with a +/- to the right of the line numbers and can show/hide the indented suite under the header (compound statements). It should use indentation as tool to figure out which parts can be folded. Blank lines don't count. Single line compound statements cannot be folded. Something like this: 1 - | def spam(ham): 2 - | if ham: 3| eggs() 4| 5 + | def frob(): 8| 9 - | FOO = ( 10 | 1, 2, 3, 4, 11 | 5, 6, 7, 8, 12 | ) 13 | 14 | BAR = ( 17 | ) 18 | 19 | if True: print("True") 20 | -- assignee: terry.reedy components: IDLE messages: 349922 nosy: GeeVye, terry.reedy priority: normal severity: normal status: open title: Code folding in IDLE versions: Python 3.7, Python 3.8, Python 3.9 ___ Python tracker <https://bugs.python.org/issue37882> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue32810] Expose ags_gen and agt_gen in asynchronous generators
George Zhang added the comment: Also, while the PEP first introducing asynchronous generators stated that its .asend() and .athrow() methods will return a "coroutine-like object", it doesn't allow any introspection into its state or parent async generator. My workaround was to wrap the .asend() and other methods with another coroutine that just awaits and returns the result. Having a better way to check its state and frame will bring it closer to a coroutine. -- nosy: +GeeVye ___ Python tracker <https://bugs.python.org/issue32810> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37771] No equivalent of `inspect.getcoroutinestate` for PyAsyncGenASend instances
Change by George Zhang : -- versions: +Python 3.9 ___ Python tracker <https://bugs.python.org/issue37771> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com