diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..1fb4348 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,31 @@ +# 0.2.0 + +This release is a big one, and we are considering omniqueue out of early development now. +You can expect the API to change much less in the coming releases compared to this one. + +## Breaking changes + +- **redis: Some implementation changes mean that this backend is runtime-incompatible with the same backend in omniqueue 0.1** +- Revise the public module structure to shorten import paths and make the docs easier to navigate +- Revise the public API to require fewer trait imports for common usage +- Rename a few types and traits + - Most notably, `MemoryQueueBackend` is now named `InMemoryBackend` + - Everything else should be easily found by searching for the old names +- Remove custom encoders / decoders + - Custom encoding can be handled more efficiently by wrapping omniqueue's + `raw` send / receive interfaces into a custom higher-level interface +- Update and prune dependency tree +- Switch omniqueue's public traits from `async_trait` to [native async-in-traits][] +- Simplify generic bounds (only matters if you were using omniqueue in generic code) + +## Additions + +- Add a backend for Google Cloud's Pub/Sub queue (`gcp_pubsub` feature / module) +- Add some documentation +- Introduce an `omniqueue::Result` type alias + +[native async-in-traits]: https://blog.rust-lang.org/2023/12/21/async-fn-rpit-in-traits.html + +# 0.1.0 + +Initial release. diff --git a/README.md b/README.md index 1173ee9..6a7fcc8 100644 --- a/README.md +++ b/README.md @@ -16,8 +16,6 @@ types for which you have provided an encoding and/or decoding function. It is designed to be flexible and to be able to adapt to fit your existing queue configurations, but with a set of defaults that makes it simple to start sending and receiving quickly. -Omniqueue is still early in development. - ## How to use Omniqueue While the exact configuration will depend on the backend used, usage is roughly as follows. diff --git a/omniqueue/Cargo.toml b/omniqueue/Cargo.toml index 0cbae5e..3937b08 100644 --- a/omniqueue/Cargo.toml +++ b/omniqueue/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "omniqueue" -version = "0.1.0" +version = "0.2.0" license = "MIT" description = "An abstraction layer over various queue backends" authors = ["Svix Inc. "] @@ -17,7 +17,7 @@ bb8 = { version = "0.8", optional = true } bb8-redis = { version = "0.14.0", optional = true } futures-util = { version = "0.3.28", default-features = false, features = ["async-await", "std"], optional = true } google-cloud-googleapis = { version = "0.12.0", optional = true } -google-cloud-pubsub = { version = "0.22.1", optional = true } +google-cloud-pubsub = { version = "0.23.0", optional = true } lapin = { version = "2", optional = true } redis = { version = "0.24.0", features = ["tokio-comp", "tokio-native-tls-comp", "streams"], optional = true } serde = "1.0.196"