rpav / c2ffi

Clang-based FFI wrapper generator
GNU Lesser General Public License v2.1
234 stars 39 forks source link

Tag stable releases? #101

Open gwerbin opened 3 years ago

gwerbin commented 3 years ago

My Homebrew package for C2FFI was just rejected from Homebrew Core (https://github.com/Homebrew/homebrew-core/pull/86127) because C2FFI does not have individual tagged releases. While there is a stable branch, individual versions are not tagged, and the Homebrew maintainers do not want to support packaging software with that kind of release program.

I will probably run into similar issues when trying to package C2FFI for other package managers and platforms. Would you consider tagging some "stable" releases within each branch, to facilitate packaging? This would make it a lot easier for people to use CFFI, especially given that it can be non-trivial to compile on MacOS.

rpav commented 3 years ago

Sorry for the delay; yeah, that's not an issue at all. I'll try to get these tagged today. They'll be A.B.C.v where A.B.C is the LLVM release, and .v is the "c2ffi version" in that release. E.g., 11.0.0.0 will be the first release for c2ffi LLVM 11.0.0.

Also hopefully 13 support.

attila-lendvai commented 3 years ago

@rpav did you mean to create the tag v11.1.0.0? or maybe v11.0.0.1?

i'd recommend a different tag pattern: v11.0.0-1 i.e. use a dash to differentiate between llvm's version, and c2ffi's version.

sidenote: this is what i was doing for the guix packaging before i learned about c2ffi tags (but it also includes the git hash: c2ffi-11.0.0-1.f502439).

and while we are at it, i would also only use the LLVM major version here and for the branch name.

attila-lendvai commented 2 years ago

FYI, c2ffi is now available in Guix, and uses the newly introduced git tags:

https://git.savannah.gnu.org/cgit/guix.git/commit/?id=8c303758590e368fc6a67bfff8dd1721e70afd93