-
Notifications
You must be signed in to change notification settings - Fork 232
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP use multiprocessing as backend (NEVER MERGE) #479
Conversation
@@ -242,6 +242,7 @@ def setup_config(config, basetemp): | |||
os.environ["PYTEST_XDIST_WORKER_COUNT"] = str(workerinput["workercount"]) | |||
|
|||
if hasattr(Config, "InvocationParams"): | |||
args = list(args) + ["-pno:terminal"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is required because now output in worker processes actually goes to stdout, so print()
and -s
works as expected in this setup.
this is a good pointer to what needs abstraction to get multiple back-ends supported |
I ran some simple tests with this branch and the |
I know at this stage this is a simple change to use multiprocessing as a backend (And remove execnet language), but in my simple tests I found the following issues: But I am excited for this change and would love to test it as changes are made to make it better :) |
@Dude-x this is only a poc to test feasibility, the real implementation will come as a new python package due to massive breaking changes |
@RonnyPfannschmidt good to know it will be a new package. And it will probably a slow evolution. I am still excited though. |
I'm currently smashing this: http://www.nooooooooooooooo.com/ Please don't switch to multiprocessing. Why would you even consider switching?! I mean, look at this https://bugs.python.org/issue38227 |
Execnet is unmaintained and potentially broken |
Closing as stale/served its purpose. |
Is there some summary/writeup of the current/future xdist situation? |
@ionelmc unfortunately no |
No write up, but what we learned from this branch:
Because of those reasons we thought it would be better to have a separate project. I meant to start that new project last year, which I suppose will take a good time to do it, but I've been really short on time with everything else to take this on. So from my part this is "on hold" for the time being, I'm afraid. |
My project about enabling a general api in here is also on hold |
Hi, I know it's been quite a while since this topic was on, but I was wondering whether it is still on the table for |
it currently in limbo as the people able to implementit re preoccupied |
This is just a proof of concept, far from finished. I can run simple tests, and even pytest's own test suite runs almost completely (10 or so failures and it hangs at the end, highlighting that this obviously is a WIP).
Opening this just to start the dialog about creating a
pytest-xdist2
or so, which usesmultiprocessing
to run local workers and other libraries such asmitogen
for remote execution.cc @RonnyPfannschmidt