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

[PATCH v6 25/31] git-remote-mediawiki: Don't use quotes for empty strings

From
Célestin Matte <celestin.matte@ensimag.fr>
Date
Jun 14, 2013, 13:50 UTC
Message-ID
<1371217839-23017-26-git-send-email-celestin.matte@ensimag.fr>
In-Reply-To
<1371217839-23017-1-git-send-email-celestin.matte@ensimag.fr>
From: Célestin Matte <celestin.matte@ensimag.fr>
Empty strings are replaced by an $EMPTY constant.
Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
---
 contrib/mw-to-git/git-remote-mediawiki.perl | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/contrib/mw-to-git/git-remote-mediawiki.perl b/contrib/mw-to-git/git-remote-mediawiki.perl
index f0c313f..d1e0bb8 100755
--- a/contrib/mw-to-git/git-remote-mediawiki.perl
+++ b/contrib/mw-to-git/git-remote-mediawiki.perl
@@ -40,6 +40,8 @@ use constant NULL_SHA1 => '0000000000000000000000000000000000000000';
 # Used on Git's side to reflect empty edit messages on the wiki
 use constant EMPTY_MESSAGE => '*Empty MediaWiki Message*';
 
+use constant EMPTY => q{};
+
 my $remotename = $ARGV[0];
 my $url = $ARGV[1];
 
