From: Jakub Narebski <jnareb@gmail.com>
To: git@vger.kernel.org
Cc: Petr Baudis <pasky@suse.cz>
Subject: [RFC] gitweb wishlist and TODO list
Date: Thu, 25 Sep 2008 12:30:10 +0200 [thread overview]
Message-ID: <200809251230.11342.jnareb@gmail.com> (raw)
This is yet another series of planned gitweb features. It expands more
on new user-visible features than on improving gitweb code (therefore
for example using Git.pm/Git::Repo, gitweb caching, and list form of
open for pipelines are not mentioned here).
Which tasks / features are most requested? Which tasks should be done
first? What do you have on your gitweb TODO list?
All comments appreciated. Thanks in advance.
* Support for FastCGI (via CGI::Fast or FCGI).
Unfortunately I don't use FastCGI. This has to be done in a very
un-intruisive way, and without performance penalties for "ordinary"
CGI and mod_perl.
Suggested: input reading and validation refactoring.
* Optional information about load stats
Add an option to display information about how much time it took to
generate page, how many git commands were called, and possibly other
metric; if page was cached, write when it was generated, and how much
time till timeout. This probably would require additional perl
modules, and it should be conditional on those modules.
* AJAX sorting of tables
Implement sorting tables (projects list, fork list, heads, tags) in
browser using JavaScript, like tables in Wikipedia (if possible).
This would reduce server load, too. Of course there would be fallback
to server-side sorting.
* Committags support
Support expansion of "tags" in commit messages, like gitweb now does for
(shortened) SHA-1, converting them to 'object' view link. It should be
done in a way to make it easy configurable, preferebly having to
configure only variable part, and not having to write whole replacement
rule.
Possible committags include: _BUG(n)_, bug _#n_, _FEATURE(n),
Message-Id, plain text URL e.g. _http://repo.or.cz_, spam protecting of
email addresses, "rich text formatting" like *bold* and _underline_,
syntax highlighting of signoff lines.
* Project categories support; and/or support for tags, tag clouds,
removing tags, grouping tags, tags suggestions; and/or support for Trove
categories (like on Freshmeat, or SourceForge, or Savane/GForge).
* Syntax highlighting for "blob" view
(in general: blob output filter)
* New log views (formats)
New log-like views could include: 'log' view with path limiter,
'whatchanged' like view with list of changed files, 'mbox' format (aka
'plain' format) to be used by git-am, etc.
This would I think require changes to log showing infrastructure.
* Enable showing blob size in 'tree' view (optional)
* Graphical log (like gitk, qgit, tig, or git-browser)
perhaps also graphical view of forks like in GitHub
* Enable transparent compression for HTTP output
(for performance reasons it makes sense to do it only for cached output)
* Side by side diff (like Wikipedia/MediaWiki), and/or side by side
comparison (see e.g. Codestriker web review tool).
* Tree blame (when, at what commit and by whom current version of file or
directory was generated). This view can be seen in tree/directory view
of such SCM web interfaces as ViewVC, or GitHub.
* Searching for projects, optionally with paginating projects list page
* Graphical diffstat/dirstat in 'commit' view for merge commits.
* Enhancing gitweb output with RDFa and/or microformats, to make it
easier to parse unambiguously by machine, for example find fetch
URL, find push URL, find homepage, parse dates, etc.
* Support for other outline format (XOXO perhaps), and other outlines,
perhaps also in OPML.
* Etags based anchors to function definitions, i.e. something like
version-aware source code browser like LXR Cross Referencer (in
Perl), cscope, Bonsai Project or OpenGrok (unfortunately CDDL
licensed, and in Java). Should we use Exuberant Ctags
(http://ctags.sourceforge.net)?
* Optional support for remotes and remote-tracking branches;
and perhaps support for showing alternates (see forks support)
* Support for patch management interfaces (StGit, Guilt, TopGit), like
gitk and QGit now have; option to show unapplied patches stack etc.
* AJAX incremental blame, if cached version does not exist
* Better snapshot names, for example <project>-<tag> for tag
snapshots, perhaps <project>-<branch>-<date> for branch tip
snapshots, etc. Ensure that <filename>.<suffix> expands to
<filename> (see also snapshots of subtrees).
* ...
--
Jakub Narebski
Poland
next reply other threads:[~2008-09-25 10:31 UTC|newest]
Thread overview: 69+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-25 10:30 Jakub Narebski [this message]
2008-09-25 11:08 ` [RFC] gitweb wishlist and TODO list Pedro Melo
2008-09-25 12:23 ` Jakub Narebski
2008-09-25 14:45 ` Pedro Melo
2008-09-25 21:23 ` Jakub Narebski
2008-09-25 13:19 ` Wincent Colaiuta
2008-09-25 13:33 ` Petr Baudis
2008-09-25 16:52 ` [RFC] gitweb wishlist and TODO list (templating) Jakub Narebski
2008-09-25 17:10 ` Petr Baudis
2008-09-25 22:16 ` Jakub Narebski
2008-09-30 12:45 ` Jakub Narebski
2008-09-25 15:41 ` [RFC] gitweb wishlist and TODO list Jakub Narebski
2008-09-28 10:01 ` Jakub Narebski
2008-09-28 21:18 ` Petr Baudis
2008-10-01 8:40 ` Ask Bjørn Hansen
2008-10-01 9:52 ` [RFC] gitweb wishlist and TODO list (profiling gitweb) Jakub Narebski
-- strict thread matches above, loose matches on Subject: below --
2008-04-25 13:14 [RFC] gitweb wishlist and TODO list Jakub Narebski
2006-10-09 12:49 Jakub Narebski
2006-10-10 1:47 ` Luben Tuikov
2006-10-10 8:54 ` Jakub Narebski
2006-10-11 5:52 ` Junio C Hamano
2006-10-11 9:20 ` Jakub Narebski
2006-10-12 10:03 ` Junio C Hamano
2006-10-13 19:55 ` Jakub Narebski
2006-10-11 15:09 ` Jakub Narebski
2006-10-11 23:05 ` Jakub Narebski
2006-09-03 11:52 Jakub Narebski
2006-09-03 12:18 ` Marco Costalba
2006-09-03 12:38 ` Jakub Narebski
2006-09-02 16:17 Jakub Narebski
2006-09-02 18:10 ` Marco Costalba
2006-09-02 19:29 ` Jakub Narebski
2006-09-03 4:26 ` Marco Costalba
2006-09-03 9:27 ` Jakub Narebski
2006-09-03 11:10 ` Marco Costalba
2006-09-03 11:24 ` Jakub Narebski
2006-09-08 0:44 ` Jakub Narebski
2006-09-08 1:16 ` Junio C Hamano
2006-09-08 9:11 ` Jakub Narebski
2006-06-20 16:51 Jakub Narebski
2006-06-20 17:33 ` Carl Worth
2006-06-20 17:46 ` Jakub Narebski
2006-06-20 17:55 ` Petr Baudis
2006-06-20 18:34 ` Jakub Narebski
2006-06-20 18:40 ` Petr Baudis
2006-06-21 14:52 ` Jakub Narebski
2006-06-20 19:33 ` Martin Langhoff
2006-06-20 19:56 ` Jakub Narebski
2006-06-20 21:17 ` Martin Langhoff
2006-07-01 10:35 ` Paul Mackerras
2006-06-21 13:05 ` Dennis Stosberg
2006-06-21 13:30 ` Jakub Narebski
2006-06-22 10:00 ` Dennis Stosberg
2006-06-22 14:47 ` Ryan Anderson
2006-06-21 16:45 ` Ryan Anderson
2006-06-21 17:36 ` Jakub Narebski
2006-06-20 19:46 ` Junio C Hamano
2006-06-20 20:10 ` Petr Baudis
2006-06-20 20:59 ` Jakub Narebski
2006-06-20 21:25 ` Petr Baudis
2006-06-20 21:53 ` Thomas Glanzmann
2006-06-21 8:56 ` Josef Weidendorfer
2006-06-21 9:15 ` Jakub Narebski
2006-06-21 9:57 ` Josef Weidendorfer
2006-06-21 13:53 ` Jakub Narebski
[not found] ` <200606211802.41071.Josef.Weidendorfer@gmx.de>
2006-06-21 16:38 ` Jakub Narebski
2006-06-21 20:35 ` Josef Weidendorfer
2006-06-22 9:01 ` Jakub Narebski
2006-06-22 9:14 ` Junio C Hamano
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=200809251230.11342.jnareb@gmail.com \
--to=jnareb@gmail.com \
--cc=git@vger.kernel.org \
--cc=pasky@suse.cz \
/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).