- How should vendor library updates be handled?
a. support only the latest
b. support multiple versions
- If supporting multiple versions, with what method?
The most common method of supporting multiple versions of a library with C FFI is feature flags, e.g. vendor_1_4_8 would enable version 1.4.8, and vendor_1_4_22 would enable 1.4.22. The best example I have seen of this in action is ffmpeg-sys.
However, as I recently learned from #15 cargo features should be additive because of feature-unification.
Are there any *-sys style crates that have other ways of handling this?
a. support only the latest
b. support multiple versions
The most common method of supporting multiple versions of a library with C FFI is feature flags, e.g.
vendor_1_4_8would enable version1.4.8, andvendor_1_4_22would enable1.4.22. The best example I have seen of this in action isffmpeg-sys.However, as I recently learned from #15 cargo features should be additive because of feature-unification.
Are there any
*-sysstyle crates that have other ways of handling this?