Updated todo.
[viewgit.git] / doc / TODO
blobe099d05fff33248e7a3f343253b2113d4535c1ca
1 - tree
2         - pass OPTIONAL commit_id in 'hb' parameter (should be kept in next links)
3                 -> pagenav commit/commitdiff will link to the commit related 
4         - a given tree may be related to multiple commits
5         - further directory/file viewing links should retain full path from commit in 'f'
6         - main nav bar should show path "fragments" if present, and link to each
8 - commitdiff: after log, show changed files with section link to diff
9 - shortlog: accept branch/tag name as 'h'
10         - or in validate_hash()
12 - research whether git checkout can be made to work through viewgit
14 - make sure stuff works when a commit has multiple parents (merge/octopus)
16 [Milestones]
17 - Public Launch (0.0.1?)
18         - a public demo
19         - must have a minimalistic but useful interface
20         - must have features planned as mandatory
21         - should be at least able to rival other similar projects (the PHP ones at least)
22         - validate generated pages
24         - sourceforge project
25         - website, tracked with Google Analytics
26         - freshmeat project page
27         - post link to <http://git.or.cz/gitwiki/Gitweb>
28         - announce on git list
29         - announce on viewsvn's news section
30         - link from viewsvn's page
31 - First fixes & new features based on feedback (0.0.2)
33 [features]
34 - ideas in nutshell
35         - free git repository viewer that is easy to install and does not have many dependencies
36         - depends: PHP5, git
37 - mandatory features (0.0.1)
38         - project list (configurable or from a root, using globs perhaps?)
39                 - DONE name, description (.git/description), action links
40         - DONE tar.gz snapshots of trees
41         - DONE shortlog
42         - root dir, under which all directories are shown on viewgit
43         - DONE tree browsing / downloading of individual files
44         - documentation: README/INSTALL, LICENSE, example config
45 - optional
46         - RSS feeds: projects, shortlog
47         - branches list?
48         - tag list
49 - don't mimic gitweb interface as it's a tad clunky
51 [misc]
52 - name?
53         - ViewGit
54                 - 3 google hits, none of a project
55                 - Not registered at: SourceForge, Freshmeat, BerliOS
57 - license?
58         - GPLv2 vs. GPLv3 vs. AGPLv3
59         - add clarification that linking to the original homepage is enough to provide source, as long as it's around
60         - when decided, state in the commit log that it holds retroactively for earlier commits?
61         - contributions should be licensed under aforementioned license "or any later version approved by" me (to allow upgrading to GPLv4 or whatever later?)
63 - bundle about page that says what the software is and where to download it
65 - other projects?
66         - <http://git.or.cz/gitwiki/Gitweb>
68 [low priority]
69 - full log page
70 - summary: show [MASTER] and so on if the given commit is a tag or a head
71 - commit: option to hide/scramble the e-mail
72 - archive: use ob_start/ob_length/ob_flush for creating archives so that Content-Length can be sent