Release async-nats/v0.30
Jarema
released this
14 Jul 08:34
·
291 commits
to main
since this release
0.30.0
Overview
This is a big release that introduces almost all breaking changes and API refinements before 1.0.0.
The last two pending breaking items are:
- Improved builders based on #828
- Introduce a
Subject
type (still discussed)
Breaking Changes
- Update Service for parity with ADR by @Jarema in #965
- Remove schema and api_url from Service API by @Jarema in #972
- Add concrete error types to JetStream by @Jarema in #874
- Add concrete errors to KV by @Jarema in #1014
- Add concrete errors to Object Store by @Jarema in #1015
- Add Pull Consumer concrete errors by @Jarema in #1009
- Use
Bytes
for key-value payloads by @caspervonb in #939 - Use u64 instead of usize for nanoseconds by @MJayat in #901
- Prefer returning
&str
over String where applicable by @paolobarbolini in #878 - Change
stream::Config::duplicate_window
toDuration
by @n1ghtmare in #1023
Added
- Add ordered pull consumer by @Jarema in #916
- Add
jetstream::Message
Acker
by @Jarema in #938 - Add Context::get_consumer_from_stream by @Jarema in #502
- Add custom auth callback by @Jarema in #997
- Add custom tls config option by @Jarema in #903
- Add
watch_with_history
to KV store by @n1ghtmare in #902 - Implement AsRef for HeaderName by @matthiasbeyer in #921
- Implement
fmt::Display
forHeaderName
by @caspervonb in #924 - Derive
Clone
forMessage
by @mgrachev in #975 - Add max_bytes for pull consumer config by @piotrpio in #992
- Add inactive threshold for pull consumer by @paulgb in #994
- Add const representation for standard header names by @caspervonb in #946
- Add static representation for custom header names by @caspervonb in #967
- Add
reconnect_delay_callback
toConnectOptions
by @n1ghtmare in #962 - Makes
Message
serialize/deserialize by @thomastaylor312 in #998
Fixed
- Disconnect if pending pings is more than max pings by @caspervonb in #956
- Fix serialization of
object_store::ObjectInfo
fields by @n1ghtmare in #895 - Fix ordered consumer handling for stream sequence and heartbeats by @Jarema in #961
- Canonicalize
header::NATS_LAST_STREAM
by @caspervonb in #948 - Fix KV update so that it works properly with a JS domain by @protochron in #1000
- Fix object store compatibility issue with Go implementation by @tinou98 in #984
- Drop subscription on object read done by @Jarema in #1011
Changed
- Make the current
Error
type work with anyhow by @paolobarbolini in #1004 - Remove collect to Vec in try_read_op by @YaZasnyal in #894
- Remove unnecessary clone for publish payloads by @YaZasnyal in #893
- Remove extra whitespaces by @mgrachev in #904
What's Changed
- Optimize read buffer with capacity to reduce allocations by @YaZasnyal in #888
- Make SubscribeError public by @Jarema in #899
- Remove a few redundant allocations by @paolobarbolini in #876
- Update
base64
crate and use it in place ofbase64-url
by @paolobarbolini in #871 - Make
client
module public by @caspervonb in #968 - Allow multiple auth methods by @n1ghtmare in #937
- Update nkeys to v0.3.0 by @vados-cosmonic in #995
Misc
- Make
ClientOp
private by @caspervonb in #954 - Make
Command
private by @caspervonb in #953 - Disallow non-alphanumeric in
HeaderName::from_str
by @caspervonb in #944 - Improve top level crate documentation by @n1ghtmare in #985
- Make
ClientOp
private by @caspervonb in #954 - Make
Command
private by @caspervonb in #953 - Disallow new lines in
HeaderValue::from_str
by @caspervonb in #943 - Replace manual Error type declarations by @paolobarbolini in #1005
- Document
HeaderMap::new
by @caspervonb in #981 - Reset ping interval on incoming and outgoing messages by @caspervonb in #932
- Remove redundant serde
Serialize
,Deserialize
anddefault
attributes by @n1ghtmare in #929 - Improve top level
jetstream
module documentation by @n1ghtmare in #990 - Improve JetStream KV documentation by @n1ghtmare in #991
- Bump rustls-webpki to v0.101.1 by @paolobarbolini in #1013
Thank you for all your contributions!
Those make a difference and drive the ecosystem forward!
New Contributors
- @YaZasnyal made their first contribution in #894
- @MJayat made their first contribution in #901
- @matthiasbeyer made their first contribution in #921
- @tinou98 made their first contribution in #984
- @vados-cosmonic made their first contribution in #995
- @protochron made their first contribution in #1000
Full Changelog: async-nats/v0.29.0...async-nats/v0.30.0