Browse Source

Edit changelog a little for clarity and conciseness

Nick Mathewson 7 years ago
parent
commit
8b1ea18961
1 changed files with 86 additions and 71 deletions
  1. 86 71
      ChangeLog

+ 86 - 71
ChangeLog

@@ -1,4 +1,4 @@
-Changes in version 0.2.9.1-alpha - 2016-08-0?
+Changes in version 0.2.9.1-alpha - 2016-08-08
   Tor 0.2.9.1-alpha is the first alpha release in the 0.2.9 development
   Tor 0.2.9.1-alpha is the first alpha release in the 0.2.9 development
   series. It improves our support for hardened builds and compiler
   series. It improves our support for hardened builds and compiler
   warnings, deploys some critical infrastructure for improvements to
   warnings, deploys some critical infrastructure for improvements to
@@ -7,24 +7,28 @@ Changes in version 0.2.9.1-alpha - 2016-08-0?
   log unexpected events, and contains other small improvements to
   log unexpected events, and contains other small improvements to
   security, correctness, and performance.
   security, correctness, and performance.
 
 
+  Below are the changes since 0.2.8.6.
+
   o New system requirements:
   o New system requirements:
-    - Tor requires Libevent version 2.0.10-stable or later now. This
-      implements ticket 19554.
-    - We now require zlib version 1.2 or later. (Back when we started,
+    - Tor now requires Libevent version 2.0.10-stable or later. Older
+      versions of Libevent have less efficient backends for several
+      platforms, and lack the DNS code that we use for our server-side
+      DNS support. This implements ticket 19554.
+    - Tor now requires zlib version 1.2 or later, for security,
+      efficiency, and (eventually) gzip support. (Back when we started,
       zlib 1.1 and zlib 1.0 were still found in the wild. 1.2 was
       zlib 1.1 and zlib 1.0 were still found in the wild. 1.2 was
       released in 2003. We recommend the latest version.)
       released in 2003. We recommend the latest version.)
 
 
   o Major features (build, hardening):
   o Major features (build, hardening):
     - Tor now builds with -ftrapv by default on compilers that support
     - Tor now builds with -ftrapv by default on compilers that support
-      it. This option detects signed integer overflow, and turns it into
-      a hard-failure. We do not apply this option to code that needs to
-      run in constant time to avoid side-channels; instead, we use
-      -fwrapv. Closes ticket 17983.
+      it. This option detects signed integer overflow (which C forbids),
+      and turns it into a hard-failure. We do not apply this option to
+      code that needs to run in constant time to avoid side-channels;
+      instead, we use -fwrapv in that code. Closes ticket 17983.
     - When --enable-expensive-hardening is selected, stop applying the
     - When --enable-expensive-hardening is selected, stop applying the
-      clang/gcc sanitizers to code that needs to run in constant-time to
-      avoid side channels: although we are aware of no introduced side-
-      channels, we are not able to prove that this is safe. Related to
-      ticket 17983.
+      clang/gcc sanitizers to code that needs to run in constant time.
+      Although we are aware of no introduced side-channels, we are not
+      able to prove that there are none. Related to ticket 17983.
 
 
   o Major features (compilation):
   o Major features (compilation):
     - Our big list of extra GCC warnings is now enabled by default when
     - Our big list of extra GCC warnings is now enabled by default when
@@ -33,23 +37,25 @@ Changes in version 0.2.9.1-alpha - 2016-08-0?
       errors, pass --enable-fatal-warnings to configure. Closes
       errors, pass --enable-fatal-warnings to configure. Closes
       ticket 19044.
       ticket 19044.
     - Use the Autoconf macro AC_USE_SYSTEM_EXTENSIONS to automatically
     - Use the Autoconf macro AC_USE_SYSTEM_EXTENSIONS to automatically
-      turn on C and POSIX extensions. Closes ticket 19139.
+      turn on C and POSIX extensions. (Previously, we attempted to do
+      this on an ad hoc basis.) Closes ticket 19139.
 
 
   o Major features (directory authorities, hidden services):
   o Major features (directory authorities, hidden services):
     - Directory authorities can now perform the shared randomness
     - Directory authorities can now perform the shared randomness
       protocol specified by proposal 250. Using this protocol, directory
       protocol specified by proposal 250. Using this protocol, directory
