bastion-rs / agnostik

Executor Agnostic Runtime that can run your futures with your favourite Executor
https://docs.rs/agnostik
Apache License 2.0
142 stars 11 forks source link

adding support for no_std executor #7

Closed richardanaya closed 4 years ago

richardanaya commented 4 years ago

Hey all, let me know what you think!

o0Ignition0o commented 4 years ago

Let's go for an other CI run to see how it goes.

Stupremee commented 4 years ago

Hey @richardanaya Any progress with the no_std executor? Because I would like to have a no_std executor in the next release of agnostik

richardanaya commented 4 years ago

@Stupremee not having good luck:

i'm getting a new error about from_generator not existing after doing a pull from master, and still getting an error on nightly ( after rustup update nightly ).

Also, I could still use an answer for what people think I should do for no_std multithreading.

o0Ignition0o commented 4 years ago

Hey there :) Is there any way I can help ? I tried checking out the code, and rustc seemed to complain about phantomdata not implementing derefmut. I tried to look for a joinhandle of some sort but couldnt find one :)

Lemme know if theres anything i can do to help, i ll be available tomorrow (CET) :)

o0Ignition0o commented 4 years ago

just ran into it, will try to figure it out :)

error[E0433]: failed to resolve: could not find `from_generator` in `future`

error: aborting due to previous error

For more information about this error, try `rustc --explain E0433`.
error: could not compile `agnostik`.

It should be fixed somewhere https://github.com/rust-lang/rust/pull/69033

richardanaya commented 4 years ago

what really confused me about the from_generator issue is what is causing it. My library executor compiles on stable just fine. I could have sworn it only came from using async { } blocks, but I didn't see any blocks that would be used by runtime_nostd agnostic, its like something sneaky is leaking in.

Stupremee commented 4 years ago

I thought about this the last few days and came to a conclusion. First, I'm sure we don't need your executor and just implement ourselves. The methods should look like this:

If you want you can add agnostik support to your executor library as soon as #4 is implemented

richardanaya commented 4 years ago

Cool, closing this PR.

cosmikwolf commented 1 year ago

And 3.5 years later, no_std is still not implemented, and #4 is still not implemented.

maybe the lesson here is to take help when someone is offering for free. that way we would have a rust ecosystem with an abstraction layer that is compatible with no_std.