[issue39232] asyncio crashes when tearing down the proactor event loop

2020-09-12 Thread Caleb Hattingh
Change by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <https://bugs.python.org/issue39232> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue41505] asyncio.gather of large streams with limited resources

2020-08-22 Thread Caleb Hattingh
Caleb Hattingh added the comment: The traditional way this done is with a finite number of workers pulling work off a queue. This is straightforward to set up with builtins: from uuid import uuid4 import asyncio, random async def worker(q: asyncio.Queue): while job := await q.get

[issue40894] asyncio.gather() cancelled() always False

2020-06-12 Thread Caleb Hattingh
Caleb Hattingh added the comment: Kyle is correct. By analogy with Kyle's example, the following example has no gather, only two nested futures: ``` # childfut.py import asyncio async def f(fut): await fut async def g(t): await asyncio.sleep(t) async def main():

[issue39839] Non-working error handler when creating a task with assigning a variable

2020-03-15 Thread Caleb Hattingh
Caleb Hattingh added the comment: Can reproduce also on 3.8. Another version that "works" (raises the exception) is task = loop.create_task(test()) del task Suggests there's something going on with reference counting or garbage collection. In the version that &quo

[issue39857] subprocess.run: add an extra_env kwarg to complement existing env kwarg

2020-03-10 Thread Caleb Hattingh
Caleb Hattingh added the comment: The dict unpacking generalizations that I posted were added in Python 3.5, which is pretty old by now. (But, true, is in Python 3 and not Python 2). This is the PEP: https://www.python.org/dev/peps/pep-0448/ The new syntax that Brandt posted will indeed

[issue39857] subprocess.run: add an extra_env kwarg to complement existing env kwarg

2020-03-07 Thread Caleb Hattingh
Caleb Hattingh added the comment: dict syntax tools make it fairy easy to compose new dicts from old ones with overrides: subprocess.run(..., env={**os.environ, 'FOO': ..., 'BAR', ...}, ...) Would this be sufficient to avoid the copy/pasting boilerplate? --

[issue39609] Set the thread_name_prefix for asyncio's default executor ThreadPoolExecutor

2020-02-17 Thread Caleb Hattingh
Caleb Hattingh added the comment: This change seems fine. Markus, I'm curious if there is a specific reason you prefer to use the default executor rather than replacing it with your own? Is it just convenience or are there other reasons? -- nosy:

[issue38988] Killing asyncio subprocesses on timeout?

2020-02-01 Thread Caleb Hattingh
Caleb Hattingh added the comment: @dontbugme This is a very old problem with threads and sub-processes. In the general case (cross-platform, etc) it is difficult to kill threads and sub-processes from the outside. The traditional solution is to somehow send a message to the thread or

[issue39483] Proposial add loop parametr to run in asyncio

2020-02-01 Thread Caleb Hattingh
Caleb Hattingh added the comment: Hmm, my recent comment looks rude but I didn't intend it to be that way. What I mean is: there are many, many more users of asyncio.run than there are of teleton, so any change made to asyncio.run is going to affect more people than the other way roun

[issue39483] Proposial add loop parametr to run in asyncio

2020-02-01 Thread Caleb Hattingh
Caleb Hattingh added the comment: @heckad You should instead ask the maintainers of teleton how to use their library with asyncio.run, not the other way round. -- nosy: +cjrh ___ Python tracker <https://bugs.python.org/issue39

[issue39010] ProactorEventLoop raises unhandled ConnectionResetError

2020-02-01 Thread Caleb Hattingh
Change by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <https://bugs.python.org/issue39010> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue37334] Add a cancel method to asyncio Queues

2019-11-22 Thread Caleb Hattingh
Caleb Hattingh added the comment: Ok, I see now. The improvement with only a single producer/consumer might be marginal, but the proposition that `queue.cancel()` might simplify the situation with multiple producers and/or consumers is more compelling. Usually, assuming M producers and N

[issue38529] Python 3.8 improperly warns about closing properly closed streams

