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

Re: Problems using perl's Git.pm module

From
Ddemerphq <demerphq@gmail.com>
Date
Dec 3, 2010, 09:02 UTC
Message-ID
<AANLkTikDCNLLTdKyUT8_RXLWhJ8onMKh8EBpg_=iQUzW@mail.gmail.com>
In-Reply-To
<20101203083827.GD26070@raven.wolf.lan>
On 3 December 2010 09:38, Josef Wolf <jw@raven.inka.de> wrote:
Show 9 quoted lines
> On Thu, Dec 02, 2010 at 07:41:00PM +0100, demerphq wrote:
>> Well, the counter  arguments are:
>>
>> No back-compat layer for older gits. Tight binding to a particular git
>> - no availability of upgrades independent of upgrading git.
>
> I don't understand this one. Why do you need independent upgrades here?
> Since Git.pm comes with git core, the installed version of Git.pm should
> always match the installed version of git.

Because in my experience coding a tool against a particular version of Git.pm basically means that tool has to be on the same git version or higher than the version you coded against.

There is no easy/safe way to update Git,pm to provide a consistent interface to older gits.

Show 10 quoted lines
>
>> No
>> availability or review of the module on the standard venues for doing
>> so for Perl modules. CPAN, CPANTESTERS, smoke reports, etc.
>
> A module on CPAN has better tests for perl integration.
> A module in git-core has better tests for git integration.
>
> You trade one for the other. The question is which is more critical. IMHO,
> git-integration is more critical.

A CPAN module would be automatically tested by the CPANTESTERS community against whatever git people happened to have lying around, and those tests would necessarily occur on a myriad of systems, and when failures occurred they would be automatically registered in CPAN rt bug tracking system, and available in various summarized and detailed forms from multiple locations.

Those test results and integration efforts would be automatically fed back to the module author, be publicly available on several websites, including via CPAN itself, and if it should happen that the p5p group were to somehow break Git.pm somehow we would know about it, and be able to fix perl itself without Git.pm having to change. Admittedly this is unlikely given the nature of the code.

So really, by tightly binding the package to git all that you guarantee is that the version of Git.pm installed by git will work with the git you have installed. It does not say that any program written against that version of Git.pm will continue to work on a later version, or that people stuck on a older version of git will be able to use it.

cheers, Yves

-- 
perl -Mre=debug -e "/just|another|perl|hacker/"
Previous: Josef WolfNext: Junio C Hamano
Message 13 of 19 in “Problems using perl's Git.pm module”
  1. Josef WolfDec 2, 2010
  2. Ævar Arnfjörð BjarmasonDec 2, 2010
  3. Jonathan NiederDec 2, 2010
  4. Ævar Arnfjörð BjarmasonDec 2, 2010
  5. Junio C HamanoDec 2, 2010
  6. demerphqDec 2, 2010
  7. Jonathan NiederDec 2, 2010
  8. demerphqDec 2, 2010
  9. Git.pm: discourage casual useJonathan Nieder, Dec 2, 2010
  10. Junio C HamanoDec 2, 2010
  11. Jonathan NiederDec 2, 2010
  12. Josef WolfDec 3, 2010
  13. demerphqDec 3, 2010
  14. Junio C HamanoDec 2, 2010
  15. demerphqDec 2, 2010
  16. Josef WolfDec 3, 2010
  17. Jonathan NiederDec 3, 2010
  18. Junio C HamanoDec 2, 2010
  19. Josef WolfDec 3, 2010

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.