The thing is, BearShare's network performance is so well optimized that it
actually can hit those limits. Numbers in a GUI are meaningless without the
performance to back them up. Overall streams can be set to 999, by the
way, though few machines can even manage as many as 500 without bogging
down. Mine just barely makes 500 when I push it but what's the point in
dividing a broadband connection so thinly? Maybe it's for those lucky folks
with fiber. ;]
LimeWire has to put limits on because Java is never going to be as efficient as
fully native code, especially that churned out by M$ compilers for M$
operating systems.
As for feature comparisons, I have no idea what Phex has. I do believe that
GTK has fallen well behind in the past few years because the development
teams for LimeWire and BearShare were huge by comparison. You can pretty
much assume that LimeWire and BearShare added the same core features
during that time, such as high outdegree, OOB hit returns, push proxy, full
alt-loc capabilities [including FWalt] and UDP hole punching for firewalls the
user cannot control or remove. LimeWire has just added the ability to use my
Fullsize Hostiles List in 4.13, though that's not new to BearShare.
Point-to-point chat and browsing hosts is compatible between BearShare and
LimeWire but I don't consider those to be new features.
I suppose you could always grab a copy of BearShare 5.1.0b25 and give it a
test drive. Along with trying out the visible features, you will get the
changelog (history.txt) in the program folder. All of the new features are
mentioned in there. To go back further in the history you can always look for
5.0.x versions and read their history.txt file.
By the way, can Phex load up an IP block list with over 300,000 rules? Take a
look at LimeWire's better-ipfilters-branch and the new PATRICIA Trie. I doubt
it's an exact fit but you might find it useful. Here's the Jira entry for it, from
which you can find those parts of the beta source:
https://www.limewire.org/jira/browse/CORE-52