Tor 0.2.4: roadmap, timeline, vague priorities.
This is Nick's vague draft plan for a Tor 0.2.4.x release.
Please don't edit it without talking to me first: I've made a section at the bottom of the page for that.
Timeline
This is still a draft
October 10, 2012: Big feature proposal checkpoint. Any large complicated feature which requires a design proposal must have its first design proposal draft by this date.
November 20, 2012: Big feature proposal freeze. Any big feature which requires a design proposal must have its design proposal finished by this date. If it needs changes after this date, then maybe we didn't design it well enough, and we probably shouldn't merge it.
December 10, 2012: Big feature merge freeze. No big features will be merged after this date.
(Edit: We seem to be taking no new features written after this date, but we are still totally stuff that was getting merged up to that deadline.)
January 1, 2012: Small feature proposal freeze. Any small feature which requires a design proposal must have its tiny little design proposal finished by this date.
January 20, 2013: Feature merge freeze. No features implemented after this date will be merged. Features done in a haphazard way before this date and finshed-up afterwards will also have to wait.
Feb 10, 2013: Open a new 0.2.5 branch.
Feb 28, 2013: Buggy feature backout date. Any feature which seems intractably buggy by this date may be disabled, deprecated, or removed until the next release. This might also happen earlier at Nick and Andrea's discretion: please don't treat this date as meaning that you have until Feb 20 to fix bugs.
When it's done, hopefully in Mar: Release.
The definition of "big patch" is deliberately vague.
Note that the cutoffs above are merge freezes, not submission freezes. If you give me a big patch on December 10, and I can't merge it on that day (because of time, or because it needs changes, or for whatever reason), it will have to wait. Thus, if there's something big that you want to have put into 0.2.4.x, then you should try to get it into the review pipeline well before the merge cutoff.
External constraint
Due Aug 15 (internal), sponsor F
- #6271 (moved) -- Keep sendme windows synchronized
- #4712 (moved) -- Fix credit-bucket patches for testing. (Done enough for testing; see #5336 (moved))
- #6465 (moved) -- Write a basic channel abstraction.
Due Sep 7 (internal) / Sep 30 (external), sponsor G
Alpha release (#6374 (moved), #6375 (moved)) including:
-
#4563 (moved) -- Clients talk to bridges on IPv6 [linus, n+a for review]
- needs review
-
#4564 (moved) -- Clients talk to relays on IPv6 [linus, n+a for review]
- voting code
- design
- metrics
- Plan to have done for 1 Sep
- #4565 (moved) (OPTIONAL) -- Relays talk to relays on IPv6
- #4567 (moved) -- Extend Tor's UPnP support for pluggable transports [asn, n+a for review]
- #3589 (moved) -- Advertise bridge pluggable transports in extrainfo [asn, n+a for review]
Due Nov 1 (internal, extra hard) / Nov 15 (external), sponsorF
Code for:
-
#5547 (moved) -- Exit nodes allow resolving, exiting for IPv6 [a/n]
- design
- exit policies working
- DNS working
- actual implementation
- 2-3 weeks of effort
Simulation/design results for:
-
#4485 (moved) -- get rid of stream-level sendme? [arma? a/n]
- 2-3 days to write code, then work with rob on simulation?
- Requires/blocks on #4486 (moved) and #4487 (moved)
-
#4684 (moved) -- datagram experiment [sjm]
- ???
Writing for:
- #5487 (moved) -- updated tor paper [n/sjm]
Dec 10 (internal): Big feature merge deadline
These are in priority order, for Nick/Andrea items. If there's something not listed here, either Nick and Andrea don't think it's big, or we think somebody else is building it, or we totally forgot about it and you should remind us right away! Note that "days" are a notional amount of programmer time/effort/psychic-damage that may or may not resemble actual earth rotations.
Ticket | Item | Effort | Who | Notes |
---|---|---|---|---|
#5547 (moved) | IPv6 exits (basic no-frills support) | 2-4 days more | nickm+ | merged |
#7570 (moved) + #7571 (moved) | Prop205 (per-circuit DNS cache) + AutomapAllHosts | 3-6 days | nickm? | merged |
#7572 (moved) | Parallelize relay crypto | 5-12 days | andrea | DEFERRED. |
#7200 (moved) | TLS ECDHE support | 1-3 days | nickm | merged |
#7199 (moved) + #7202 (moved) | prop200 (create2) + ntor + curve25519 | 5-10 days | nickm | needs-review |
#572 (moved) | Prop206 (directory sources) | 1-3 days more | nickm | merged |
#6526 (moved) | Directory guards (prop207) | 1-5 days | ??? | merged |
Dec 15 (internal) / 31 (external), Sponsor L
nice-to-have, can :
- Extended ORPort Protocol [n/a/asn]
- almost done if all we need is extorport; needs work if we must redesign for authentication
Jan 20
Some stuff Mike wants which Nick thinks could turn out to be "small feature" is:
Nick wants: