Thread (2 messages) flat view 2 messages, 2 authors, 2016-06-15

Re: [PATCHv1] Export file in git-remote-mediawiki

From: Matthieu Moy <hidden>
Date: 2016-06-15 22:54:00

Subject: Re: [PATCHv1] Export file in git-remote-mediawiki
We usually write commit subject lines as "subsystem: description", hence

git-remote-mediawiki: export "File:" attachments

Kim Thuat NGUYEN [off-list ref] writes:
From: nguyenkimthuat <redacted>

This patch adds the functionnality to export the file attachements from the local git's repository using the API of mediawiki. It also provides the possibility for
an user to delete a page in the local repository Git which means the page  will be deleted in the wiki site after user do the 'push'.
Please, avoid long lines (> 80 characters).
+	open(my $g,"-|","git " . $_[0]); 
Space after , please.
+	my %hashFiles = get_file_extensions_maybe($complete_file_name);
What does this function do? My first understanding was that it queried
the wiki for allowed file extensions, but why does it need the file
name? It does nothing if $complete_file_name ends with .mw, but then why
do you run it before entering the following if() statement?
 	if (substr($complete_file_name,-3) eq ".mw") {
 		my $title = substr($complete_file_name,0,-3);
quoted hunk
@@ -653,39 +666,74 @@ sub mw_push_file {
 			# special priviledges. A common
 			# convention is to replace the page
 			# with this content instead:
-			$file_content = DELETED_CONTENT;
+			mw_connect_maybe();
+			my $re = $mediawiki->edit( {
+				action => 'delete',
+				title => $title,
+				reason => $summary 
+				} )|| die $mediawiki-> {error}->{code} . ':' . $mediawiki->{error}->{details};
This is an unrelated topic, and should not appear in this patch.

If you want to propagate page deletions, then you also need to deal with
the case where the user is not allowed to do so (very common on
MediaWiki). Also, if you change the code corresponding to the comment
right above, you should update the comment too.
+	elsif (exists($hashFiles{$extension}))      
+	{
Brace on the same line as else please.
+			} else {
+				print STDERR "Empty file. Can not upload \n ";
+				}
Broken indentation.
 	} else {
 		print STDERR "$complete_file_name not a mediawiki file (Not pushable on this version of git-remote-mediawiki).\n"
 	}
Isn't the very point of this patch to remove this error message?
quoted hunk
@@ -825,3 +873,25 @@ sub mw_push_revision {
 	print STDOUT "ok $remote\n";
 	return 1;
 }
+
+sub get_file_extensions_maybe {
+	my $file_name = shift;
+	my $est_mw_page = substr($file_name,-3) eq ".mw";
English please. "est" is french ;-).

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help