Hi All,
There seems to be some confusion in this thread about the current state of the hidden service to onion service name transition.
So I'm going to describe the state of things as they are, then try to describe what would need to be done.
I'd also appreciate feedback from Steph and others on our priorities for transitioning to the onion service name. I think we have been prioritising user-facing text. (The blog, website, Tor Browser, metrics, etc.)
Is this a sensible way of prioritising things?
On 26 Apr 2018, at 16:42, Paul Syverson paul.syverson@nrl.navy.mil wrote:
Have OnionService aliases for controller commands, events,
These are current called "hidden service" or an abbreviation.
Tor could add an alias mechanism for controller commands, events, and fields, and use it to do the rename:
https://trac.torproject.org/projects/tor/ticket/25922
I don't think they are as high a priority as the torrc options and man page.
descriptor fields
These are currently called "hidden service", or an abbreviation.
Descriptor fields are part of the directory specification and implementation, and they are highly technical. So I'm not sure we gain much from aliasing them or renaming them.
Similar arguments might apply to other codebases: * Onionoo * stem * consensus health * Tor (network daemon)
But the following user-facing applications should add documentation or change names, if they haven't already: * Relay Search / metrics website * uses HSDir for relay search, because that's what it's called in the directory protocol * uses "onion service" for statistics * Tor Browser * uses "onion site" * the Tor website * new tor blog posts
and anything else referencing 'HS' or 'HiddenService'.
We considered adding OnionService* torrc option aliases for every HiddenService* option in 0.2.9. But we deferred that change because we ran out of time.
All we need to do is add some new entries in the alias table, then do a search and replace in the tor man page: https://trac.torproject.org/projects/tor/ticket/17343
Speaking of which, how do we plan to replace abbreviations? Having an 'OSFETCH' or 'OS_CREATED' event doesn't exactly have the same ring as their HS counterparts. ;P
That's a good question.
OS conflicts with "operating system", so we could use: * Onion * OnSrv * no abbreviations Or any other colour you want to paint the bikeshed.
To avoid an endless discussion, let's leave the decision to the people who write, review, and merge the code.
Adjust all our docs to be consistent about the name.
Right, anything v3 should be consistently calling these 'onion services'. Variable names, etc. particularly those still in use in code shared with v2, don't need to be changed. It is OK if such vestiges of older usage remain in abbreviations, as long as the description of them, e.g., in any new Tor proposal, describes them with appropriately current terminology.
torrc options, the tor man page, and the v3 onion service code mainly use "hidden service", and sometimes use "onion service".
I don't see much value in changing the code.
If we decide there is value in changing the torrc options and man page, we need to allocate a few days of work on the roadmap to make it happen.
Renaming takes work. Lesson I learned from Nyx is that it works best if you draw a line in the sand and stand by it. With Nyx, version 2.0 is called Nyx (you won't find any docs saying otherwise) and version 1.x is the legacy 'arm' project.
If I was in your shoes I'd opt for the same. Either prioritize the aliases and be firm that v3 are 'Onion Services' or abort the rename. Otherwise this will live in a confusing dual-named limbo land indefinitely. ;P
I'm prettty sure that v3 being 'onion services' has been the official Tor Project position since at least half a year. We wouldn't be aborting the rename, because 'abort' would imply it is not complete. Anything now not using the current name is not part of an incomplete process, it is simply wrong and outdated. Steph correct me if I am wrong about that.
So I think you've answered your own question. Nothing in v3 should be called 'hidden services'.
That's not the current state of the tor network daemon v3 onion service code, specs, options, and man page. They use a mix of terminology (see above).
And anything new in code and documentation should be called 'onion services'. If you want to think of v2 and earlier as 'hidden services' for purposes of understanding legacy component and variable names, e.g., HSDir that's fine. And as such, variable names, etc. in code that continues to be used for both v2 and v3 can can persist. But again, any new specs, documentation, etc. should call them 'onion services'.
We have gradually been using onion services in new documentation and specs, since "single onion services". But we haven't changed existing code and documentation.
This acceptance of existing v2 documentation calling them 'hidden services' while refusing this for anything v3 is a little misleading about when and why the naming transition happened, but its close enough to serve as your line in the sand if you feel one is needed. I actually argued the value of essentially such a line-in-the-sand position to Steph a while ago. This doesn't preclude also calling v2 and earlier 'onion services'. Indeed, it's not just OK but preferable, for the above mentioned reasons.
It looks like we are doing a gradual transition. I think we prioritised the things that are seen by the most users (Tor Browser, statistics, blog, website).
We did not take a line in the sand position in the past, but we could adopt one for the remaining changes. We could decide on a particular Tor release (and releases of other codebases). But we need to schedule the work on the relevant roadmaps.
And maybe there are some obscure technical things (code, comments, descriptor fields) that just aren't worth changing.
T