Skip to content

[v2.7.0] StartActivity does not work with ConsumeAsync return type #1026

@heikkilamarko

Description

@heikkilamarko

Observed behavior

After updating to v2.7.0, the following code no longer compiles:

await foreach (var message in consumer.ConsumeAsync<byte[]>(cancellationToken: stoppingToken))
{
    using var activity = message.StartActivity("nats.consume"); // <-- ERROR
    activity?.SetTag("messaging.system", "nats");
    activity?.SetTag("messaging.subject", message.Subject);

    // ...
}

In v2.7.0, ConsumeAsync<T>() now returns INatsJSMsg<T>, but the StartActivity extension method is defined on NatsJSMsg<T>, so it’s no longer available.

Would it make sense to change StartActivity to extend INatsJSMsg<T> instead?

Expected behavior

See Observed behavior.

Server and client version

See Observed behavior.

Host environment

No response

Steps to reproduce

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingnats.net

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions