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

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

From
PWPhillip Wood <phillip.wood123@gmail.com>
Date
Apr 9, 2024, 09:40 UTC
Message-ID
<5663500c-ea40-45a6-bb7d-c906aee4350c@gmail.com>
In-Reply-To
<xmqqr0ff8rwo.fsf@gitster.g>
On 08/04/2024 22:29, Junio C Hamano wrote:
Show 12 quoted lines
> "brian m. carlson" <sandals@crustytoothpaste.net> writes:
> 
>> As mentioned in the original proposal, we don't have to support all
>> platforms in the libified code.  The main Git binaries will continue to
>> function and be supported, but the new libified code will rely on newer
>> features.  You will still be able to have all the Git binaries and
>> functionality, but if you want the new shared library to compile
>> against, you'll have to furnish a newer compiler.
> 
> 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.

Indeed, the last set of patches allow git to be built with the same library that external programs can use which I thought was very welcome. This proposal seems to be backing away from that.

We could have a single version of the library with a set of external headers that export a limited set of functions in a gitlib_ namespace and are wrapped internally with definitions like

static inline int foo(int x)
{
	return libgit_foo(x);
}

but that still leaves the problem of symbol visibility for the symbols that are consumed internally but not exposed in the external headers.

Best Wishes
Phillip
Previous: Calvin WanNext: Calvin Wan
Message 9 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.