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

Re: [PATCH 2/7] gitweb: git_get_heads_list accepts an optional list of refs.

From: Giuseppe Bilotta <hidden>
Date: 2016-06-15 22:49:33

2010/9/17 Jakub Narebski [off-list ref]:
On Thu, 16 Sep 2010, Giuseppe Bilotta wrote:
quoted
git_get_heads_list(limit, class1, class2, ...) can now be used to retrieve
refs/class1, refs/class2 etc. Defaults to ('heads') or ('heads', 'remotes')
depending on the remote_heads option.
I like this API very much.
Thank you.
quoted
Signed-off-by: Giuseppe Bilotta <redacted>
---
 gitweb/gitweb.perl |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index 7116c26..21e83bb 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -3155,15 +3155,18 @@ sub parse_from_to_diffinfo {
 ## parse to array of hashes functions

 sub git_get_heads_list {
-     my $limit = shift;
+     my ($limit, @class) = @_;
Nitpick: @class or @classes.
Right, the general gitweb style is for plural for arrays.
quoted
+     unless (defined @class) {
+             my $remote_heads = gitweb_check_feature('remote_heads');
+             @class = ('heads', $remote_heads ? 'remotes' : undef);
Same comment as for previous patch:

 +             @class = ('heads', $remote_heads ? 'remotes' : ());

Or alternative solution:

 +             @class = 'heads';
 +             push @class, 'remotes' if gitweb_check_feature('remote_heads');
I like the () solution better. Less verbosity
quoted
      my @headslist;

-     my $remote_heads = gitweb_check_feature('remote_heads');
-
      open my $fd, '-|', git_cmd(), 'for-each-ref',
              ($limit ? '--count='.($limit+1) : ()), '--sort=-committerdate',
              '--format=%(objectname) %(refname) %(subject)%00%(committer)',
-             'refs/heads', ( $remote_heads ? 'refs/remotes' : '')
+             @refs
Nitpick: it is called '<pattern>...' in git-for-each-ref manpage...
I'm not particularly enamoured with @refs, so @patterns it is (if I
get what you mean here)

-- 
Giuseppe "Oblomov" Bilotta
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help