[tor-commits] [tor/master] Initial draft changelog for 0.2.3.1-alpha

nickm at torproject.org nickm at torproject.org
Wed May 4 01:32:16 UTC 2011


commit 5ee5103f63324d7cf5f4ff8bd0fc822f1d6507d2
Author: Nick Mathewson <nickm at torproject.org>
Date:   Tue May 3 21:33:10 2011 -0400

    Initial draft changelog for 0.2.3.1-alpha
---
 ChangeLog                       |  132 +++++++++++++++++++++++++++++++++++++++
 changes/automake_required       |    6 --
 changes/autoreconf              |    5 --
 changes/bufferevent-support     |   12 ----
 changes/bug1982                 |    5 --
 changes/bug2444                 |    4 -
 changes/bug2559                 |    6 --
 changes/bug2573                 |    3 -
 changes/bug2702                 |    5 --
 changes/bug507.event            |    4 -
 changes/cpudetect               |    3 -
 changes/dirreq-stats-default    |    4 -
 changes/enhancement1668         |    4 -
 changes/enhancement1819         |    4 -
 changes/enhancement1883         |    4 -
 changes/eventdns_routerinfo_key |    4 -
 changes/feature1955             |    4 -
 changes/feature2345             |    4 -
 changes/getinfo_process         |    3 -
 changes/heartbeat               |    7 --
 changes/install-fix             |    3 -
 changes/microdesc_dl            |    4 -
 changes/nodelist                |   10 ---
 changes/prop174_server          |    6 --
 changes/tls-hash                |    5 --
 changes/tor-fw-helper           |   14 ----
 26 files changed, 132 insertions(+), 133 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 7e95671..3d779c3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,135 @@
