git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [RFD] Libification proposal: separate internal and external interfaces

From
Calvin Wan <calvinwan@google.com>
Date
Apr 9, 2024, 17:26 UTC
Message-ID
<CAFySSZBMGx_Uvak7WEurwWk00=6o3SciJnN9zAGbvTTbBk=Axg@mail.gmail.com>
In-Reply-To
<ZhSNPTiaPbfekOrJ@tapette.crustytoothpaste.net>

On Mon, Apr 8, 2024 at 5:35 PM brian m. carlson <sandals@crustytoothpaste.net> wrote:

Show 15 quoted lines
>
> On 2024-04-08 at 21:29:27, Junio C Hamano wrote:
> > I thought one of the yardstick to gauge the success of this
> > "libification" effort, if not the purpose of this effort, is to
> > allow Git to be its first client.
> >
> > I am not sure how it would supposed to work.  Unless you are giving
> > parallel implementations of "main Git binaries", one with the native
> > code and the other replaced the native code with thin wrappers
> > around the library calls, that is.
>
> I think the plan as proposed in the original file was to have an
> internal and external library and to have the binaries use the internal
> library.  However, perhaps I misunderstood the proposal, in which case
> clarification on the part of the proposers would be helpful.

We are still working on the specifics of how we would accomplish this (part of the reason this is marked RFD). Thin wrappers make sense for functions that should be slightly altered for external users (e.g. anything with a die() should have their error codes bubbled up). On the other hand, there are functions that are already suitable for external users out of the box, so we could just provide a separate header for those. But those functions may still need to be renamed anyways to avoid symbol collision, so thin wrappers may end up being the default going forward.

Previous: brian m. carlsonNext: Phillip Wood
Message 8 of 18 in “[RFD] Libification proposal: separate internal and external interfaces”
  1. Calvin WanApr 2, 2024
  2. brian m. carlsonApr 7, 2024
  3. rsbecker@nexbridge.comApr 7, 2024
  4. brian m. carlsonApr 8, 2024
  5. rsbecker@nexbridge.comApr 8, 2024
  6. Junio C HamanoApr 8, 2024
  7. brian m. carlsonApr 9, 2024
  8. Calvin WanApr 9, 2024
  9. Phillip WoodApr 9, 2024
  10. Calvin WanApr 9, 2024
  11. Calvin WanApr 22, 2024
  12. Junio C HamanoApr 22, 2024
  13. phillip.wood123@gmail.comApr 23, 2024
  14. Kyle LippincottMay 9, 2024
  15. Phillip WoodMay 10, 2024
  16. Kyle LippincottMay 10, 2024
  17. Kyle LippincottMay 9, 2024
  18. Junio C HamanoMay 9, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.