From 2c4f4de68c3b491f9d6bfa10adf52dcad04be18a Mon Sep 17 00:00:00 2001 From: Zachary T Welch Date: Mon, 26 Oct 2009 20:52:58 -0700 Subject: [PATCH] TODO: embrace and extend --- TODO | 78 ++++++++++++++++++++++++++++++++++++++++++-------------------------- 1 file changed, 48 insertions(+), 30 deletions(-) rewrite TODO (95%) diff --git a/TODO b/TODO dissimilarity index 95% index cd668b9..edc7ad1 100644 --- a/TODO +++ b/TODO @@ -1,30 +1,48 @@ -* Login button instead of the awful HTTP auth - -* Upload SSH key as a file instead of pasting it to textarea - -* Personal mob branches: - - Rename mob to mob/mob, anyone can create and push to mob/hislogin and - mob/hislogin.*. It is enough to add push perms to the mob user to - activate this. - -* The notion of project forking: - - Make it more obvious to people what a fork is and why should they - create it. They seem to be confused now. - - Conserve bandwidth and send haves from forkees when pushing to forked - repositories - essential especially for the initial pull. - - Make it possible to aggregate the forks in graphiclog and diff - between forks. Mmmm... - -* CVS, SVN mirroring: - - Support CVS pserver URLs as mirror sources. Must be subject to manual - approval. - -* Watchdogs: - - Let random strangers register watchdogs on certain project[#branch]:path - combinations - they will get an email whenever the path gets updated. +* Web Site: + * Provide a Login button, instead of using simplistic HTTP auth. + - Bonus: support for OpenID standard + * Integrate Web 2.0 magic without compromising accessibility. + +* User Management: + * Upload SSH key as a file instead of pasting it to textarea + * Add means for users to update their profile (i.e. e-mail address). + * Display list of projects that grant authorization: + - Provide links for managing their own project's permissions. + - Allow users to drop their permissions from unwanted projects. + +* Project Management: + * Allow users to flag unused (or unwanted) projects for recycling. + - More forks may be more create if users know they can be short-lived. + * Add the ability to rename forks: + - Allows users to create forks with placeholder names. + - Permits users to fix their own dumb registration mistakes. + - Bonus: forward the old URLs to the new location. + +* Personal mob branches: + * Rename mob to mob/mob. + * Allow anyone to create and push to 'mob/.*' branches. + - It is enough to add push perms to the mob user to activate this. + +* Project Forking: + * Provide "server-side tracking branch" management service: + - Propogate changes in "tracking branches" to other forks that want them. + - Users pull their fork and know those tracking branches are current. + * Permit a project to establish "aggregate" branches: + - Pull a set of branches specified on a per-project basis. + - Periodically merge them into a specified testing branch. + * Provide transparent aggregation for graphiclog and diff between forks. + - Could use a 'mob' approach: all projects get a (hidden) mob fork, + which houses temporary branches used by the underlying processes. + +* Mirroring: + * Support CVS pserver URLs as mirror sources, subject to manual approval. + * Support mirroring using 'git svn' magic. + * Provide mechanism to enable 'push' mirrors to remote branches: + - Allows mirroring to sites that lack cron facilities (e.g. SF.net) + +* Watchdogs: + * Let random strangers register watchdogs on certain project[#branch]:path + - Send emails to watchers whenever the specified path gets updated. + * Provide projects with means of viewing/contacting all watchers. + - Bonus: Allow the contact point to serve as fork-focused mailing list. + * Provide users with means of viewing/modifying/deleting their watchdogs. -- 2.11.4.GIT