[tor-bugs] #31823 [Core Tor/Stem]: HSv3 descriptor support in stem [encoding]

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Oct 29 23:08:31 UTC 2019


#31823: HSv3 descriptor support in stem [encoding]
-------------------------------------------------+-------------------------
 Reporter:  asn                                  |          Owner:  atagar
     Type:  defect                               |         Status:
                                                 |  needs_review
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  unspecified
Component:  Core Tor/Stem                        |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  tor-hs scaling onionbalance          |  Actual Points:  2
  network-team-roadmap-september tor-spec        |
Parent ID:  #26768                               |         Points:  5
 Reviewer:                                       |        Sponsor:
-------------------------------------------------+-------------------------

Comment (by atagar):

 Hi asn, swapping our tor-dev@ discussion here as requested.

 > What is your plan with the hsv3 branch? Should I start reviewing your
 changes already, or give you more time to do more?

 Please give me another week. Ball's in my court, I'll let ya know once
 it's ready.

 > My only feedback so far is that the python2 port commits have broken
 python3 for me (particularly the ed25519 blinding implementation).

 Gotcha. For the moment tests pass with both python2 and python3 but I
 still break them occasionally as I work. If you have python3 issues with
 the final result please let me know and I'll address them.

 > Would it be egregious to provide hsv3 support only for python3 users so
 that we can use python3 features as we wish?

 This is actually a particularly interesting question right now. Here's my
 plans...

 * PSF plans to [https://pythonclock.org/ drop Python 2.x support in
 January 2020] and Stem will do the same.

 * Stem's 1.x series supports python 2.6 and above. In December I plan to
 release Stem 1.8 which will be the last in the 1.x series and last with
 python 2.x support.

 * Stem 2.x will remove python 2.x support, drop deprecated functions, etc.
 This is our opportunity for cleanup that breaks backward compatibility so
 I plan to take my time and make our codebase more consistent.

 * So finally for your question of requiring python3 for hsv3 the answer is
 "not yet unless absolutely necessary". That said, I would appreciate
 'TODO' comments that indicate where we can simplify ourselves when
 dropping 2.x support. We already have quite a few...

 {{{
 % grep -R TODO stem | grep -i 'python 2'
 stem/descriptor/reader.py:    # TODO: When dropping python 2.6 support go
 back to using 'with' for
 stem/descriptor/__init__.py:  # TODO: use 'with' for tarfile after
 dropping python 2.6 support
 stem/client/datatype.py:    # TODO: Python 2.6's struct module behaves a
 little differently in a couple
 stem/client/datatype.py:    # TODO: When we drop python 2.x support this
 can be simplified via
 stem/interpreter/__init__.py:        # TODO: we can use a lambda here when
 dropping python 2.x support, but
 stem/util/test_tools.py:# TODO: Providing a copy of SkipTest that works
 with python 2.6. This will be
 stem/util/test_tools.py:        # TODO: remove and drop unnecessary
 'returns' when dropping python 2.6
 stem/util/test_tools.py:        # TODO: remove when dropping python 2.6
 support
 stem/util/log.py:    # TODO: At least in python 2.6 logging.Handler has a
 bug in that it doesn't
 stem/util/__init__.py:    # TODO: I hate doing this but until Python 2.x
 support is dropped we
 }}}

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/31823#comment:3>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list