All notable changes to this project will be documented in this file.
- Update S2 doc links (#126)
batching
module Rust docs (#119)- Update basin and stream names (#122)
- Update README API link (#123)
s2::client
(#121)- Crate level documentation (#124)
- Rename
[lib]
tos2
(#120) - (release) 0.5.0
- Deadlock potential due to
await
s in append_session'sselect!
loop (#115)
- Remove
GH_TOKEN
use to clone submodule in CI (#109) - Proto up-to-date check (#112)
- Upgrade proto (#111)
- Add examples for API (#113)
- Add
README.md
(#116)
- Switch on
missing_docs
(#106)
- Return reconfigured stream (#95)
- Implement
SequencedRecord::as_command_record
(#96) - Make protoc requirement optional (#103)
- Tonic-side-effect version (#102)
- Update proto and associated types for non-optional
start_seq_num
(#97) CommandRecord::Fence
requiresFencingToken
even if empty (#98)- Rm serde (#99)
- Lower
max_append_inflight_bytes
default - Move sync_docs to separate repository (#101)
- Redo endpoint logic (#39) (#40)
- Metered_size impl (#51)
- Allow custom tonic connectors & expose more errors (#54)
- Implement lingering for append record stream (#55)
- Read session resumption (#64)
- Pre-validate append record batch (#72)
- Retryable
append_session
+ side-effect logic - Validate fencing token length (#87)
- S2_request_token header (exercise idempotence) (#86)
- Only connect lazily (remove option to connect eagerly) (#49)
- Update
HostEndpoints::from_env
with new spec (#58) - Add Send bound to Streaming wrapper (#63)
- Validate append input when converting from sdk type to api (#65)
- Limit retries when read resumes but stream keeps erroring (#66)
- Retry on deadline exceeded (#67)
- Remove
ConnectionError
in favour of pre-processing (#68) - Rename 'max_retries' to 'max_attempts'
- Validate
types::AppendRecord
for metered size (#79) - Adapt to recent gRPC interface updates (#84)
- Use
if_exists
for delete basin/stream (#85) append_session
inner loop while condition (#91)
- ConnectError
fencing_token
andmatch_seq_num
forAppendRecordsBatchStream
(#77)
- Rename
ClientError
toConnectError
(#47) - Make
ReadLimit
fields pub - Add clippy to CI (#50)
- Expose Aborted as an error variant (#52)
- Expose tonic Internal error message (#53)
- Refactor errors to return tonic::Status (#57)
- Conversion from
HostCloud
forHostEndpoints
(#59) - Rm unneeded async (#62)
- Create LICENSE
- Update Cargo.toml with license
- Update license for sync_docs
- Add expect messages instead of unwraps (#69)
- Make
ClientConfig
fields private + revise docs (#73) - Whoops, max_attempts -> with_max_attempts
- Endpoints re-rejig (#70)
- Add back
S2Endpoints::from_env()
(#74) - Example from_env
- Assertions instead of errors for batch capacity & size (#75)
- Simplify s2_request_token creation
- Remove
bytesize
dependency (#89) - Update proto (#93)
- Implement
BasinService/{ListStreams, GetBasinConfig}
(#3) - Implement
BasinService/{CreateStream, GetStreamConfig}
(#8) - Implement
AccountService/{ListBasins, DeleteBasin}
(#10) - Implement
BasinService
(#12) - Add request timeout (#14)
- Display impl for types::BasinState (#18)
- Implement
StreamService
(complete) (#16) - Implement
AppendRecordStream
with batching support (#24) - Enable tls config and make connection uri depend on env (#25)
- Doc reuse (#32)
- Support for overriding user-agent (#33)
- Sync rpc - sdk wrapper docs (#34)
- Update proto submodule (#7)
- Replace url with http::uri::Uri (#6)
- Update
HAS_NO_SIDE_EFFECTS
toIDEMPOTENCY_LEVEL
(#11) - FromStr impl to convert str to StorageClass enum (#13)
- Move
get_basin_config
,reconfigure_basin
toAccountService
(#17) - Remove usage of deprecated
tonic_build
method (#21) - Add+feature-gate serde Serialize/Deserialize derives (#22)
- Deps
- Updated repo for proto submodule (#38)
- Http2 adaptive window [S2-412] (#41)
- Add CI action (#44)
- Add release action (#45)