diff --git a/TODO.txt b/TODO.txt
index 237f0c0c02dc4f702bb5332427181f0f4a03a031_VE9ETy50eHQ=..b826908ec52259c11c3a8c066040c20570a2f383_VE9ETy50eHQ= 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -1,10 +1,5 @@
 GENERAL
 ==========
-* fully integrate as native protocol handler (see hgsubversion)
-  - hg push git@...
-  - hg fetch [remote] (remote is url, hg alias or hg-git remote)
-  - hg clone url
-* file:/// support
 * work fine with eclipse plugin or tortoise-hg
 
 MAPPING ISSUES
@@ -14,5 +9,4 @@
 
 REMOTE/BRANCH STUFF
 =====================
-* push with branch names (w/ proper error messages)
 * explain what branch mapping policy determined when updating refs
@@ -18,4 +12,2 @@
 * explain what branch mapping policy determined when updating refs
-
-* add a warning for a non-fast forward push
 * error nicer if pushing to remote without push access (over git://)
@@ -21,6 +13,4 @@
 * error nicer if pushing to remote without push access (over git://)
-* fail nicely when the remote_name is not there
-
 
 WEBSITE
 ===========
@@ -30,9 +20,9 @@
 
 SPEED/EFFICIENCY
 ================
-* cache rename detection on push (seems to be very expensive)
-* switch object mapping to hg->git since the many to one is that direction
-* don't send blobs/trees already on server (thin pack)
-* packfile creation benchmarking (seems to take a while sometimes)
+* dulwich improvements
+  - don't send blobs/trees already on server
+  - thin packs
+  - packfile creation benchmarking (seems to take a while sometimes)
   - at least provide status output
 
@@ -37,6 +27,5 @@
   - at least provide status output
 
-
 MAYBE
 ==========
 * submodules?