[tor-dev] Damian's Status Report - February 2013
atagar at torproject.org
Sat Mar 2 21:07:08 UTC 2013
Hi all. Between being a short month and oncall for work I didn't get
as much done as I'd like. What time I did have for tor mostly went
into stem's descriptor functionality. In particular...
* Microdescriptor Support
Stem can now read and parse microdescritpors (#8253), with controller
methods coming later this weekend.
I understand the desire for lightweight descriptors but they're a step
backward for controllers. Their lack of fingerprints make them clunky
to use (https://trac.torproject.org/8323#comment:2), and tor lacks the
usual methods for retrieving them (#8323) and v3 network status
information (#7953). Controllers will often need to read descriptor
content from the data directory until those are fixed.
* Invalid descriptor content within archives caused the reader to stop
processing content from the archive. This bug is simple in retrospect
but cost me around a week of hair pulling frustration to sort out.
Thanks to Karsten for catching it! (#8049)
* Descriptor readers can now optionally provide network status
documents rather than the entries they contain. Feature request by
* Calling str() on Descriptors choked if it contained unicode content.
Caught by Sathyanarayanan. (#8265)
* Thanks to Karsten Descriptors now provide hex digests. (#8036)
* Discussed the new 'flag-thresholds' attribute and added support for
it to stem. (#8165)
* Descriptor parsers that used readline() could choke if derived from
a descriptor archive. Caught by Karsten.
General tasks included...
* Discussed proposal 218 with Karsten on tor-dev at ...
* Changed our consensus-tracker script to alarm for non-exits (we had
an undetected sybil attack early in the month). Also fixed an issue
where the script gobbled up way too much memory. (#7831}
* Made a few backward incompatible changes to improve stem's usability
in anticipation of our March API freeze...
* Version comparison is now done through normal comparison operators
rather than a meets_requirements() method.
* Renamed the keyword arguments for Controller.from_port() and
others to be less verbose (for instance 'control_port' to just
* Dropped the 'path' arg from parse_file(), it was never intended
for external callers.
* Variety of bug fixes...
* We didn't recognize a 'NEVER' date in ADDRMAP events. Caught by
* Patch from Abhishek so our tests avoid static /tmp usage. (#7926)
* Added copyright notices throughout most of our codebase. Suggested
by Juan. (#7954)
* Addressed issues with get_process_name() on OSX. Caught by
More information about the tor-dev