+1 to releasing Rust separately. I think being able to get contributions out faster is really important and this is a great way to do it. I'm happy to help share some of the load if there are more release votes that need validation.
Thanks, Xuanwo! On Thu, Aug 1, 2024 at 6:53 AM xxchan <xxchan...@gmail.com> wrote: > Hi, > > I believe this can both benefit users and reduce the maintainers' load. > > I saw your discussion in the iceberg community[1], where some Avro PMC > members also expressed the difficulty of the current release process, and > are in favor of separate release. > > Besides, we are also maintaining an Avro fork at RisingWave[2], and are > interested in joining the effort to build the Avro Rust package > collaboratively. I've started to port our bug fixes to the upstream[3]. > > [1]: > > https://docs.google.com/document/d/1YuGhUdukLP5gGiqCbk0A5_Wifqe2CZWgOd3TbhY3UQg/edit?disco=AAABS0dhDjE > [2]: https://github.com/risingwavelabs/avro > [3]: https://github.com/apache/avro/pull/3051 > > > On Thu, Aug 1, 2024 at 9:40 PM Xuanwo <xua...@apache.org> wrote: > > > Hello, everyone > > > > I start this thread to discussion if it possible to release package > > seperately, especially for some new language implemeantions like rust > which > > is still at pre 1.0 stage. > > > > I understand this doesn't align with the community's current practices, > > and I didn't thoroughly research whether this has been discussed before. > > > > But I really think there are many benefits for this: > > > > - Users can receive updates more quickly and regularly. They don't need > to > > wait for the entire avro project to release. > > - Rust implementers no longer need to cherry-pick commits, significantly > > reducing their workload. The release process could be as simple as tag at > > main branch, vote and let CI to do publish. > > - Given the current low activity of Avro Rust, most releases for Avro are > > merely dependency updates. We can save some effort by aligning with > > avro-java's own release schedule. > > - The last point, which I believe is the most important, could attract > > more Avro Rust users to develop at upstream. The rust community has built > > avro[1], avro-rs[2], rsgen-avro[3], serde-avro-bytes[4], > > serde_avro_fast[5], avro-schema[6], struct-from-avro[7], serde-avro[8]. > By > > combining our efforts, we can significantly accelerate improvements in > Avro > > Rust. > > > > There are also some risks: > > > > - Implementing these changes requires extra effort from the community. > > - Avro Rust releases may be less frequent because it doesn't keep up with > > the main Avro repository. > > - Release rust seperately doesn't change the fact that PMC members still > > need to do the work. > > > > I believe most issues can be addressed: > > > > - I have implemented the whole rust release process for OpenDAL[9] and > > iceberg-rust[10]. I am also willing to help build the Rust release > process > > for Avro. > > - That's possible, but I believe once we can get more developers involved > > in developing Avro Rust, we can release more frequently instead. > > - That's true, but verify rust release should be super simple with > correct > > tools. My experience in this area can be helpful. > > > > > > What do you think? > > > > > > [1]: https://crates.io/crates/avro > > [2]: https://crates.io/crates/avro-rs > > [3]:https://crates.io/crates/rsgen-avro > > [4]: https://crates.io/crates/serde-avro-bytes > > [5]: https://crates.io/crates/serde_avro_fast > > [6]: https://crates.io/crates/avro-schema > > [7]: https://crates.io/crates/struct-from-avro > > [8]: https://crates.io/crates/serde-avro > > [9]: https://opendal.apache.org/community/release/ > > [10]: https://rust.iceberg.apache.org/release.html > > > > Xuanwo > > > > https://xuanwo.io/ > > > -- Ryan Blue Databricks