являются низкоуровневыми биндингами для C-библиотек (чаще эти биндинги нагенерёны через bindgen)?
Я начал нумеровать крейт так же как исходная библиотека на С. Что бы было сходу понятно для какой версии библиотеки этот биндинг. Разве что patch-номер (третье число в версии) оставил под мелкие фиксы самого биндинга.
Но иногда хочется сделать ломающее обратную совместимость изменение и начинаешь выкручивать себе руки, т.к. придётся в этом случае что-то делать с версией. Либо нарушить SemVer, либо отказаться от соответствия с нумерацией C-библиотеки.
Пока что у меня получалось обходиться от ломающих изменений, но не исключаю, что когда-то придётся их делать.
x.y.z+a.b.c
где x.y.z твоя версия, а a.b.c версия низлежащего пакета
Имеешь ввиду x.y.z.a.b.c - 6 чисел через точку? А crates.io такое вообще умеет?
https://lib.rs/crates/libgit2-sys как тут
а вот ирл использование
Обсуждают сегодня