zmwangx / rust-ffmpeg

Safe FFmpeg wrapper.
Do What The F*ck You Want To Public License
1.3k stars 203 forks source link

Implement support for non-exhaustive enums #117

Closed FreezyLemon closed 1 month ago

FreezyLemon commented 1 year ago

This PR requires this ffmpeg-sys-next PR to be merged first.

This PR adds the feature "non-exhaustive-enums" as requested in zmwangx/rust-ffmpeg-sys#46. This allows users to compile the ffmpeg-next crate(s) even when their locally installed FFmpeg dev files are newer than the target version.

Disabling the feature can be useful for library devs when updating ffmpeg-next to a newer version of FFmpeg. By disabling it, the compiler will error on enum matches that don't handle all enum values (making it harder to miss new enum values)

I think including this as a default feature is useful.

FreezyLemon commented 1 year ago

@Polochon-street @zmwangx Excuse the ping, but I think this one of the simpler PRs that will help a lot of users living on the bleeding edge (mostly Arch users). I'd really appreciate some response so we can get this merged before the next release.

ThatNerdUKnow commented 1 year ago

Making a note that this would resolve #126

FreezyLemon commented 1 month ago

This PR has been collecting dust for a while now. I'm closing because it doesn't seem likely to be merged and would need to be rebased/updated, which I'm not willing to do if it's just going to get ignored again.

If you're still interested in a solution to this problem, I'm sorry to say there's not much to do except using a fork of this project. I've switched to shssoichiro/ffmpeg-the-third which is more responsive to contributions but also "behind" in terms of keeping up with upstream ffmpeg.