-      authorities can generate a global fresh random number every day.
-      In the future, this global randomness will be used by hidden
-      services to select their responsible HSDirs. This release only
-      implements the directory authority feature; the hidden service
-      side will be implemented in the future as part of proposal 224.
-      Resolves ticket 16943; implements proposal 250.
-
-  o Major features (downloading):
-    - Use random exponential backoffs when retrying downloads from the
-      dir servers. This prevents a group of Tor instances from becoming
-      too synchronized, or a single Tor instance from becoming too
-      predictable, in its download schedule. Closes ticket 15942.
+      authorities generate a global fresh random value every day. In the
+      future, this value will be used by hidden services to select
+      HSDirs. This release implements the directory authority feature;
+      the hidden service side will be implemented in the future as part
+      of proposal 224. Resolves ticket 16943; implements proposal 250.
+
+  o Major features (downloading, random exponential backoff):
+    - When we fail to download an object from a directory service, wait
+      for an (exponentially increasing) randomized amount of time before
+      retrying, rather than a fixed interval as we did before. This
+      prevents a group of Tor instances from becoming too synchronized,
+      or a single Tor instance from becoming too predictable, in its
+      download schedule. Closes ticket 15942.
 
 
   o Major bugfixes (exit policies):
   o Major bugfixes (exit policies):
     - Avoid disclosing exit outbound bind addresses, configured port
     - Avoid disclosing exit outbound bind addresses, configured port
@@ -63,47 +69,47 @@ Changes in version 0.2.9.1-alpha - 2016-08-0?
     - Allow Tor clients with appropriate controllers to work with
     - Allow Tor clients with appropriate controllers to work with
       FetchHidServDescriptors set to 0. Previously, this option also
       FetchHidServDescriptors set to 0. Previously, this option also
       disabled descriptor cache lookup, thus breaking hidden services
       disabled descriptor cache lookup, thus breaking hidden services
-      entirely when it was set. Fixes bug 18704; bugfix on 0.2.0.20-rc.
-      Patch by "twim".
+      entirely. Fixes bug 18704; bugfix on 0.2.0.20-rc. Patch by "twim".
 
 
   o Minor features (build, hardening):
   o Minor features (build, hardening):
-    - Detect and work around a libclang_rt problem that prevents clang
-      from finding __mulodi4() on some 32-bit platforms. This clang bug
-      would keep -ftrapv from linking on those systems. Closes
-      ticket 19079.
-    - When building on a system without runtime support for some of the
-      runtime hardening options, try to log a useful warning at
-      configuration time, rather than an incomprehensible warning at
-      link time. If expensive hardening was requested, this warning
-      becomes an error. Closes ticket 18895.
+    - Detect and work around a libclang_rt problem that would prevent
+      clang from finding __mulodi4() on some 32-bit platforms, and thus
+      keep -ftrapv from linking on those systems. Closes ticket 19079.
+    - When building on a system without runtime support for the runtime
+      hardening options, try to log a useful warning at configuration
+      time, rather than an incomprehensible warning at link time. If
+      expensive hardening was requested, this warning becomes an error.
+      Closes ticket 18895.
 
 
   o Minor features (code safety):
   o Minor features (code safety):
-    - In our integer-parsing functions, check that the maxiumum value
-      given is no smaller than the minimum value. Closes ticket 19063;
+    - In our integer-parsing functions, ensure that maxiumum value we
+      give is no smaller than the minimum value. Closes ticket 19063;
       patch from U+039b.
       patch from U+039b.
 
 
   o Minor features (controller):
   o Minor features (controller):
-    - Implement new GETINFO queries for all downloads using
-      download_status_t to schedule retries. Closes ticket 19323.
-    - Add support for configuring basic client authorization on hidden
-      services created with the ADD_ONION control command. Implements
-      ticket 15588. Patch by "special".
-    - Fire a `STATUS_SERVER` event whenever the hibernation status
-      changes between "awake"/"soft"/"hard". Closes ticket 18685.
+    - Implement new GETINFO queries for all downloads that use
+      download_status_t to schedule retries. This allows controllers to
+      examine the schedule for pending downloads. Closes ticket 19323.
+    - Allow controllers to configure basic client authorization on
+      hidden services when they create them with the ADD_ONION control
+      command. Implements ticket 15588. Patch by "special".
+    - Fire a STATUS_SERVER controller event whenever the hibernation
+      status changes between "awake"/"soft"/"hard". Closes ticket 18685.
 
 
   o Minor features (directory authority):
   o Minor features (directory authority):
     - Directory authorities now only give the Guard flag to a relay if
     - Directory authorities now only give the Guard flag to a relay if
       they are also giving it the Stable flag. This change allows us to
       they are also giving it the Stable flag. This change allows us to
