[tor-commits] [stem/master] Converting stem.version to reStructuredText

atagar at torproject.org atagar at torproject.org
Wed Jun 6 04:30:17 UTC 2012


commit ecc0e86d46ac2db77d45d46af5ac50168befa6c9
Author: Damian Johnson <atagar at torproject.org>
Date:   Sun Jun 3 16:18:00 2012 -0700

    Converting stem.version to reStructuredText
---
 docs/conf.py    |    3 +--
 docs/index.rst  |    5 +++++
 stem/version.py |   54 +++++++++++++++++++++++-------------------------------
 3 files changed, 29 insertions(+), 33 deletions(-)

diff --git a/docs/conf.py b/docs/conf.py
index d07c0cc..a9d4b7d 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -28,8 +28,7 @@ needs_sphinx = '1.1' # required for the sphinx-apidoc command
 # coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
 extensions = ['sphinx.ext.autodoc', 'sphinx.ext.viewcode']
 
-autoclass_content = 'both'
-autodoc_member_order = 'groupwise'
+autodoc_member_order = 'bysource'
 autodoc_default_flags = ['members', 'show-inheritance', 'undoc-members']
 
 # Add any paths that contain templates here, relative to this directory.
diff --git a/docs/index.rst b/docs/index.rst
index 6cf06ea..c735bf6 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -13,6 +13,11 @@ Stem is a python controller library for `Tor <https://www.torproject.org/>`_. Li
 
 Used for launching Tor and managing the process.
 
+:mod:`stem.version`
+-------------------
+
+Parsed versions that can be compared to the requirement for various features.
+
 .. toctree::
    :maxdepth: 2
 
diff --git a/stem/version.py b/stem/version.py
index eb0f707..925acf0 100644
--- a/stem/version.py
+++ b/stem/version.py
@@ -8,14 +8,13 @@ easily parsed and compared, for instance...
 >>> my_version > stem.version.Requirement.CONTROL_SOCKET
 True
 
-get_system_tor_version - gets the version of our system's tor installation
-Version - Tor versioning information.
-  |- __str__ - string representation
-  +- __cmp__ - compares with another Version
-
-Requirement - Enumerations for the version requirements of features.
-  |- GETINFO_CONFIG_TEXT - 'GETINFO config-text' query
-  +- CONTROL_SOCKET      - 'ControlSocket <path>' config option
++----------------------------------------------------------+
+|Requirement                                               |
++=====================+====================================+
+|GETINFO_CONFIG_TEXT  |'GETINFO config-text' query         |
++---------------------+------------------------------------+
+|CONTROL_SOCKET       |'ControlSocket <path>' config option|
++---------------------+------------------------------------+
 """
 
 import re
@@ -31,14 +30,11 @@ def get_system_tor_version(tor_cmd = "tor"):
   Queries tor for its version. This is os dependent, only working on linux,
   osx, and bsd.
   
-  Arguments:
-    tor_cmd (str) - command used to run tor
+  :param str tor_cmd: command used to run tor
   
-  Returns:
-    stem.version.Version provided by the tor command
+  :returns: :class:`stem.version.Version` provided by the tor command
   
-  Raises:
-    IOError if unable to query or parse the version
+  :raises: IOError if unable to query or parse the version
   """
   
   if not tor_cmd in VERSION_CACHE:
@@ -70,27 +66,23 @@ def get_system_tor_version(tor_cmd = "tor"):
 
 class Version:
   """
-  Comparable tor version, as per the 'new version' of the version-spec...
-  https://gitweb.torproject.org/torspec.git/blob/HEAD:/version-spec.txt
+  Comparable tor version. These are constructed from strings that conform to
+  the 'new' style in the `tor version-spec
+  <https://gitweb.torproject.org/torspec.git/blob/HEAD:/version-spec.txt>`_,
+  such as "0.1.4" or "0.2.2.23-alpha (git-7dcd105be34a4f44)".
+  
+  :var int major: major version
+  :var int minor: minor version
+  :var int micro: micro version
+  :var int patch: optional patch level (None if undefined)
+  :var str status: optional status tag without the preceding dash such as 'alpha', 'beta-dev', etc (None if undefined)
   
-  Attributes:
-    major (int)  - major version
-    minor (int)  - minor version
-    micro (int)  - micro version
-    patch (int)  - optional patch level (None if undefined)
-    status (str) - optional status tag without the preceding dash such as
-                   'alpha', 'beta-dev', etc (None if undefined)
+  :param str version_str: version to be parsed
+  
+  :raises: ValueError if input isn't a valid tor version
   """
   
   def __init__(self, version_str):
-    """
-    Parses a valid tor version string, for instance "0.1.4" or
-    "0.2.2.23-alpha (git-7dcd105be34a4f44)".
-    
-    Raises:
-      ValueError if input isn't a valid tor version
-    """
-    
     self.version_str = version_str
     m = re.match(r'^([0-9]+)\.([0-9]+)\.([0-9]+)(\.[0-9]+)?(-\S*)?$', version_str)
     





More information about the tor-commits mailing list