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

Re: [PATCH v6 2/5] git-remote-mediawiki: new git bin-wrapper for developement

From
BPBenoît Person <benoit.person@ensimag.fr>
Date
Jun 27, 2013, 18:53 UTC
Message-ID
<CAETqRCjZdv-_V3jmhjxZj+_XU7AKRvMZ3ojo7=yW3m846F4E1w@mail.gmail.com>
In-Reply-To
<7vr4fnsafy.fsf@alter.siamese.dyndns.org>
> As far as I can tell, the only real reason why you need this and
> cannot use ../../bin-wrappers/git directly is because the GITPERLLIB
> it gives you only points at ../../perl/blib/lib and not this
> directory.

Plus (forgot to mention it in the other mail :/ ) it enables us to not "copy" git-mw and git-remote-mediawiki at each "make" and stop us from polluting the toplevel directory with those two scripts during development.

Show 5 quoted lines
> Two possible alternatives:
>
>  - Is there a reason you would not want to "install" whatever Perl
>    modules you want to "use" via GITPERLLIB mechanism to
>    ../../perl/blib/lib?

If we are making modifications to Git/Mediawiki.pm or even git-mw.perl / git-remote-mediawiki.perl, installing them without proper testing beforehand seems wrong.

>    Perhaps it will interfere with the real
>    installation step in ../../perl/Makefile?

I don't think so, but I am not an expert on what's going on in ../../perl/Makefile.

Show 15 quoted lines
>    If that is the case,
>    then it is not a good idea, but otherwise, that would let you use
>    ../../bin-wrappers/git as-is.
>
>  - Perhaps we could do:
>
>         GITPERLLIB="${GPLEXTRA+$GPLEXTRA:}@@BUILD_DIR@@/perl/blib/lib"
>
>    in wrap-for-bin.sh, so that your instruction can become
>
>         GPLEXTRA=$(pwd) ../../bin-wrappers/git whatever-mw-thing
>
>    and you do not have to have this file?  We would also need to
>    "unset GPLEXTRA" at the beginning of test-lib.sh if we were to do
>    this.
Show 5 quoted lines
> How does a developer (or user) use this script?  From your Makefile
> (e.g. "make test")?  Manually following some written instruction?
> In either case, the latter option feels a lot more sensible
> alternative without having to maintain this extra copy of wrap-for-bin
> that can easily go out of sync.

A developer uses it like any bin-wrapper : bin-wrapper/git mw preview for instance. He can add it to its path while working on the scripts etc ...

The best way to do it would be to factorise those new use cases (adding new elements in $GITPERLLIB and $PATH) in the code that generate bin-wrappers from wrap-for-bin.sh I think.

But it was weird to work on that in this serie which initial goal was to add a preview tool for git-remote-mediawiki and ended up adding a new perl package, a new 'git mw' command which handles subcommands, ...

In the end, this patch could be removed from the serie since it is self-contained : it is not used by 3/5, 4/5, and 5/5.

Benoit
Previous: Matthieu MoyNext: Matthieu Moy
Message 6 of 12 in “git-remote-mediawiki: new tool to preview local changes without pushing”
  1. 0/5 git-remote-mediawiki: new tool to preview local changes without pushingbenoit.person@ensimag.fr, Jun 27, 2013
  2. 1/5 git-remote-mediawiki: Introduction of Git::Mediawiki.pmbenoit.person@ensimag.fr, Jun 27, 2013
  3. 2/5 git-remote-mediawiki: new git bin-wrapper for developementbenoit.person@ensimag.fr, Jun 27, 2013
  4. Junio C HamanoJun 27, 2013
  5. Matthieu MoyJun 27, 2013
  6. Benoît PersonJun 27, 2013
  7. Matthieu MoyJun 27, 2013
  8. Benoît PersonJun 29, 2013
  9. Matthieu MoyJul 1, 2013
  10. 3/5 git-remote-mediawiki: factoring code between git-remote-mediawiki and Git::Mediawikibenoit.person@ensimag.fr, Jun 27, 2013
  11. 4/5 git-remote-mediawiki: Adding git-mw commandbenoit.person@ensimag.fr, Jun 27, 2013
  12. 5/5 git-remote-mediawiki: Add preview subcommand into git mw.benoit.person@ensimag.fr, Jun 27, 2013

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.