-      simplify path selection for clients, and it should have minimal
-      effect in practice since >99% of Guards already have the Stable
-      flag. Implements ticket 18624.
-    - Make directory authorities write the v3-status-votes file out to
-      disk earlier in the consensus process, so we have the votes even
-      if we abort the consensus process later. Resolves ticket 19036.
+      simplify path selection for clients. It should have minimal effect
+      in practice, since >99% of Guards already have the Stable flag.
+      Implements ticket 18624.
+    - Directory authorities now write their v3-status-votes file out to
+      disk earlier in the consensus process, so we have a record of the
+      votes even if we abort the consensus process. Resolves
+      ticket 19036.
 
 
   o Minor features (hidden service):
   o Minor features (hidden service):
     - Stop being so strict about the payload length of "rendezvous1"
     - Stop being so strict about the payload length of "rendezvous1"
-      cells. We used to be locked in to the "tap" handshake length, and
+      cells. We used to be locked in to the "TAP" handshake length, and
       now we can handle better handshakes like "ntor". Resolves
       now we can handle better handshakes like "ntor". Resolves
       ticket 18998.
       ticket 18998.
 
 
@@ -123,15 +129,22 @@ Changes in version 0.2.9.1-alpha - 2016-08-0?
     - Provide a more useful warning message when configured with an
     - Provide a more useful warning message when configured with an
       invalid Nickname. Closes ticket 18300; patch from "icanhasaccount".
       invalid Nickname. Closes ticket 18300; patch from "icanhasaccount".
     - When dumping unparseable router descriptors, optionally store them
     - When dumping unparseable router descriptors, optionally store them
-      in separate filenames by hash, up to a configurable limit. Closes
-      ticket 18322.
+      in separate files, named by digest, up to a configurable size
+      limit. You can change the size limit by setting the
+      MaxUnparseableDescSizeToLog option, and disable this feature by
+      setting that option to 0. Closes ticket 18322.
     - Add a set of macros to check nonfatal assertions, for internal
     - Add a set of macros to check nonfatal assertions, for internal
       use. Migrating more of our checks to these should help us avoid
       use. Migrating more of our checks to these should help us avoid
       needless crash bugs. Closes ticket 18613.
       needless crash bugs. Closes ticket 18613.
 
 
   o Minor features (performance):
   o Minor features (performance):
-    - When fetching a consensus for the first time, use optimistic data.
-      This saves a round-trip during startup. Closes ticket 18815.
+    - Changer the "optimistic data" extension from "off by default" to
+      "on by default". The default was ordinarily overridden by a
+      consensus option, but when clients were bootstrapping for the
+      first time, they would not have a consensus to get the option
+      from. Changing this default When fetching a consensus for the
+      first time, use optimistic data. This saves a round-trip during
+      startup. Closes ticket 18815.
 
 
   o Minor features (relay, usability):
   o Minor features (relay, usability):
     - When the directory authorities refuse a bad relay's descriptor,
     - When the directory authorities refuse a bad relay's descriptor,
@@ -154,30 +167,31 @@ Changes in version 0.2.9.1-alpha - 2016-08-0?
   o Minor bugfixes (bootstrap):
   o Minor bugfixes (bootstrap):
     - Remember the directory we fetched the consensus or previous
     - Remember the directory we fetched the consensus or previous
       certificates from, and use it to fetch future authority
       certificates from, and use it to fetch future authority
-      certificates. Fixes bug 18963; bugfix on 0.2.8.1-alpha.
+      certificates. This change improves bootstrapping performance.
+      Fixes bug 18963; bugfix on 0.2.8.1-alpha.
 
 
   o Minor bugfixes (build):
   o Minor bugfixes (build):
-    - Make the test-stem and test-network targets depend only on the tor
-      binary that they will be testing. Previously, they depended on
+    - The test-stem and test-network makefile targets now depend only on
+      the tor binary that they are testing. Previously, they depended on
       "make all". Fixes bug 18240; bugfix on 0.2.8.2-alpha. Based on a
       "make all". Fixes bug 18240; bugfix on 0.2.8.2-alpha. Based on a
       patch from "cypherpunks".
       patch from "cypherpunks".
 
 
   o Minor bugfixes (circuits):
   o Minor bugfixes (circuits):
