Core Tor team May 2017 report
In May we released Core Tor 0.3.0.6 stable, our first stable release on the 0.3.0 series. [1] We also spend sometime organizing a team face to face meeting for June (Network Team Hackfest). This is part of an effort to give teams more opportunities to work face to face beyond our bi-annual meetings. We will be sharing more updates from this gathering on our blog.
As part of proposal 140 we merged a GSoC project (#13339) [2] that created consensus diffs, done two years ago, and which will be of greater utility now with proposals 140 and 274-278. For that we had to do some update in the code and add more tests, here is the full list of tasks to add this project to our code base:
* #21643 Extract, test, revise, and clean the diff code [3] * #21644 Fuzz the diff and patch code [4] * #21647 directory caches cache multiple past diffs or consensuses [5] * #21648 Caches generate diffs as appropriate [6] * #21649 Caches serve diffs on request [7] * #21650 Clients request diffs and handle diffs in replies [8] * #21673 Handle signatures correctly [9] * #22143 Implement May 3 updates to diff format in prop140 [10] * #22148 conformance to proposal, unhandled corner cases [11] * #22149 Update dir-spec with prop140 protocols [12]
We are finished writing and testing proposal 278, and its relevant portions are now merged into dir-spec.txt (#22275) [13]. Tickets related to this effort:
* #21664 - Prop278: Make the current 'torgzip' module a submodule of a new 'compression' module [14] * #21662 - Prop278: Add support for LZMA2 and/or Zstandard [15] * #21663 - Prop278: Refactor the torgzip module to support additional compression schemes [16] * #22066 - Prop278: Add memory measurement code in LZMA and Zstandard compression backends [17] * #22085 - Prop278: Refactor and simplify compression tests [18] * #21665 - Prop278: Establish an upper-bound for LZMA2 memory usage [19] * #21667 - Prop278: Handle new headers in directory.c [20] * child-tickets: * #21668 - Prop278: Update cached_dir_t and related types to no longer assume single compresison method [21] * #22065 - Prop278: Parse the Accept-Encoding header and pass it to "get" handlers [22]
In June, we will be testing the merged code further, evaluating its performance, and fixing any bugs we find.
[1] https://blog.torproject.org/blog/tor-0306-released-new-series-stable [2] https://trac.torproject.org/projects/tor/ticket/13339 [3] https://trac.torproject.org/projects/tor/ticket/21643 [4] https://trac.torproject.org/projects/tor/ticket/21644 [5] https://trac.torproject.org/projects/tor/ticket/21647 [6] https://trac.torproject.org/projects/tor/ticket/21648 [7] https://trac.torproject.org/projects/tor/ticket/21649 [8] https://trac.torproject.org/projects/tor/ticket/21650 [9] https://trac.torproject.org/projects/tor/ticket/21673 [10] https://trac.torproject.org/projects/tor/ticket/22143 [11] https://trac.torproject.org/projects/tor/ticket/22148 [12] https://trac.torproject.org/projects/tor/ticket/22149 [13] https://trac.torproject.org/projects/tor/ticket/22275 [14] https://trac.torproject.org/projects/tor/ticket/21664 [15] https://trac.torproject.org/projects/tor/ticket/21662 [16] https://trac.torproject.org/projects/tor/ticket/21663 [17] https://trac.torproject.org/projects/tor/ticket/22066 [18] https://trac.torproject.org/projects/tor/ticket/22085 [19] https://trac.torproject.org/projects/tor/ticket/21665 [20] https://trac.torproject.org/projects/tor/ticket/21667 [21] https://trac.torproject.org/projects/tor/ticket/21668 [22] https://trac.torproject.org/projects/tor/ticket/22065