ChangeLog for MusicTracker Pidgin Plugin
========================================

2009-10-10 (Version 0.4.22)
	* Fix 'make check' and 'make distcheck'
	* Add -shared to musictracker_la_LDFLAGS to avoid building unneeded static library (issue 221)
	* Ensure stale data from MRPIS player is not reported when track metadata hashtable is missing one of the keys we look for (issue 215)
	* Look for libxmmsclient.so.6 and libxmmsclient.so.5 as well as just libxmmsclient.so (issue 214)
	* Remove intrepid, add lucid to ubuntu distributions we try to build for on launchpad
	* Added/Updated more translations contributed via Launchpad Rosetta:
	- Added: Romanian(ro), Slovak(sk), Turkish(tr)
	- Updated: Finnish(fi), Hungarian(hu), Polish(pl), Swedish(sv)
	* Zune Player seems to object to the MsnMsgrUIManager window having a title, so remove that (issue 38)
	* Also Zune player seems to send the title and artist swapped compared to Windows Media Player, but fortunately identifies itself as Zune. So detect it and swap them.
	* Don't leak handles to the winamp process. Don't leak memory we allocate inside the winamp process (issue 232)

2009-03-03 (Version 0.4.21)
	* Fix a crash in preferences dialog when using russian locale (and potentially others with long translation strings) (issue 176)
	* Added/Updated more translations contributed via Launchpad Rosetta:
	 - Added: Australian English(en_AU), Greek(el), Hungarian(hu)
	 - Updated: Brazilian Portugese(pt_BR), Czech(cs), Dutch(nl), French(fr), Finnish(fi), Hebrew(he), Low German(nds), Portugese(pt)), Russian(ru)
	* Update label for Exaile interface to clarify it is for Exaile versions prior to 0.3 (issue 164)
	* Use pkg-config to correctly pick up any needed CFLAGS for pcre (e.g. for include path if pcre.h is installed in /usr/include/pcre) (issue 197)
	* Correctness fixes for a couple of issues detected by valgrind
	* Various updates to launchpad and koji snapshot build scripts
	* Check that installer has acquired admin privs, and stop with an error if not (issue 185)
	* Installer will Create the plugins directory if needed, so it doesn't gratuitously fail if musictracker is being installed before pidgin is installed
	* Manifest installer for XP style common controls
	* Fix a dbus related memory leak (issue 88, issue 148)
	* Fix an error potentially causing winamp to crash (issue 181)
	* Always apply printable character filter to track information, which could otherwise cause disconnects of XMPP accounts (issue 198)
	* Leave offline accounts alone, so we don't cause them to go online (issue 192)
	* Don't use old track information if we have problems getting new track information from an MPRIS player (issue 202)

2009-09-15 (Version 0.4.20)
	* Reformat configure output when a package check fails, to make it a bit easier for people to read and understand that development packages are required
	* Add/update some more translations contributed via launchpad (added: Danish(da), Swedish(sv), Simplified Chinese(zn_CN); updated:  Low German(nds), Dutch(nl), Polish(pl), Norwegian Bokmal(nb), French(fr), German(de))
	* Fix snapshot script not do to anything if svn is unavailable; Don't wait for koji builds to complete in snapshot script; Launchpad snapshots are now built for ubuntu karmic as well
	* Improve release script to create a clean working directory before starting

2009-06-24 (Version 0.4.19)
	* Update build scripts so launchpad builds are requested for all active Ubuntu releases; include translations in the .deb packages generated there
	* Autogen.sh replaces reconf; this properly updates ltmain.sh, fixing a problem when building from source (issue 104)
	* Distinguish between 'player closed' and 'player stopped' states more clearly.  When in the 'player closed' state, we always leave the status message alone.(issue 65)
	* Added a tooltip to tell people the effect of leaving the status format string blank is to keep using the status message selected in the pidgin status selector (issue 66)
	* Add support for fetching track information from the Last.fm webservices API 2.0 (issue 89)
	* Fix the legacy Last.fm track information fetcher to present a proper UserAgent identifier and plug an enormous memory leak.
	* Remove a hardcoded limit to buffer-size in debug output
	* Improvements to Windows installer: add RequestExecutionLevel to installer script (should avoid some Vista issues), add an uninstaller script, set compressor to LZMA (reduces downlown size)
	* Add/update some more translations contributed via launchpad (added: Russian(ru); updated:  Italian(it), Spanish(es), Polish(pl), French(fr), Norwegian Bokmal(nb) translations)

2009-05-11 (Version 0.4.18)
	* Fix the Spanish translation, so that the translation of 'MusicTracker' menu item is not a translation of the instructions to translators for translating the 'MusicTracker' menu item, but a translation of the 'MusicTracker' menu item.
	* Fix a bug preventing track time retrieval from banshee 1.0; it's a uint not an int
	* Tidy up XMMS interface to reduce debug output spam and fix a memory leak
	* Avoid a dlopen() leak if libaudacious.so and libxmms.so are both present
	* Rewrite status message generation to allow the addition of "%s" in the message format as the pidgin saved status and clarify the logic a lot (issue 19)
	* More adjustments to MSN compatible WM_COPYDATA message catcher, to deal with the message in the form Spotify sends (issue 128).
	* Correct a mistake in the WM_COPYDATA parser which meant album information wasn't captured in one possible format.
	* It seems that the MSN compatible WM_COPYDATA parser was incorrect and the artist and title were swapped in lots of cases; try to impove this so the "swap artist and title" preference shouldn't need to be turned on.
	* Minor corrections and additions to French (fr) and Spanish (es) translations. Add partial Indonesian(id) translation, contributed via launchpad
	* Add a fallback to g_timeout_add() when built with GLib versions prior to 2.14.0, which do not have g_timeout_add_seconds() (issue 125)
	* Apply a patch to fix XMMS2 0.6 track information retrieval from chewi (issue 71).  This change is incompatible with XMMS2 <0.5

2009-04-14 (Version 0.4.17)
	* Avoid confusion for those building from source by installing into the prefix which pidgin was configured with by default (issue 116)
	* Add/update some more translations contributed via launchpad (added: Dutch(nl), Norwegian bokmal(nb); updated: German(de), Italian(it), Spanish(es))
	* Fix a terrible crash-causing brown-paper bag bug.  pidgin trac ticket #8756
	* Make sure mostrecent_ti.player is initialized to something, avoiding a crash if you activate status changing before you've played anything. (Issue 107)
	* Snapshot script changes to request RPM buid on Koji; only do snapshot builds after a change is commited; use svn rev number in snapshot name

2009-03-05 (Version 0.4.16)
	* Correct a toolchain issue so binaries don't crash will "illegal instruction" on pentium III and earlier processors (issue 76)
	* Various packaging script improvements, add an initial attempt at RPM .spec file
 	* For packaging convenience, add a --disable-werror configure option
	* Be a bit more careful checking if a dbus name has an owner, and add a bit more logging (appears to resolve issue 103)
	* Cause the status to update immediately after status changing is activated (rather than not until the next time the track information changes) (issue 100)
	* Audit uses of sccanf() for checking the return value correctly
	* Fix annoying "close pidgin, close player, open pidgin, 'now listening' doesn't get cleared" bug (again), reintroduced by r271 (also fixed by pidgin 2.5.5 which properly understands tune status shouldn't be saved)

2009-03-02 (Version 0.4.15)
	* Use a proper plugin ID and stop bogusly claiming to be a core plugin in debug output
	* Change "Broken 'now listening'" to "Don't use 'now listening'" to clarify and make it's use more general (issue 86)
	* Avoid a warning from a debug build of dbus library if dbus connection could not be established
 	* Tweak a few strings for clarity
	* Try harder to avoid "MSN Error: Friendly name changes too rapidly" (issue 78)
	* Fix sequence of actions so that the per-protocol disable setting clears the status message immediately when it's set (issue 85)
	* Avoid spamming 'sh: mocp: not found' to stderr in autodetect mode when mocp isn't installed (issue 96)
	* Don't set 'now playing' when player is paused (issue 92)
	* Make the Windows installer slightly more knowlegable about where pidgin is installed, to help picking our install directory
	* Properly install translations for languages pidgin doesn't have translations of (issue 97)
	* Add/update some more translations contributed via launchpad (added: Czech, Esperanto, Finnish, French, German (Low), Hebrew, Polish, Slovenian, Spanish; updated: German, Portugese (Brazilian))
	* Fix a random crash at plugin load (issue 106)
	* Remove the use of fixed sized buffers for preference name formatting, which could be causing crashes with longish usernames
	* Fix a bug causing some track information from winamp longer than 50 characters to end in garbage characters (issue 102)

2009-01-10 (Version 0.4.14)
	* Correct encoding for it.po to UTF-8; Set the codeset for musictracker domain to UTF-8 (issue 69)
	* Adjust WM_COPYDATA message parsing yet again, so it works with the format used by TTplayer as well (part of issue 70)
	* Try to make it a bit clearer in the player selection dropdown that the Amarok DCOP interface is only for Amarok 1 (Amarok 2 uses the MPRIS interface)
	* Avoid a potential initial crash in lastfm feed code
	* Apply patch for Vagelume player support by Juan A. Suarez Romero (issue 72)
	* Apply patch for MOC support by Peter Vizi (issue 74)
	* Updated .ebuild file, add ./configure options --enable-xmm2 and --disable-xmms2 to allow control of if XMMS2 client support is built in or not (issue 77)
	* Align Win32 build flags with those used by pidgin
	* Fix some more warnings
	* Add some more translations contributed via launchpad (https://translations.launchpad.net/pidgin-musictracker/trunk/+pots/musictracker)

2008-12-22 (Version 0.4.13)
	* Fix filter to operate on whole words only (issue 51)
	* Fix filter to operate on 'now listening', not just the status message
	* Add an option to swap artist and title in the received MSN-messenger compatible WM_COPYDATA message, as some people are apparently getting them from some player applications in the opposite order for reasons which are unclear
	* Add linux songbird player support via dbusbird interface (issue 41) (Note that dbusbird currently has a few limitations: it truncates title to 30 characters, and stopped status doesn't seem to be reported reliably)
	* Add translation support using gettext (NOTE: To be consistent with the location of the translation files, musictracker now installs the plugin into the prefix specified to ./configure, rather than directly into the pidgin plugin directory found using pidgin's pkg-config file.  Since pidgin installed into /usr doesn't appear to search for plugins in /usr/local by default, this means that people building from source may well need to do './configure --prefix=/usr' where previously './configure' has done the right thing for them...)
	* Add italian translation by Alessio Fachechi (issue 67) (Other translations are welcome.  The file po/musictracker.pot is a template containing all the translatable messages)
	* Deal with AIMP2's implementation of the winamp interface (issue 61)
	* Added reported classname for Foobar2000 ColumnUI (issue 53)
	* Try again to get the dbus-glib dependency in .ebuild right (issue 55)

2008-11-19 (Version 0.4.12)
	* Relax and refine the regex used for matching MSN "now listening" messages; track info from VLC should work again (issue 46)
	* Remove a fixed size buffer from capture() utility function
	* Add a per-account "tune status is broken" configuration to work around the problem that libpurple tells us googletalk accounts have tune status, but it doesn't actually work (and I can't work out a good way to detect this situation automatically) (issue 26)
	* Merge some fixes to problems found with valgrind (fixes warnings when compiled with -D_FORTIFY_SOURCE=2) (issue 44)
	* Remove m4 directory from build, we don't actually make any macros (stops ebuild installing empty), see gentoo bug #180771
	* Update and correct dbus-glib dependency in .ebuild
	* Fix a crash when data retrieval from last.fm fails (issue 35)
	
2008-10-03 (Version 0.4.11)
	* Fix "status doesn't clear when status changing is deactivated" bug (#37), more collateral breakage from change for #32
	* Reorder menu actions so disable/enable is the first one, as it's probably the most used

2008-09-22 (Version 0.4.10)
	* Fix terrible bug introduced by change for issue #32, which utterly broke tune status support (issue #36)

2008-09-22 (Version 0.4.9)
	* Update configure check for dbus-glib to 0.73, needed for dbus_g_proxy_call_with_timeout
	* Fix /nowplaying to get correct information when status changing is disabled (issue #32)
	* Fix a problem with the msn compatability message handler which behaved badly when Winamp had stopped in auto-detect mode
	* Avoid a crash mode in winamp message handling seen with musikCube (due to it's limited Winamp compatibilty interface)
	* Fix crash with audacious caused by a rather obvious mistake (issue #28, #33)
	* Audit uses of G_TYPE_STRING returned from a dbus call and fix a couple of leaks
	* Make MPRIS player detection fully dynamic, scanning for org.mpris.* service names; add an additional hint needed for dragonplayer to work
	* Generalize MSN message support a little bit more
	* Avoid a potential null dereference in xmms2 debug output
	* Rewrite MPRIS debug code to avoid use of GHashTableIter, so we work with all GLib > 2.0.0, and so don't have a different GLib dependency to pidgin itself

2008-09-10 (Version 0.4.8)
	* Add patch from Phillip Camp for SqueezeCenter/SlimServer support 
	* Fix a crash which could occur if an account is added whilst musictracker is loaded
	* Add a fallback method for getting track information by catching messages intended to pass that info to MSN Messenger
	* Fix foobar2000 title parsing for the case where the track has no album information
	* Add MPRIS-complaint player track information support

2008-09-01 (Version 0.4.7)
	* Correct the way we retrieve track artist info from WMP (#16)
	* Fix a problem where tune status could sometimes get left with stale data (e.g. if player was closed whilst pidgin was closed)
	* Apply patch from hyperair adding a timeout to dbus calls, so they cannot block indefinitely (hanging pidgin) if something has gone wrong in the target application (#13)
	* Fix restoring saved status so it correctly restores account-specific saved status (#11)
	* Attempt to avoid being told "MSN: Friendly name changes too rapidly" when player is stopped
	* Some more tidying up
	* Update libmpdclient to latest svn (revision 7402) (this fixes a file descriptor leak when an IPv6-enabled MPD is running) (#137, maybe #12?)
	* Enable MPD client in windows build
	* Fix type conversion warnings when building for x64 (#18)
	* Use dopen/dlsym to access XMMS2 client library, so it doesn't become a run-time dependency if we build with XMM2 support enabled

2008-08-22 (Version 0.4.6)
	* Rewrite WMP support using disphelper from http://disphelper.sourceforge.net/ and WMPuICE by Christian Mueller from http://www.mediatexx.com
	* Restore support for non-widechar Winamp interface, as a fall-back if preferred interface fails

2008-08-07 (Version 0.4.5)
	* Various fixes to avoid crash modes where track information is longer than expected
	* Compilation warnings fixes
	* Improve foobar2000 and winamp interface code to work better for track info using east asian characters
	* Do PCRE_STATIC properly (only applies to windows builds and tells us to use a static library)
	* Improve last.fm feed interface: infer player is off if scrobble timestamp is older than a configurable interval, configure polling interval as well
	* Add some possibly needed pcre_free()s

2008-08-01 (Version 0.4.4) "I suppose I should fix that...."
	* Store musictracker per-account preferences using both screen name and protocol as the key,
		so that multiple accounts with the same screen name on different protocols may have different setttings (#2)
	* Strip windows DLL before making installer (so it's not huge!) (#4)
	* Restore UI selected status when musictracker is unloaded (#114)
	* Fix tune status support to work with msn, coming in purple 2.5.0,
		add UI to disable personal message changing if we have tune status (#3)
	* Add ability to disable status changing whilst away
	* Add a simple implementation of a "/nowplaying" or "/np" command
	* Fix way amarok and iTunes interface code deals with times greater than 60 minutes (#22)
	* Fix exaile interface code to retrieve current position in track correctly (was broken!)
	* Tidy up some debug output and general cruft
	* Add a bit of defensive code against a possible crash (#5)
	
2008-07-22 (Version 0.4.3 forked) "patch frenzy"
	* patch from chet.the.gray for Listen player support (#13)
	* patch from puthali.HB for Last.fm feed support (#48)	
	* patch from patrick.dessalle for Audacious 1.4 support (#86)
	* patch from hyperair for Banshee 1.0 support (#87)
	* patch from thelrix for XMPP user tune support (#96)
	* patch from ZeeGeek for XMMS2 player support (#121)
	* Rhythmbox: Slightly improve the way we report information for streams (#35), based on a patch by eemil.lagerspetz
	* Improve "Toggle status changing" action so it has a dynamic menu item which reflects the current Enabled/Disabled state
		(#39), based on a patch by TorresMAT
	* Winamp: don't screw up titles which contain hyphens, try to still do something useful with streams (#59)
	        based on a patch by leonardo.monteiro.fernandes
	* amarok: Check for running dcopserver to avoid problems when dcop blocks for long enough that we appear to hang pidgin (#68),
		Don't spam stderr with "call failed" errors from trying to dcop amarok
        * Add missing header include to fix Gentoo QA notice on build (#138)
	
2008-07-10 (Version 0.4.2 unofficial)
	* Fix finding window for Foobar2000 0.9.5.3 and later
	* Don't crash if track info from player isn't valid UTF-8!
	* Get UTF-8 track info from iTunes and WMP
	* Avoid damaging valid UTF-8 track info when removing unprintable characters
	* If the track info message is empty, try to restore the status message selected in UI (e.g. for when your player stopped message is empty)
	* Remove use of modified MSN protocol plugin to append now-playing info to nickname (I suggest you use msn-pecan which supports personal messages)
	* Fixed to build with latest purple

2007-05-16 (Version 0.4.1)
	* Added Banshee and Quod Libet support
	* Fixed bug that caused disable option to not work for MSN
	* Disabling musictracker for a protocol now clears the previous status
		set by musictracker. Also works for
		Tools->MusicTracker->Toggle Status Changing
	* Updated Exaile support to work with latest version (0.2.9)

2007-05-12 (Version 0.4)
	* Added new and improved preferences dialog
	* Added scheme to set per-player preferences
	* Per-account status customizations and disabling now supported
	* Added hostname, port and password preferences to MPD support
	* Added iTunes and Windows Media Player support
	* Added NSIS based Windows installer

2007-05-11
	* Cleaned up player selection code. Now only a singe array entry
		needs to be added to g_players for adding a player
	* Fixed defect that caused detection of DBUS-based players to start
		up the player if it was not running (such as Rhythmbox)

2007-05-08
	* Added support for compiling on Windows with Mingw
	* Added Winamp support
	* Added foobar2000 support (incomplete, does not get track duration)

2007-05-06 (Version 0.3)
	* Made compatible with Pidgin 2.0.0
	* Added Rhythmbox support
	* Fixed missing player-selection configuration option bug
	* Added auto-detection of media players

2007-03-22 (Version 0.2.3)
	* MPD support added by Erik de Jong
	* Fixed libxmms.so symlink checking bug
	* Fixed crash due to assertion on delimiter length in preferences
	* Added option for disabling status filter

2007-01-29 (Version 0.2.2)
	* Cleaned up XMMS & Audacious support code

2007-01-03
	* Removed dependency on XMMS Infopipe plugin
	* Added Audacious player support

2006-12-29 (Version 0.2.1)
	* Added menu action to toggle status changing

2006-12-27 (Version 0.2)
	* Added protocol-specific status format overriding support
	* Started maintaining Changelog
