Hi,

I want to explain why we need to upgrade msrv from time to time:

1. Use new(not latest) features in stable rust as rust is still evolving.
2. Use newer versions of iceberg-rust's dependencies, which may include
important bug fixes and performance improvements. I've seen dependent bot
auto upgrading failed several times due to too old msrv.

The discussion raised two questions to address:

1. The msrv policy. Seems we have a consensus on "at least xx months"
policy ( from Xuanwo), the only difference is three or six months.

2. When to upgrade msrv. There are different options:

a. Follow rust release strictly, e.g. upgrade when rust releases a new
version. This option ensures we could catch up with new rust features while
following msrv policy, but it adds extra maintenance burden for
maintainers. Also as Christian says, it may be annoying as a library
consumed by downstream applications if we upgrade too frequently.

b. Upgrade only when necessary. This option seems a little confusing since
there is no clear definition of what's necessary.

c. Upgrade when we do a feature release of iceberg-rust, e.g. when
increasing minor versions. I'm in favor of this approach as it's a midpoint
of option a and b.


On Sun, Feb 23, 2025 at 8:40 PM xxchan <xxchan...@gmail.com> wrote:

> Hi,
>
> To clarify, if we want to adopt the "at least three months" policy, we
> will need to wait for 3 months before upgrading to 1.85.
> And I believe we don't want to break Datafusion integration, so we will
> have to use the "at least six months" policy (or more conservative).
>
> xxchan
>
> On Sun, Feb 23, 2025 at 5:50 PM NOTME ZE <st810918...@gmail.com> wrote:
>
>> Hi,
>>
>> As Xuanwo mentions the "at least three months," policy looks good to me.
>> Also, it's time to upgrade to Rust 1.85 (the first version to support
>> Edition 2024!). See: https://github.com/apache/iceberg-rust/pull/987
>>
>

Reply via email to