On Fri, Jan 2, 2015 at 12:39 PM, Tom van der Woerdt info@tvdw.eu wrote:
Now, maybe we _should_ drop support for versions before 0.2.3.17-beta as well. If so, we can rip out even more code. (And that might be a good idea.) What do people on the list think?
X Fabio: X The cleaner, the better!
I'd definitely like ripping out more legacy support code :-) According to the consensus, 0.2.3.24-rc is the lowest recommended version right now, and I (mis)interpreted that as the lowest version that must still be supported after I rip out code. ... Also, in case anyone is wondering why a complete stranger is suddenly so interested in ripping parts out of Tor: I attempted to implement a Tor client and was constantly faced with legacy stuff in the spec. Might as well get rid of it if you don't need it - also makes my client implementation easier.
Look at the rend-spec.txt cases of ancient protocols alone. Yes, I'd try to conform those docs along with this too.
I think legacy protocol support ties both a project and it's users down. Don't be afraid to rip things out. What is the worst that could happen? A user has to go install the current release? Oh my, whatever.
There's also a distinct difference between backwards compatible legacy protocol support (a ton of complex code), and support of older/wider platforms on the current release (a few small things, support for those is pretty good btw).
The only time I'd worry about old protocol regarding Tor is if there is truly a significant number of users for which the old *protocol* offers them better, or their only, means to anonymity, circumvention, obfuscation (as opposed to old *porting*). I'm guessing the answer is probably no here.
The consensus version is what tor thinks is best acceptable minimum regarding features, security, bugs, anonymity, etc. It is a nag, not a hard. Writing new client to match anything older than whatever specifications that version supports would waste your time, especially since even that will slide by the time you're done writing and testing.