2019-10-19 Thread Caleb Hattingh
Change by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <https://bugs.python.org/issue38529> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue38501] multiprocessing.Pool hangs atexit (and garbage collection sometimes)

2019-10-19 Thread Caleb Hattingh
Change by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <https://bugs.python.org/issue38501> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue38306] High level API for loop.run_in_executor(None, ...)?

2019-10-12 Thread Caleb Hattingh
Caleb Hattingh added the comment: We can't allow both an `executor=` kwarg, as well as **kwargs for the target func, unfortunately. If we do `executor=`, we'll again have to force users to use functools.partial to wrap their functions that t

[issue38306] High level API for loop.run_in_executor(None, ...)?

2019-10-12 Thread Caleb Hattingh
Caleb Hattingh added the comment: Even before task groups land, this API can be easily improved by adding asyncio.run_in_executor(func, *args, **kwargs) - Only valid inside a coro or async context (uses get_running_loop internally) - Analogous to how `loop.create_task` became

[issue37736] asyncio.wait_for is still confusing

2019-10-05 Thread Caleb Hattingh
Caleb Hattingh added the comment: > asyncio.wait_for is still confusing Perhaps the confusion can be fixed with improvements to the docs? To me, these specific docs seem pretty clear now, but I might not be a good judge of that. > However, we still have the case where a misbehaving Ta

[issue38164] polishing asyncio Streams API

2019-09-29 Thread Caleb Hattingh
Change by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <https://bugs.python.org/issue38164> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue38242] Revert the new asyncio Streams API

2019-09-29 Thread Caleb Hattingh
Change by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <https://bugs.python.org/issue38242> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue34037] asyncio: BaseEventLoop.close() shutdowns the executor without waiting causing leak of dangling threads

2019-09-11 Thread Caleb Hattingh
Change by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <https://bugs.python.org/issue34037> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue37334] Add a cancel method to asyncio Queues

2019-06-21 Thread Caleb Hattingh
Caleb Hattingh added the comment: I'm interested in how this change would affect the pattern of shutting down a queue-processing task. How would one decide between whether to cancel the queue or the task? (I'm asking for real, this is not an objection to the PR). For example,

[issue34831] Asyncio Tutorial

2019-06-19 Thread Caleb Hattingh
Caleb Hattingh added the comment: I'm removing the GUI section of the chat case study. Yury was right, it's not going to add anything useful. The CLI chat client will work well because prompt-toolkit has actual support for asyncio. Tkinter does not, and I think it'll be bett

[issue34831] Asyncio Tutorial

2019-06-16 Thread Caleb Hattingh
Caleb Hattingh added the comment: FYI I'm going to be using the 3rd-party prompt-toolkit for the chat client. (The server depends only on asyncio only). I put several hours research into finding a way for the CLI chat client to be not terrible, but it gets very complicated trying to m

[issue34831] Asyncio Tutorial

2019-06-15 Thread Caleb Hattingh
Caleb Hattingh added the comment: That was an long two months, apologies. I've made some fixes based on review comments and cleaned up some more of the code samples. The primary outstanding pieces are the client component of the chat application case study, and the GUI integration se

[issue19495] context manager for measuring duration of blocks of code

2019-03-25 Thread Caleb Hattingh
Caleb Hattingh added the comment: Somehow I missed that there's been an open issue on this. Like others I've written a bunch of different incarnations of an "elapsed" context manager over the years. Always for the more crude "how long did this take" reason li

[issue34831] Asyncio Tutorial

2019-01-05 Thread Caleb Hattingh
Caleb Hattingh added the comment: A quick note to say I have not abandoned this, it's just that life got complicated for me in late 2018. I intend to pick up progress again within the next month or two. -- ___ Python tracker &

[issue30487] DOC: automatically create a venv and install Sphinx when running make

