Re: Splitting the repos...
David Woodhouse <[email protected]>
| Newsgroups | gmane.comp.gnome.gaim.devel |
|---|---|
| Message-ID | <[email protected]> |
On Thu, 2016-04-07 at 09:19 -0500, Gary Kramlich wrote: > > As you may or may not know, I strongly support splitting the repo > into libpurple, pidgin, libgnt, and finch repos. I would also like > to split out some of our less commonly used protocol plugins (namely > meanwhile and zephyr) to separate repos to get the dependency and > build complexity down. > > For most developers, this means you'll have to build an libpurple and > or libgnt separately. However, once all of the CI stuff is setup, if > you just want to work on pidgin or finch you shouldn't have to > compile libpurple and libgnt separately anymore since you can pull > them out of the CI artifacts. > > At any rate, discuss! :) I don't really feel strongly either way, which is probably just as well since I'm not really qualified to have a strong opinion either. But a few thoughts.... firstly, I don't think CI is going to help. Right now, if I want to work on Pidgin 3.x while my distro is shipping 2.x, I'm going to need to build and install everything locally in /opt/pidgin3 or something (which is what I already do, so no real change there). I'd note that Evolution has a similar split, between Evolution the GUI and Evolution-Data-Server the back end. It *theoretically* allows separate and parallel development. In practice it's a complete fiction. Evolution and EDS versions are released in lockstep and a given Evolution version will have a dependency on the *precisely* matching version of EDS, because no attempt is really made at maintaining a stable API/ABI and keeping track of when the dependencies needs to change. There's a lot more to a *meaningful* split than just separating different directories out into different repositories, and it hasn't been clear from the rest of the discussion that this is *really* going to happen. Which makes me suspect that the split isn't going to be stunningly productive. If we really *are* talking about separating out libpurple and other bits and letting them develop at their own pace though, then that seems reasonable. Just don't underestimate the work involved. And let's have a proper discussion about library and symbol versioning, etc. I'd *strongly* suggest that we finally come into the 21st century and allow C99 structure initialisers in the protocol plugins though, if they're going to be developed out-of-step with libpurple. That whole "count the NULLs" crap from the 1990s is a constant pain and it *already* leads to problems, which are only going to get worse. -- dwmw2 _______________________________________________ Devel mailing list [email protected] https://pidgin.im/cgi-bin/mailman/listinfo/devel
smime.p7s
(application/x-pkcs7-signature, 5.6 KB) - not displayed