benoit.person@ensimag.fr writes:
From: Benoit Person <redacted>
This script will be used for all tools and command related to a mediawiki
remote. In this commit we introduce the tool, the way it parses argument
and subcommands and an example of subcommand: "help". It also updates
the Makefile so that the new tool is installed properly.
How does the "make" Vs "make install" work? How does a developer run the
tool without installing?
I first tried:
$ ../../bin-wrappers/git mw
git: 'mw' is not a git command. See 'git --help'.
Then, this first seem OK:
$ ./git-mw
usage: git mw <command> <args>
git mw commands are:
Help Display help information about git mw
Preview Parse and render local file into HTML
BUT, this will take the installed GitMediawiki.pm if it is available,
and we don't want this (if one hacks GitMediawiki.pm locally, one wants
the new hacked to be taken into account without "make install"ing it).
To understand better how it works, try adding this in git-mw.perl:
print "$_\n" for @INC;
I get this:
/home/moy/local/usr-squeeze/share/perl/5.14.2
/home/moy/local/usr-squeeze/src/MediaWiki-API-0.39/blib/lib
/etc/perl
/usr/local/lib/perl/5.14.2
/usr/local/share/perl/5.14.2
/usr/lib/perl5
/usr/share/perl5
/usr/lib/perl/5.14
/usr/share/perl/5.14
/usr/local/lib/site_perl
.
The '.' is there, but it comes after the hardcoded
/home/moy/local/usr-squeeze/share/perl/5.14.2 (which has to comes first,
to let the install version be robust to whatever comes after).
I think you need an equivalent of Git's toplevel bin-wrappers/git, or
perhaps use the same bin-wrapper/git but let "make install" in
contrib/mw-to-git/ install GitMediawiki.pm in perl/blib/lib
BTW, I just noticed we had a Git::SVN, so perhaps GitMediawiki should be
Git::MediaWiki.
--
Matthieu Moy
http://www-verimag.imag.fr/~moy/
The V3 is ready, but I am still not sure about what is the best way to
do it for this issue though.
On 13 June 2013 15:01, Matthieu Moy [off-list ref] wrote:
benoit.person@ensimag.fr writes:
How does the "make" Vs "make install" work? How does a developer run the
tool without installing?
Well it does not work without installing but I think you know that now :)
I first tried:
$ ../../bin-wrappers/git mw
git: 'mw' is not a git command. See 'git --help'.
Then, this first seem OK:
$ ./git-mw
usage: git mw <command> <args>
git mw commands are:
Help Display help information about git mw
Preview Parse and render local file into HTML
BUT, this will take the installed GitMediawiki.pm if it is available,
and we don't want this (if one hacks GitMediawiki.pm locally, one wants
the new hacked to be taken into account without "make install"ing it).
To understand better how it works, try adding this in git-mw.perl:
print "$_\n" for @INC;
I get this:
/home/moy/local/usr-squeeze/share/perl/5.14.2
/home/moy/local/usr-squeeze/src/MediaWiki-API-0.39/blib/lib
/etc/perl
/usr/local/lib/perl/5.14.2
/usr/local/share/perl/5.14.2
/usr/lib/perl5
/usr/share/perl5
/usr/lib/perl/5.14
/usr/share/perl/5.14
/usr/local/lib/site_perl
.
The '.' is there, but it comes after the hardcoded
/home/moy/local/usr-squeeze/share/perl/5.14.2 (which has to comes first,
to let the install version be robust to whatever comes after).
Thanks for the explanations
I think you need an equivalent of Git's toplevel bin-wrappers/git, or
perhaps use the same bin-wrapper/git but let "make install" in
contrib/mw-to-git/ install GitMediawiki.pm in perl/blib/lib
Typo s/make install/make/ ?
For now, I have implemented that one : each time you do `make`, if
there is changes in GitMediawiki.pm, it gets copied to $GITPERLLIB
(perl/blib/lib). But I am not sure it's the best approach here. If we
want something entirely self-contained for GitMediawiki, creating a
new git wrapper seems like the best way. But then, we could say that
since GitMediawiki Makefile uses Git toplevel Makefile, it's not
entirely self-contained :/ maybe it's the "copying file" that makes it
weird ?
BTW, I just noticed we had a Git::SVN, so perhaps GitMediawiki should be
Git::MediaWiki.
For that one, I am not really sure Git::Mediawiki makes more sense
than GitMediawiki. The point of the GitMediawiki.pm package is to
contain all the stuff for the bidirectionnal-thingy. So they are not
really Git-related, nor Mediawiki-related. Making it part of a "Git"
directory / namespace does not really feels right, even if it's how
it's done for SVN :/ .
Thank you for the all the reviews, (it works for Ensiwiki now \o/)
Benoit Person