-    - Make sure extend_info_from_router is only called on servers. Fixes
-      bug 19639; bugfix on 0.2.8.1-alpha.
+    - Make sure extend_info_from_router() is only called on servers.
+      Fixes bug 19639; bugfix on 0.2.8.1-alpha.
 
 
   o Minor bugfixes (compilation):
   o Minor bugfixes (compilation):
-    - When building with Clang, include our full array of GCC warnings.
+    - When building with Clang, use a full set of GCC warnings.
       (Previously, we included only a subset, because of the way we
       (Previously, we included only a subset, because of the way we
       detected them.) Fixes bug 19216; bugfix on 0.2.0.1-alpha.
       detected them.) Fixes bug 19216; bugfix on 0.2.0.1-alpha.
 
 
   o Minor bugfixes (directory authority):
   o Minor bugfixes (directory authority):
     - Authorities now sort the "package" lines in their votes, for ease
     - Authorities now sort the "package" lines in their votes, for ease
-      of debugging. (They are already sorted in the consensus
-      documents.) Fixes bug 18840; bugfix on 0.2.6.3-alpha.
-    - When parsing detached signature, make sure we use the length of
+      of debugging. (They are already sorted in consensus documents.)
+      Fixes bug 18840; bugfix on 0.2.6.3-alpha.
+    - When parsing a detached signature, make sure we use the length of
       the digest algorithm instead of an hardcoded DIGEST256_LEN in
       the digest algorithm instead of an hardcoded DIGEST256_LEN in
-      order to avoid comparing bytes out of bound with a smaller digest
+      order to avoid comparing bytes out-of-bounds with a smaller digest
       length such as SHA1. Fixes bug 19066; bugfix on 0.2.2.6-alpha.
       length such as SHA1. Fixes bug 19066; bugfix on 0.2.2.6-alpha.
 
 
   o Minor bugfixes (documentation):
   o Minor bugfixes (documentation):
@@ -190,7 +204,7 @@ Changes in version 0.2.9.1-alpha - 2016-08-0?
 
 
   o Minor bugfixes (ephemeral hidden service):
   o Minor bugfixes (ephemeral hidden service):
     - When deleting an ephemeral hidden service, close its intro points
     - When deleting an ephemeral hidden service, close its intro points
-      even if they are not in the open state. Fixes bug 18604; bugfix
+      even if they are not completely open. Fixes bug 18604; bugfix
       on 0.2.7.1-alpha.
       on 0.2.7.1-alpha.
 
 
   o Minor bugfixes (guard selection):
   o Minor bugfixes (guard selection):
@@ -204,8 +218,9 @@ Changes in version 0.2.9.1-alpha - 2016-08-0?
 
 
   o Minor bugfixes (hidden service client):
   o Minor bugfixes (hidden service client):
     - Increase the minimum number of internal circuits we preemptively
     - Increase the minimum number of internal circuits we preemptively
-      build from 2 to 3 so they are available when a client connects to
-      another onion service. Fixes bug 13239; bugfix on 0.1.0.1-rc.
+      build from 2 to 3, so a circuit is available when a client
+      connects to another onion service. Fixes bug 13239; bugfix
+      on 0.1.0.1-rc.
 
 
   o Minor bugfixes (logging):
   o Minor bugfixes (logging):
     - When logging a directory ownership mismatch, log the owning
     - When logging a directory ownership mismatch, log the owning
@@ -241,8 +256,8 @@ Changes in version 0.2.9.1-alpha - 2016-08-0?
       in the counter. Now, if the number of messages hits a maximum, the
       in the counter. Now, if the number of messages hits a maximum, the
       rate-limiter doesn't count any further. Fixes bug 19435; bugfix
       rate-limiter doesn't count any further. Fixes bug 19435; bugfix
       on 0.2.4.11-alpha.
       on 0.2.4.11-alpha.
-    - Fix a typo in the getting passphrase prompt for the ed25519
-      identity key. Fixes bug 19503; bugfix on 0.2.7.2-alpha.
+    - Fix a typo in the passphrase prompt for the ed25519 identity key.
+      Fixes bug 19503; bugfix on 0.2.7.2-alpha.
 
 
   o Code simplification and refactoring:
   o Code simplification and refactoring:
     - Remove redundant declarations of the MIN macro. Closes
     - Remove redundant declarations of the MIN macro. Closes