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

[RFC] gitweb wishlist and TODO list

From
Jakub Narebski <jnareb@gmail.com>
Date
Jun 20, 2006, 16:51 UTC
Message-ID
<e79921$u0e$1@sea.gmane.org>

I am planning on copying features from xmms2's gitweb version to git's gitweb, and introducing new ones.

My gitweb can be seen at http://front.fuw.edu.pl/cgi-bin/jnareb/gitweb.cgi Fetch from http://front.fuw.edu.pl/jnareb/scm/git.git/ (not checked!)

* HTML cleanup - ongoing process of replacing embedded style information
  with CSS styling, adding classes and ids to elements. This is independent 
  on other changes. On top of 'next', as it needs style in separate CSS
  file gitweb.css.
* Storing site-wide gitweb configuration in separate gitweb.conf file.
  Needs GIT_CONFIG patch. Not implemented yet.
  Bootstrapping: gitweb would need location of configuration file.
  Has to be changed in gitweb.cgi itself. Additionally gitexecdir or
  git in PATH is needed to be able to run git-repo-config to read config;
  the solution might be home-grown "parser" to find gitexecdir only.
  Both could be set from Makefile at install stage.
* Add git fetch URL to the project page from gitweb-xmms2. Needs site-wide
  base_url, which need not to be set as there is sane default: use base 
  of gitweb URL.
  Is it useful to allow repository configuration to override it?
* Support for categories from gitweb-xmms2. We can alternatively use
  directory structure of git projects displayed by gitweb as categories.
  Needs I think some site-wide configuration.
  Question: where store categories? .git/category, like .git/description?
  Use gitweb.category key? If yes, do convert description to repository key,
  or perhaps use gitweb.descriptionfile? What should be priority of those
  options if both are set: use repo-config for short (in project listing 
  and in page footer), and from file for long description on project page?
  What if they don't match?
* Refactor dispatch from if...elsif...else construction 
  to using 'name' => \&sub hash.
* Refactor generation of navigation bar. There are at least two
  implementations of that. With hash dispatch it would be easy to
  list all possibilities.
* Add (of course optional, like blame support) snapshot support. There are
  at least two different implementations. I'd prefer to do without second
  CGI script, but perhaps this is better from the performance point of view.
  gitweb-xmms2 has snapshot.cgi in Python: should it be rewritten in Perl?
* Code highlighting for plain view for blobs. gitweb-xmms2 did that using
  GNU highlight program and some embedded configuration (filename regexp to
  syntax used). More generic: run some post-processing. Configurable
  globally (perhaps separate "syntax type" filename or file magic mapping),
  and enabled per repository (default off).
* gitweb-xmms2 has something called committags support: it means that
  'BUG(n)', 'FEATURE(n)' and 'RELEASE: xx' in commit message are turned into
  bugtracker (Mantis for xmms2) or wiki links. It is extension of turning
  sha1-ids into references. Probably needs some extra configuration file,
  and some per repository configuration. Of course we want to support not
  only Mantis, but also e.g. Bugzilla (e.g. Linux kernel) and conventions
  for marking bugs therein.
* gitweb-xmms2 has also etags based anchors to mark function definitions 
  in blob view. I'm not sure it would be that usefull. LXR equivalent,
  perhaps...
Which of those should be implemented first?
Any further ideas for other useful features?
-- 
Jakub Narebski
Warsaw, Poland
ShadeHawk on #git
Next: Carl Worth
Message 1 of 35 in “[RFC] gitweb wishlist and TODO list”
  1. Jakub NarebskiJun 20, 2006
  2. Carl WorthJun 20, 2006
  3. Jakub NarebskiJun 20, 2006
  4. Petr BaudisJun 20, 2006
  5. Jakub NarebskiJun 20, 2006
  6. Petr BaudisJun 20, 2006
  7. Jakub NarebskiJun 21, 2006
  8. Martin LanghoffJun 20, 2006
  9. Jakub NarebskiJun 20, 2006
  10. Martin LanghoffJun 20, 2006
  11. Paul MackerrasJul 1, 2006
  12. Dennis StosbergJun 21, 2006
  13. 1/3 gitweb: Declare global variables with "our"Dennis Stosberg, Jun 21, 2006
  14. 2/3 Add a parameter to specify the repository pathDennis Stosberg, Jun 21, 2006
  15. 3/3 gitweb: Use --git-dir parameter instead of setting $ENV{'GIT_DIR'}Dennis Stosberg, Jun 21, 2006
  16. Timo HirvonenJun 21, 2006
  17. Jakub NarebskiJun 21, 2006
  18. Jakub NarebskiJun 21, 2006
  19. Dennis StosbergJun 22, 2006
  20. Ryan AndersonJun 22, 2006
  21. Ryan AndersonJun 21, 2006
  22. Jakub NarebskiJun 21, 2006
  23. Junio C HamanoJun 20, 2006
  24. Petr BaudisJun 20, 2006
  25. Jakub NarebskiJun 20, 2006
  26. Petr BaudisJun 20, 2006
  27. Thomas GlanzmannJun 20, 2006
  28. Josef WeidendorferJun 21, 2006
  29. Jakub NarebskiJun 21, 2006
  30. Josef WeidendorferJun 21, 2006
  31. Jakub NarebskiJun 21, 2006
  32. Jakub NarebskiJun 22, 2006
  33. Junio C HamanoJun 22, 2006
  34. Jakub NarebskiJun 21, 2006
  35. Josef WeidendorferJun 21, 2006

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.