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/
>

Reply via email to