git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: benoit.person@ensimag.fr
To: git@vger.kernel.org
Cc: Celestin Matte <celestin.matte@ensimag.fr>,
	Matthieu Moy <matthieu.moy@grenoble-inp.fr>,
	Junio C Hamano <gitster@pobox.com>,
	Benoit Person <benoit.person@ensimag.fr>
Subject: [PATCH v8 0/7] git-remote-mediawiki: new tool to preview local changes without pushing
Date: Thu,  4 Jul 2013 22:38:53 +0200	[thread overview]
Message-ID: <1372970340-6545-1-git-send-email-benoit.person@ensimag.fr> (raw)

From: Benoit Person <benoit.person@ensimag.fr>

The #7 issue on git-mediawiki's issue tracker [1] states that the ability to
preview content without pushing would be a nice thing to have.

changes from v7:
  - Update commit message of 1/7: remove the obvious (we need a way to
    share code between scripts) and make the commit message less vague.
  - Update commit message of 2/7: it's useless to do the same
    update on GIT_TEMPLATE_DIR and GIT_TEXTDOMAINDIR since the codes using
    them do not seem to handle multiple dirs.
  - Remove trailing ':' while concatening GITPERLLIB to itself in files:
    - wrap-for-bin.sh
    - contrib/mw-to-git/bin-wrapper/git

changes from v6:
  - Rewrite of bin-wrapper/git in 3/7
  - Update wrap-for-bin.sh and make bin-wrappers chainable it
    removes the need for a GPLEXTEA since we only have to first
    define GITPERLLIB, the bin-wrappers will no longer overwrite
    it. (2/7)
    Maybe we should apply the same mechanism to all variables in
    wrap-for-bin.sh ? (there is no need for it right now though)
  - Replace the symlink created in the test suite (if git-remote-mediawiki
    was not installed) by the new bin-wrapper introduced in 3/4 (4/7).
  - Small typos in the commit messages

changes from v5:
  - Move git bin-wrapper 'git' into bin-wrapper/
  - Updates its GIT_ROOT_DIR accordingly
  - Updates the Makefile to use that new path in the comments

changes from v4:
  - Rebase on latest master
  - Typos in commits messages and code
  - Comments in Makefile
  - Factoring the conversion from relatives links to absolute ones in
    `git mw preview`
  - Updating that "conversion" mechanism to not convert links with an
    anchor '#'.
  - git-mw should be executable now.

changes from v3:
  - Rewrite all commit messages.
  - No more "\ No newline at end of file".
  - Rename GitMediawiki.pm into Git::Mediawiki.pm (so it moves GitMedawiki.pm
    into Git/Mediawiki.pm).
  - Remove from the Makefile the copy_pm target (see below 'Add a bin-wrapper').
  - Use of 'install' insted of 'cp' in the Makefile.
  - Comment on the install_pm target in the Makefile.
  - Add a bin-wrapper for git to test scripts without 'make install'-ing them.
  - Move verbose option handling from previous v3-4/4 (introduction of preview
  	tool) into v4-4/5 (introduction of git-mw).
  - Refactor some code into subroutines to clean the global 'preview'
    subroutine.
  - Rewrite some error messages to make them more concise while still giving
    the same amount of information.
  - Use 'remote.${remote_name}.mwIDcontent' instead of 'mediawiki.IDContent'
    as config item for the lookup ID used to combine template + new content.
  - Remove comments about what's going on in the preview subroutine.
  - Use 'clean_filename' (and not 'smudge_filename') in the preview tool to find
    the correct mediawiki page name based on a filename.
  - Remove space/tab mixup in the 'help' subroutine.

