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

Re: Dropping Git.pm (at least Git.xs)?

From
DSDennis Stosberg <dennis@stosberg.net>
Date
Sep 3, 2006, 15:03 UTC
Message-ID
<20060903150305.G50c94aea@leonov.stosberg.net>
In-Reply-To
<7vodtxuqt4.fsf@assigned-by-dhcp.cox.net>
Junio C Hamano wrote:
> In the ideal world in admittably not so immediate future, I
> would rather have a honestly libified git that encapsulates
[...]
Show 8 quoted lines
>  - I think the clean-up promise of Git.pm is great (e.g.
>    safe_qx should be part of it not in git-svn alone).
> 
>  - I think Git.xs was a bit premature and raised the hurdle of
>    cleaning up and consolidating various core-wrappers from
>    existing Perl scripts into Git.pm and have them use Git.pm.
>    It would be nice if we can drop this part for now, and do a
>    bit more Perl-level clean-up first.

Having perl bindings to git internals and sometime in the future to a libified git is a great thing. It will allow people to do interesting things, quickly trying concepts without having to write any C code. And I expect that gitweb can be sped up remarkably by using Git.pm (no forking, parsing of command output often not necessary, easy caching of frequently cached data across calls, etc)

So I think there are valid uses for Git.pm.

On the other hand there are the problems Junio mentioned. And the portability issues wit Git.pm:

 - Git has to be built with the same compiler perl was built with,
   which is a problem on many Solaris machines.
 - We need to generate position-independent code on some archs, but
   have no proper way to determine on which systems it is really
   necessary. 
 - It completely breaks cross-compiling.

And the gain is negligible at the moment: There are only two users left: git-annotate and git-send-email. The first one has already been superseded by git-blame and the second one can easily be converted back.

I think Git.pm would be a good candidate for the contrib section if there is someone who keeps it up-to-date through the coming changes. The only thing that would have to be kept in the main Makefile is the option to generate position-independent code, defaulting to off.

Regards, Dennis

-- 
VGER BF report: U 0.957499
Previous: Junio C HamanoNext: Sam Vilain
Message 2 of 7 in “Dropping Git.pm (at least Git.xs)?”
  1. Junio C HamanoSep 3, 2006
  2. Dennis StosbergSep 3, 2006
  3. Sam VilainSep 10, 2006
  4. Jakub NarebskiSep 10, 2006
  5. Petr BaudisSep 11, 2006
  6. Jakub NarebskiSep 11, 2006
  7. Petr BaudisSep 7, 2006

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.