Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    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)
    Berkus Decker
    @berkus

    Hi!

    Is riker being developed? I see lots of hanging PRs and last updates were start of this year, which is waay back.

    Having said that, Riker still has better user-friendly documentation than any other rust actor system, and thanks to that I was able to implement an actor-based telegram bot using riker and teloxide. Thanks for that!
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    @berkus my impression has been close to abandonware, this channel sees almost no traffic, prs stale, questions on GitHub unanswered
    Marcus Ilgner
    @milgner
    Hey all! 👋 Trying to breathe some live into this channel - I've been experimenting with Riker a bit recently and it's really a nice system! I had tried out Actix before but so far I prefer the interface for Riker.
    Tyler Jones
    @ghalsk:matrix.org
    [m]
    I felt like riker was easier to work with than actix. Actix made a lot of decisions for you that didn't feel intuitive to me
    Marcus Ilgner
    @milgner
    Indeed! And the tree structure with its associated supervision strategy is really comfortable!
    Just now I was struggling a bit with the static lifetime of the Props until I decided to just implement ActorProducer myself along with an impl Into<BoxActorProd<MyActor>> for MyActorConfiguration. I feel like there might be some leftovers from a time when lifetime annotations in Rust were much harder than they are now. Because from what I gather is that ActorSystem::actor_of_props should be able to take ownership of the passed-in Props at which point the lifetime shouldn't be a problem anymore.
    Mike Z
    @mikezupper
    Ive been llaying around with riker was well. If you put your code in a github repo, ill take a look at it and offer so
    *some help
    Ive been playing around with riker As well. Sorry for the busted mesages. The web ui is a bit flakey on my phone
    Marcus Ilgner
    @milgner
    unfortunately that specific code is part of a business project. If all goes well, we might be able to publish the resulting software as OSS at some point but right now we're heavily focussed on getting it to the customer before we can start discussing publication :)
    Marcus Ilgner
    @milgner
    just encountered an issue with Timer.schedule - I set up a timer for 10 milliseconds and then the thread owning the ActorSystem goes to sleep for a second. Afterwards, I shut down the system and only 18 messages have been received in the meantime. I know that delivery cannot be guaranteed. Increasing the interval to 100ms yields 9 messages in 1 second which is more or less expected. 80ms yields 9 messages, too. 20 ms yields 16 messages now. All in all I'd have expected it to be able to have much shorter timers... The same happens if I use Timer.schedule_onceand re-schedule a new message after receiving the first one. What stands out is the fact that the number of messages seems constant during execution and dependent on the interval. But it doesn't seem to change depending on CPU load of the overall host system, so I have a feeling it's not related to actual runtime constraints but some weird bug, maybe from me mis-using the API. Will try to come up with a SSCCE...
    Marcus Ilgner
    @milgner
    okay, just had a look at the code of the timer system and it is basically a single actor with a fixed wakeup interval that checks which of the registered schedules are supposed to be invoked when it wakes up... that explains things...
    Marcus Ilgner
    @milgner
    right now I see two possible approaches for me to work around this: keep it in one thread and dynamically determine the next point in time for wakeup based on the registered schedules. Or alternatively spawn separate threads for each schedule and have them sleep. That doesn't sound too elegant, though... Shortening the scheduler frequency to something around 10ms might be the best stop-gap solution for the time being. Seems to be worth some experimentation over the weekend... I wonder how much sense it would make to implement any changes to the system and submit a pull request? 🤔 Looks like there are a number of PRs open already...
    Marcus Ilgner
    @milgner
    Dynamic sleep intervals seemed quite straightforward to me. For now I'm going to discuss this with my colleagues and once any issues have been ironed out, we're going to create a PR with the upstream repo... re-gmbh/riker#1
    global.takeover
    @global.takeover:matrix.org
    [m]
    Hey everybody, currently making a decision with using Riker in an event system we're building.
    Steve Biedermann
    @hardliner66

    hi @all. I just wanted to say that I will move away from riker (I'm not the maintainer, but I was on the way to becoming one before the hiatus). I commented my reasoning here: https://github.com/riker-rs/riker/issues/102#issuecomment-973843649

    Key points for new users: If your use case is too complex or you're not willing to fix internals yourself, you should probably check out different actor systems. Maybe someone of you is willing to fork the project. @milgner Maybe you or the company you work for can take on the task of forking, which could be a benefit for all.

    If you have any questions, feel free to ask, I'm still gonna be around a bit.