Forgot one fallout from RPM rename
[git.git] / TODO
diff --git a/TODO b/TODO
index 20dfbd0..3fce0c9 100644 (file)
--- a/TODO
+++ b/TODO
@@ -9,28 +9,35 @@ The GIT To-Do File
 Tool Renames Plan
 =================
 
- - In 0.99.8, we will still install the backward compatible
-   symbolic links in $(bindir).  These will however be removed
-   before 1.0 happens.
+ - Immedately after 0.99.9, the backward compatible symbolic
+   links in $(bindir) will be removed [DONE].
 
-   git-ssh-push and git-ssh-pull pair is not going away within
-   this timeframe, if ever.  Each of these old-name commands
-   continues to invoke its old-name counterpart on the other
-   end.
+   git-ssh-push and git-ssh-pull pair is not going away if ever.
+   Each of these old-name commands continues to invoke its
+   old-name counterpart on the other end.
 
+ - There was a discussion to move bulk of the git-* programs out
+   of /usr/bin and use /usr/lib/git; the central mechanism was
+   done, but the actual move is postponed post 1.0.
 
-What to expect after 0.99.8
+
+What to expect after 0.99.9
 ===========================
 
 This is written in a form of to-do list for me, so if I say
 "accept patch", it means I do not currently plan to do that
 myself.  People interested in seeing it materialize please take
-a hint.
+a hint.  Also whatever I marked "Perhaps" do not have to happen
+if ever -- only if somebody cares enough and submits a clean
+patch, perhaps ;-).
 
 
 Documentation
 -------------
 
+* Help Jon Loeliger to find place in the documentation to place
+  his drawing [DONE].
+
 * Accept patches from people who actually have done CVS
   migration and update the cvs-migration documentation.
   Link the documentation from the main git.txt page.
@@ -41,15 +48,16 @@ Documentation
   support for this (but see below about optimized cloning).
 
 * Maybe update tutorial with a toy project that involves two or
-  three developers..
+  three developers.
 
 * Update tutorial to cover setting up repository hooks to do
   common tasks.
 
-* Accept patches to finish missing docs.
+* Do we still have missing docs?  If so accept patches to finish
+  them.
 
 * Accept patches to talk about "Whoops, it broke.  What's
-  next?".
+  next?" [Started].
 
 * Accept patches to make formatted tables in asciidoc to work
   well in both html and man pages (see git-diff(1)).
@@ -58,12 +66,14 @@ Documentation
 Technical (heavier)
 -------------------
 
-* We might want to optimize cloning with GIT native transport
-  not to explode the pack, and store it in objects/pack instead.
-  We would need a tool to generate an idx file out of a pack
-  file for this.  Also this itself may turn out to be a bad
-  idea, making the set of packs in repositories everybody has
-  different from each other.
+* Assess the side effects of "make the rest of the things
+  magically work from any subdirectory" change by Linus.  It is
+  a good change in principle and we would like to have that
+  behaviour but some tool implementations I am sure are assuming
+  to never run from anywhere other than the top. [Post 1.0]
+
+* Ref namespace management.  Perhaps use refs/local/ suggestion
+  by Linus.
 
 * Git daemon, when deployed at kernel.org, might turn out to be
   quite a burden, since it needs to generate customized packs
@@ -71,14 +81,25 @@ Technical (heavier)
   precompute some packs for popular sets of heads downloaders
   have and serve that, even if that could give more than the
   client asks for in some cases.  We will know about this soon
-  enough.
+  enough [DONE part to allow using precomputed pack, but not
+  dynamic caching part].
 
 * Libification.  There are many places "run once" mentality is
   ingrained in the management of basic data structures, which
-  need to be fixed.
+  need to be fixed.  [Matthias Urlichs is already working on
+  this: <pan.2005.10.03.20.48.52.132570@smurf.noris.de>; Post
+  1.0].
 
 * Maybe a pack optimizer.
 
+  Given a set of objects and a set of refs (probably a handful
+  branch heads and point release tags), find a set of packs to
+  allow reasonably minimum download for all of these classes of
+  people: (1) somebody cloning the repository from scratch, (2)
+  somebody who tends to follow the master branch head reasonably
+  closely, (3) somebody who tends to follow only the point
+  releases.
+
 * Maybe an Emacs VC backend.
 
 * 'git split-projects'?  This requires updated 'git-rev-list' to