+Changes in version 0.2.3.1-alpha - 2011-05-0?
+
+  Tor 0.2.3.1-alpha adds some new experimental features, including support
+  for an improved network IO backend, IOCP networking on Windows,
+  microdescriptor caching, "fast-start" support for streams, and automatic
+  home router configuration.  There are also numerous internal improvements
+  to try to make the code easier for developers to work with.
+
+  o Major features
+    - Tor can now optionally build with the "bufferevents" buffered IO
+      backend provided by Libevent 2. To use this feature, make sure you
+      have the latest possible version of Libevent, and pass the
+      --enable-bufferevents flag to configure when building Tor from source.
+      Using this feature will make our networking code more flexible, let us
+      stack layers on each other, and let us use more efficient zero-copy
+      transports where available.
+    - As an experimental feature, Tor can use IOCP for networking on Windows.
+      Once this code is tuned and optimized, it promises much better
+      performance than the select-based backend we've used in the past. To
+      try this feature, you must build Tor with Libevent 2, configure Tor
+      with the "bufferevents" buffered IO backend, and add "DisableIOCP 0" to
+      your torrc. There are known bugs here: only try this if you can help
+      debug it as it breaks.
+    - The EntryNodes option can now include country codes like {de} or IP
+      addresses or network masks. Previously we had disallowed these options
+      because we didn't have an efficient way to keep the list up to
+      date. Fixes bug 1982.
+    - Exit nodes now accept and queue data on not-yet-connected streams.
+      Previously, the client wasn't allowed to send data until the stream was
+      connected, which slowed down all connections. This change will enable
+      clients to perform a "fast-start" on streams and send data without
+      having to wait for a confirmation that the stream has opened.  (Patch
+      from Ian Goldberg; implements the server side of Proposal 174.)
+    - Tor now has initial support for automatic port mapping on on the many
+      home routers that support NAT-PMP or UPnP. (Not yet supported on
+      Windows). To build the support code, you'll need to have libnatpnp
+      library and/or the libminiupnpc library, and you'll need to enable the
+      feature specifically by passing "--enable-upnp" and/or
+      "--enable-natpnp" to configure. To turn it on, use the new
+      PortForwarding option.
+    - Caches now download, cache, and sever multiple "flavors" of the
+      consensus, including a flavor that describes microdescriptors.
+    - Caches now download, cache, and serve microdescriptors -- small
+      summaries of router descriptors that are authenticated by all of the
+      directory authorities. Once enough caches are running this code,
+      clients will be able to save significant amounts of directory bandwidth
+      by downloading microdescriptors instead of router descriptors.
+
+  o Minor features:
+    - Make logging resolution configurable and change default from 1
+      millisecond to 1 second. Implements enhancement 1668.
+    - We log which torrc file we're using on startup. Implements ticket 2444.
+    - Ordinarily, Tor does not count traffic from private addresses (like
+      127.0.0.1 or 10.0.0.1) when calculating rate limits or accounting.
+      There is now a new option, CountPrivateBandwidth, to disable this
+      behavior. Patch from Daniel Cagara.
+    - New --enable-static-tor configure option for building Tor as statically
+      as possible.  Idea, general hackery and thoughts from Alexei Czeskis,
+      John Gilmore, Jacob Appelbaum.  Implements ticket 2702.
+    - If you set the NumCPUs option to 0, Tor will now try to detect how many
+      CPUs you have. This is the new default behavior.
+    - Turn on directory request statistics by default and include them in
+      extra-info descriptors. Don't break if we have no GeoIP database.
+    - Relays that set "ConnDirectionStatistics 1" write statistics on the
+      bidirectional use of connections to disk every 24 hours.
+    - Add a GeoIP file digest to the extra-info descriptor. Implements
+      enhancement 1883.
+    - Add a new 'Heartbeat' log message type to periodically log a message
+      describing Tor's status at level Notice. This feature is meant for
+      operators who log at notice, adn want to make sure that their Tor
+      server is still working. Implementation by George Kadianakis.
+
+  o Minor bugfixes (on 0.2.2.25-alpha):
+    - When loading the microdesc journal, remember its current size.
+      In 0.2.2, this helps prevent the microdesc journal from growing
+      without limit on authorities (who are the only ones to use it in
+      0.2.2). Fixes a part of bug 2230; bugfix on 0.2.2.6-alpha.
+      Fix posted by "cypherpunks."
+    - The microdesc journal is supposed to get rebuilt only if it is
+      at least _half_ the length of the store, not _twice_ the length
+      of the store.  Bugfix on 0.2.2.6-alpha; fixes part of bug 2230.
+    - Authorities now clean their microdesc cache periodically and when
+      reading from disk initially, not only when adding new descriptors.
+      This prevents a bug where we could lose microdescriptors. Bugfix
+      on 0.2.2.6-alpha.
+
+  o Minor features (controller)
+    - Add a new SIGNAL event to the controller interface so that
+      controllers can be notified when Tor handles a signal. Resolves
+      issue 1955. Patch by John Brooks.
+    - Add a new GETINFO option to get total bytes read and written. Patch
+      from pipe, revised by atagar. Resolves ticket 2345.
+    - Implement some GETINFO controller fields to provide information about
+      the Tor process's pid, euid, username, and resource limits.
+
+  o Build changes
+    - Our build system requires automake 1.6 or later to create the
+      Makefile.in files. Previously, you could have used 1.4.
+      This only affects developers and people building Tor from git;
+      people who build Tor from the source distribution without changing
+      the Makefile.am files should be fine.
+    - Our autogen.sh script uses autoreconf to launch autoconf, automake, and
+      so on.  This is more robust against some of the failure modes
+      associated with running the autotools pieces on their own.
+
+  o Minor packaging issues:
+    - On OpenSUSE, create the /var/run/tor directory on startup if it is not
+      already created. Patch from Andreas Stieger. Fixes bug 2573.
+
+  o Code simplifications and refactoring:
+    - A major revision to our internal node-selecting and listing logic.
+      Tor already had at least two major ways to look at the question of
+      "which Tor servers do we know about": a list of router descriptors,
+      and a list of entries in the current consensus. With
+      microdescriptors, we're adding a third. Having so many systems
+      without an abstraction layer over them was hurting the codebase.
+      Now, we have a new "node_t" abstraction that presents a consistent
+      interface to a client's view of a Tor node, and holds (nearly) all
+      of the mutable state formerly in routerinfo_t and routerstatus_t.
+    - The helper programs tor-gencert, tor-resolve, and tor-checkkey
+      no longer link against Libevent: they never used it, but
+      our library structure used to force them to link it.
+
+  o Removed features:
+    - Removed some old code to work around even older versions of Tor that
+      used forked processes to handle DNS requests. Such versions of Tor
+      are no longer in use as servers.
+
+  o Documentation fixes:
+    - Correct a broken faq link in the INSTALL file. Fixes bug 2307.
+
+
 Changes in version 0.2.2.25-alpha - 2011-04-29
   Tor 0.2.2.25-alpha fixes many bugs: hidden service clients are more
   robust, routers no longer overreport their bandwidth, Win7 should crash
