Re: [discuss] UpdateManager & Updates

Sam Berlin <[email protected]> Mon, 14 Feb 2005 15:08:11 -0500
Newsgroups gmane.network.gnutella.limewire.general
Message-ID <[email protected]>
Hi Randy,

LimeWire uses a distributed update mechanism to signal when updates are 
available.  We do this by connecting one computer to the network and 
publishing a file.  This file then gets distributed through the entire 
network, notifying them that an update is available.  The publishing 
mechanism is distinct from the actual current version of LimeWire so 
that we can offer new versions on our website without always notifying 
existing users that the new version exists.  This is so users don't 
become annoyed by constant updates (which we offer frequently).  More 
often than not, existing versions will work okay.  We signal new 
versions when there are significant changes.

The update mechanism is due for some changes so that we can update the 
version & message without requiring all users see it.  For instance, we 
should add the ability to have a "last acceptable version" before 
showing the update message.  We'd also like to add the ability to have 
different messages for different OS's, and other things.  An extensible 
publishing mechanism is in the works.

We're being particularly cautious with signaling new versions recently 
because of the popularity surge of LimeWire.  Our servers aren't able 
to handle the massive amount of traffic that an update signal would 
cause.  During the last signal (for 4.2), FileFront.com graciously 
offered to host our files.  We don't want to be in a position of "what 
do we do?!?!" for every signal, though.  Our Windows installer (the 
largest user-base) has undergone significant revisions, and we've been 
able to reduce the size from approximately 6MB to 2.2MB.  
Unfortunately, that's still not good enough.  We're putting the 
finishing touches on a completely networked installer that will be 
approximately 400KB (maybe smaller) in size and will swarm the rest of 
the components from LimeWire itself.  We've recently added changes into 
LimeWire to support this infrastructure, so we're just working on 
finishing up the installer right now.  One of the largest problems is 
that we need to do this without Java, because many computers need Java 
installed.  Fortunately, we have a very talented Windows C++ programmer 
on the team now.  Once the work is finished, we will likely be 
releasing the work as an NSIS plugin (which is what we're developing it 
as) so that other developers can use a 
Gnutella-network-swarmed-installer from NSIS installations.

Thanks,
  Sam

On Feb 14, 2005, at 2:46 PM, Randy Johnson wrote:

>
> I was taking a look at UpdateManager, trying to figure out how 
> LimeWire's update mechanism works, and I've found a confusing thing 
> happening.  The latest version, according to the website, is 4.4.4.  
> When I connect to other LimeWire's though, regardless of what version 
> they say they are via their vendor string, they all say their version 
> is 4.2.6?  Can someone shed some light on this?  Should the 4.4.4 guys 
> at least be saying they are 4.4.4?
>
> Gracias,
> Randy J.
>
> _________________________________________________________________
> Don’t just search. Find. Check out the new MSN Search! 
> http://search.msn.click-url.com/go/onm00200636ave/direct/01/
>
> _______________________________________________
> discuss mailing list
> [email protected]
> http://www.limewire.org/mailman/listinfo/discuss
>


_______________________________________________
discuss mailing list
[email protected]
http://www.limewire.org/mailman/listinfo/discuss