Thread (1 message) 1 message, 1 author, 2016-06-15

Re: Quick merge status updates.

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:32
Subsystem: the rest · Maintainer: Linus Torvalds

Possibly related (same subject, not in this thread)

Petr Baudis [off-list ref] writes:
Dear diary, on Sun, Jul 02, 2006 at 11:33:47PM CEST, I got a letter
where Junio C Hamano [off-list ref] said that...
quoted
I tried this:

 0. check out the branch that has the Perly git ("pu").  build
    and install normally to have a perfectly working version
    accessible on your usual $PATH.

 1. apply the patch [1] below to make it use "use lib" instead of
    "unshift".

 2. break perl/Git.pm being built to pretend we introduced a bug
    in the work in progress by applying the patch [2] below.

 3. without installing the broken Git.pm, run "make test", and
    see a test that uses "git pull" and needs to create a true
    merge succeed.  It tells me that everything including
    perl/Git.pm is GOOD, and I'd find the breakage only after
    installing and running the test again.
So, just to clarify and make sure we understand each other perfectly,
you claim that when skipping (1), (3) _does_ FAIL for you? Because it
really doesn't for me and I can't see how could it ever fail without
installing the broken version first.
Gaah.  You are right.

PERL5LIB does not seem to just do a push (and that was I thought
why unshift was a way to defeat it) but do something more evil.

With this:
diff --git a/git-fmt-merge-msg.perl b/git-fmt-merge-msg.perl
index 1b23fa1..5d1ae44 100755
--- a/git-fmt-merge-msg.perl
+++ b/git-fmt-merge-msg.perl
@@ -6,9 +6,11 @@ # Read .git/FETCH_HEAD and make a human 
 # by grouping branches and tags together to form a single line.
 
 BEGIN { unshift @INC, '@@INSTLIBDIR@@'; }
+use lib '@@INSTLIBDIR@@';
 use strict;
 use Git;
 use Error qw(:try);
+print STDERR "\@INC is @INC\n";
 
 my $repo = Git->repository();
 
It spits this out: 

@INC is /home/junio/git-pu/lib/perl/5.8.8 /opt/git/git.git/t/../perl/blib/lib /opt/git/git.git/t/../perl/blib/arch/auto/Git /etc/perl /usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .

So "BEGIN { unshift }" is JUST AS WRONG as "use lib".

I thought we killed this showstopper and was hoping now the
series is mergeable to "next" but apparently not yet X-<.

Sigh....
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help