[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[leafnode-list] New or enhanced filtering in leafnode-2.0?

A few times over the past year, I've raised the issue of having a more
advanced filtering mechanism for leafnode.  Now that we're discussing
version 2.0, I'd like to once again request that filtering be

The problem that I'd like to solve is that I, like many leafnode
users, download news over a slow modem connection for my personal
computer at home, and because my bandwidth is limited, I'd like to be
able to do much more sophisticated filtering of articles before they
are downloaded to my local machine.

To repeat what I have said in other articles this past year, here is
some typical filtering logic that I would like to apply that is
impossible using the current filtering mechanism:

(1) For a given newsgroup and that newsgroup only, filter out
    all articles whose subjects do not match a certain string.

    Example:   in the newsgroup  `news.software.readers', I
               *only* want to download articles that have
               the string "slrn" (upper or lower case) in the
               Subject: line.

(2) For a certain set of newsgroups, only download articles whose
    Subject: lines contain a certain pattern; for the rest of the
    newsgroups, ignore all articles whose Subject: lines contain
    this same patter.

    Example:   in all `alt.binaries.*' newsgroups, *only* download
               articles which have the following pattern in
               their Subject: lines:     \.(jpe?g|gif)
               [upper or lower case]

               in all other newsgroups, *never* download articles
               which have the following pattern in their Subject:
               lines:   \.(jpe?g|gif)  [upper or lower case]

Last year I submitted a quick-and-dirty proof of concept patch for a
score-based filtering mechanism much like that of `slrnpull'.  It
could handle existing filter files in exactly the same way as today's
filtering, but also, it could comprehend a more comprehenisive
score-based filtering syntax.  Therefore, with this patch, those who
liked the current filtering mechanism could use their existing filter
files without any change, and only those people like me who wanted the
enhanced score-based filtering could make use of it.

The patch was tested and ultimately rejected because my scoring syntax
was a bit complex, and also because I threw it together quickly using
flex ... not everyone had flex on their systems and for them, leafnode
couldn't be built.  However, the filtering and scoring themselves
worked just fine.

I'd like to fervently request that *some* sort of enhanced filtering
be put into leafnode-2.0, so that it can handle as a minimum the types
of cases that I outlined above in my examples.  Keep in mind that I
believe that this should be *optional*, and that the current filtering
capabilities should still be available ... this way no one has to
change anything unless they actually want to use the enhanced

Look for the "filtering revisited" thread in the leafnode mailing list
archives to see our previous discussion of various filtering-related
issues, as well as a discussion of some of the ways that this
filtering could be accomplished.

I hope we can discuss this a bit and agree on a new filtering approach.

Also, over the next week or so I'm going to write and submit another
proof-of-concept patch for a new filtering mechanism.  It will accept
current filter files unchanged, and it also will allow the enhanced
filtering that I'm advocating so that we can try it, discuss it,
debate it, etc.  Stay tuned ...

 Lloyd Zusman

leafnode-list@xxxxxxxxxxxxxxxxxxxxxxxxxxxx -- mailing list for leafnode
To unsubscribe, send mail with "unsubscribe" in the subject to the list