2019-01-05 Thread Caleb Hattingh
Caleb Hattingh added the comment: @cheryl.sabella I am ok with closing this, but the original motivation for this work was from @zack.ware so he should weigh in. I am not going to work on this any further for the forseeable future (I've got my hands full already with the asyncio doc

[issue34831] Asyncio Tutorial

2018-10-21 Thread Caleb Hattingh
Caleb Hattingh added the comment: I've added a few ideas for items in the "cookbook" page, which you'll see in the PR. If anyone has suggestions for more or better cookbook entries (recipes?), feel free to mention here or in the PR, I check both places. I expect to get

[issue35036] logger failure in suspicious.py

2018-10-21 Thread Caleb Hattingh
Change by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <https://bugs.python.org/issue35036> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue34831] Asyncio Tutorial

2018-10-07 Thread Caleb Hattingh
Caleb Hattingh added the comment: I tested the Python 3.7.0 release version for Mac, the download called "macOS 64-bit installer" with checksum ae0717a02efea3b0eb34aadc680dc498 on this page: https://www.python.org/downloads/release/python-370/ I downloaded, installed that on a ma

[issue34831] Asyncio Tutorial

2018-10-07 Thread Caleb Hattingh
Caleb Hattingh added the comment: I set up a basic structure under "Doc/library/asyncio-tutorial" as suggested, and opened a PR to show you how that looks. When I make more progress on a section, I'll post an update here. -- ___

[issue34831] Asyncio Tutorial

2018-10-07 Thread Caleb Hattingh
Change by Caleb Hattingh : -- keywords: +patch pull_requests: +9134 stage: -> patch review ___ Python tracker <https://bugs.python.org/issue34831> ___ ___ Py

[issue34831] Asyncio Tutorial

2018-10-06 Thread Caleb Hattingh
Caleb Hattingh added the comment: A CLI client is a necessary step along the way anyway, so that sounds good by me. You suggested: > I'd organize the tutorial in a dedicated directory like > "Doc/library/asyncio-tutorial/" I had a look at the source tree, there

[issue34831] Asyncio Tutorial

2018-10-01 Thread Caleb Hattingh
Caleb Hattingh added the comment: > * I think we should stick to your structure and push things to > docs.python.org as soon as every next section is somewhat ready. Ok. I'll get a PR going for the start page of the tutorial. > * Every big section should probably have its own

[issue34831] Asyncio Tutorial

2018-09-28 Thread Caleb Hattingh
New submission from Caleb Hattingh : Hi Yury, As discussed, below is a very rough outline of a proposed TOC for an asyncio tutorial. No content has been written yet (only what you see below). I think we should nail down the TOC first. Asyncio Tutorial Proposed Table of

[issue30487] DOC: automatically create a venv and install Sphinx when running make

2017-11-27 Thread Caleb Hattingh
Caleb Hattingh added the comment: Yep, sounds good. -- ___ Python tracker <https://bugs.python.org/issue30487> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue30487] DOC: automatically create a venv and install Sphinx when running make

2017-11-27 Thread Caleb Hattingh
Caleb Hattingh added the comment: It looks like the check for an existing sphinx-build passes, and so no new venv is made, but this also means that blurb doesn't get installed. I was concerned about this, but figured that at least the buildbots would create new envs each time, and

[issue30487] DOC: automatically create a venv and install Sphinx when running make

2017-11-27 Thread Caleb Hattingh
Caleb Hattingh added the comment: Hi Ned It's still supposed to allow both. It sounds like it's not working properly. I'll have a look. FYI, I worked on this for Zach Ware who is the primary stakeholder for this feature. Rgds Caleb > On 28 Nov 2017, at 7:12 AM

[issue30487] DOC: automatically create a venv and install Sphinx when running make

2017-11-09 Thread Caleb Hattingh
Caleb Hattingh added the comment: No worries. I've made a new PR 4346. The old one was unsalvagable I'm afraid. Too many other people got added to the notifications list as a result of my incorrect rebase. The new one is fine. --

[issue30487] DOC: automatically create a venv and install Sphinx when running make

2017-11-09 Thread Caleb Hattingh
Change by Caleb Hattingh : -- keywords: +patch pull_requests: +4303 ___ Python tracker <https://bugs.python.org/issue30487> ___ ___ Python-bugs-list mailin

[issue30487] DOC: automatically create a venv and install Sphinx when running make

2017-11-08 Thread Caleb Hattingh
Caleb Hattingh added the comment: I messed up the PR through a failed rebase (trying to rebase my PR on top of upstream). I closed the PR as a result. I have now fixed up my feature branch, but I have not resubmitted the PR. Since the PR was left alone for many months, I'm ok with le

[issue31620] asyncio.Queue leaks memory if the queue is empty and consumers poll it frequently

2017-09-29 Thread Caleb Hattingh
Caleb Hattingh added the comment: This looks like a dupe, or at least quite closely related to https://bugs.python.org/issue26259. If the PR resolves both issues that one should be closed too. -- nosy: +cjrh ___ Python tracker <ht

[issue30487] DOC: automatically create a venv and install Sphinx when running make

2017-05-26 Thread Caleb Hattingh
New submission from Caleb Hattingh: Under guidance from zware during Pycon sprints, I've changed the Doc/ Makefile to automatically create a virtual environment and install Sphinx, all as part of the `make html` command. -- assignee: docs@python components: Documentation mes

[issue30433] Devguide lacks instructions for building docs

2017-05-26 Thread Caleb Hattingh
Caleb Hattingh added the comment: The PR has been merged by Mariatta so I think this can be closed. -- ___ Python tracker <http://bugs.python.org/issue30

[issue30433] Devguide lacks instructions for building docs

2017-05-22 Thread Caleb Hattingh
Caleb Hattingh added the comment: Oops, sorry! The PR was wrong because it auto-assumes the main cpython repo, but my PR is in the devguide repo. This is the URL for the PR: https://github.com/python/devguide/pull/206 -- ___ Python tracker <h

[issue30433] Devguide lacks instructions for building docs

2017-05-22 Thread Caleb Hattingh
Changes by Caleb Hattingh : -- pull_requests: -1812 ___ Python tracker <http://bugs.python.org/issue30433> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue30433] Devguide lacks instructions for building docs

2017-05-22 Thread Caleb Hattingh
New submission from Caleb Hattingh: The official devguide at https://github.com/python/devguide does not include instructions on exactly how to build the docs! If, after cloning, you simply type `make`, you get some helpful output: $ make Please use `make ' where is one of html

[issue15663] Investigate providing Tcl/Tk 8.6 with OS X installers

2016-09-01 Thread Caleb Hattingh
Changes by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <http://bugs.python.org/issue15663> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue12294] multiprocessing.Pool: Need a way to find out if work are finished.

2016-08-19 Thread Caleb Hattingh
Changes by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <http://bugs.python.org/issue12294> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue12982] Document that importing .pyo files needs python -O

2016-08-19 Thread Caleb Hattingh
Caleb Hattingh added the comment: Presumably PEP488 (and the 4 years of inactivity) means that this issue could be closed? -- nosy: +cjrh ___ Python tracker <http://bugs.python.org/issue12

[issue11602] python-config code should be in sysconfig

2016-08-19 Thread Caleb Hattingh
Changes by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <http://bugs.python.org/issue11602> ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue25572] _ssl doesn't build on OSX 10.11

2016-06-22 Thread Caleb Hattingh
Caleb Hattingh added the comment: I struggled with this issue, and eventually found the recommendations about linking with homebrew's OpenSSL on StackOverflow or similar, and then only later found this issue here (and with it the link to the devguide); but the *first* places I looked wer

[issue25572] _ssl doesn't build on OSX 10.11

2016-06-15 Thread Caleb Hattingh
Changes by Caleb Hattingh : -- nosy: +cjrh ___ Python tracker <http://bugs.python.org/issue25572> ___ ___ Python-bugs-list mailing list Unsubscribe: