Below there are a few more features which were missing from the list:
* Support for invoking gitweb.cgi (the compiled version) from command
line to easy generate projects list in format used by gitweb,
perhaps also to generate web feeds (RSS, Atom, OPML). It would
probably require adding support for CLI parameters.
* gitweb-admin or gitwebmin; I guess best as separate script.
Allow to set gitweb configuration, gitweb-related per-repository
configuration (visibility, access, description, README, URLs,...).
Perhaps also allow to set access permissions, delete/create
branches, change denyFastForward, rename project, set alternates,
etc.
* Make gitweb use less dependent on understanding git terminology, like
'tree' -> 'browse' etc. (proposed by Pieter de Bie (Pieter) on #git,
as "simplified interface", 2008-09-27T14:56+0200).
'tree' -> 'browse', 'blob' -> 'file' or 'show',
'snapshot' -> 'archive' or 'download', 'heads' -> 'branches'
'commit | commitdiff | tree | snapshot' -> 'show | browse' for heads
Unfortunately there is no consensus on how such simpler terminology
should look like...
* Support for generating bundles, and not only snapshots, either
depth=1 bundles, or diff bundles (snapshot for diff is bundle).
* Support for i18n (translating gitweb), best using 'gettext' which
the rest of git (gitk and git-gui) uses (use Locale::TextDomain,
or Locale::Maketext?).
* Possibly: fallback to "user.name <user.email>" for repository owner