AldaronLau / png_pong

A pure Rust PNG image decoder and encoder based on lodepng.

Home Page:https://docs.rs/png_pong

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MSRV addition

dkozma opened this issue · comments

Is your feature request related to a problem? Please describe.
I noticed that as part of the latest release (thank you by the way) the MSRV was updated to 1.77. We use this as a dependency of our SDK, and try not to force people into the most bleeding edge version of Rust if possible, since people may not have upgraded. After trying to upgrade to png_pong v0.9.0 to fix a bug, our tests failed since we test on Rust 1.75 to ensure compatibility with older clients.

Describe the solution you'd like
I was wondering if the latest version needs 1.77 to function, or if this is an arbitrary requirement that is open to change/input - I also see that the MSRV policy says the following, so I didn't know if this was temporary:

The current MSRV policy only supports the most recent Rust. This will be changed in the future.

If you are open to changing it and there are no technical requirements to requiring 1.77, would it be possible to relax the requirement to something such as 1.73 (or even 1.75) for wider compatibility?

Describe alternatives you've considered
Upgrading our library to use 1.77, which would require code changes plus possibly render our versions incompatible with a subset of the population.

Additional context
N/A

I can lower it, there's just no testing in place yet for older Rust versions, so I marked it as the most recent version. I'm willing to go down to 1.65 if needed. Although, I wonder what policy makes sense, would you prefer support on current Rust - 4 versions back, or some other policy for when png_pong can upgrade MSRV?

N-4 sounds good to me, and is a fair balance from my perspective. Thanks for considering this.

I'm planning on applying this MSRV policy to share across different crates I maintain, so png_pong will use this as well:

https://github.com/ardaku/.github/blob/05a83745d9366a78da6c1680256c3fc76a9f50d3/profile/MSRV.md