From: Jeff King <peff@peff.net>
To: "H.Merijn Brand" <h.m.brand@xs4all.nl>
Cc: Ben Walton <bdwalton@gmail.com>, git@vger.kernel.org
Subject: Re: Git.pm with recent File::Temp fail
Date: Sun, 28 Apr 2013 22:16:51 -0400 [thread overview]
Message-ID: <20130429021651.GA2751@sigill.intra.peff.net> (raw)
In-Reply-To: <20130428110933.436786bd@pc09.procura.nl>
On Sun, Apr 28, 2013 at 11:09:33AM +0200, H.Merijn Brand wrote:
> 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.
Please make sure the subject-line of your email says "[PATCH]".
I.e., this part:
> From b3be713101469f8bea14b854eb7840132ffdca8a Mon Sep 17 00:00:00 2001
> From: "H.Merijn Brand - Tux" <h.m.brand@xs4all.nl>
> Date: Sun, 28 Apr 2013 11:03:15 +0200
> Subject: [PATCH] Git.pm with recent File::Temp fail
Should be your actual email header, not just in the body of the message.
> git-1.8.2{,.1,.2}, perl-5.16.3, File::Temp-0.23
>
> Without patch:
>
> $ git svn fetch
> 'tempfile' can't be called as a method at /pro/lib/perl5/site_perl/5.16.3/Git.pm line 1117.
>
> After patch:
>
> $ git svn fetch
> M t/06virtual.t
> r15506 = 6c65be7ff36ffc6fd9b960a4b470ca297103004e (refs/remotes/git-svn)
I think the relevant thing is that File::Temp 0.23 started complaining
about this. From their Changes file:
2013-03-14 Tim Jenness <tjenness@cpan.org>
---- Release V0.23 CPAN ----
[...]
* Temp.pm: Calling tempfile or tempdir as a class method now
produce a more useful fatal error message
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.
-Peff
next prev parent reply other threads:[~2013-04-29 2:17 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-22 19:57 Git.pm with recent File::Temp fail H.Merijn Brand
[not found] ` <CAP30j14=_U8iEZAodnfACnBHgF0+j0_OK7n7PvsUnwSDj_Y40A@mail.gmail.com>
2013-04-08 6:43 ` H.Merijn Brand
2013-04-28 9:09 ` H.Merijn Brand
2013-04-29 2:16 ` Jeff King [this message]
2013-04-29 3:59 ` Junio C Hamano
2013-04-29 5:46 ` H.Merijn Brand
2013-04-29 5:53 ` Junio C Hamano
2013-04-29 8:18 ` Junio C Hamano
2013-04-29 8:32 ` H.Merijn Brand
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130429021651.GA2751@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=bdwalton@gmail.com \
--cc=git@vger.kernel.org \
--cc=h.m.brand@xs4all.nl \
/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.
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 NNTP newsgroup(s).