Hi, First let me insist that this is only my personal view. Le Wed, 05 Mar 2014, David Allsopp a écrit : > I've got a bit of code in a library which seems worth putting online. I'm > trying to consolidate the steps that should be taken to accomplish that > (beyond simply putting a tarball online!) and wondering if anyone can > confirm if what I've come up with is the "best/obvious" course of action. > Indeed, are there already "idiot"'s guides for this - I couldn't see > anything like it on ocaml.org et al? > > So, this particular library is a pure OCaml library, which simplifies things > somewhat. At present it's built using GNU make and of course it is managed > using findlib. > > It seems that the following are worth doing: > > * Support OASIS (and in so doing, I believe that will migrate its build > system to ocamlbuild) oasis is very nice in that it centralizes, in a single _oasis file, everything about the project. In particular, it deals with the META file, building cmxa, cma, cmxs, etc. It can generate a "configure" and a Makefile (if you so wish), points to the documentation, the VCS repository, deals with several libraries (or sub-libraries, see how lwt does it for instance) and executables, etc. > * Support OPAM (which looks incredibly straightforward - being primarily a > Windows user, the OPAM typhoon has flowed past me thus far) Pretty simple indeed, 3 small files in the opam-repository and you're done. Also the opam team is quite reactive and helpful with packaging problems. > * Put the SCM online somewhere; submit a pull request for opam-repository; > announce it > > So, apart from any obvious errors/omissions in those steps, I have two > questions: > > 1. What are the differences, politely, in terms of things you can and can't > do between using GitHub and the OCaml Forge for the project pages? The Forge > seems the obvious choice, even ignoring the offensive name of the other! I think the main advantages of github is that since many people use it, it's easier to fork/contribute to a project (which is simple because it's 1/ forking 2/ committing 3/ submitting a "pull request" that can be discussed online; the patch can be modified as needed, and everyone commenting the pull request can see it). Also, I prefer the UI, but some could disagree. The main issue is lock-in, and it requires an account, but so does the forge afaik. > 2. Given that, is there any benefit/different to hosting the git repository > on the Forge vs hosting it on github and simply linking to it from the > Forge? My advice, if you already have a github account, is to use it. Otherwise I can't tell. Cheers, -- Simon http://weusepgp.info/ key 49AA62B6 fingerprint 949F EB87 8F06 59C6 D7D3 7D8D 4AC0 1D08 49AA 62B6