Shareaza

Shareaza is a peer-to-peer file sharing client running under Microsoft Windows which supports the Gnutella, Gnutella2 (G2), eDonkey, BitTorrent, FTP, HTTP and HTTPS network protocols and handles magnet links, ed2k links, and the now deprecated gnutella and Piolet links. It is available in 30 languages.

Shareaza was developed by Michael Stokes until June 1, 2004, and has since been maintained by a group of volunteers. On June 1, 2004, Shareaza 2.0 was released, along with the source code, under the GNU General Public License (GPL-2.0-or-later), making it free software.

Multi-network
Shareaza can connect to Gnutella, G2, eDonkey and BitTorrent. Shareaza hashes its files for all networks, and then distributes those hash values on G2. This allows Shareaza to download one file from several networks at once. When another client connected to G2 finds such a file, it is given the hash values for all networks and can search on the other networks with their respective hash values, which increases the number of sources and the download speed of the file. Shareaza also uses its G2 network to find more sources for torrents.

Security filter
The Shareaza client has some basic content filters including a forced child and optional adult pornography filter, and some other optional filters such as a filter for files encumbered with Digital rights management (DRM). Shareaza's security filters can also be extended with user-defined keywords and/or IP addresses. Later versions of Shareaza allow for the use of regular expressions and filtering by hash. These filters increase the chances of getting the files the user wants and decrease the chance of getting malicious or fake files. The file format used for the filters is an extendable XML schema. The filters are editable inside Shareaza, and can be exported from the application to be shared with others.

Plugins


Shareaza implements a framework for additional plugins. The Shareaza installer ships several plugins. Most of them are used to read and strip off built in metadata from the files being hashed and convert it to an external XML based format, or to decode multimedia files for making a preview for other G2 clients. Some others serve the need of a media player inside Shareaza, and enhancements of that media player. Third party plugins can also be used, for example, Sharemonkey, which will add a link inside Shareaza when downloading or searching copyrighted material from where it can be legally downloaded.

Skins
The client can have almost all parts of the GUI skinned. This includes bars, icons, as well as backgrounds and buttons. In that way, Shareaza can be completely changed with colors, images, new buttons, etc. A basic list of skins is contained in the Shareaza installer package. Other skins can be downloaded in the community forums or found via a search for .sks (Shareaza skin files) in the G2 network. The skins are zip archives, renamed with the extension .sks, containing icons and images, as well as an XML file which binds the images and colors with the GUI.

This feature is also used for localization. The language files are XML files, like the normal skins, but not zipped. The XML file contains the translations for a certain part of the program. This enables languages to be easily changed, updated and tested without compiling an entire binary.

Modes
Shareaza has three user modes. The first one is for normal users. This mode is the default mode and provides a clean, trimmed GUI. Users will not be able to make major changes to settings in this mode but will be able to make use of the most essential functions, like searching and downloading. The second mode is for power users. It provides more access to network and advanced settings but can also break your connection to the networks. The third mode is the windowed mode. In this mode, users can see different tabs (windows) simultaneously, providing a lot of control about the things happening. This mode also makes it possible to personalize the look of the client to perfectly fit the needs of the respective user.

IRC
Shareaza contains a built-in IRC (chat) client which allows users to communicate with each other. There are channels in several languages for support and help. These channels are located on the P2PChat servers and can also be joined by any normal IRC client or via a Java addon on the Shareaza homepage.

History
In mid-2002 Stokes released the first version of a gnutella client he had written and dubbed "Shareaza". It was from the beginning a client with the aim of having features other gnutella clients did not have. Over the next two years Stokes coded in support for the eDonkey 2000 network, BitTorrent and a rewritten gnutella-based protocol which he named Gnutella2.

On June 1, 2004 Stokes released the Shareaza source code under the GPL-2.0-or-later license (which coincided with the release of Shareaza version 2.0). Shareaza joined LimeWire, Gnucleus, and others as an open-source client on the Gnutella network.

Since the beginning Shareaza was advertised as "completely free. No ads, no spyware, no guilting you to upgrade to a commercial version", stating that the developers "[couldn't] stand that kind of crap." It has remained as such in each subsequent release.

From the first version Shareaza has supported swarming, metadata, library management, and automatic file hashing.

Domain takeover
On 19 December 2007 the project's domain name, shareaza.com, was redirected to a site claiming to be "The Official Home of Shareaza", promoting the download of a client known as Shareaza V4 (which had become V6 in October 2009, V7 in August 2010, and V8 ) unrelated to releases by the Shareaza development team, an iMesh clone with only small graphical modifications, and using Shareaza v1 logo. The domain owner Jon Nilson was forced to sell it as a part of a settlement with La Societe Des Producteurs De Phonogrammes En France. This client is a network interface for a centralised music shop by Discordia Ltd. and does not connect to any open P2P network such as Gnutella, G2, eDonkey or BitTorrent. Content is limited to the DRM-protected music that can be bought in Discordia's online music store; Discordia is a company based in Cyprus, closely related to the RIAA and unrelated to the Shareaza development team. In response the Shareaza development team moved their website to SourceForge.

