Releases: nats-io/nats.net
NATS.Net v2.0.2-preview.2
This is a preview release of a few small features and bug fixes.
- Support for slow consumer events
- Improvements to TLS certificate options
- Support for unit testing improvements with the introduction of optional
INatsMsg<T>
andINatsJSMsg<T>
interfaces.
What's Changed
- Watcher fix and API naming fix by @mtmk in #273
- Added info and stats to services by @mtmk in #274
- Added slow consumer events by @mtmk in #276
- Read certificates as PEM strings or from files by @caleblloyd in #283
- handle no responders in NatsSubBase by @caleblloyd in #277
- Create an INatsJSMsg interface by @mtmk in #266
Full Changelog: v2.0.2-preview.1...v2.0.2-preview.2
Big thanks to our contributors @stebet, @paulomf and @to11mtm. You all rock! 🥇
Breaking changes
- Renamed
INatsObjContext
CreateObjectStore()
method toCreateObjectStoreAsync()
- Slow consumers now will drop messages and raises an event when that happens. You can handle these events or if you need the old behaviour you can set
SubPendingChannelFullMode
toBoundedChannelFullMode.Wait
inNatsOpts
.
Give us a shout if you have any questions either on slack.nats.io dotnet channel or here on GitHub!
Don't forget to check out the documentation for guides and examples.
Happy coding! ❤️
Nuget Packages
NATS.Net
This is the main meta package containing all other packages except serialization.
dotnet add package NATS.Net --version 2.0.2-preview.2
If you are not deploying Native AOT you can also use ad-hoc JSON serialization:
dotnet add package NATS.Client.Serializers.Json --version 2.0.2-preview.2
Individual Packages
dotnet add package NATS.Client.Core --version 2.0.2-preview.2
dotnet add package NATS.Client.Hosting --version 2.0.2-preview.2
dotnet add package NATS.Client.JetStream --version 2.0.2-preview.2
dotnet add package NATS.Client.KeyValueStore --version 2.0.2-preview.2
dotnet add package NATS.Client.ObjectStore --version 2.0.2-preview.2
dotnet add package NATS.Client.Services --version 2.0.2-preview.2
dotnet add package NATS.Client.Serializers.Json --version 2.0.2-preview.2
NATS.Net v2.0.2-preview.1
This is a preview release of changes made so far for 2.0.2 release. Please feel free to try these new features in your pre-production workloads.
What's Changed
- Adding support for the no_responders feature. by @stebet in #259
- Consumer notifications by @mtmk in #265
New Contributors
Full Changelog: v2.0.1...v2.0.2-preview.1
Nuget Packages
NATS.Net
This is the main meta package containing all other packages except serialization.
dotnet add package NATS.Net --version 2.0.2-preview.1
If you are not deploying Native AOT you can also use ad-hoc JSON serialization:
dotnet add package NATS.Client.Serializers.Json --version 2.0.2-preview.1
Individual Packages
dotnet add package NATS.Client.Core --version 2.0.2-preview.1
dotnet add package NATS.Client.Hosting --version 2.0.2-preview.1
dotnet add package NATS.Client.JetStream --version 2.0.2-preview.1
dotnet add package NATS.Client.KeyValueStore --version 2.0.2-preview.1
dotnet add package NATS.Client.ObjectStore --version 2.0.2-preview.1
dotnet add package NATS.Client.Services --version 2.0.2-preview.1
dotnet add package NATS.Client.Serializers.Json --version 2.0.2-preview.1
NATS.Net v2.0.1
This is a bugfix and patch release. Make sure to check the breaking changes below.
What's Changed
- Use TimeSpan for duration instead of nanoseconds by @mtmk in #250
- Removed redundant StreamUpdateRequest class by @mtmk in #248
- Include symbols packages for NuGet by @mtmk in #247
- Stream CreateConsumer renamed CreateOrUpdateConsumer by @mtmk in #251
- Increase consume and fetch channel size by @mtmk in #246
- Removed logging object placeholders by @mtmk in #245
- Fixed domain and API prefix priority and format by @mtmk in #253
- Fixed JetStream ACK custom serialization by @mtmk in #255
- JetStream fetch to require maxMsgs parameter by @mtmk in #257
- Releasing 2.0.1 by @mtmk in #256
Full Changelog: v2.0.0...v2.0.1
Breaking Changes
- JetStream configuration models now use
TimeSpan
for all durations - JetStream stream update method now takes in
StreamConfig
- JetStream
CreateConsumerAsync()
method is renamed toCreateOrUpdateConsumerAsync()
to reflect its behaviour - JetStream
FetchAsync()
method now requires an option object and doesn't have a default batch size. Change your calls toFetchAsync(new NatsJSFetchConfig { MaxMsgs = 1000 })
Compile should catch them all and hopefully they're not going to cause too much hassle at this early stage.
Happy coding!
Nuget Packages
NATS.Net
This is the main meta package containing all other packages except serialization.
dotnet add package NATS.Net --version 2.0.1
If you are not deploying Native AOT you can also use ad-hoc JSON serialization:
dotnet add package NATS.Client.Serializers.Json --version 2.0.1
Individual Packages
dotnet add package NATS.Client.Core --version 2.0.1
dotnet add package NATS.Client.Hosting --version 2.0.1
dotnet add package NATS.Client.JetStream --version 2.0.1
dotnet add package NATS.Client.KeyValueStore --version 2.0.1
dotnet add package NATS.Client.ObjectStore --version 2.0.1
dotnet add package NATS.Client.Services --version 2.0.1
dotnet add package NATS.Client.Serializers.Json --version 2.0.1
NATS.Net v2.0.0
We are thrilled to announce the general availability of NATS.Net version 2.0.0, a robust and high-performance NATS client library that provides a modern .NET interface for building distributed and scalable applications.
Key Features
- All Core NATS messaging features
- Full support for NATS JetStream and advanced features like Key/Value and Object stores
- NATS Service API support
- Modern async .NET API
- Native AOT support
- Targeting .NET 6.0 and .NET 8.0 SDKs
Getting Started
To begin using NATS.Net, check out our official documentation for installation instructions, code examples, and guides.
Install NATS.Net today and elevate your messaging experience to new heights!
Happy coding!
Nuget Packages
NATS.Net
This is the main meta package containing all other packages except serialization.
dotnet add package NATS.Net --version 2.0.0
If you are not deploying Native AOT you can also use ad-hoc JSON serialization:
dotnet add package NATS.Client.Serializers.Json --version 2.0.0
Individual Packages
dotnet add package NATS.Client.Core --version 2.0.0
dotnet add package NATS.Client.Hosting --version 2.0.0
dotnet add package NATS.Client.JetStream --version 2.0.0
dotnet add package NATS.Client.KeyValueStore --version 2.0.0
dotnet add package NATS.Client.ObjectStore --version 2.0.0
dotnet add package NATS.Client.Services --version 2.0.0
dotnet add package NATS.Client.Serializers.Json --version 2.0.0
Thank You!
We want to express our gratitude to the NATS community for their valuable contributions and feedback during the beta phase. Your insights have played a crucial role in shaping NATS.Net into a robust and reliable NATS client library.
We especially want to thank the Cysharp/AlterNats project and its creator @neuecc as it gave us the perfect foundation. We're also grateful for the contributions made by our community members @jasper-d, @simonhoss, @to11mtm and @oising. We couldn't have done it without you!
NATS.Net 2.0.0-rc.2
This release includes .NET 8 targets as well as .NET 6 as we slightly changed our policy to target all current LTS versions.
What's Changed
- Project targets updated to .NET 8.0 in #223
- JetStream enum PascalCase serializer in #225 (thanks to @oising)
Full Changelog: v2.0.0-rc.1...v2.0.0-rc.2
Nuget Packages
NATS.Net
This is the main meta package containing all other packages except serialization.
dotnet add package NATS.Net --version 2.0.0-rc.2
If you are not deploying Native AOT you can also use ad-hoc JSON serialization:
dotnet add package NATS.Client.Serializers.Json --version 2.0.0-rc.2
Individual Packages
dotnet add package NATS.Client.Core --version 2.0.0-rc.2
dotnet add package NATS.Client.Hosting --version 2.0.0-rc.2
dotnet add package NATS.Client.JetStream --version 2.0.0-rc.2
dotnet add package NATS.Client.KeyValueStore --version 2.0.0-rc.2
dotnet add package NATS.Client.ObjectStore --version 2.0.0-rc.2
dotnet add package NATS.Client.Services --version 2.0.0-rc.2
dotnet add package NATS.Client.Serializers.Json --version 2.0.0-rc.2
NATS.Net 2.0.0-rc.1
We're happy to announce our first release candidate 🎉
JetStream and Native AOT support
NATS.Net supports all new NATS JetStream, Object Store, Key/Value Store and Services APIs. We're also excited to support .NET 8.0 Native AOT deployments for your cloud-native workloads.
What's Changed Since the last Beta
- Key/Value and Object Store compression in #214
- JetStream API clean-up in #212
- Auth error retry handling in #217
- JetStream options API prefix bug fix in #218
- List JetStream streams and consumers in #219
- JetStream consume error notifications in #220
Full Changelog: v2.0.0-beta.3...v2.0.0-rc.1
Nuget Packages
NATS.Net
This is the main meta package containing all other packages except serialization.
dotnet add package NATS.Net --version 2.0.0-rc.1
If you are not deploying Native AOT you can also use ad-hoc JSON serialization:
dotnet add package NATS.Client.Serializers.Json --version 2.0.0-rc.1
Individual Packages
dotnet add package NATS.Client.Core --version 2.0.0-rc.1
dotnet add package NATS.Client.Hosting --version 2.0.0-rc.1
dotnet add package NATS.Client.JetStream --version 2.0.0-rc.1
dotnet add package NATS.Client.KeyValueStore --version 2.0.0-rc.1
dotnet add package NATS.Client.ObjectStore --version 2.0.0-rc.1
dotnet add package NATS.Client.Services --version 2.0.0-rc.1
dotnet add package NATS.Client.Serializers.Json --version 2.0.0-rc.1
NATS.Client v2.0.0-beta.3
With this release we have added a few missing features like connection retry backoff and double ACK for JetStream.
We are very close to a release candidate
Our tests showing good signs of stability and confidence. A release candidate should be ready very soon 🤞
What's Changed
- Docs updates with API changes in #208
- JetStream double ACK and NAK delay in #210
- Added serializer to Key/Value Store APIs in #213
- Reconnect backoff in #211
Full Changelog: v2.0.0-beta.2...v2.0.0-beta.3
Nuget Packages
dotnet add package NATS.Client.Core --version 2.0.0-beta.3
dotnet add package NATS.Client.Hosting --version 2.0.0-beta.3
dotnet add package NATS.Client.JetStream --version 2.0.0-beta.3
dotnet add package NATS.Client.KeyValueStore --version 2.0.0-beta.3
dotnet add package NATS.Client.ObjectStore --version 2.0.0-beta.3
dotnet add package NATS.Client.Services --version 2.0.0-beta.3
dotnet add package NATS.Client.Serializers.Json --version 2.0.0-beta.3
v2.0.0-beta.2
This is a bug fix and stability release.
What's Changed
- Services interfaces in #196
- Object store interfaces and missing features in #195
- JetStream public interfaces in #193
- Key Value store interfaces in #194
- Ordered consumer sequence and clean-up fix in #198
- TLS validation error logging on connection in #197
- Added JS Stream interface in #200
- JetStream ordered consume stability fixes in #202
- Subscribe core method in #205
Full Changelog: v2.0.0-beta.1...v2.0.0-beta.2
Nuget Packages
dotnet add package NATS.Client.Core --version 2.0.0-beta.2
dotnet add package NATS.Client.Hosting --version 2.0.0-beta.2
dotnet add package NATS.Client.JetStream --version 2.0.0-beta.2
dotnet add package NATS.Client.KeyValueStore --version 2.0.0-beta.2
dotnet add package NATS.Client.ObjectStore --version 2.0.0-beta.2
dotnet add package NATS.Client.Services --version 2.0.0-beta.2
dotnet add package NATS.Client.Serializers.Json --version 2.0.0-beta.2
v2.0.0-beta.1
This release contains bug fixes found in stress tests.
dotnet add package NATS.Client.Core --version 2.0.0-beta.1
dotnet add package NATS.Client.Hosting --version 2.0.0-beta.1
dotnet add package NATS.Client.JetStream --version 2.0.0-beta.1
dotnet add package NATS.Client.KeyValueStore --version 2.0.0-beta.1
dotnet add package NATS.Client.ObjectStore --version 2.0.0-beta.1
dotnet add package NATS.Client.Services --version 2.0.0-beta.1
dotnet add package NATS.Client.Serializers.Json --version 2.0.0-beta.1
What's Changed
- Hide subscribe internal method in #186
- JetStream consume idle heartbeat fix in #185
- Async iterator subscription memory fix in #188
Full Changelog: v2.0.0-beta.0...v2.0.0-beta.1
v2.0.0-beta.0
This is our first beta release with more stable API, ready to be deployed in testing environments.
dotnet add package NATS.Client.Core --version 2.0.0-beta.0
dotnet add package NATS.Client.Hosting --version 2.0.0-beta.0
dotnet add package NATS.Client.JetStream --version 2.0.0-beta.0
dotnet add package NATS.Client.KeyValueStore --version 2.0.0-beta.0
dotnet add package NATS.Client.ObjectStore --version 2.0.0-beta.0
dotnet add package NATS.Client.Services --version 2.0.0-beta.0
dotnet add package NATS.Client.Serializers.Json --version 2.0.0-beta.0
What's Changed
- Mark StreamState Subjects as nullable by @simonhoss in #170
- Add delete msg api by @simonhoss in #175
- Serialization Simplification in #171
- Key/Value Store fixes in #176
- JetStream leadership change fix in #180
- JetStream publish options in #181
- JetStream Ordered consumer in #169
- Serialization API proposal in #177
- Subscribe API async enumerable change in #182
Full Changelog: v2.0.0-alpha.7...v2.0.0-beta.0