Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Jeon Wooje
    @kiwiyou
    Hello! I'm trying to make a web game using websocket and riker, but I can barely find any resources about how to connect them (e.g. feeding websocket messages into actors, using tokio runtime with riker because some of websocket crates depend on it). Has anybody tried to use websocket with riker?
    3 replies
    olexiyb
    @olexiyb
    Can someone with merge rights take a look into riker-rs/riker#145 request. Github actions much better then travis. Travis has contant problems and slow.
    Lee Smith
    @leenozara

    Version 0.4.2 is now available. Special thanks to @olexiyb and @nothingismagick for:

    • Updated to use stable dashmap
    • Fixed clippy and pre-commit errors
    • Migration from Travis to GitHub Actions

    Next up we'll be expanding on the migration to GHA to improve cadence with regards to code merges and version releases. Thank you to the team and community.

    [dependencies]
    riker = "0.4.2"
    nothingismagick
    @nothingismagick
    :wave:
    prassee
    @prassee
    curious to know about remote actors support
    prassee
    @prassee
    any one tried to communicate actors in two host via tokio
    nothingismagick
    @nothingismagick
    we are working on using libp2p-noise (XX flavor handshake) for remote actors (sort of like the ask pattern here: https://riker.rs/patterns/ )
    nothingismagick
    @nothingismagick
    (should say, with we, I meant an external group, not officially riker or anything.) hopefully tomorrow will have merged in the code and can share a link here.
    Rohan Sircar
    @rohan-sircar
    Hi, Riker looks to be great! It would be great to have the ability to model state machines though. I use Akka Typed to model state machines with Actors a lot in Scala.
    Linus Behrbohm
    @mankinskin
    Does anyone know what to do about 'there is no timer running, must be called from the context of Tokio runtime' when using Context::run? riker-rs/riker#150
    Norman Jefferies
    @njeff3_gitlab
    Hi I was wondering also about remote capabilities. Is it possible to have separate processes access one ( the same ) actor system?
    kporika
    @kporika
    how do we run riker under tokio runtime ?

    [tokio::main]

    async fn main() -> std::io::Result<()> {
    let rt = tokio::runtime::Handle::current() ;
    let sys = ActorSystem::new().unwrap(); // how do i add rt to the sys handle
    Linus Behrbohm
    @mankinskin
    @kporika See this issue riker-rs/riker#150
    Does anybody have a suggestion for how to access to an actor from a future spawned with Context::run? I would basically like to use self when running a future using ctx.run(async move { self.data = something().await; }) but of course that doesn't work. Can I use messages?
    Linus Behrbohm
    @mankinskin
    Using a message enum and myself.tell works
    Shafqat Ullah
    @shafqatevo
    Hi everyone, quick question, what's the per-actor memory overhead in Riker? In Akka, for example, the overhead is said to be around 360 bytes. In Pony, the overhead is object+256 bytes.
    prassee
    @prassee
    is pony still around .... if so its good to know
    Jess Bowers
    @jessbowers
    Pony hasn't been updated since 2018
    Shafqat Ullah
    @shafqatevo
    Pony community is steadily growing and they're doing some updates to the lang runtime with https://github.com/jemc/mare
    Bringing some ideas from Project Verona of Microsoft, where one of the Pony creators, Sylvan Clebsch is working on an evolution of Rust and Pony ideas.
    Isitha Subasinghe
    @isubasinghe
    Hey all
    Just a quick question
    Does anyone know how to have actors messaging each other (cycles)
    Rohan Sircar
    @rohan-sircar
    @isubasinghe You have to follow this pattern basically, but in Rust and with actor references -
    class A(var b: Option[B])
    class B(a: A)
    
    val a = new A(None) // instance of B does not exist yet
    val b = new B(a)
    a.b = Some(b) // update reference to B
    That's Scala pseudocode
    werner291
    @werner291
    :wave: Riker looks neat, gonna try it! Though, how can stop the main thread from terminating while the system is still running? All of the examples appear to simply have the thread sleep 500ms before exiting. Is there some kind of sys.hold_until_done()?
    Isitha Subasinghe
    @isubasinghe
    @rohan-sircar Thankyou I will use that pattern
    Rohan Sircar
    @rohan-sircar
    @isubasinghe let me know if you face any problems
    Fernando Hackbart
    @fernando.hackbart_gitlab
    Hello, I am starting with Riker (and Rust) but have some experience with Akka, I am trying to create an actor from within another actor, but not figuring out how to obtain the actor system (normally in Scala we inject it as an implicit variable), do I need to pass the actorSystem reference to the actor that needs to create actors as propoerties? Thx.
    Fernando Hackbart
    @fernando.hackbart_gitlab
    I think I found it &_ctx.system.
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    How do you know what the response type is for a given message and actor?
    Tyler Jones
    @ghalsk:matrix.org
    [m]

    https://riker.rs/faq/

    Riker Cluster is currently in development

    Where is this being developed? I dont see a branch for it the main riker repo, and I havnt found a riker-cluster repo, nothing in riker-patterns/branches

    Tyler Jones
    @ghalsk:matrix.org
    [m]
    Also, where are the configuration options for the actor system documented?
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    Trying to solve an issue with ask macro, riker-rs/riker#27
    I never get a response delivered. Maybe this is due to the response type not being expected?
    How does ask! determine the response type to expect? The setup compiles but delivery of the reply to the "sender" (the tmp ask actor) fails.
    Gregor
    @GrxE
    Hi, I am trying to use Riker in my application. Is there a way to use a custom logger (which implements the log::Log trait and logs to a DB) instead of the default logging (which logs to STDOUT)? So far I have installed my custom logger which logs via (log-carte´s) log-macros (warn!,info!,error! etc..), other libraries´s log messages (rustyline) appear as expected in my custom-DB logger, only the Riker logger logs to STDOUT. Any advise?
    Mike Z
    @mikezupper
    @GrxE - rikers uses SLOG crate. They have all the feature you need. Take a look at the logger example: https://github.com/riker-rs/riker/blob/master/tests/logger.rs
    Gregor
    @GrxE
    @mikezupper Thanks!
    Gregor
    @GrxE
    @ghalsk:matrix.org I had the same thing, too. I used the code from the documentation to start with and it hang (with RemoteHandle<String> ) . RemoteHandle<u32> matched the message type in this case and the future got a result.
    2 replies
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    I'll have to re-remember my setup and review the code, it's been a while
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    Thank you
    Gregor
    @GrxE
    @ghalsk:matrix.org The working "ask" Example, from the documentation... https://github.com/GrxE/riker_ask_pattern
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    Awesome, thanks buddy
    2 replies
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    @GrxE: in your case, your msg is the same sent as received,
    https://github.com/GrxE/riker_ask_pattern/blob/master/src/main.rs#L10
    1 reply
    Im not sure what to do if I have some struct as the receive msg type Msg = ValidationMsg;, but my response is a different struct
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    Sorry, just realized it is like 4:40 am there
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    🤩
    Gregor
    @GrxE
    Hi all! I am wondering what has happened to the EventStore from 0.2.4 . Is the current way of doing this to make a Channel-like actor that stores the messages?
    Paul Masurel
    @fulmicoton
    Hello! Are there plans to support tokio as an Executor? I see different effort in github that seem being welcome, but end up discontinued.
    (Riker ticks most of my needs, but one of the client library I rely on requires me to use tokio's runtime)