Various fixes & improvements
- Add flexible Reduce strategy type (333) by cmanallen
- fix(release): Stop releasing to crates.io while it doesn't work (335) by untitaker
- feat(logs): Add partition info upon assignment and revocation (334) by ayirr7
- ref: Restore owners on rust-arroyo (330) by untitaker
- fix: Rename Rust arroyo metric since it has a different unit (329) by untitaker
- fix(rust): Add feature to Reduce to flush empty batches (332) by untitaker
- ref: Add release workflow for Rust (327) by untitaker
- ref(ci): Add Rust CI (324) by untitaker
- Revert "ref: Move rust-arroyo from snuba to arroyo" (325) by untitaker
- ref: Move rust-arroyo from snuba to arroyo (323) by untitaker
- move rust-arroyo to subdirectory (323) by untitaker
- fix(multiprocessing): Implement better error messages for block overflow (322) by untitaker
- rust: add rust concurrency metric (5341) by untitaker
- ref(rust): Don't panic in RunTaskInThreads::poll (5387) by untitaker
- deps(rust): Change rdkafka dep to upstream master (5386) by untitaker
- ref(metrics): Refactor how global tags work, and introduce min_partition tag (5346) by untitaker
- Add Metrics impl based on `merni` (5351) by untitaker
- fix: Remove any panics in threads (5353) by untitaker
- ref(devserver): Use Rust consumers almost everywhere, and fix commitlog implementation (5311) by untitaker
- Avoid calling `Topic::new` for every received Message (5331) by untitaker
- Reuse Tokio Handle in DlqPolicy (5329) by untitaker
- ref(rust): Log actual error if strategy panics (5317) by untitaker
- fix(rust): add testcase for empty batches (5299) by untitaker
- Revert "ref(rust): Do not do extra work when merging if not needed (5294)" (323) by untitaker
_Plus 146 more_