From: Duy Nguyen Date: Sat, 16 Jul 2016 05:31:25 GMT Subject: Re: Plugin mechanism(s) for Git? Message-ID: In-Reply-To: <20160715212843.GA5131@dcvr.yhbt.net> On Fri, Jul 15, 2016 at 11:28 PM, Eric Wong wrote: > Konstantin Khomoutov wrote: >> Ben Peart wrote: >> > > Lars Schneider wrote: >> > > >> > > We could dynamically load libraries but this would force us to >> > > freeze the ABI as mentioned by Duy: >> > > http://article.gmane.org/gmane.comp.version-control.git/298463 >> > > >> > >> > I wouldn’t be too quick to dismiss dynamically loaded libraries as >> > there are some distinct advantages over the other patterns especially >> > performance and simplicity. I realize it requires us to version the >> > ABI but there are established patterns to manage this. It also isn’t >> > that much different than us having to freeze or version the protocol >> > for communicating with a remote-helper. > > (re-adding dropped CCs) > > The critical difference is protocols can be tested and debugged > in a language/tool-independent way. Not using dynamic libraries also makes it possible for other git reimplementations to reuse the same plugins. -- Duy