git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCHv5 2/5] gitweb: Incremental blame (using JavaScript)

From
Jakub Narebski <jnareb@gmail.com>
Date
Nov 7, 2009, 11:04 UTC
Message-ID
<200911071204.53550.jnareb@gmail.com>
In-Reply-To
<20091105202202.GC17748@machine.or.cz>
On Thu, 5 Nov 2009, Petr Baudis wrote:
> 
>   Many thanks for nurturing this patch.
You are welcome.
I have learned quite a bit about JavaScript when working on this
patch...
 
Show 25 quoted lines
> On Tue, Sep 01, 2009 at 01:39:17PM +0200, Jakub Narebski wrote:
> > Roads not taken (perhaps that should be part of commit message?):
> > * Move most (or all) of "git blame --incremental" output parsing to
> >   server side, and instead of sending direct output in text/plain,
> >   send processed data in JSON format, e.g.
> > 
> >     {"commit": {
> >        "sha1": "e83c5163316f89bfbde7d9ab23ca2e25604af290",
> >        "info": "Kay Sievers, 2005-08-07 21:49:46 +0200",
> >        "author-initials": "KS",
> >        ...
> >      },
> >      "src-line": 13,
> >      "dst-line": 16,
> >      "numlines": 3,
> >      "filename": "README"
> >      }
> > 
> >   (line wrapping added for readibility).  This would require however
> >   taking care on Perl side to send properly formatted JSON, and on
> >   JavaScript side including json2.js code to read JSON in gitweb.js
> >   (unless we rely on eval).
> 
>   I don't know that much about web programming, what is wrong with
> relying on eval?
In general it is insecure.  In this specific situation it shouldn't.
[...]
Show 11 quoted lines
> > * Using some lightweight JavaScript library (framework), like jQuery,
> >   Prototype, ExtJS, MooTools, etc.  One one hand side this means not
> >   having to worry about browser incompatibilities as this would be
> >   taken care of by library; on the other hand side we want gitweb to
> >   have as few dependences as possible.
> 
>   Normally, particular version of the library is simply included within
> the project. E.g. in Girocco, I use MooTools for the tiny bit of
> javascript I do. It is probably overkill to include it just for
> incremental blame, but if we ever do much more, I think the much easier
> web programming is worth the little trouble.

Alternate solution would be to load for example jQuery for example hosted on Google as described in http://code.google.com/apis/ajaxlibs/documentation/

-- 
Jakub Narebski
Poland
Previous: Petr Baudis
Message 12 of 12 in “gitweb: Incremental blame series (1 Sep 09)”
  1. 0/5 gitweb: Incremental blame series (1 Sep 09)Jakub Narebski, Sep 1, 2009
  2. 1/5 gitweb: Add optional "time to generate page" info in footerJakub Narebski, Sep 1, 2009
  3. 2/5 gitweb: Incremental blame (using JavaScript)Jakub Narebski, Sep 1, 2009
  4. 3/5 gitweb: Colorize 'blame_incremental' view during processingJakub Narebski, Sep 1, 2009
  5. 4/5 gitweb: Create links leading to 'blame_incremental' using JavaScriptJakub Narebski, Sep 1, 2009
  6. 5/5 gitweb: Minify gitweb.js if JSMIN is definedJakub Narebski, Sep 1, 2009
  7. Petr BaudisNov 5, 2009
  8. Jakub NarebskiNov 6, 2009
  9. Junio C HamanoNov 12, 2009
  10. Jakub NarebskiNov 12, 2009
  11. Petr BaudisNov 5, 2009
  12. Jakub NarebskiNov 7, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.