List for cgit developers and users
 help / color / mirror / Atom feed
From: john at keeping.me.uk (John Keeping)
Subject: RFE: author/committer/tagger links (enable cgit to show gravatar for author, committer and tagger)
Date: Thu, 9 Jan 2014 19:23:04 +0000	[thread overview]
Message-ID: <20140109192304.GK7608@serenity.lan> (raw)
In-Reply-To: <CAHmME9rV_+ckDGk-t7tGvNwMgsfiZKwnqJGhMnk5yq8rgJp5jw@mail.gmail.com>

On Thu, Jan 09, 2014 at 07:59:27PM +0100, Jason A. Donenfeld wrote:
> On Thu, Jan 9, 2014 at 7:07 PM, John Keeping <john at keeping.me.uk> wrote:
> > It feels to me like it might be better to allow a filter to be applied
> > here.  That way we don't put the Gravatar code in CGit itself but can
> > distribute an example script that does apply Gravatar links to email
> > addresses.
> >
> > I'm not sure what the cost of forking a process here will end up being
> > though; I guess for cases where the email is likely to be repeated we
> > could assume that the filter is pure and memoize the result.
> 
> Gravatar icons are placed next to author names (in the log for
> example) as well as the full email address (in the commit). So we'd
> have to give such a filter the email address, as well as the original
> string to be printed. Such memorization would then need to apply to
> that pair.

Presumably this would just pass the "A. U. Thor <author at example.com>"
string to the filter and we could just map that to the output.

> >
> > But that would give the greatest flexibility for both these use cases,
> > with a simple link value the Gravatar case needs some other forwarding
> > program on the server to do the hashing of the address (unless we
> > provide substitution values for a range of different things, but
> > currently everything just uses printf formats so that would be more
> > work unless we can reuse Git's log formatter somehow).
> 
> I do like this idea quite a bit. But the cost of forking indeed seems
> a bit high -- some listings have many many authors all at once. I'll
> investigate a little bit.

We could take an incremental approach like git-check-attr and friends do
when GIT_FLUSH=1, but I'm not sure how well we could delimit the output
in that case - I doubt a single line would be sufficient for all cases.
If we're not careful that approach could end up with capability flags
and other complex things like the fast-import protocol.

My gut feeling is that it /should/ be OK because CGit's caching layer
means that we don't actually regenerate pages too often and CGit tends
to be blazingly fast anyway, but it would be interesting to see some
benchmarks of how much overhead a call to "true" adds.


  reply	other threads:[~2014-01-09 19:23 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-08 14:34 Welcome on board Lukas Fleischer Jason
2014-01-08 14:53 ` [RESEND PATCH 1/1] enable cgit to show gravatar for author, committer and tagger mail
2014-01-08 15:12   ` Jason
2014-01-08 15:23     ` [PATCH " mail
2014-01-08 15:56       ` Jason
2014-01-09  8:52         ` mail
2014-01-09 15:13           ` Jason
2014-01-08 16:00       ` Jason
2014-01-09  9:13         ` mail
2014-01-08 15:36     ` [RESEND PATCH " mathstuf
2014-01-08 17:15     ` normalperson
2014-01-08 17:29       ` Jason
2014-01-08 18:35         ` stefan
2014-01-09  9:18         ` list
2014-01-09 15:19           ` Jason
2014-01-13 14:18             ` list
2014-01-13 14:24               ` Jason
2014-01-14 17:22                 ` list
2014-01-14 17:23                   ` Jason
2014-01-14 17:35                     ` list
2014-01-14 17:45                       ` 
2014-01-14 17:51                       ` Jason
2014-01-14 17:58                         ` list
2014-01-14 18:00                           ` Jason
2014-01-09 15:21         ` RFE: author/committer/tagger links (enable cgit to show gravatar for author, committer and tagger) mricon
2014-01-09 17:50           ` Jason
2014-01-09 18:07             ` john
2014-01-09 18:59               ` Jason
2014-01-09 19:23                 ` john [this message]
2014-01-09 19:34                   ` cgit
2014-01-09 19:38 ` Welcome on board Lukas Fleischer info

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=20140109192304.GK7608@serenity.lan \
    --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).