Giter VIP home page Giter VIP logo

Comments (4)

ollyde avatar ollyde commented on June 12, 2024

So I can't get async publish working or even set for that matter and the documentation is wrong. Any ideas?

from redis-rs.

ollyde avatar ollyde commented on June 12, 2024

Even the most basic example fails.

    let channel_name = "my_channel"; // The channel ID as a string.
    let message = "Hello, World!"; // The message you want to publish.

    // Publish the message to the channel.
    redis().publish(channel_name, message).await;

type annotations needed
cannot satisfy `_: FromRedisValue`
the following types implement trait `FromRedisValue`:
  bool
  isize
  i8
  i16
  i32
  i64
  i128
  usize
and 46 othersrustc[Click for full compiler diagnostic](rust-analyzer-diagnostics-view:/diagnostic%20message%20%5B0%5D?0#file%3A%2F%2F%2FUsers%2Foliverdixon%2FProjects%2Fprotobrain%2Fprotobrain-salvo%2Fsrc%2Ffeatures%2Fwebsockets%2Fwebsockets.rs)
macros.rs(167, 25): required by a bound in `redis::AsyncCommands::publish`
websockets.rs(118, 20): consider specifying the generic arguments: `::<&str, &str, RV>`

from redis-rs.

ollyde avatar ollyde commented on June 12, 2024

Also, the return type is fairly confusing. It also has to implement these traits?

error[E0277]: the trait bound `&Result<std::string::String, RedisError>: FromRedisValue` is not satisfied
    --> src/features/websockets/websockets.rs:116:10
     |
116  |         .publish::<&RedisChannel, &ChannelData, &RedisResult<String>>(&channel, &data)
     |          ^^^^^^^ the trait `FromRedisValue` is not implemented for `&Result<std::string::String, RedisError>`

from redis-rs.

ollyde avatar ollyde commented on June 12, 2024

For anyone else stuck, it was the return type.

I had to wrap it in match

 match redis().await.publish(&USER_MESSAGES, &data_string).await {
        Ok(data) => data,
        Err(e) => {
            tracing::error!(error = ?e, "redis publish error");
            return;
        } 
    };

from redis-rs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.