From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.0 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 2162E1F4F8 for ; Wed, 5 Oct 2016 23:57:25 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 0/17] remove Mail::Thread dependency Date: Wed, 5 Oct 2016 23:57:05 +0000 Message-Id: <20161005235722.14857-1-e@80x24.org> List-Id: This greatly reduces the amount of code we need to load while reducing abstractions which slow us down and hurt memory use when displaying gigantic threads. More may be done and we may use SearchMsg directly for threading in the future and obviate the need for the container abstraction. Eric Wong (17): view: remove "subject dummy" references thread: remove Mail::Thread dependency thread: pass array refs instead of entire arrays thread: remove accessor usage in internals inbox: deal with ghost smsg thread: remove Email::Abstract wrapping thread: remove rootset accessor method thread: simplify thread: remove iterate_down thread: avoid incrementing undefined value thread: order_children no longer cares about depth thread: inline and remove recurse_down logic thread: fix sorting without topmost thread: use hash + array instead of hand-rolled linked list view: remove redundant children array in thread views t/thread-cycle: test self-referential messages thread: remove weaken dependency INSTALL | 1 - MANIFEST | 3 +- Makefile.PL | 1 - lib/PublicInbox/Inbox.pm | 2 + lib/PublicInbox/SearchIdx.pm | 4 +- lib/PublicInbox/SearchMsg.pm | 29 ------- lib/PublicInbox/SearchThread.pm | 147 +++++++++++++++++++++++++++++++++++ lib/PublicInbox/SearchView.pm | 15 ++-- lib/PublicInbox/Thread.pm | 86 --------------------- lib/PublicInbox/View.pm | 165 ++++++++++++++++++---------------------- lib/PublicInbox/WWW.pm | 2 +- t/plack.t | 3 +- t/search.t | 7 +- t/thread-cycle.t | 97 +++++++++++++++++++++++ 14 files changed, 333 insertions(+), 229 deletions(-)