[tor-commits] [stem/master] Compare descriptor parsing libraries
atagar at torproject.org
atagar at torproject.org
Sun Oct 18 21:38:47 UTC 2015
commit d6985eeec6d42ddcf043f898e4a0a2026a56dd48
Author: Damian Johnson <atagar at torproject.org>
Date: Sun Oct 18 14:34:46 2015 -0700
Compare descriptor parsing libraries
First step for the scheme Karsten and I hatched to comparing our libraries...
https://lists.torproject.org/pipermail/tor-dev/2015-October/009606.html
This is the easy part. Next up need to write some metrics-lib scripts to get
some performance benchmarks...
---
docs/_static/style.css | 10 ++++++
docs/tutorials/mirror_mirror_on_the_wall.rst | 42 ++++++++++++++++++++++++++
2 files changed, 52 insertions(+)
diff --git a/docs/_static/style.css b/docs/_static/style.css
index 098529d..fe9db20 100644
--- a/docs/_static/style.css
+++ b/docs/_static/style.css
@@ -5,3 +5,13 @@ div.literal-block-wrapper {
span.caption-text {
float: right;
}
+
+span.red {
+ color: red;
+ font-weight: bold;
+}
+
+span.green {
+ color: green;
+ font-weight: bold;
+}
diff --git a/docs/tutorials/mirror_mirror_on_the_wall.rst b/docs/tutorials/mirror_mirror_on_the_wall.rst
index 2677aeb..1e6aadc 100644
--- a/docs/tutorials/mirror_mirror_on_the_wall.rst
+++ b/docs/tutorials/mirror_mirror_on_the_wall.rst
@@ -12,6 +12,7 @@ with what they are and where to get them then you may want to skip to the end.
* :ref:`validating-the-descriptors-content`
* :ref:`saving-and-loading-descriptors`
* :ref:`putting-it-together`
+* :ref:`are-there-any-other-parsing-libraries`
.. _what-is-a-descriptor:
@@ -248,3 +249,44 @@ could use any of the methods above, but for this example we'll use
14. politkovskaja2 (24.93 MB/s)
15. wau (24.72 MB/s)
+.. _are-there-any-other-parsing-libraries:
+
+Are there any other parsing libraries?
+--------------------------------------
+
+Yup! Stem isn't the only game in town when it comes to parsing. `Metrics-lib
+<https://gitweb.torproject.org/metrics-lib.git/>`_ is a highly mature parsing
+library for Java, and `Zoossh
+<https://gitweb.torproject.org/user/phw/zoossh.git/>`_ is available for Go.
+Each library has its own capabilities...
+
+.. role:: red
+.. role:: green
+
+=========================== ================= =============== ==============
+Capability Stem Metrics-lib Zoossh
+=========================== ================= =============== ==============
+Language :green:`Python` :green:`Java` :green:`Go`
+Checks signatures :green:`Mostly` :red:`No` :red:`No`
+Create new descriptors :red:`No` :red:`No` :red:`No`
+Lazy parsing :green:`Yes` :red:`No` :green:`Yes`
+Type detection by @type :green:`Yes` :green:`Yes` :red:`No`
+Type detection by filename :green:`Yes` :red:`No` :red:`No`
+Packages :green:`Several` :red:`None` :red:`None`
+**Can Read/Download From**
+Files :green:`Yes` :green:`Yes` :green:`Yes`
+Tarballs :green:`Yes` :green:`Yes` :red:`No`
+Directory Authorities :green:`Yes` :green:`Yes` :red:`No`
+CollecTor :red:`No` :green:`Yes` :red:`No`
+**Supported Types**
+Server Descriptors :green:`Yes` :green:`Yes` :green:`Partly`
+Extrainfo Descriptors :green:`Yes` :green:`Yes` :red:`No`
+Microdescriptors :green:`Yes` :green:`Yes` :red:`No`
+Consensus :green:`Yes` :green:`Yes` :green:`Partly`
+Bridge Descriptors :green:`Yes` :green:`Yes` :red:`No`
+Hidden Service Descriptors :green:`Yes` :red:`No` :red:`No`
+Bridge Pool Assignments :red:`No` :green:`Yes` :red:`No`
+Torperf :red:`No` :green:`Yes` :red:`No`
+Tordnsel :green:`Yes` :green:`Yes` :red:`No`
+=========================== ================= =============== ==============
+
More information about the tor-commits
mailing list