Kyle Lippincott <spectral@xxxxxxxxxx> writes: > I don't expect there's many cases where we want to create a wrapper > that maintains the existing interface and error handling, because that > wrapper can _only_ by used by the git project binaries, not any of the > code that's in a library. In other words, such a code belongs to the "glue" layer that updates the internal implementation detail of "git" so that we no longer use the original set of helper functions and instead make use of the "library". They are not part of "library" proper, as among users of the same "library", the "glue" is needed only by "git" itself. So, yes, you may have to create such wrappers if the library wants to be used by "git" itself, but the wrappers should be kept outside the library.