Re: Git.pm with recent File::Temp fail
From: H.Merijn Brand <hidden>
Date: 2016-06-15 22:57:03
On Sun, 28 Apr 2013 20:59:16 -0700, Junio C Hamano [off-list ref] wrote:
Jeff King [off-list ref] writes:quoted
On Sun, Apr 28, 2013 at 11:09:33AM +0200, H.Merijn Brand wrote:quoted
Still failing in 1.8.2.2 Short fix: --8<---diff --git a/perl/Git.pm b/perl/Git.pm index dc48159..7a252ef 100644 --- a/perl/Git.pm +++ b/perl/Git.pm@@ -1265,7 +1265,7 @@ sub _temp_cache { $tmpdir = $self->repo_path(); } - ($$temp_fd, $fname) = File::Temp->tempfile( + ($$temp_fd, $fname) = File::Temp::tempfile( 'Git_XXXXXX', UNLINK => 1, DIR => $tmpdir, ) or throw Error::Simple("couldn't open new temp file");I think this fix is the right thing. Your patch probably didn't get applied because it did not follow the guidelines in SubmittingPatches.It was more like "It managed to miss people's attention because the subject didn't say [PATCH]", but yes you are right that the change the patch text itself shows looks reasonable and that I cannot apply a patch that is not signed off (and worse yet in multipart/mixed).
My first attempt (when git-1.8.2 was released) had the patch attached and the reply was On Sat, 23 Mar 2013 16:32:47 +0000, Ben Walton [off-list ref] wrote:
This list prefers patches to be inline so that they can easily be commented on, etc. I took a quick look at your patch and while it looks fine to me, fwiw. You may want to resubmit using git send-email though so that others will look at it and possibly apply it.
So I retried inlining. No mention about *how* to inline or that the subject should have the word "PATCH". I don't need any credits. I just want git to work from scratch :)
quoted
... So I think the right commit message is something like: We call File::Temp's "tempfile" function as a class method, but it was never designed to be called this way. Older versions seemed to tolerate it, but as of File::Temp 0.23, it blows up like this: $ git svn fetch 'tempfile' can't be called as a method at .../Git.pm line 1117. Fix it by calling it as a regular function, just inside the File::Temp namespace.
Sounds about right.
quoted
-PeffThanks.
-- H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/ using perl5.00307 .. 5.17 porting perl5 on HP-UX, AIX, and openSUSE http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/ http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/