-
-
Notifications
You must be signed in to change notification settings - Fork 305
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
"Cannot execute LocalPool executor from within another executor" panic!
on master
#826
Comments
I made sure my local Nannou copy was up-to-date with nannou-org and ran cargo update. I'm running Windows 10 20H2, build 19042.1415. Here's a trace with RUST_BACKTRACE=full:
|
i got the same issue under windows 11 with half of the examples. |
Same for me on macosx big sur |
same on archlinux |
Hey, I had the same problem with the examples. As a workaround, I added Lines 730 to 732 in c7c9932
/// Builds the window, inserts it into the `App`'s display map and returns the unique ID.
pub fn build(self) -> Result<Id, BuildError> {
async_std::task::block_on(self.build_async())
} All I'm happy to send a pull request, but since the change adds a new library, maybe you want to think about that. I'm on Windows 11. |
Thanks all for reporting! It seems as though the issue is caused by attempted nesting of calls to https://docs.rs/futures-executor/0.3.19/src/futures_executor/local_pool.rs.html#82 The reason the @maurimura thanks for diving into finding a solution! I think the reason using the I think that if building windows in an In the meantime, folks running the examples can use the @Woyten curious to grab your thoughts on all this, but I know it's holiday season - no rush at all :) |
Thinking on this a little more, while it's common to create all necessary windows during In the meantime, it might be worth reverting #815 until we can come up with a more complete approach to supporting async. |
@mitchmindtree thanks for your feedback! I found the hints for making it work here: rust-lang/futures-rs#2090, which is exactly what you described in your comment. I'm glad you're up to find a proper solution for this, async tradeoff could be hard for API design. I just discovered |
@maurimura What happens if you remove the |
Hey @Woyten. Yes, I think that will do the trick, but it involves adding a new dependency to Looking at some comments on the previous linked issue, rust-lang/futures-rs#2090 (comment) suggest it will work as well. |
@maurimura Thanks for checking! I was talking about removing the dependency |
@maurimura @mitchmindtree I prepared something which I would require some feedback about. Will prepare the draft PR soon. |
Fix #826 / Use async-std instead of futures
A user on matrix mentioned they're running into the following
panic!
on Windows 10:Another user confirmed, and mentioned that the recently released
0.18.1
works, so the issue must be in one of the recent unreleased changes. Seeing as we're getting an executor error, I imagine this must be related to either the newasync
run code or thewgpu
async code, or maybe the interaction between the two (which I think we always immediately block on anyway). cc @Woyten any ideas on what might be going on? I'll see if I can get some more detailed backtraces, etc.The text was updated successfully, but these errors were encountered: