Changelog 2.0.0-rc4
From AMule Project FAQ
Version 2.0.0rc4 ~The 'Mules and rabbits like apples too' version~
2004-07-12
alehack:
- * Patch to show extra QR info
- * Patch to colorize the download list
aquatroll:
- * Fixed includes for Win32 compilation
- * Cleaning of unused variables on Win32
- * Fixed compilation on Win32
Citroklar:
- * Lots of unicode slave work ;)
croakerc:
- * Fixed OpenBSD compilation
deltaHF:
- * Added websearch function (filehash.com)
- * Added jugle.net as Fake-check URL
- * New buttons added:
- - reload sharedfiles
- - switch upload/uploadqueue
- - clear completed files
- * Added 3 new columns in upload window (Client Software , Upload/Download , Remote Status)
- * Added 'Client Software' column in upload-queue window
- * "Asked for another file" on sources now with the filename that is asked for ( i.e. A4AF -> xyz.avi)
- * Added 'copy file feedback to clipboard' function
- * Added new Toolbar icons [ thx again to http://www.everaldo.com ;) ]
- * Added icons in Preferences
- * Download menu changed
- * Work on skin support
falso:
- * Typo fix: bandwith to bandwidth
hellimod, one_2_one:
- * MacOSX support
Hetfield:
- * Fixed unicode issues on SysTray.cpp, now apps is really unicoded!
- * Deleted separated i18n stuff from SysTray, now uses global one
- * Fixed 2 memory leaks in SysTray
- * Updated italian and napoletanean translations
- * Fixed unicode issues in serverlist updates and download tab
- * Fixed unicode issues that stopped adding files to download from ed2k utility and internal link handler
Jacobo221:
- * New feature to open webpages in new tab instead of new window
- * Fixed a compatibility bug in OnlineSig with eMule's and added connecting support
- * Fixed bug in Statistics limits in Preferences
- * Fixed bug in Upload/UpQueue button
- * Fixed SERV.4 bug
- * Fixed DISP.14 bug
- * Added DOS compatibility into CAS and update onlinesig support
- * Several features in XAS (see XAS's changelog)
Kry:
- * Fixed wxWidgets 2.5.x socket code. aMule now works on wx2.5.1 perfectly, wx2.5.2 introduces some GUI bugs.
- * Rewrote Preferences engine to be much nicer, and Mac compatible :) Thanks to deltaHF for the new icons.
- * Wrong .part.met files no longer make aMule abort on startup. Now a warning is displayed on log and aMule ignores that file.
- * Added the new compatible client flags tag agreed with lphant devs and eMule devs. xMule devs refused to use it.
- * Overloaded the wxSocketClient::Destroy to a safer version, to check cases when deletion is not called from Destroy()
- * Fixed the disconnection of clients that have MS_CHATTING state.
- * Fixed the usage of QueueLogLine fucntion to avoid crashed on too fast computers ;)
- * Remove spaces from search string start and end.
- * Remove spaces from ed2k links start and end.
- * Fixed a mem corruption due to lphant icon size (we all know lphants are big)
- * Splitted internal core and GUI events
- * Socket events mover to core
- * Timer got separated into core_timer and gui_timer, each one with the matching functions.
- * Fixed UDP socket handler being... the TCP handler. Since lmule times.
- * Delayed deletion of sockets to avoid async deletion issues that happens when Destroy() is called on a event
- * Fixed several rare crashes happening on some fast computers on shutdown aMule.
- * Added a debug function to get track of double-deletion of clients.
- * Socket handlers now stop notifying new events when Safe_Delete() is called.
- * m_pszUsername inited before a new call to handle 'new' exceptions correctly.
- * Added a hack on IsRunning() to check for current app object not existing yet (or deleted on shutdown)
- * Fixed all icons to be 16x16 to avoid asserts on 2.5.x for unmatching wxImageList sizes.
- * Fixed all wxImageList sizes to avoid asserts on 2.5.x on object construction.
- * KnownFileList takes account of the duplicates now, so those are not rehashed each time anymore.
- * Fixed EC password not being shadowed on preferences.
- * The preferences dialog should be resizable now.
- * Updated lphant stats to show the version as they added the extended version tag.
- * Fixed 1 double-delete on ListenSocket, when socket is not connected.
- * Each socket has its own handler now. Much safer and faster.
- * Fixed hashing thread implementation to make it shutdown safely.
- * Fixes on geometry handling to make it work properly from commandline.
- * Fixed minimize to tray to work properly with no more double-minimizes.
- * Coded the skeleton of the core/gui separation event system, improved by lfroen later.
- * Fixed CString implementation for operator '+'
- * No linking cas, wxcas and ed2k against crypto, please :) Fixed.
- * Lots of speedups on ClientUDPSocket handling, someone went paranoid and added lot of redundant code.
- * Changed most of the wxT("") to wxEmptyString
- * Fixed the splitter position and client size on restart.
- * Fixed compilation on wxWidgets CVS
- * Fixed amuledlg not being set to null + moved the init to beginning on amule.cpp
- * Fixes mem corruption and crash on PrefsUnifiedDlg
- * Fixed missuse of inet_addr on BaseClient.
- * Fixed crash on stats disabled
- * Reduced memory usage with a centralised icon handling.
- * Fixed wrong var type on EMSocket.h causing mem waste.
- * Fixed bug on SetFileSize (thanks to Pichuein on eMule forums)
- * wxWidgets 2.5 compatible CDirectoryTreeCtrl.
- WARNING- NEW BEHAVIOUR IS: LEFT CLICK ON ICON -> SHARE, RIGHT CLICK -> RECURSIVE SHARE
- Also made the icon red if the folder is shared.
- * ModString fixed - Now mods identify themselves correctly.
- * As xMule now identifies as eMule 0.0a, added xMule detection based on username and modstring to keep stats coherent.
- * On debug builds, client stats now show the amount of clients with open socket.
- * Changed theApp.glob_prefs->GetAppDir() to theApp.ConfigDir for speed improvements.
- * Fixed crash on empty shareddir.dat
- * Fixed listen socket being processed before created on fast computers and thus causing crashes on startup.
- * Fixed server version tag.
- * Added frame name to the aMule main window to be handled correctly by X server
- * Fixed a crash on log file re-creating on startup.
- * Fixed the update of the categories tab names to show the file count and the downloading files.
- * Fixed the update of the categories tab names tp happen only when needed to save cpu.
- * Changed several vars and functions to const for speed improvements.
- * Enter button working now for web search.
- * Added a check to disconnect clients sending non-hello packets before finishing handshake.
- * Added preferences items for the upcoming Skin engine.
- * Fix from lugdunum to avoid blacklisting on servers because of key repeat on pressing enter for search :)
- * Use generic BSD wx preprocessor define to make aMule FreeBSD and OpenBSD compatible.
- * Fixed Incoming folder not being shared on strange situations.
- * Fixed usage of '/' instead of '\' on Win32 builds.
- * Made file comparison case-insensitive on Win32.
- * Better fitting of notebooks
- * Fixed shared files reloading to stop being dependant of buttons/labels
- * Socket handling now deletes the client if connection fails ;)
- * Fixed some wxSizer usage causing compilation compatibility problems between wx 2.4.2 and 2.5.x
- * aMule now filter bad ips on source seeds.
- * Autoconnect and onlinesig are now on by default.
- * Added a check on graphic stats drawing to avoid crashes if no DC is created yet.
- * aMule now uses crypto++ for MD4 calculation (faster, and endian safe)
- * Added two sanity checks for source drawn with no reqfile associated, avoiding crashes.
- * Fixed mem corruption and possible memleaks and crashes on file comments received.
- * Fixed a BAD and UGLY and EVIL mem corruption happening since more than a year ago and still present on the original program (xMule).
- * Client sending wrong OP_FILEREQUEST packets are now disconnected to avoid further problems caused by their corrupted packets.
- Old shareazas and most xMule versions have been warned since 2004/04/13 from aMule and since much more time ago from eMule.
- Shareaza fixed it, but xMule refuses to fix it. eMule 0.43x disconnects them too now.
- * Fixed crashes on sockets because of packet overhead being calculated after packet was deleted.
- * Fixed the CVS mod reporting for aMule 2.x
- * Fixed the Online Signature dir selection.
- * Fixed some shared files not being shared due to a return; on a wrong place ;)
- * Fixed some events being posted to wrong event handler.
- * Added GUIEvents.h to take care of the core/gui separation events.
- * Cleaned ColorFrameCtrl class
- * Cleaned otherfunctions.*
- * Lots of misc code cleaning
- * Several minor messages and GUI bugs.
- * Several warnings removed.
- * Removed useless files:
- XBMDraw.cpp
- XBMDraw.h
- SplitterControl.cpp
- SplitterControl.h
- ------------ MAC -------------
- * Fixed compilation on wxMac CVS and 2.5.x
- * Fixed socket connection on Mac.
- * Fixed endian issues causing crashes on server communication.
- * Fixed string tags being read wrong.
- * Fixed known.met being corrupted on every save and reload.
- * Fixed stats not working on Mac (no longer crashes because of drawing)
- * Fixed mnemonics on file search not being endian-safe.
- * Fixed server TCP flags.
- * Fiexd bug on lowid callback.
- * Fixed serverlist on Mac:
- - Server users
- - Server files
- - Server ip being reversed on restart
- - Server port set to 0 on restart.
- -------- UNICODE ---------
- * Fixed unicode compilation of most files (except those by Citroklar, Hetfield, and shakraw)
- * Fixed search on unicode builds.
- * Unicoded most of the app internals :)
- * Fixed part.met on unicode builds
- * Hunted and killed (char*) casts and c_str() calls.
- * Fix unicode client names and misc.
- * Percentage & Download speed fixed
- * Reported several bugs to wxDesigner's mantainer to make it work properly on unicode builds
- * Fix usage of st_mtime to allow files with non-std chars to be shared without crashes on wx2.5.1
- * Fixed PerformFileComplete to allow unicoded files to be finished :)
- * Fixed part met filename being 001.part everytime on unicode builds.
- * Fixed renaming on file completion causing crashes on unicode builds
lfroen:
- * Started to implement various changes needed to split the core and GUI.
Madcat:
- * Fixed preferences layout of panels.
- * Minor positioning/layouting fix.
- * Simpler ed2k link integration for Mozilla 1.3+ / FireFox 0.6+ - Using Mozex plugin
niet:
- * Added support for memory usage and binary name (on xas)
Phoenix:
- * Code cleaning in several modules due to making the members size, opcode and prot private in packets.h.
- * CFile Close(), Read() and Seek() made const. Seek() needed the use of mutable with m_fd to be const.
- * Put lots of consts around the code in the routines that should be so.
- * Patch to --enable-stdin to aid in debug with valgrind.
- * Code cleaning in module Packets, made a lot of stuff private now.
- * Small hacks to print debug messages and avoid crashes, mainly in PartFile.cpp.
- * Sanity checks in debug mode (MagicNumbers) to aid finding bogus clients and files.
- * Created debugstuff module, debug build only.
- * New configure option --enale-verbose, so that normal users are not flooded with debug messages.
- * MagicNumbers are swapped to signal deleted source/PartFile.
- * Removed deprecated wxArrayString::Remove(size_t nIndex, size_t nRemove = 1) using wxArrayString::RemoveAt(size_t nIndex, size_t nRemove = 1) now.
- * Get rid of evil wxString::GetWriteBuff() and wxString::UngetWriteBuf() in ECSocket.h.
- * Added -pw/--password command line option to amuleweb.
- * Small unicode fixes.
- * Fixed a messed up display in html code in aMule.tmpl (thanks to steve.reaver)
- * Fixed font problem after Xaignar's great flicker free work in download list control.
- * Fixed broken sort arrow after flicker free clean up.
- * Enabled mouse wheel scrolling in all aMule list controls.
- * Fixed two unhandled events in amule.cpp: CHAT_REFRESH_FRIEND and CHAT_FIND_FRIEND.
- * Fixed compilation in 2.5.x and some unicode issues in aLinkCreator. Using wxAppConsole when wx > 2.5.0.
- * Fixed compilation and linking in 2.5.x for amuleweb. Now uses wxAppConsole when wx > 2.5.0.
- * Added a test for the return value of theApp.serverlist->GetServerByAddress(), which could be NULL.
- This was the reason why aMule was crashing when trying to connect to server with wxWidgets-2.5.2.
- * Fixed compilation and linking in 2.5.x for amulecmd. Same problem as amuleweb.
- * Commited a patch from wolti that fixes compilation on sparc/Solaris systems.
- * More sparc compilation fixes, thanks to wimms.
- * Removed the declaration of void ParseCommandLine(); from TextClient.h and WebInterface.h. It seems to have been forgotten here.
- * Patch to listctrl.cpp, was segfaulting in 2.5.1 when hiding/resizing columns. In 2.4.2 was just asserting.
- * Patch to Partfile.cpp, workaround the socket == NULL bug, so that amule does not crash.
shakraw:
- * Fixed the "remote connect" bug
- * Unicode support for amuleweb
- * Fixed typos on amuleDlg
- * Unicoded some files.
steve.reaver:
- * Fixed a messed up display in html code in aMule.tmpl
thepolish:
- * wxCas:
- - Fixed for amulesig.dat changes
- - Solved localized decimal separator pb
- - Embeded all pixmaps in src files and remove now unused pixmaps dir (better for portability)
- - Win32 toolbar pixmaps have transparency now
- - Added variable refresh timers
- - Added user preference system
- - Added statistic image creation
- - Added FTP support for an automatic upload of the statistic image
- * aLinkCreator:
- - Added this new maaarvellous tool suggested by DeltaHF to compute ed2k links from a file (same behavior as eMule link creator, but no shared code)
- - Rewrote md4hash and ed2khash code to avoid external dependencies (libcryptopp free), and to be Big Endian proof (works on Mac afaik)
- - Added alcc, the "alc for console" command line client
- - Added toolbar themes (KDE and DeltaHF's default for now)
- - Thanks to Phoenix (Unicode, Hook, commandline...) and one_2_one (Mac tests)
- * aMule:
- - Rewrote Makefile.am tree to fit to GNU standards
- - Removed Makefiles stuff for wxwidgets < 2.2.6
- - With >= wx-2.5, use wx-config --libs=base,net instead wxbase-config (because base in buggy on 2.5), and keep using both on 2.4 versions
- - Check for wx >= 2.4.2 instead of 2.4.0
- - Removed GTK2 warning with wx >= 2.5
- - Fixed GTK2 not detected
- - Enabled documentation installation
- - Install xas in $(libdir)/xchat/plugins. Will work if aMule and xchat are installed with same DESTDIR
- - Suppressed widlcats in makefile (not fully supported in all make)
- - Enabled make dist and make distcheck targets
- - Force automake scripts update (missing...) to suppress warning in configure
- - Force autogen.sh to regenerate intl at each call to keep sychronised with system gettext templates
- - Some minor i18n and unicode fixes
- - Updated POTFILE.in
- - Removed Win32 stuff from autotools scripts
- - Added static MakefileWIN32 for win32 compilation
Unleashed:
- * Cache get_path homedir to speed up multiple calls
- * Removed unused Tag_Struct
- * Fixed var init and memleak in SearchList
- * Fixed COMP.10 bug
- * Wiped out USE_DEBUG_SYMS
wimms:
- * More sparc compilation fixes.
wolti:
- * Patch that fixes compilation on sparc/Solaris systems.
Xaignar:
- * Merged lists used to identify file-types to avoid duplicity.
- * Added wrapper-class around MD4 hashes.
- * Fixed a number of places where the hashes where used as NULL-terminated strings, despite them not having a NULL-terminator.
- * Most functions using hashes now use the MD4 wrapper class for arguments.
- * Fixed rare possibility of ending with an unclosed file in CServerListCtrl.
- * Fixed unsafe parsing of OP_SERVERIDENT type packets.
- * Fixed unsafe passing of strings as arguments to functions using format-strings.
- * Changed the chat-dialogs to textctrls, which means that it is now possible to copy text (the unix way) by highlighting it.
- * Fixed some memleaks.
- * Fixed "&"s not being escaped on status-bar.
- * Fixed incorrect source exchange packet format (Many thanks to the eMule Plus team for reporting).
- * Started to document source-files with a Doxygen compatible comment format.
- * Fixed the height of the barshaders used on the download list, it was 2 pixels too high, resulting in a slight cutoff.
- * Reducing CPU-usage of auto-priority by not forcing a redraw every time the priority was automatically changed.
- * Fixed that some overloaded functions hadn't been declared virtual in the base class.
- * Replaced gif-animation widget with something more lightweight.
- * Added sainity checks to CMemFile::Read.
- * Fixed a number of uninitialized variables.
- * Fixed several warnings about non-existing files.
- * Fixes warning about not being able to create dir "" on first run.
- * Changed "Extended Drop Sources" preferences, with the result that the option will be reset to "Swap Sources" when this version of aMule is first run.
- * Got rid of most warnings when compiling.
- * Lots of work on getting rid of c-strings.
- * Fixed bug that would cause deleted sources not to be removed from the A4AF lists. This was a major source of crashes.
- * Improved performance and safety of the source lists used with PartFiles.
- * Lots of small imports from eMule.
- * Made reqfile attribute of CUpDownClient private and added wrapper functions to fix the avilable-part information getting out of sync.
- * Cleanup of includes.
- * Fixed that we were always sending an OP_REASKACK packet and then the correct packet when recieving an OP_REASKFILEPING.
- * Fixed Bug 45: URLs are now properly escaped when opening browsers for Fake-check and such.
- * Fixed Bug 62: aMule will now be brought to front when left-clicking on the tray icon and when it is redisplayed after having been hidden.
- * Added checks against aggressive clients (clients who reask for files too often).
- * Imported checks for known leech-clients from the BlackRat eMule mod ( Many thanks to Le Rat Noir and inoteb for allowing us to use their work ).
- * Fixed wrong initialization of headers for some packets ( Thanks to thomas001 for reporting ).
- * Fixed a delete called on an uninitialized pointer in the statistics dialog and properly initalized serveral other pointers.
- * Optimizing the Comp(Up/Down)DatarateOverhead functions to something that didn't require traversing a list at each call.
- * Complete rework of the source-swapping functions.
- * Fixed the possibility of sources being added to multiple source-lists at the same time (No more mis-matching hashes warnings).
- * Fixed the new columns added by deltaHF not being displayed and added checks in case the same thing happens again.
- * Almost completly eleminated flicker on the download list and did a cleanup of the drawing routines associated the the download list widget.
- * Fixed some lists (Server list, maybe others) not being sorted when aMule is started.
- * Fix mem-corruption bug in SysTray code if the systray was compiled in but hidden.
- * Fixed the problem with deleting the last (connected) server on the server list.
- * Removed the following files:
- - ini2.*
- - CString.h
- - mfc.h
- - position.h
- - resource.h
- - strings.en
- * Cleaned up the following files:
- - CTypedPtrList.h
- - BarShader.*
- * Many other smaller changes.
Special thanks to:
- * Le Rat Noir and Inoteb of the BlackRat eMule mod (http://www.blackrat.fr.tc/) for allowing us to make use of their work on detecting bad clients.
- * Optimazer and the eMule Plus team (http://emuleplus.sourceforge.net/) for reporting a bug in source-exchange packets.
- * thomas001 for reporting a problem with packet headers.
- * Everaldo (http://www.everaldo.com) & "Jimmac" (http://jimmac.musichall.cz/ikony.php3) for new icons
- * Phk for searching for new icons ;)
- * kno and thermoman for their fixes :)
- * TheBlackHand and Hawkster eMule mods
- * uberpenguin for AMPS :)
- * All aMule users, testers & translators
- * eMule & wxWidgets devs
- * Everyone we forgot here ;)