Voor het uitwisselen van bestanden zijn er in de loop van de tijd verschillende netwerken en applicaties ontwikkeld, zoals het Gnutella-netwerk waarop een aantal verschillende applicaties actief zijn. LimeWire is er hier één van en biedt ondersteuning aan een groot aantal besturingssystemen doordat er gebruik wordt gemaakt van de Java omgeving. De ontwikkelaars hebben een nieuwe versie de deur uitgedaan met 4.13.0 als het versienummer en voorzien van de volgende veranderingen:
Version 4.13.0:
- Integrate Bittorrent.
- Require Java 1.5.
- Many, many behind-the-scenes changes to modularize the code. Nearly every single source file was altered.
- Added support for reading metadata from files in Quicktime format.
- Added support for reading metadata from files in MPEG 1 & MPEG 2 format.
- Fixed editing MP3 files to not use 'unsynchronization', which caused Windows Explorer to be unable to interpret the metadata.
- Move deleted files to the Recycle Bin on Windows and Trash on OSX.
- Display "&" instead '&", "'" instead of "'", and other fixes for metadata if the metadata incorrectly contained these converted values.
- Begin all file or directory choosers in the last directory that was used, instead of the current working directory.
- Added the ability to drop new files or folders on LimeWire and have LimeWire ask if you want to share them.
- Added the ability to drag search results to the download table and have them start downloading.
- Added the ability to drag files into the media player and have them added to the playlist.
- Added the ability to drag magnet links, torrent files, and torrent links onto LimeWire and have them start.
- Updated D&D to work on Linux.
- Fix to set the icon to an hourglass while a preview is being constructed after double-clicking on a download-in-progress.
- Remove magnet protocol check from LimeWire launcher and put it in LimeWire.exe
- Allow the user to choose whether or not they want LimeWire to be their default magnet handler.
- Do not display hidden files in the library.
- Add a 'Search in Shared Files' searchbox into the library.
- Allow multiple hosts to blocked at once from search results.
- Fix to show that a download in 'Connecting...' status is really hitting more hosts, by adding 'Connecting (tried ## hosts)' after 15 hosts are tried.
- Fix display of 'Length' and other formatted metadata values in tooltips and filterboxes to show as 'HH:MM:SS' instead of a big number in seconds.
- Allow browse-host to work on yourself even if you're firewalled or in a private network.
- Allow files resumed from the library to go to the proper directory for the file's mediatype.
- Analyze all data files when starting to detect errors and ignore them, instead of failing to startup.
- Fix many issues related to upload requests improperly being rejected.
- Improve security of OOB replies.
- Use a pool for deflater / inflater objects, reducing the amount of memory required for initiating connections, sending/reading query replies with XML, and sending/reading QRP tables.
- Re-enable the magnetmix button by default.
- Use the built-in XML parser instead of bundling an additional xerces parser.
- Fix scanning for stalled uploads to reduce the number of 'watchdog' objects created.
- Fix launching processes to display a message if the process failed to launch.
- Add support for binding to a specific IP address when creating outgoing connections.
- Internationalize the popupmenu from the system tray.
- Force Windows icons to be refreshed when LimeWire takes a filetype association.
- Open a URL on Windows without requiring the "donotremove.htm" file.
- Launch a file on Windows using the default command, instead of forcing 'open' always.
- Skip over invalid characters when reading XML (from the network or from disk).
- Do not print [Fatal Error] or other such comments to the console when parsing XML from the network.
- Update the About window.
- Remove LimeWire.exe from the Window's firewall exception list if it added itself when LimeWire started.
- Optimize right-click menu on text fields to not require retrieving the clipboard contents when determining if 'Paste' is available.
- Update the splash screen.
- Fix remembering the windows size, position & state so that if LimeWire is maximized, it will start maximized during the next session (instead of starting restored with a larger window).
- Optimize the tooltip in the statusbar bandwidth indicator to be lazily calculated.
- Disable renaming when multiple files are selected in the library.
- Optimize displaying icons of files in the library.
- Fix to allow renaming a file from CAPITALS to capitals (changing the case of the file) on Windows.
- Re-organized the context menu in the library to offer better 'License' options
- Updated the Creative Commons Publish option into an easy-to-use wizard.
- Fix to not allow invalid directories to be typed into the per-media-type save directory table.
- Fix to prevent hitting page-up, page-down, etc.. from shifting the search input panel left or right.
- Fix to prevent fields that aren't searchable from being displayed in the search input panel.
- Update OSX DMG image & OSX Installer image.
- Use the correct locale for formatting numbers.
- Ignore internal errors when opening a filechooser.
- Added 'Refresh' option to context menu in library.
- Fix to hide the splash screen if a fatal error occurs during startup.
- Fix the LimeWire icon to have correct alpha transparencies and look good on all versions of Windows.
- Fix saving the playlist to allow saving the existing name again.
- Optimize startup time by expanding themes on demand. (Contributed by Johannes Blume)
- Fix an exception when changing the save location from or to the root directory
- Fixed run script on Linux / Unix.
- Fix a divide by 0 bug when reading FLAC metadata.
- Ignore internal HttpClient errors related to reading cookies.
- Fix expiration of QueryKeys.
- Optimize throughput of FW-FW transfers.
- Optimize IP whitelist / blacklist to allow a store/lookup of hundreds of thousands of IPs in under a millisecond.
- Read a 'hostiles.txt' file that will auto-add to the blacklist each startup.
- Don't allow arbitrary errors when sending or reading UDP messages to close the entire UDP socket.
- Optimized storage-space required for URNs (SHA1 hashes).
- Convert many things to an 'enum' for better type-safety.
- Prevent a socket connect with no timeout from potentially waiting forever.
- Optimize the collection of many small writes to a TCP socket into a single larger write.
- Fix reading with a read-throttle enabled to reduce massive CPU usage.
- Optimize events in the I/O thread so that events causing data to be read/written will happen before the throttle is informed of time-elapsing, allowing the data to be read/written faster.
- Optimize the I/O selector, allowing the selector to sleep until it knows something is available.
- Fix NIOServerSocket to close all pending accepted sockets when the ServerSocket is shutdown.