November 14th, 2011btkaos:
· Show if a client shares its file list in client view
· Various optimizations of memory usage
· Access files for reading/writing via mapped memory (with custom exception handling)
· Fix download of files > 1GB on ucLibc
· Fix autogen.sh under Ubuntu
· Fixed TCP obfuscation negotiation
· Add option to ed2k link parser to display links in emulecollection
· Added test case for the CTag class
· Various fixes to new colour code
· Allow user to select display of transfer rates
· Extendable list-control settings save/load code
· Drop assumption that last search keyword is a filename extension if length == 3
· Instead of counting unicode characters in a Kad search now we use the UTF-8 byte count to determine whether the keyword is allowed or not
· Use actual page size in mmap calls instead of a randomly selected number
· Fix custom Crypto++ path not shown by configure
· Make tags in aMuleWeb HTML 4.01 conforming
· Fix HTTP proxy authentication
· Use -static for the tests too, when a static binary is requested to prevent configure succeed where compilation would fail
· Configure now checks only for the tools and libraries needed for the selected components
· Fix aMuleGUI looking for undefined switches
· Fix the "blinking" in aMuleGUI's status line
· Better reporting of Kad tag reading/parsing errors
· Fix the unittests
· Some code reorganization
Features/fixes ported from eMule:
· Implement an alternate method to estimate the real user count in the Kad network, which is not based on our local routing table (0.49b)
· Add double quote to word-boundary characters (0.50a)
· Drop support for Kad 1.0 (0.50a)
· Try to find the closest node alive (0.50a)
· Fix a bug in Kad which would not enforce the search tolerance in certain cases (0.50a)
· Change Kad to work better in small LANs (0.50a)
· Remove the unimplemented "Create backup for preview" option
· Add variables to preview command like in user event commands
· Disable 'Show all comments' in the file's context menu if there are no comments/ratings available
· Enable renaming (completed) shared files
· Proper handling of %-escaped UTF-8 sequences in ed2k:// URIs
· Drop support for nodes.dat version 0
· Fix issue #1621: 'ed2k links containing unicode characters will cause the filename to be truncated'
· Fix issue #1634: Change charset to UTF-8 in amuleweb template
· Fix installation with denoiser enabled
· Add support for automake's --enable-silent-rules feature (original idea by Gerd78)
· Improved CFormat and enabled reordering of arguments for translators
· Several fixes and improvements for the sanity checker script
· Fix bfd detection
· Add year bumper script
· Move statistics from config to statistics.dat
· New preference setting to show application version on the title
· Fix man page installation for several languages
· Part number is now an extra column in the download list
· Improvements to preferences dialogs
· Redesign skin selection
· Sort downloads by time remaining now has shortest time on top and unknown on bottom
· Fixed file locking between ed2k and aMule on Windows
· Reworked user interface, separating download and upload views
· Fix list double-buffering causing artifacts on refresh and when showing a context menu.
· Fix indexes after removing GUI items
· Fixes to Windows build
· Allow compilation with wxCocoa
· Replace Color.h by new class implementation MuleColour
· Lower class overhead and use two-level cache for pens/brushes
· Added aMuleCMD project for MSVC.
· Fixed UnitTests and aMuleCMD in MSVC to use _CONSOLE subsystem.
· Preferences changes
· Fixed problem with uploading to lowid clients (szsuj)
· Sorting lists (automatically or by user interaction) doesn't clear selection anymore
· Fix client version display for MLdonkeys
· Added Xcode project for MacOSX build
· Fixed the centering of icons and text
· Enable vertical toolbar orientation on WIN32 too
· Option to resume next file alphabetically, keeping in mind categories and priority
· Fixed crash when column gets removed
· Show remote filename in source list
· Fixed crash in upload thread on shutdown
· Dynamic adjustment of threshold for rarity of download files
· Option to prevent the computer from sleeping while downloading in MSW and MacOSX >= 10.5
· Mac fixes
· Fixed "out of memory" crashes caused by wxWidgets - so wxWidgets 2.8.12 is required now!
· Show warning dialog if "Change language" is selected and no languages are installed
· Added backtrace support for MacOSX
· Add locale support in the mac bundle with updated scripts (translations are now supported on MacOSX builds)
· php prefix for lex/yacc
· Search results can now be sorted by "knownness" state.
· Fixed issue #892: Show data sizes >= 1.0 GB with three digits.
· Fixed search 'Stop' button not stopping Kad searches.
· Check Kademlia search results against original criteria.
· Allow Kademlia searches with repetitive keywords.
· Allow adding current chat partner to friend list from tab's context menu.
· Allow not downloading files via HTTP if the requested file is not newer.
· Removed white boxes around file rating icons
· Implemented public shared directory names only containing actually shared subfolders.
· Patch to uniform and fix minor errors on man pages
· Feedback from shared files - add number of clients on queue.
· New stats server
· Fixed assertion when trying to preview files smaller than 256 K.
· Fixed autogen.sh for Bourne Shell
· Sort source list on opening and add file name to A4AF files
· MSVC: optional GeoIP support
· Faster progress bars with less overhead (without pens/brushes)
· Show log messages in remote gui
· More info in the Kad tab
· Improved gaplist performance
· Ported chat captchas (receive and send) and "Advanced Chat Spam Filter" from eMule
· Allow download of multiple search results if search list is sorted by status (thanks to DarkNRG)
· Fixed CFile::SetLength for large files
· Reduce file handle usage by closing part files after idle time
· Speed up selection of shared directories with many subdirectories, fixed red marking of folders with shared subdirectories
· Ban clients that uploaded bad data (based on CorruptionBlackBox from eMule)
· Support wxWidgets 2.9
· amuled for Windows (with wx 2.9)
· Friends get recognized in the friend list control even if their IP has changed
· Don't kick friend upload, don't kick release prio uploads (unless they take more than half of the slots), and don't kick anybody else unless necessary (with GonoszTopi)
· Fixed crash in remote gui when aMule exits
· Added more media file types from eMule
· Allow the user to cancel the app if Temp/Incoming is not found
· Show downloads as shares in remote gui
· MANY fixes/implementations for amulegui
· amuleweb for Windows (with wx 2.9)
· Show connected friends in blue in the friend list
· Show total upload/download ratio in statistic tree
· Fixed category administration in remote gui
· Implement directory preferences in remote gui
· MSVC build for alcc, wxCas
· Fixed errors and crashes on parsing ED2K links with '/' in them
· Configure option --enable-fileview
· Bypass amulegui connection dialog with switch -s / --skip
· Fixed Core Timer
· Allow passing of ED2K links by command line to aMule, aMuled and aMulegui, making ed2k program obsolete
· Don't ignore current category in amulegui when pasting a link
· EC tools (amulegui, amulecmd, amuleweb) can use a local config dir now
· Fixed crash in file system detection in Solaris
· Fix: window size/position didn't get saved on some systems
· More command line options for aMulegui
· Allow webserver autostart on Windows
· Fixed crash in "Out of space" user event handler
· ALCC prints links to stdout now instead of stderr
· Fixed memory exhaustion on high speed uploads Thanks to RRM for endless patience!
· Fix: Language English was not recognized and so reverted to "System default" at any change
· Fixed printf output (unicode2char()) on consoles incapable of UTF8
· Keep a list of all canceled files (canceled.met) and show them in magenta in the search list
· Update status/color of search results on events from outside the search window (like download started from EC) and in amulegui
· Enable update of IP filter list through aMulegui and aMulecmd
· Enable setting of "Check for new version on startup" through aMulegui
· Fixed crash in CClientList::ProcessDirectCallbackList that had been around for ages (hopefully)
· Fixed size of large files in aMuleweb's search results
· Show completed downloads in aMulegui
· Fixed international file names on Windows
· Fixed hangup of EC connection in aMulegui
· Fixed category deletion in aMuled
· Fixed several crash bugs in Webserver
· Improved memory usage, load time and speed of IP filter
· Load IP filter in the background on startup
· Show when a Kad search is finished in aMulegui (remove '!')
· Fixed "pause/cancel/resume all" in aMulecmd
· EC ZLIB compression can now be turned off in remote.conf with EC/ZLIB=0
· Terminate HTTP downloads on exit
· Projects for Visual Studio 2010
· Fixed crash in http download
· Speed boost for reload of shared files with large list of known files
· Resolve MSVC compilation problem with separate strings in GUI
· Fixed splitter bars in download and share view
· Allowed creation of ED2K source links in KAD-only mode
· Make friendlist in chat window resizable
· Removed lag (caused by language pref) when opening preferences dialog
· "Swap all A4AF to this (auto)" doesn't block sources with no needed parts any more
· Don't lock up in an infinite loop if all servers are not resolvable or blocked by IP filter
· Clients now always get uploaded a full chunk (removed setting)
· Tell the user that changes of EC settings require a restart
· Deleted and readded download now get shared
· Speed improvement for upload queue, and clients never have same rank anymore
· Fixed ed2k links where '|' has been replaced with '|'
· Fixed multi line stdin redirected as batch into amulecmd
· Allow enable/disable of IP2Country through GUI
· "Clear completed" button now only clears downloads in current category
· Completed downloads can be seen and cleared in amulegui
· Bold lines in log window now for Windows too
· Allow setting of friend slot from client list control
· Fixed saving of splitter bar positions
· Get rid of "clearlooks_style_draw_box_gap" messages in console
· Fixed several crash bugs caused by deleted client objects
· Fix a small memory leak in Kademlia code
· Fix occasionally sending junk at end of packets
· Fix child items in search result getting inserted in wrong positions
· Shared files don't lose all information when they get renamed
· Fixed crash bug with sources which are incompatible with our encryption setting
· Allow passing of links > 256 chars to amulecmd
· Prevent flicker when sorting already sorted lists
· Prevent creation of more than 99 categories, since that's the limit
· Fixed saving of sort orders
· Allow switching through files in file detail dialog
· Improve performance when many small files are hashed
· Fix: if a file had more than two copies shared it was hashed on every startup
· Show directory in search list for "view shared files" searches
· Safe writing of known.met and nodes.dat (don't overwrite existing until write is finished)
· Show directory in search list for "view shared files" searches
· Unify copyright lines
· Fixed clean and distclean targets for make
· Various Updates in debian/ see debian/changelog
· Added crash handling in command-line tools
· Fix for autoconf-2.64.
· Make amulecmd help command work without connection
· New translation concept for manpages
· KDE Plasma applet to show stats
· Fix warnings with latest autoconf (2.67)
· Fix 'break/continue [n]' PHP implementation
· Allow multiple download links in webserver
· Simplify browser selection
· Use DoIconize() for dclick on tray icon, too
· Fix minimizing from tray icon
· Add option to show chat messages in log
· Add option to specify amuleweb binary location
· Make EC authentication procedure more secure
· Add support for categories to ed2k
· Backup config file on shutdown
Special Thanks To:
· Greek for his contributions to aMule's user interface.
· btkaos for his important work finding the source of bugs.
· myth for seeing when everyone else was blind and uncovering the grandfather of all fuck-ups
· mirko.g for being so committed to compile aMule on Snow Leopard.
October 12th, 2009GonoszTopi:
· Fixed obfuscated server UDP communication.
· Fixed cross-endian Kad node verification.
· Fixed name conflict in builtin PHP parser.
· Fixed configure finding unwanted Crypto++ installations.
· Properly update transfers tab's bottom pane's title.
· Fixed a bug in detecting and using the fallocate() function.
· Now really fixed that security issue.
· Fixed HTTP download if server transmits no content-length
· Fixed several cases of amulecmd printing zero on big endian machines
· Fixed amuleweb crashing on tiny downloads
· Added version resources to MSVC binaries
· Fixed wrong search text in search dialog after deleting a tab
· Fixed download limit in amuled (which was 50% of what was set)
· Fix amuleweb progress bar display for files > 4GB
Special Thanks To:
· stefanero and his bleeding-edge system
May 16th, 2009
· Fixed possible security hole when previewing filenames containing single quotes.
· Fixed default webserver port.
· Fixed upload of the last part of a file which he broke in 2.2.4
· Fixed setting speed limits from remote gui's tray icon.
April 5th, 2009
· Plugged various memory leaks.
· Add comment to desktop file to allow autostart in Gnome.
· Compilation fix for gcc-4.3.2.
· Compilation fix for IRIX.
· Fixed file handles on IRIX.
· Fixed compilation of Format.cpp for some platforms.
· Fixed wxWidgets socket library initialization.
· Fixed partfile importer destroying imported data.
· Separated GUI and core code in partfile importer, thus fixing occasional crashes/hangs.
· Fixed GeoIP-enabled builds crashing on 64b boxes.
· Added another common URN ID to the Magnet link handler.
· Switch to the 'busy' cursor while bringing up the preferences window.
Ported several Kademlia fixes and improvements from eMule0.49c:
· Fixes on handling incoming packets with port zero.
· The Kad UDP firewalltest now asks several clients for its external port, avoiding to get a wrong "Open" state on NATs which change the source port on each request but behave like a Full-Cone otherwise.
· Made sure a received Kad routing answer doesn't contain more contacts than requested. [Xin Sun]
· Kad no longer allows more than 2 IPs from the same subnet within one routing query reply (except on LANs).
· Kad routing query contacts are checked against the routing table.
· Implemented non-interactive mode for amulecmd/amuleweb.
· Fixed detection of crypto++ library for versions >= 5.6.0.
· Fixed saving wrong window position when exiting while minimized.
· Fixed rare case when we tried to connect to a LowID client.
· MSW: detect WinSock API version needed by GeoIP.
· Fixed libbfd sometimes depends on libintl, with help from PacoBell.
· Fixed static linking with GeoIP on MinGW/MSYS.
· Fixed detecting GeoIP library when building for MinGW.
· Compilation fix with GeoIP-1.4.6.
· Fix crash on global search on Windows.
· Fix splitter bar position in transfer window not restored properly.
· Caught some insane upload requests.
· Fixed finished files sometimes getting rehashed (thanks to Skolnick).
· Added restart warning if the ED2K network was re-enabled.
· Fixed Windows lag when opening preferences dialog.
· Fixed creation of ED2K links with AICH (thanks to Archmage).
· Remote Gui shows a dialog box with a reason on connection failure.
· Changed fix for wrong ordering/placing of clients in the download window so that sort order is again like in 2.2.2.
· Add Asturian language.
· Updated INSTALL file.
· When EC authentication fails, close connection before we send the response.
· Tell the user why the EC connection failed.
December 29th, 2008
· Fixes to compile with Sun Studio 12.
· Fix for linking with a static bfd library.
· Fixed improper handling of EC connection failures.
· Fix for shells not properly handling empty lists.
· POSIX fixes in shell code.
· Made not finding GeoIP non-fatal.
· Check if --enable-geoip-static can be fulfilled.
· Fixed loading of zipped ipfilter files. Thanks to CtrlAltDel for the investigation of the problem.
· Fixed alc progress bar for files >4GB.
· Fixed #1056: amulegui: incorrect results when searching with min size >= 4GB
· Disable automatic sorting of dowload list while there is a pop-up menu or file detail dialog displayed.
· MinGW compilation fix.
· Fixed GTK crash on closing search tabs. Thanks to btkaos.
· Support multiple selections on CSearchListCtrl::OnMarkAsKnown().
· Fix alc and alcc to work with files bigger than 4GB
· Fix crash when last category was removed with a completed file in it
· Fix wrong ordering/placing of clients in the download window
· Fix available fileparts display for large files
· Don't open server UDP socked if ED2K is disabled
· Reordered preferences, disabled ED2K/UPnP prefs if ED2K/UPnP is disabled
· MSVC: solution for MSVC 2008 Express edition, project for ed2k and fileview
· Fix wrong file download rates in transfer window
· Windows: fix broken core timer, use precise tickcount and so fix download limit
· Add checks to cas to prevent segfaults
· Fix wxCas save file dialog for file types
· Fix a buffer overflow error in cas
September 30th, 2008
· Patch for alcc to improve usability.
· Implement getopt_long in cas for systems which lack it.
· Fixing denoiser.
· include before as by POSIX.
· Fix noinline in crypto for some systems.
· Fix display of ccache option.
· Add sources from search results for new downloads.
· Use output of gdlib-config for gd.h detection.
· Solaris mntent fix.
· wxMSW fix.
· Fix NULL pointer dereference.
· Fix for configure not using --with-geoip value in library check.
· Added pkg.m4 from pkg-config-0.23.
· Ported Kademlia Protocol Version 8 from eMule0.49b.
· Kad now ignores multiple IDs pointing to one IP in routing request answers.
· When calculating the total user count, Kad now uses (if available) the real number of firewalled clients for the calculation instead a fixed value. This will take more effect when 0.49+ nodes become common.
· Kad no longer tries to add UDP firewalled (and therefore mostly unreachable) nodes into its routing table, reducing overhead and increasing reliability [Idea: Netfinity].
· Optimized the Kad packettracking code to only track packets which we check later, to save resources.
· Fixed a bug which let Kad sometimes assume a Kad2 contact to be Kad1 after probing for both versions.
· Did first small step in dropping Kad1 support by not probing unknown Kad contacts for Kad1 anymore to save overhead. Kad1 clients will nevertheless still be work for now.
· Kad contacts will only be able to update themself in others routing tables if they provide the proper key (supported by 0.49a+ nodes) in order to make it impossible to hijack them.
· Kad uses now a three-way-handshake (or for older version a similar check) for new contacts, making sure they do not use a spoofed IP.
· Unverified contacts are not used for routing tasks.
· When reading a nodes.dat without any verified contacts (possible an old file version), aMule will assume all contacts to be verified to avoid slowing down the connecting process.
· Implemented a special nodes.dat file version suitable for mass distribution.
· Fixed not sending sources for clients that did not announce their part availability.
· Fixed all list columns being disabled in case of invalid data in config file.
· Fixed directory tree not available.
· Fixed: Incorrect SX packets sent, plus no reply to out-of-multipacket SX as a bonus.
· Remap colours on Windows.
· Add resources.
· Fix wrong usage of CPath::IsOk which caused an infinite loop on Import.
· Fix wxTempFile usage for compressed IPFilter files.
· Removed the dlopen() code from UPnP.cpp.
· Added the m4 macro to test for libupnp.
· Updated amule_build_install.sh to work with --with-libupnp-prefix.
· Changed the UPnP code to allow the use of a service without having successfully subscribed to it. That should be enough to deal with some lazy router implementations.
· Do not unregister if no service is found.
· Save the found service even if subscription has failed.
· Fix for initialization of "resultstr" in cryptopp.m4.
· Fix for message "Duplicate partfile with hash..." in DonwloadQueue.cpp. It was using deleted corrupted data.
· amule_build_install.sh now uses -a flag in unzip so that cryptopp files are properly converted from DOS text format.
· Scanner fix for MSVC compilation.
· Fixed crash when progress bar was resized to zero width.
· Fixed sharing of large files on Windows.
· Fixed free disc space check.
· Sanity check before writing nodes.dat - don't write it if there are less than 25 contacts.
· Download List sorted on startup.
· Splitter bar position in transfer window is restored again.
· Fixed a GDI resource leak for Windows.
· Show connection status in toolbar when changing skin, thanks to greek.
· Fix window resize problem on Mac OS X.
· Fix for packets being lost in EC communication. Fixes aMuleGUI not updating after a while.