Versions prior to 2.3.1.0 of the original Shareaza connected to www.shareaza.com to check for software updates. From 1 January 2008 the new owner of the domain shareaza.com, Discordia Ltd. used this update check mechanism to suggest to users that ShareazaV4 (and later ShareazaV5, V6, and V7) was an update to the original Shareaza client. Since version 2.3.1.0, released on 3 January 2008, the original Shareaza has linked to the Shareaza pages at sourceforge.net.

Trademark registration by iMesh
On January 10, 2008, the new owners of Shareaza.com, Discordia Ltd (iMesh Inc.), filed for trademark registration of the Shareaza name in an attempt to stop the original developers from using the name, claiming that the first-ever use was on December 17, 2007. The Shareaza Development Team obtained legal representation to challenge the registration and a legal defense fund was set up. The development team appointed William Erwin to handle the donations; it was stated that he had been paid by iMesh to sabotage the defense, and that he had stolen the money donated. The trademark was awarded to iMesh after the development team had given up defending the trademark.

Version history
Release notes for all versions from 2.0.0.0 are linked from the Sharaza ChangeLog page.

v2.3.1.0

Version 2.3.1.0 is the last stable version of Shareaza that supports Windows 9x. It followed 2 days after the new owners of the project domain exploited the updating mechanism to emit a false update message to trick users into installing their fake Shareaza V4 client and contained a fix for this issue.

v2.4.0.0

Version 2.4.0.0 of Shareaza was released on October 1, 2008, with many bug fixes and major changes to provide better stability of the client. It was the first stable release to include IRC support. Furthermore, major changes to the torrent handling mechanism were made and Windows 98/Me support was discontinued (the last version working on Windows 9x is 2.3.1.0).

When v2.4 was released the roadmap for the next version (2.4.1.0, a v2.5 release candidate) was set for release around October 1, 2009, to be followed by 2.5.0.0 a month later.

v2.5.x.0

Version 2.5.0.0 of Shareaza was released on October 31, 2009. It was significantly more stable and less resource-consuming than earlier versions, and further improved BitTorrent support, such as by selective downloading of files contained in batch torrents and download prioritization. There were also updates to the Gnutella and eD2k implementation, such as extended support for GGEP, large files and chat. The IRC implementation of v2.4.0.0 was reworked to free it of the bugs that made it partially unusable in the previous version. Download manager capabilities were extended, Internet Explorer integration added, and BugTrap included to speed up and simplify reporting crashes.

Version 2.5.1.0 of Shareaza was released on December 1, 2009. It was significantly more stable and more functional than its predecessor due to fixed bugs. It improved usability and compatibility of BitTorrent according to most popular service suggestions. It made use of and required the SSE instruction set, and thus required at least a Pentium-III or an Athlon-XP processor.

Version 2.5.2.0 of Shareaza was released on February 6, 2010. It brought further improvements on stability. This and later versions were available optionally either as an SSE or non-SSE build to allow the use of older processors, unlike the SSE-only version 2.5.1.0. For this and later releases the SSE-optimized build uses SSE2 and requires at least a Pentium 4 or AMD Athlon 64.

Shareaza v2.5.3.0, released on June 13, 2010, focused on internal changes and optimizations; the only significant addition was a scheduler that allows full control over what the application does at a given time while running unattended.

Shareaza v2.5.4.0, released on February 12, 2011, improved UPnP support and added limited DC++ support. μTorrent-compatible peer exchange and tracker exchange for BitTorrent were also added. It fixed remaining IRC chat bugs and a lot of rather uncommon/rarely seen crashes.

Shareaza v2.5.5.0, released on May 29, 2011, further improved UPnP support and included DC++ and Gnutella updates, enhanced anti-spam protection during searches, and multi-file download merging.

V2.6.0.0 was released on 3 June 2012, adding support for BitTorrent (Mainline) DHT and UDP trackers as well as containing interface optimizations for Windows 7.
 * V2.6.0.0

Shareaza 2.7.0.0 was made available on 31 August 2013, with a great many bugfixes. It contained major improvements to the BitTorrent support, eDonkey uploading and the built-in media player. It was followed by further V2.7.x.x releases.
 * V2.7.x.x

Awards and reviews

 * In November 2008, Shareaza was SourceForge Project of the Month.
 * In December 2009 Shareaza was ranked number 5 in SourceForge.Net's "What's Hot for Windows?" file sharing software ranking with 78% "recommended" (while number 1 was 81% "recommended"). it was in the same position. The ranking is based on user recommendations and opinions and downloads of software from project site.