@@ -86,19 +107,30 @@ Technical (heavier)
   Message-ID: <Pine.LNX.4.63.0509221617300.23242@iabervon.org>
 
 * Look at libified GNU diff CVS seems to use, or libxdiff.
+  [Daniel has his own diff tool almost ready to start
+  integrating and testing; Post 1.0]
+
+* Plug-in file-level merges [Post 1.0].
 
 
 Technical (milder)
 ------------------
 
-* Encourage concrete proposals to commit log message templates
-  we discussed some time ago.
+* Binary package split.  Plan laid out and discussion mostly
+  done. [RPM side done; Debian side delegated]
+
+* User-relative paths by Andreas Ericsson. [Need to ping]
 
-* Accept patches to cause "read-tree -u" delete a directory when
-  it makes it empty.
+* Proxing git:// connection by Paul Collins. [Need to ping]
 
-* Perhaps accept patches to introduce the concept of "patch flow
-  expressed as ref mappings" Josef has been advocating about.
+* Maybe look at Cogito and see if I can help Pasky to adjust to
+  the later core features?
+
+* Perhaps detect cloning request in upload-pack and cache the
+  result for next cloning request until any of our refs change.
+
+* Encourage concrete proposals to commit log message templates
+  we discussed some time ago.
 
 * Perhaps accept patches to do undo/redo.
 
@@ -111,26 +143,14 @@ Technical (milder)
 
 * Maybe grok PGP signed text/plain in applymbox as well.
 
-* Perhaps a tool to revert a single file to pre-modification
-  state?  People with BK background know this operation as
-  'clean'.  'git checkout [-f] ent [path...]' was suggested by
-  Matthias Urlichs which sounds a natural extention to what the
-  command currently does.
-
 * Enhance "git repack" to not always use --all; this would be
   handy if the repository contains wagging heads like "pu" in
   git.git repository.
 
-* Internally split the project into non-doc and doc parts; add
-  an extra root for the doc part and merge from it; move the
-  internal doc source to a separate repository, like the +Meta
-  repository; experiment if this results in a reasonable
-  workflow, and document it in howto form if it does.
-
 * Make rebase restartable; instead of skipping what cannot be
   automatically forward ported, leave the conflicts in the work
   tree, have the user resolve it, and then restart from where it
-  left off.
+  left off [mechanism DONE; in pu].
 
 * Output full path in the "git-rev-list --objects" output, not
   just the basename, and see the improved clustering results in
@@ -138,24 +158,31 @@ Technical (milder)
 
 * Updated git-changes-script Jeff Garzik needs [Inquiry for
   external spec sent out with a quick hack.  Will know if that
-  is what he needs soon enough].
+  is what he needs hopefully soon].
 
+* Make sure we do reasonable thing on binary files even in
+  cherry-pick and rebase. [mechanism DONE; rebase in pu]
 
-Technical (trivial)
--------------------
+* Customizable init-db.  Personally I think template mechanism
+  is good enough.  Otherwise, maybe add hooks/post-init-db.
 
-* short SHA1 naming is not enforcing uniqueness.  Should fix.
 
-* 'git repack' can be DOSed.  Should fix.
+Technical (trivial)
+-------------------
 
-* Stop installing the old-name symlinks [POSTPONED].
+* Stop installing the old-name symlinks [DONE].
 
 * 'git merge-projects'?
 
+  Subject: Re: Merges without bases
+  References: <1125004228.4110.20.camel@localhost.localdomain>
+  Date: Thu, 25 Aug 2005 15:26:36 -0700
+  Message-ID: <7vvf1tps9v.fsf@assigned-by-dhcp.cox.net>
+
 * 'git lost-and-found'?  Link dangling commits found by
   fsck-objects under $GIT_DIR/refs/lost-found/.  Then
-  show-branch or gitk can be used to find any lost commit. [A
-  feeler patch sent out. Very underwhelming response X-<.]
+  show-branch or gitk can be used to find any lost commit.
+  [DONE]
 
   Do not name it /lost+found/; that would probably confuse
   things that mistake it a mount point (not our code but