List for cgit developers and users
 help / color / mirror / Atom feed
From: richard.maw at gmail.com (Richard)
Subject: [PATCH 06/16] Look up refs in namespace with cgit_get_sha1
Date: Fri, 29 Jul 2016 17:54:07 +0100	[thread overview]
Message-ID: <CAB2VqoaWUJgUfps9xiPtPFPfKDFrx_LFxAx_DFtC99zJy6Hv=w@mail.gmail.com> (raw)
In-Reply-To: <CAB2VqoZZiAsWpA1YbXARLaq8VMcWLJyXDG6-w0ag1JBOp_0M0Q@mail.gmail.com>

Adding CC to the list, since I forgot it, and have more to add.

On 29 July 2016 at 16:34, Richard <richard.maw at gmail.com> wrote:
> Apologies in advance if Gmail mangles this, I only have access to
> webmail at the moment.
>
> On 29 July 2016 at 15:32, Jason A. Donenfeld <Jason at zx2c4.com> wrote:
>> On Sat, Jul 16, 2016 at 12:59 AM, Richard Maw <richard.maw at gmail.com> wrote:
>>> +static int namespaced_dwim_ref_get_sha1(const char *name, unsigned char *sha1)
> <snip>
>>> +               return namespaced_dwim_ref_get_sha1(name, sha1);
>>
>> Ugh. This manual ref lookup is really ugly and unfortunate. I don't
>> like having to duplicate the code like this. What would you think of
>> adding the flag to upstream, so that the functions are namespace
>> aware, and then this becomes unnecessary?
>
> I'll have a go. I don't know how successful adding a feature for a
> different project would be.

We're hoping to have this in the next Debian release.
Git releases look to have a few months between them,
so if it takes another few months for a Git release then it could miss
the deadline.

After I've worked out how to add the support to libgit I'll know better,
but it might be a good idea to:

1.  Make a patch to add support to libgit
2.  Port that patch into cgit,
    so when the libgit patch is submitted I can point to cgit
    to say that we're using cgit as a proving ground for the change.
3.  Submit namespace support patch to libgit.
4.  When there's a release with namespace support,
    update to it and remove the patch from cgit.

I'm not sure whether it would be better to transplant that part of
libgit into cgit,
or to patch libgit at build time.

>>> +       } else {
>>> +               return get_sha1(name, sha1);
>>> +       }
>>
>>
>> Get rid of the else clause, and just put "return get_sha1(name,
>> sha1);" unintended as the last line of the function.
>
> Sure, I failed to spot the coding style you preferred, I don't
> remember seeing it documented anywhere.


  parent reply	other threads:[~2016-07-29 16:54 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-15 22:59 [PATCH 00/16] [V2] Add namespace support to cgit richard.maw
2016-07-15 22:59 ` [PATCH 01/16] Fix archive generation richard.maw
2016-07-15 22:59 ` [PATCH 02/16] Add a wrapper for get_sha1 called cgit_get_sha1 richard.maw
2016-07-15 22:59 ` [PATCH 03/16] Parse repo.namespace richard.maw
2016-07-15 22:59 ` [PATCH 04/16] Print out parsed namespace on request richard.maw
2016-07-15 22:59 ` [PATCH 05/16] Set GIT_NAMESPACE when repo.namespace is provided richard.maw
2016-07-15 22:59 ` [PATCH 06/16] Look up refs in namespace with cgit_get_sha1 richard.maw
2016-07-29 14:32   ` Jason
     [not found]     ` <CAB2VqoZZiAsWpA1YbXARLaq8VMcWLJyXDG6-w0ag1JBOp_0M0Q@mail.gmail.com>
2016-07-29 16:54       ` richard.maw [this message]
2016-07-30 15:21         ` richard.maw
2016-07-15 22:59 ` [PATCH 07/16] Guess the default branch based on current namespace richard.maw
2016-07-29 14:36   ` Jason
2016-07-29 15:42     ` richard.maw
2016-07-15 22:59 ` [PATCH 08/16] Add cgit_for_each_namespaced_ref_in helper richard.maw
2016-07-15 22:59 ` [PATCH 09/16] Find the default branch based on the contents of the namespace richard.maw
2016-07-15 22:59 ` [PATCH 10/16] Only display refs in current namespace richard.maw
2016-07-15 22:59 ` [PATCH 11/16] Add namespace support to dumb-clone richard.maw
2016-07-29 14:38   ` Jason
2016-07-15 22:59 ` [PATCH 12/16] Display notes from namespace richard.maw
2016-07-29 14:44   ` Jason
2016-07-29 15:56     ` richard.maw
2016-07-15 22:59 ` [PATCH 13/16] Add documentation for repo.namespace richard.maw
2016-07-29 14:48   ` Jason
2016-07-29 15:59     ` richard.maw
2016-07-15 23:00 ` [PATCH 14/16] Allow agefile to be set per-repository richard.maw
2016-07-15 23:00 ` [PATCH 15/16] Update contrib script to update agefiles per namespace richard.maw
2016-07-29 14:51   ` Jason
2016-07-29 16:01     ` richard.maw
2016-07-15 23:00 ` [PATCH 16/16] Add documentation for repo.agefile richard.maw
2016-07-15 23:10 ` [PATCH 00/16] [V2] Add namespace support to cgit richard.maw
2016-07-28 16:40   ` richard.maw
2016-07-28 21:20     ` Jason

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='CAB2VqoaWUJgUfps9xiPtPFPfKDFrx_LFxAx_DFtC99zJy6Hv=w@mail.gmail.com' \
    --to=cgit@lists.zx2c4.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 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).