changes from v2:
  - Add a way to test, without installation, code that uses GitMediawiki.pm.
  - Move more constants to GitMediawiki.pm
  - Remove the encapsulation of Git::config calls into a git_cmd_try one.
  - Remove the --blob option, distinction between files and blobs is now 
    automatic.
  - Add a --verbose option to output more information on what's going on.
  - Rewrote the doc and the commit message.
  - Rewrote of the template retrieving code (see 'get_template' sub).
  - Use a configuration variable to define the content ID search in the
    template. Default value set as 'bodyContent' since it seems more standard
    than 'mw-content-text'.
  - Final content is now saved as utf-8 to solve encoding issues.
  - Perlcritic changes: 
    - Update for loops style to a more perlish one.
    - All 'print's specify their output streams.
    --> Same useless warnings left in git-remote-mediawiki.perl after célestin's 
        work and git-mw.perl after this patch :) .

changes from v1:
  - add new package GitMediawiki
    - move some of git-remote-mediawiki functions into the package
    - update git-remote-mediawiki to use those "moved" functions
    - add a hacky-way to install it in the Makefile
    - use it in the new git mw tool
  - add a way to give to the preview tool blobs as argument
  - add a fallback when the upstream's branch remote is not a mediawiki remote
  - update the `autoload` option to use `git web--browse` and not `xdg-open`
  - update the way we find the upstream's branch remote name

[1] https://github.com/moy/Git-Mediawiki/issues/7

Benoit Person (7):
  git-remote-mediawiki: Introduction of Git::Mediawiki.pm
  wrap-for-bin: Make bin-wrappers chainable
  git-remote-mediawiki: New git bin-wrapper for developement
  git-remote-mediawiki: Update tests to run with the new bin-wrapper
  git-remote-mediawiki: Factoring code between git-remote-mediawiki and
    Git::Mediawiki
  git-remote-mediawiki: Adding git-mw command
  git-remote-mediawiki: Add preview subcommand into git mw

 contrib/mw-to-git/Git/Mediawiki.pm          | 100 ++++++++
 contrib/mw-to-git/Makefile                  |  33 ++-
 contrib/mw-to-git/bin-wrapper/git           |  14 ++
 contrib/mw-to-git/git-mw.perl               | 368 ++++++++++++++++++++++++++++
 contrib/mw-to-git/git-remote-mediawiki.perl |  85 +------
 contrib/mw-to-git/t/test-gitmw-lib.sh       |   8 +-
 t/test-lib.sh                               |   1 +
 wrap-for-bin.sh                             |   2 +-
 8 files changed, 528 insertions(+), 83 deletions(-)
 create mode 100644 contrib/mw-to-git/Git/Mediawiki.pm
 create mode 100755 contrib/mw-to-git/bin-wrapper/git
 create mode 100755 contrib/mw-to-git/git-mw.perl

-- 
1.8.3.1.590.gc07d91b

             reply	other threads:[~2013-07-04 20:39 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-04 20:38 benoit.person [this message]
2013-07-04 20:38 ` [PATCH v8 1/7] git-remote-mediawiki: Introduction of Git::Mediawiki.pm benoit.person
2013-07-04 20:38 ` [PATCH v8 2/7] wrap-for-bin: Make bin-wrappers chainable benoit.person
2013-07-04 20:38 ` [PATCH v8 3/7] git-remote-mediawiki: New git bin-wrapper for developement benoit.person
2013-07-05  7:04   ` Matthieu Moy
2013-07-06  9:45     ` Benoît Person
2013-07-08 13:30       ` [PATCH] fixup! " Matthieu Moy
2013-07-08 15:56         ` Junio C Hamano
2013-07-04 20:38 ` [PATCH v8 4/7] git-remote-mediawiki: Update tests to run with the new bin-wrapper benoit.person
2013-07-04 20:38 ` [PATCH v8 5/7] git-remote-mediawiki: Factoring code between git-remote-mediawiki and Git::Mediawiki benoit.person
2013-07-04 20:38 ` [PATCH v8 6/7] git-remote-mediawiki: Adding git-mw command benoit.person
2013-07-04 20:39 ` [PATCH v8 7/7] git-remote-mediawiki: Add preview subcommand into git mw benoit.person

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1372970340-6545-1-git-send-email-benoit.person@ensimag.fr \
    --to=benoit.person@ensimag.fr \
    --cc=celestin.matte@ensimag.fr \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=matthieu.moy@grenoble-inp.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).