@@ -150,11 +152,11 @@ sub parse_command {
 		mw_list($cmd[1]);
 	} elsif ($cmd[0] eq 'import') {
 		die("Invalid arguments for import\n")
-		    if ($cmd[1] eq "" || defined($cmd[2]));
+		    if ($cmd[1] eq EMPTY || defined($cmd[2]));
 		mw_import($cmd[1]);
 	} elsif ($cmd[0] eq 'option') {
 		die("Too many arguments for option\n")
-		    if ($cmd[1] eq "" || $cmd[2] eq "" || defined($cmd[3]));
+		    if ($cmd[1] eq EMPTY || $cmd[2] eq EMPTY || defined($cmd[3]));
 		mw_option($cmd[1],$cmd[2]);
 	} elsif ($cmd[0] eq 'push') {
 		mw_push($cmd[1]);
@@ -555,7 +557,7 @@ sub mediawiki_clean {
 	# Mediawiki does not allow blank space at the end of a page and ends with a single \n.
 	# This function right trims a string and adds a \n at the end to follow this rule
 	$string =~ s/\s+$//;
-	if ($string eq "" && $page_created) {
+	if ($string eq EMPTY && $page_created) {
 		# Creating empty pages is forbidden.
 		$string = EMPTY_CONTENT;
 	}
@@ -566,7 +568,7 @@ sub mediawiki_clean {
 sub mediawiki_smudge {
 	my $string = shift;
 	if ($string eq EMPTY_CONTENT) {
-		$string = "";
+		$string = EMPTY;
 	}
 	# This \n is important. This is due to mediawiki's way to handle end of files.
 	return "${string}\n";
@@ -992,7 +994,7 @@ sub mw_upload_file {
 	} else {
 		# Don't let perl try to interpret file content as UTF-8 => use "raw"
 		my $content = run_git("cat-file blob ${new_sha1}", 'raw');
-		if ($content ne "") {
+		if ($content ne EMPTY) {
 			mw_connect_maybe();
 			$mediawiki->{config}->{upload_url} =
 				"${url}/index.php/Special:Upload";
@@ -1034,7 +1036,7 @@ sub mw_push_file {
 	my $newrevid;
 
 	if ($summary eq EMPTY_MESSAGE) {
-		$summary = '';
+		$summary = EMPTY;
 	}
 
 	my $new_sha1 = $diff_info_split[3];
@@ -1045,7 +1047,7 @@ sub mw_push_file {
 
 	my ($title, $extension) = $complete_file_name =~ /^(.*)\.([^\.]*)$/;
 	if (!defined($extension)) {
-		$extension = "";
+		$extension = EMPTY;
 	}
 	if ($extension eq 'mw') {
 		my $ns = get_mw_namespace_id_for_page($complete_file_name);
@@ -1113,7 +1115,7 @@ sub mw_push {
 		if ($force) {
 			print {*STDERR} "Warning: forced push not allowed on a MediaWiki.\n";
 		}
-		if ($local eq "") {
+		if ($local eq EMPTY) {
 			print {*STDERR} "Cannot delete remote branch on a MediaWiki\n";
 			print {*STDOUT} "error ${remote} cannot delete\n";
 			next;
-- 
1.8.3.rc3.49.g4e74807
Previous: Célestin MatteNext: Célestin Matte
Message 26 of 33 in “git-remote-mediawiki: Follow perlcritic's recommandations”
  1. 00/31 git-remote-mediawiki: Follow perlcritic's recommandationsCélestin Matte, Jun 14, 2013
  2. 01/31 git-remote-mediawiki: Make a regexp clearerCélestin Matte, Jun 14, 2013
  3. 02/31 git-remote-mediawiki: Move "use warnings;" before any instructionCélestin Matte, Jun 14, 2013
  4. 03/31 git-remote-mediawiki: Replace :utf8 by :encoding(UTF-8)Célestin Matte, Jun 14, 2013
  5. 04/31 git-remote-mediawiki: Always end a subroutine with a returnCélestin Matte, Jun 14, 2013
  6. 05/31 git-remote-mediawiki: Move a variable declaration at the top of the codeCélestin Matte, Jun 14, 2013
  7. 06/31 git-remote-mediawiki: Change syntax of map callsCélestin Matte, Jun 14, 2013
  8. 07/31 git-remote-mediawiki: Rewrite unclear line of instructionsCélestin Matte, Jun 14, 2013
  9. 08/31 git-remote-mediawiki: Remove useless regexp modifier (m)Célestin Matte, Jun 14, 2013
  10. 09/31 git-remote-mediawiki: Change the behaviour of a splitCélestin Matte, Jun 14, 2013
  11. 10/31 git-remote-mediawiki: Change separator of some regexpsCélestin Matte, Jun 14, 2013
  12. 11/31 git-remote-mediawiki: Change style in a regexpCélestin Matte, Jun 14, 2013
  13. 12/31 git-remote-mediawiki: Change style in a regexpCélestin Matte, Jun 14, 2013
  14. 13/31 git-remote-mediawiki: Add newline in the end of die() error messagesCélestin Matte, Jun 14, 2013
  15. 14/31 git-remote-mediawiki: Change the name of a variableCélestin Matte, Jun 14, 2013
  16. 15/31 git-remote-mediawiki: Turn double-negated expressions into simple expressionsCélestin Matte, Jun 14, 2013
  17. 16/31 git-remote-mediawiki: Remove unused variable $entryCélestin Matte, Jun 14, 2013
  18. 17/31 git-remote-mediawiki: Rename a variable ($last) which has the name of a keywordCélestin Matte, Jun 14, 2013
  19. 18/31 git-remote-mediawiki: Assign a variable as undef and make proper indentationCélestin Matte, Jun 14, 2013
  20. 19/31 git-remote-mediawiki: Check return value of openCélestin Matte, Jun 14, 2013
  21. 20/31 git-remote-mediawiki: remove import of unused open2Célestin Matte, Jun 14, 2013
  22. 21/31 git-remote-mediawiki: Put long code into a subroutineCélestin Matte, Jun 14, 2013
  23. 22/31 git-remote-mediawiki: Modify strings for a better coding-styleCélestin Matte, Jun 14, 2013
  24. 23/31 git-remote-mediawiki: Brace file handles for print for more clarityCélestin Matte, Jun 14, 2013
  25. 24/31 git-remote-mediawiki: Replace "unless" statements with negated "if" statementsCélestin Matte, Jun 14, 2013
  26. 25/31 git-remote-mediawiki: Don't use quotes for empty stringsCélestin Matte, Jun 14, 2013
  27. 26/31 git-remote-mediawiki: Put non-trivial numeric values in constants.Célestin Matte, Jun 14, 2013
  28. 27/31 git-remote-mediawiki: Fix a typo ("mediwiki" instead of "mediawiki")Célestin Matte, Jun 14, 2013
  29. 28/31 git-remote-mediawiki: Clearly rewrite double dereferenceCélestin Matte, Jun 14, 2013
  30. 29/31 git-remote-mediawiki: Add a .perlcriticrc fileCélestin Matte, Jun 14, 2013
  31. 30/31 git-remote-mediawiki: add a perlcritic rule in MakefileCélestin Matte, Jun 14, 2013
  32. 31/31 git-remote-mediawiki: Make error message more preciseCélestin Matte, Jun 14, 2013
  33. Junio C HamanoJun 14, 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.