Difference between revisions of "Changelog 2.2.0"

From AMule Project FAQ
Jump to: navigation, search
(2.2.0 changelog)
m (Update)
Line 63: Line 63:
* Protocol Obfuscation
* Protocol Obfuscation (enabled by default)
* Fixed mldonkey_importer to work with mldonkey >= 2.7.6
* Large file support (>4GB)
* Large file support (>4GB)
* Disabled auto-update of servers from clients and other servers by default.
* Fixed a bug while getting sources for large files (>4GB)
* Fixed mldonkey_importer to work with mldonkey >= 2.7.6
* Improve exception handling
* Improve exception handling
* Add generic CTag classes support for Kad data types
* Add generic CTag classes support for Kad data types

Revision as of 22:46, 19 August 2007

Version 2.2.0 - The "We only delayed it to release on our 4th birthday." version


Bas Zoetekouw:

  • Patch for debian bug #350396: "amule depletes entropy pool".


  • OpenBSD patch.


  • Patch to show kad status in amuleweb (Bug 1103)


  • amulegui.xpm icon.


  • Added autostart-xas to rpm .spec files.
  • Patch for autoconf >= 2.60.
  • Patch for redefinition of $(docdir) in docs/Makefile.am.
  • Patch for aMule .desktop files.
  • Added amulegui desktop icon (with Vollstrecker).
  • Patch for fixing aMule spec file in Fedora and Mandriva.
  • Test for perl File::Copy in configure.


  • Added ability to compile amulecmd without threading support.
  • Fixed source seeds handling on startup.
  • Proper restoration of startup locale after checking available locales.
  • Fixed linkage with wxMSW.
  • Got rid of a few more warnings.
  • Fixed #929: configure: BUILD_CC uses CC's CFLAGS
  • Implemented #962: don't display (0) when not downloading from source
  • Fixed #954 - added ability turn IPFilter on/off for servers/clients independently.
  • Added support for magnet ed2k links.
  • Improve cross compilation
  • Fixed segmentation fault in amuled
  • Proper restoration of startup locale after checking available locales
  • Don't allow sources coming from .seeds to be cleaned up for a while after startup
  • Improve accuracy for ticks
  • Improve debug output
  • Don't add clients when shutting down
  • Added a simple (ascii) text file reader class
  • Sed denoiser - removes excessive messages from compilation - Thanks to Vollstrecker for the idea and discussions.
  • Drop path component from logged file names.
  • Fix for perl v5.8.8
  • wxCas compilation fixes for wxCVS
  • Doxyfile doesn't need to be installed, it's unusable without the sources.


  • Patch for amulecmd history which ensures that when the same command is repeated several times in a row it only gets recorded in the history once.


  • Set download priority in amulecmd.


  • Fixed control-clicking (right-clicking) on tabs in notebooks on the Mac.
  • Compilation fix for MacOSX 10.3
  • Fixed a crashing bug with static initialization order
  • Ship the license as required by the GPL.
  • Fixes linking of embedded CryptoPP (on the Mac, if nowhere else).
  • Quick-n-dirty hack for stats graphs on the Mac.


  • Protocol Obfuscation (enabled by default)
  • Large file support (>4GB)
  • Disabled auto-update of servers from clients and other servers by default.
  • Fixed a bug while getting sources for large files (>4GB)
  • Fixed mldonkey_importer to work with mldonkey >= 2.7.6
  • Improve exception handling
  • Add generic CTag classes support for Kad data types
  • Remove kad IO classes
  • Safety on memfiles created from packets
  • Fixed publishing and sending shared files requests
  • Fixed Unittest
  • Update audio and video types
  • Update EC to use the equivalent of VBT tags
  • Fix ID sending on hello packet to use the hybrid ID instead of plain ed2k id
  • Fix a bug on sending info to other clients on file list request
  • Upgrade lex generated code
  • Add the --reset-config flag
  • Modified getclosetsto() fix, originally by tatikiran
  • Changes to flex parsing of search expressions.
  • Fix several missing variable initializations
  • Swap bytes for int types in EC code
  • Lower reask times
  • Fix Memleak in ECSocket
  • Extend amulecmd with 'show log' and 'reset' command, originally by quinox, bug #856
  • Usage of HOSTCC for compile-time executions
  • Created translation status scripts
  • Move server packets to the back of the UDP queue if the server is still resolving a dynamic host
  • Script to wikify changelog
  • Separate ECTag from ECPacket
  • Fix crash on startup
  • Fix several rare memleaks
  • Fixes on Kademlia keyword store
  • Initial Kademlia 2 integration
  • Remove duplicated SendPacket functions in Kad
  • CPacket uses const CMemfile reference instead of pointer
  • Fix for (rare) bogus packets being send on kad
  • Fix for empty packets in Kad Search
  • Fixed server IP for EC
  • Don't destroy shareddir.dat on remote GUI, bug #945
  • Incorrect percentage displayed by amulecmd for files > 4Gb, bug #949
  • Ask user to download server list when list is empty and ed2k active
  • Support automake 1.10
  • Reorganization of EC code
  • Added script to generate EC files for different programming languages (C#, Java and C++) from an abstract language
  • Dropped support for < wx2.8.x (in case you want to blame someone)
  • Added remote gui datastructure for new classes.
  • Fixed compilation with wx2.9, also with disabled 2.6 comatibility.
  • Heavily modified IP2Country code. Proper names, guards, creation on the heap... etc.
  • Added script to create Kad nodes files
  • Fixes for emule-collection support
  • Added some sanity checks
  • Source links with crypt data support.
  • Fix Mac build
  • Remember kad and ed2k urls and restore them on restart.
  • Force conversion to be ISO8859 for tag names, obvious from the network standards. This also fixes Kad.
  • Changed the inheritance for the UDP sockets to include the encrypted layer
  • Fix for MuleGifDecoder issue
  • Windows fixes
  • Added OnO patch for Toolbar display.
  • Fixed validation of preferences items for wxWidgets 2.8.4


  • Fix partcount not being set in remote gui
  • Use only one EC library with amuleweb
  • Fix LastSeenComplete
  • Fix for NonCurrentSources
  • Fix incorrect cookie parsing for amuleweb
  • Fix passing strings in EC
  • Lock webserver when serving images
  • EC implementation in C# (work in progress)
  • Fix preferences in amuleweb
  • Fix EC crashing webserver when new item added
  • GUI implementation in C# (work in progress)
  • Implementing split() call
  • Compilation fix for MuleGifDecoder


  • Patch to show part file numbers.
  • set the search string to the search text of currently selected tab.


  • Trivial issue with memset found using google codesearch which may affect only the debugging.


  • Fix for crash in amulegui/DownloadListCtrl.cpp.
  • Upgraded extern/listctrl.{cpp,h} from wxWidgets cvs code.
  • Fixed some gtk2 warnings in extern/listctrl.cpp.
  • Fix for unhandled exception in new skinned toolbar code.
  • Coding style fixes.
  • Fix for server disconnection during global search.
  • No more wxARRAY's in amuleweb.
  • Fixed bug in mutex code in amuleweb (s_mutex_wcThreads).
  • No more wxARRAY's in aMule code.
  • Fixed bug in ECPacket.cpp: assignment inside assertion.
  • Changed CECSocket constructor to be exception safe.
  • Fix for invalid rectangle size on COScopeCtrl::PlotHistory().
  • Removed the default constructor for Kademlia contacts.
  • Fix for "get bwlimits" command in amulecmd always returning zero for maximum download value.
  • Added UPnP support.
  • Fix for crash in ECSocket.cpp.
  • FileDetailDialog:: now has more intuitive Apply, Ok, Cancel interface.
  • GUI to enter a specific bind IP in "Preferences->Connection->BindAddress".
  • Resurrected support for the tag FT_DL_ACTIVE_TIME in the met file. It's value, the download active time, can now be seen in the file details dialog.
  • Added the DLACTIVETIME variable to the list of replaced variables in the DowloadCompleted user event.
  • MuleTrayIcon.cpp was not compiling for __WXMAC_CARBON__. Seems to be fixed, but must be the code now has a lot of ifdefs and must be tested on other platforms.
  • Added two more events: "out of space in temporary partition" and "error upon completion".
  • Fixed a crash in amulegui when adding a new category.
  • Fixed a bug in amulegui, removing a category remotely did not update the category count in amule.conf, so the next time amule was run, the category was there again.
  • Fixed a bug in toolbar skins, the skin file was opened even when the checkbox "Use skins" was not checked.
  • Fixed a crash related to MuleGIFDecoder wx-2.8.0 when downloading the file IPFIlter.dat.
  • Fix for ECSocket.cpp, amulegui was crashing upon entry.
  • Fix for ClientDetailDialog in amulegui. Was showing incorrect IP / Server / Software version information.
  • Switch binding of UPnP libraries to use one digit version names instead of unversioned names.
  • Fix for crash in amuleweb when the image file did not exist.
  • UPnP add/delete port mappings are now done in every device found, instead of only the first one.
  • Creation of --enable-upnp/--disable-upnp configure flag.
  • Update of wxWidgets-2.6.3 deprecated code to version 2.8.2.
  • Fixed IPFilter.dat loading from a zipped file.
  • Added a termination process to wxExecute() calls, so that we no longer leave zombies.
  • CDirIterator now uses wxDir.
  • CheckDirExists() now uses wxDir::Exists().
  • CheckFileExists() now uses wxFile::Exists().
  • GetLastModificationTime() now uses wxFileModificationTime().
  • GetFileSize() now uses wxFile::Length().
  • UTF8_CopyFile() now uses wxCopyFile(). Later reverted for locale fixes.
  • UTF8_RemoveFile() now uses wxRemoveFile(). Later reverted for locale fixes.
  • UTF8_MoveFile() now uses wxRenameFile(). Later reverted for locale fixes.
  • theApp is now a global pointer, so that we can access the global application object from within a core file.
  • Partial fix for the COLORREF compilation problem on Windows.
  • Fix for libpng version detection on acinclude.m4. It was failing for strings like 1.2.15beta5 (e.g., debian 4.0 etch).
  • Fix for theApp variable usage in amulegui. It was not beeing initialized and amulegui was segfaulting.
  • Fixed the forum address in the backtrace print.
  • Applied Bas Zoetekouw's patch for debian bug #350396: "amule depletes entropy pool".
  • Implemented IP2Country using GeoIP.
  • When converting from multibyte to wide characters, ConvAmuleBrokenFileNames now tries UTF-8 first. If this fails, then it tries ISO-8859-1.
  • New directory based skin support, reworked Trevino's patch.
  • Fixed amuleweb crashes due to bug in ECSocket.cpp
  • Code to refresh port mappings in the event of a temporary router failure
  • Code to deal with previously unhandled UPnP events.
  • Fixed remote-gui segfault in UpdateStatsTree()
  • syscall_check is no longer a macro
  • Fixed a serious bug introduced by ENABLE_UPNP Makefile.am switch
  • Fix for libpng version detection on acinclude.m4
  • Fix for server list and node list
  • Made some common dialog modals and giving them a default style
  • Handle different UPnP library versions
  • UPnP for amuleweb.
  • Fix for crash on exit and a little less redundancy.
  • Trying to make listctrls behave on Mac


  • Patch to fix windows compilation.


  • Adapt Kad code to the standard coding guidelines.
  • Work on EC API


  • Patch to enable MLDonkey os_info support.


  • Added the time to the aMule stats in the wxCas window and in the generated image.
  • Added the time to the aMule stats in the cas output and in the generated image
  • Added option to generate image in JPG format (along with PNG)
  • Added new icon for aMule


  • Fix for "Both the Unknown client icon and the Unknown status icon points to the same file" issue.
  • Skin support with relative paths.


  • Added possibility to give the path for output right with -p or -o in cas.
  • Changed cas to use getopt_long.
  • Added --config-dir and -c option to cas.
  • Added alias -H --html to cas.
  • Added alias -P --picture to cas.
  • Added --config-dir and -c option to ed2k.
  • Added --config-dir option to amuled.
  • Fixed typos in the man pages.
  • Added manpage for amulegui.
  • Added amulegui desktop icon (with Gerd78).
  • Manpages update.
  • Add debian folder


  • Add emulecollection support on aMule ED2K Links Handler
  • Fix online signature update rate
  • Fix display of filesize > 4GB in file detail dialog
  • Fix toolbar import/about icon order
  • Add option to load emulecollection in SharedFilesCtrl
  • Add oga and ogv extension for file type search
  • Allow skin/webserver template section via wxchoice + skin enhancement
  • Some error messages rephrased, to improve readability
  • Fix idle mode for UBT
  • Fix Ctrl+a in MuleListCtrl
  • Replace (f)lex by $(LEX) in Makefile.am files
  • Fix libUPnP unloading.
  • Fix building with external CryptoPP
  • Ship skins with tarball
  • Display file size in human readable format in FileDetailDialog
  • Added upload feedback
  • Added option to enable EC and set pass in A[amuled]
  • Removed GetLocaleDir()
  • Zipped skin format
  • Fix utf8 problem with file names
  • Fixed toolbar display with skins when blinking on incoming message
  • Fix #1114, missing break statement, thanks to mr_hyde


  • Renaming the SearchList typedef to CSearchResultList
  • Splitting CSearchFile out from SearchList.* to SearchFile.*.
  • fix initialization of member variables in CSearchFile when creating on remote gui.
  • Call GetLength safely when sharing files
  • Added support for child results to CSearchListCtrl
  • Major cleanup of CSearchList
  • Add logger target for the thread-scheduler
  • Add smart pointers CScopedPtr and CScopedArray
  • Fix possible crash due to pending events
  • Fix accessing empty list in CMuleListCtrl
  • Add support for displaying large files with CBarShader
  • Improved sanity checking and simplified exception-handling via CScopedPtr and CScopedArray.
  • Major reworking of threads, add a thread scheduler for IO intensive tasks, improve thread-safety for AICH-sync thread
  • Fix FileIO unittests and add test of const CMemFile objects
  • Update AICH from eMule-0.47a Beta1
  • fix positioning of individual frames
  • Improved exception handling
  • Updating the FindMatchingClient function
  • Avoid dangling pointers in case of asserts failing
  • Updating CFormat to properly handle 64b ints on all platforms
  • Fixing CFile::GetAvailable if position is past EOF
  • Fixed possible use of uninitialized variables
  • Adding template function for freeing the contents of a list/map
  • Remove CList
  • Fixing a couple of infinite loops
  • Fixes file completion under amuled
  • Add locking to the ED2KLinks file
  • Removed multiple macros for array size
  • Removed the CMD4Hash from wxString constructor
  • Add swap function to CRangeMap
  • Reworking of the notify-code
  • Optimized and simplified adding of shared files to the listctrl
  • Remove partially copied files when a UTF8_CopyFile fails.
  • Drop the file/directory permission settings, use umask instead

Special Thanks to:

  • FreeToGo for implementing the first version of IP2Country on the forum.
  • Mark James (http://www.famfamfam.com) for providing the flags icons.
  • deloun and mischamajskij for their work on aMule skins
  • Bun Bun, for being there to tell me I'm not stupid.