about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2017-06-08 21:54:43 +0000
committerEric Wong <e@80x24.org>2017-06-08 21:54:43 +0000
commit18c001fec61daa1413cdc35af4a14266979cc4b5 (patch)
tree3696a08701c61fd04c583c3c71dad77445b2d129
parent60d44c494c90c2e2afb3087d70d5cf6a1384e4d2 (diff)
downloadmsgthr-18c001fec61daa1413cdc35af4a14266979cc4b5.tar.gz
Mainly, we want to emphasize the container-agnosticism over the
non-recursive nature of our algorithm; as the former will likely
be more appealing to those not familiar with message threading
at all.
-rw-r--r--README69
-rw-r--r--msgthr.gemspec2
2 files changed, 46 insertions, 25 deletions
diff --git a/README b/README
index ca7c24c..326c5a6 100644
--- a/README
+++ b/README
@@ -1,36 +1,53 @@
-msgthr - non-recursive, container-agnostic message threading
+msgthr - container-agnostic, non-recursive message threading
 ------------------------------------------------------------
 
-Message threading based on the algorithm described by JWZ in
-<https://www.jwz.org/doc/threading.html> and used in
-countless mail and news readers; but with some features
-removed and improved flexibility:
+Pure Ruby message threading based on the algorithm described by
+JWZ in <https://www.jwz.org/doc/threading.html> and used in
+countless mail and news readers; but with some features removed
+and improved flexibility:
+
+* Message format-agnostic, not limited to email or NNTP;
+  but even appropriate for forums, blog comments, IM, etc.
+  For mail and NNTP messages, that means you must extract
+  the Message-ID and parse the References and In-Reply-To
+  headers into an array yourself.
+
+* No recursion; all algorithms are non-recursive to avoid
+  SystemStackError exceptions in deep message threads.
+  Memory usage is bound by the number of lightweight containers
+  needed to represent a thread.
 
 * No pruning of non-leaf ghosts.  Readers are not shielded
   from deleted or lost messages.  Equivalent to setting
   "hide_missing" to "no" in mutt.
 
-* No grouping by subject.  This makes things ideal for short
+* No grouping by subject[1].  This makes things ideal for short
   messages such as chat and status updates.  For email, this
   encourages the use of proper client which set In-Reply-To
-  or References headers.  Equivalent to setting
-  "strict_threads" to "yes" in mutt.
-
-* No recursion; all algorithms are non-recursive to avoid
-  SystemStackError exceptions in deep threads.
-  Memory usage is bound by the number of lightweight containers
-  needed to represent a thread.
+  or References headers.  Equivalent to setting "strict_threads"
+  to "yes" in mutt.
 
-* Message format-agnostic, not limited to email or NNTP;
-  but even appropriate for forums, blog comments, IM, etc.
-  For mail and NNTP messages, that means you must extract
-  the Message-ID and parse the References and In-Reply-To
-  headers into an array yourself.
+  [1] - Instead, messages with the same Subject can be grouped
+        by a search engine.  For email, this would be done using
+        a mail search engine like notmuch or mairix.
 
 Source code
 -----------
 
+Our Ruby 1.9.3+ compatible code is available via git,
+no C compiler or other dependencies are required:
+
         git clone git://80x24.org/msgthr
+        git clone https://80x24.org/msgthr.git
+
+Releases may be downloaded via RubyGems:
+
+        gem fetch [-v VERSION] msgthr
+
+The code used in this Ruby library was originally derived from
+the Mail::Thread module for Perl 5.x:
+
+        https://metacpan.org/release/Mail-Thread
 
 Contact
 -------
@@ -42,10 +59,12 @@ and pull requests to the open-to-all mailing list at:
         msgthr-public@80x24.org
 
 No subscription will ever be required to post.  Please Cc: all
-recipients as subscription is not necessary.
+recipients as subscription will never be necessary.
+
+Mailing list archives are available via HTTPS and NNTP:
 
-Mailing list archives via HTTPS: https://80x24.org/msgthr-public/
-Or NNTP: nntp://news.public-inbox.org/inbox.comp.lang.ruby.msgthr
+        https://80x24.org/msgthr-public/
+        nntp://news.public-inbox.org/inbox.comp.lang.ruby.msgthr
 
 You may optionally subscribe, but will never be required to:
 
@@ -53,14 +72,16 @@ You may optionally subscribe, but will never be required to:
 
 This README is our homepage, we would rather be working on cool
 stuff day than worrying about the next browser vulnerability
-because HTML/CSS/JS/images are too complicated for us.
+because CSS/JS/images are all too complicated for us.
+
+RDoc API documentation in simple HTML is available at:
 
-* https://80x24.org/msgthr/README
+        https://80x24.org/msgthr/rdoc/
 
 Copyright
 ---------
 
-Copyright 2016, all contributors (see git repo).
+Copyright 2016-2017, all contributors (see git repo).
 License: GPL-2.0+ <https://www.gnu.org/licenses/gpl-2.0.txt>
 
 msgthr is copyrighted Free Software by all contributors, see logs in
diff --git a/msgthr.gemspec b/msgthr.gemspec
index 0bb591e..ab0cd74 100644
--- a/msgthr.gemspec
+++ b/msgthr.gemspec
@@ -6,7 +6,7 @@ Gem::Specification.new do |s|
   s.name = %q{msgthr}
   s.version = ENV['VERSION'] || '0.0.0'
   s.authors = ['msgthr hackers']
-  s.summary = 'non-recursive, container-agnostic message threading'
+  s.summary = 'container-agnostic, non-recursive message threading'
   s.description = File.read('README').split(/\n\n/)[1].strip
   s.email = %q{msgthr-public@80x24.org}
   s.homepage = 'https://80x24.org/msgthr/'