diff --git a/changes/automake_required b/changes/automake_required
deleted file mode 100644
index bb50355..0000000
--- a/changes/automake_required
+++ /dev/null
@@ -1,6 +0,0 @@
-  o Build changes
-    - Our build system requires automake 1.6 or later to create the
-      Makefile.in files.  Previously, you could have used 1.4.
-      This only affects developers and people building Tor from git;
-      people who build Tor from the source distribution without changing
-      the Makefile.am files should be fine.
diff --git a/changes/autoreconf b/changes/autoreconf
deleted file mode 100644
index c08cc7a..0000000
--- a/changes/autoreconf
+++ /dev/null
@@ -1,5 +0,0 @@
-  o Minor build changes:
-    - Use autoreconf to launch autoconf, automake, etc from autogen.sh.
-      This is more robust against some of the failure modes associated
-      with running the autotools chain on its own.
-
diff --git a/changes/bufferevent-support b/changes/bufferevent-support
deleted file mode 100644
index e39c36f..0000000
--- a/changes/bufferevent-support
+++ /dev/null
@@ -1,12 +0,0 @@
- o Major features
-   - Tor can now optionally build with the "bufferevents" buffered IO
-     backend provided by Libevent, when building with Libevent 2.0.7-rc
-     or later.  To use this feature, make sure you have the latest possible
-     version of Libevent, and run autoconf with the --enable-bufferevents
-     flag.  Using this feature will make our networking code more flexible,
-     lets us stack layers on each other, and let us use more efficient
-     zero-copy transports where available.
-   - As an experimental feature, when using the "bufferevents" buffered
-     IO backend, Tor can try to use Windows's IOCP networking API.  This
-     is off by default.  To turn it on, add "DisableIOCP 0" to your torrc.
-
diff --git a/changes/bug1982 b/changes/bug1982
deleted file mode 100644
index 30ce2df..0000000
--- a/changes/bug1982
+++ /dev/null
@@ -1,5 +0,0 @@
-  o Major features:
-    - Allow EntryNodes to include country codes like {de} or IP addresses
-      or network masks. Previously we had disallowed these options
-      because we didn't have an efficient way to keep the list up to
-      date. Resolves bug 1982.
diff --git a/changes/bug2444 b/changes/bug2444
deleted file mode 100644
index 405e8dc..0000000
--- a/changes/bug2444
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Minor features:
-    - If we did find a configuration file, log a message saying where we found
-      it during startup. Implements ticket 2444.
-
diff --git a/changes/bug2559 b/changes/bug2559
deleted file mode 100644
index 9715eaf..0000000
--- a/changes/bug2559
+++ /dev/null
@@ -1,6 +0,0 @@
-  o Minor features:
-    - Ordinarily, Tor does not count traffic from private addresses
-      (like 127.0.0.1 or 10.0.0.1) when calculating rate limits or
-      accounting.  There is now a new option, CountPrivateBandwidth, to
-      disable this behavior.  Patch from Daniel Cagara.
-
diff --git a/changes/bug2573 b/changes/bug2573
deleted file mode 100644
index 7a2a802..0000000
--- a/changes/bug2573
+++ /dev/null
@@ -1,3 +0,0 @@
-  o Minor packaging issues
-    - Create the /var/run/tor directory on startup on OpenSUSE if it is
-      not already created.  Patch from Andreas Stieger.  Fixes bug 2573.
diff --git a/changes/bug2702 b/changes/bug2702
deleted file mode 100644
index b119f69..0000000
--- a/changes/bug2702
+++ /dev/null
@@ -1,5 +0,0 @@
-  o Minor features:
-    - Implements --enable-static-tor for configure time. Implements ticket
-      2702. Idea, general hackery and thoughts from Alexei Czeskis, John
-      Gilmore, Jacob Appelbaum.
-
diff --git a/changes/bug507.event b/changes/bug507.event
deleted file mode 100644
index 68ef4b1..0000000
--- a/changes/bug507.event
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Code simplifications
-    - We no longer need link tor-gencert, tor-resolve, or tor-checkkey
-      against libevent; they don't use them, and our code was already
-      refactored not to force them to use them.
diff --git a/changes/cpudetect b/changes/cpudetect
deleted file mode 100644
index eeaa492..0000000
--- a/changes/cpudetect
+++ /dev/null
@@ -1,3 +0,0 @@
-  o Minor features
-    - If you set the NumCPUs option to 0, Tor will try to detect how many
-      CPUs you have.  This is the new default behavior.
diff --git a/changes/dirreq-stats-default b/changes/dirreq-stats-default
deleted file mode 100644
index 673be6a..0000000
--- a/changes/dirreq-stats-default
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Minor features:
-    - Turn on directory request statistics by default and include them in
-      extra-info descriptors. Don't break if we have no GeoIP database.
-
diff --git a/changes/enhancement1668 b/changes/enhancement1668
deleted file mode 100644
index 0d9f88f..0000000
--- a/changes/enhancement1668
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Minor features:
-    - Make logging resolution configurable and change default from 1
-      millisecond to 1 second. Implements enhancement 1668.
-
diff --git a/changes/enhancement1819 b/changes/enhancement1819
deleted file mode 100644
index 9a3f2af..0000000
--- a/changes/enhancement1819
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Minor features:
-    - Relays that set "ConnDirectionStatistics 1" write statistics on the
-      birectional use of connections to disk every 24 hours.
-
diff --git a/changes/enhancement1883 b/changes/enhancement1883
deleted file mode 100644
index fe6bc1a..0000000
--- a/changes/enhancement1883
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Minor features:
-    - Add GeoIP file digest to extra-info descriptor. Implements
-      enhancement 1883.
-
diff --git a/changes/eventdns_routerinfo_key b/changes/eventdns_routerinfo_key
deleted file mode 100644
index 46dcb52..0000000
--- a/changes/eventdns_routerinfo_key
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Minor feature removals
-    - Removed old code to work around versions of Tor so old that they
-      used multiple forked processes to handle DNS requests.  Such
-      versions of Tor are no longer in use as servers.
diff --git a/changes/feature1955 b/changes/feature1955
deleted file mode 100644
index 169b7fd..0000000
--- a/changes/feature1955
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Minor features (controller)
-    - Add a new SIGNAL event to the controller interface so that
-      controllers can be notified when Tor handles a signal.  Resolves
-      issue 1955. Patch by John Brooks.
diff --git a/changes/feature2345 b/changes/feature2345
deleted file mode 100644
index 5ab6a0f..0000000
--- a/changes/feature2345
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Minor features (controller)
-    - Add GETINFO options to get total bytes read and written. Patch
-      from pipe, revised by atagar.  Resolves ticket 2345.
-
diff --git a/changes/getinfo_process b/changes/getinfo_process
deleted file mode 100644
index c6eb6c0..0000000
--- a/changes/getinfo_process
+++ /dev/null
@@ -1,3 +0,0 @@
-  o Minor features
-    - Implement some GETINFO controller fields to provide information about
-      the Tor process's pid, euid, username, and resource limits.
diff --git a/changes/heartbeat b/changes/heartbeat
deleted file mode 100644
index 008d915..0000000
--- a/changes/heartbeat
+++ /dev/null
@@ -1,7 +0,0 @@
-  o Minor features
-    - Add a new 'Heartbeat' log message type to periodically log a
-      message describing Tor's status at level Notice.  This feature
-      is meant for operators who log at notice, adn want to make sure
-      that their Tor server is still working.  Implementation by
-      George Kadianakis.    
-
diff --git a/changes/install-fix b/changes/install-fix
deleted file mode 100644
index fb921eb..0000000
--- a/changes/install-fix
+++ /dev/null
@@ -1,3 +0,0 @@
-  o Minor bugfixes:
-    - Correct a broken faq link in the INSTALL file. Fixes bug 2307.
-
diff --git a/changes/microdesc_dl b/changes/microdesc_dl
deleted file mode 100644
index aca634c..0000000
--- a/changes/microdesc_dl
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Major features:
-    - Caches now download and cache all the consensus flavors that
-      they know about.  This allows them to assess which microdescriptors
-      they need to fetch.
diff --git a/changes/nodelist b/changes/nodelist
deleted file mode 100644
index 033a6c1..0000000
--- a/changes/nodelist
+++ /dev/null
@@ -1,10 +0,0 @@
-  o Code refactorings
-    - Unified our node-listing and selecting logic.  We had at least
-      two major ways to look at the question of "which Tor servers do
-      we know about": our list of router descriptors, and the current
-      consensus.  We're adding a third in microdescriptors.  Having
-      so many systems without an abstraction layer over them was
-      hurting the codebase.  Now, we have a new "node_t" abstraction
-      that presents a consistent interface to a client's view of
-      a Tor node, and holds (nearly) all of the mutable state
-      formerly in routerinfo_t and routerstatus_t.
diff --git a/changes/prop174_server b/changes/prop174_server
deleted file mode 100644
index a2fb39f..0000000
--- a/changes/prop174_server
+++ /dev/null
@@ -1,6 +0,0 @@
-  o Features:
-    - Servers now accept and queue data on not-yet-connected
-      streams.  Previously, such data wasn't allowed.  This forced
-      clients to wait for a CONNECTED cell before sending their
-      data, thus adding a round trip to stream setup.  (Patch from
-      Ian Goldberg; implements the server side of Proposal 174.)
diff --git a/changes/tls-hash b/changes/tls-hash
deleted file mode 100644
index 884ff91..0000000
--- a/changes/tls-hash
+++ /dev/null
@@ -1,5 +0,0 @@
-  o Code simplifications and refactoring:
-    - Use SSL_get_ex_data to map SSL objects to tor_tls_t objects: there's
-      no need for a hash table.
-
-
diff --git a/changes/tor-fw-helper b/changes/tor-fw-helper
deleted file mode 100644
index f87d828..0000000
--- a/changes/tor-fw-helper
+++ /dev/null
@@ -1,14 +0,0 @@
-  o Major features:
-    - Tor now has the ability to wrangle NAT devices like a good network cowbot
-      with the tor-fw-helper tool. The tor-fw-helper tool supports Apple's
-      NAT-PMP protocol and the UPnP standard for TCP port mapping. This
-      optional tool may be enabled at compile time by configuring with
-      '--enable-upnp' or '--enable-natpmp' or with both. This tool may be
-      called by hand or by Tor.  By configuring the PortForwarding option, Tor
-      will launch the helper on a regular basis to ensure that the NAT mapping
-      is regularly updated.  Additionally, a user may also specify an
-      alternative helper by using the PortForwardingHelper option. The helper
-      may be specified by name or with the full path to the helper. The default
-      helper is named 'tor-fw-helper' and any alternative helper must take the
-      tor-fw-helper-spec.txt into account.
-



More information about the tor-commits mailing list