All of lore.kernel.org
 help / color / mirror / Atom feed
From: Krzesimir Nowak <krzesimir@endocode.com>
To: "Jakub Narębski" <jnareb@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>, git <git@vger.kernel.org>,
	Eric Sunshine <sunshine@sunshineco.com>
Subject: Re: [PATCH 2/3] gitweb: Add a feature for adding more branch refs
Date: Wed, 04 Dec 2013 13:49:58 +0100	[thread overview]
Message-ID: <1386161398.2173.9.camel@localhost.localdomain> (raw)
In-Reply-To: <CANQwDwcpkbbfND9MmB9wGcL7mrhV_Mxb1amvGPgWeR344_fcfw@mail.gmail.com>

On Tue, 2013-12-03 at 21:38 +0100, Jakub Narębski wrote:
> On Tue, Dec 3, 2013 at 9:15 PM, Junio C Hamano <gitster@pobox.com> wrote:
> > Krzesimir Nowak <krzesimir@endocode.com> writes:
> >
> >> @@ -626,6 +640,17 @@ sub feature_avatar {
> >>       return @val ? @val : @_;
> >>  }
> >>
> >> +sub feature_extra_branch_refs {
> >> +     my (@branch_refs) = @_;
> >> +     my $values = git_get_project_config('extra_branch_refs');
> >
> > Hmph.  Three points.
> >
> > * Almost all callers of this function use
> >
> >     my ($val) = git_get_project_config(...);
> >     my @val = git_get_project_config(...);
> >
> >   to expect that the function returns a list of things (and grab the
> >   first one among them, not the length of the list).  Shouldn't this
> >   part do the same?
> 
> Right. feature_snapshot() has here
> 
>     my (@fmts) = @_;
>     my ($val) = git_get_project_config('snapshot');
> 
> ...though git_get_project_config returns scalar.

So what's the point of it? 'my @val = git_get_project_config ()' just
creates an array with one element.

> 
> > * Wouldn't this be a good candidate for a multi-valued configuration
> >   variable, e.g. shouldn't this
> >
> >         [gitweb]
> >                 extraBranchRefs = wip
> >                 extraBranchRefs = sandbox other
> >
> >   be parsed as a three-item list, qw(wip sandbox other)?
> 
> This would require changes in git_get_project_config(), which would
> need to be able to deal with multi-valued result (it caches these
> results, so we pay only one cost of `git config` call).

Hm, actually not at all. Now, if I have a setup like Junio wrote the
git_get_project_config just returns an array ref. So modifying the
feature_extra_branch_refs to handle the returned value as either simple
scalar or array reference should be enough.

> 
> > * I think the $key parameter to git_get_project_config() eventually
> >   is used to look up a key in the Git-style configuration file, and
> >   the 'words_with_underscore' goes against our convention (cf. see
> >   how 'show-sizes' feature is spelled as 'showsizes' there).
> 
> Errr... actually git_get_project_config() strips '_' from $key, though
> not for some strange reason '-'.
> 
> BTW. though it is 'showsizes' in code, it usually is 'showSizes' in
> config file (camelCase convention, lowercased by git-config).

Oi, that was an omission from my side - at first I had that git config
setting with underscores. I removed them when I noticed that underscores
are not used there. Apparently I missed that one.

> 
> >> +     if ($values) {
> >> +             @branch_refs = split /\s+/, $values;
> >> +     }
> >> +
> >> +     return @branch_refs;
> >> +}
> 
> 
> 

-- 
Krzesimir Nowak
Software Developer
Endocode AG

krzesimir@endocode.com

------
Endocode AG, Johannisstraße 20, 10117 Berlin
info@endocode.com | www.endocode.com

Vorstandsvorsitzender: Mirko Boehm
Vorstände: Dr. Karl Beecher, Chris Kühl, Sebastian Sucker
Aufsichtsratsvorsitzende: Jennifer Beecher

Registergericht: Amtsgericht Charlottenburg - HRB 150748 B

  reply	other threads:[~2013-12-04 12:50 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-03 14:56 [PATCH 0/3] Show extra branch refs in gitweb Krzesimir Nowak
2013-12-03 14:56 ` [PATCH 1/3] gitweb: Move check-ref-format code into separate function Krzesimir Nowak
2013-12-03 19:02   ` Junio C Hamano
2013-12-03 19:38     ` Jakub Narębski
2013-12-03 19:48       ` Junio C Hamano
2013-12-04 13:06       ` Krzesimir Nowak
2013-12-03 14:56 ` [PATCH 2/3] gitweb: Add a feature for adding more branch refs Krzesimir Nowak
2013-12-03 18:51   ` Junio C Hamano
2013-12-03 20:15   ` Junio C Hamano
2013-12-03 20:38     ` Jakub Narębski
2013-12-04 12:49       ` Krzesimir Nowak [this message]
2013-12-04 17:57         ` Junio C Hamano
2013-12-03 14:56 ` [PATCH 3/3] gitweb: Denote non-heads, non-remotes branches Krzesimir Nowak
2013-12-04 13:44 ` [PATCH 0/3] Show extra branch refs in gitweb Krzesimir Nowak

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=1386161398.2173.9.camel@localhost.localdomain \
    --to=krzesimir@endocode.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jnareb@gmail.com \
    --cc=sunshine@sunshineco.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.