December 15th, 2011Finch:
· Fix compilation on OpenBSD.
AIM and ICQ:
· Fix remotely-triggerable crashes by validating strings in a few messages related to buddy list management.
Bonjour:
· IPv6 fixes
Gadu-Gadu:
· Fix problems linking against GnuTLS. (#14544)
IRC:
· Fix a memory leak when admitting UTF-8 text with a non-UTF-8 primary encoding. (#14700)
Jabber:
· Fix crashes and memory leaks when receiving malformed voice and video requests.
Sametime:
· Separate "username" and "server" when adding new Sametime accounts. (#14608)
· Fix compilation in Visual C++. (#14608)
SILC:
· Fix CVE-2011-3594, by UTF-8 validating incoming messages before passing them to glib or libpurple.
Yahoo!:
· Fetch buddy icons in some cases where we previously weren't. (#13050)
Windows-Specific Changes:
· Fix compilation
August 22nd, 2011Pidgin:
· Make the max size of incoming smileys a pref instead of hardcoding it. (#5231)
· Added a plugin information dialog to show information for plugins that aren't otherwise visible in the plugins dialog.
· Fix building with GTK+ earlier than 2.14.0 (GTK+ 2.10 is still the minimum supported) (#14261)
libpurple:
· Fix a potential crash in the Log Reader plugin when reading QIP logs.
· Fix a large number of strcpy() and strcat() invocations to use strlcpy() and strlcat(), etc., forestalling an entire class of string buffer overrun bugs.
· Change some filename manipulations in filectl.c to use MAXPATHLEN instead of arbitrary length constants.
· Fix endianness-related crash in NTLM authentication (#14163)
Gadu-Gadu:
· Fixed searching for buddies in public directory. (Tomasz Wasilczyk) (#5242)
· Better status message handling. (#14314)
· Merged two buddy blocking methods. (#5303)
· Fix building of the bundled libgadu library with older versions of GnuTLS. (patch plucked from upstream) (#14365)
ICQ:
· Fix crash selecting Tools->Set Mood when you're online with an ICQ account that is configured as an AIM account. (#14437)
IRC:
· Fix a crash when remote users have certain characters in their nicknames. (#14341)
· Fix the handling of formatting following mIRC O (#14436)
· Fix crash when NAMES is empty. (James McLaughlin?) (#14518)
MSN:
· Fix incorrect handling of HTTP 100 responses when using the HTTP connection method. This can lead to a crash.
· Fix seemingly random crashing. (#14307)
· Fix a crash when the account is disconnected at the time we are doing a SB request. (Hanzz, ported by shlomif) (#12431)
XMPP:
· Do not generate malformed XML ("") when setting an empty mood. (#14342)
· Fix the /join behavior. (Broken when adding support for @) (#14205)
Yahoo!/Yahoo! JAPAN:
· Fix coming out of idle while in an unavailable state
· Fix logging into Yahoo! JAPAN. (#14259)
Windows-Specific Changes:
· Open an explorer.exe window at the location of the file when clicking on a file link instead of executing the file, because executing a file can be potentially dangerous.
June 24th, 2011Pidgin:
· Fix a potential remote denial-of-service bug related to displaying buddy icons.
· Significantly improved performance of larger IRC channels (regression introduced in 2.8.0).
· Fix Conversation->Add on AIM and MSN.
· Entries in the chat user list are sorted properly again. This was inadvertenly broken in 2.8.0.
Finch:
· Fix logging in to ICQ.
libpurple:
· media: Actually use the specified TCP port from the TURN configuration to create a TCP relay candidate.
AIM and ICQ:
· Fix crashes on some non-mainstream OSes when attempting to printf("%s", NULL).
Plugins:
· The Evolution Integration plugin compiles again.
June 8th, 2011General:
· Implement simple silence suppression for voice calls, preventing wasted bandwidth for silent periods during a call.
· Added the DigiCert? High Assurance CA-3 intermediate CA, needed for validation of the Facebook XMPP interface's certificate.
· Removed the QQ protocol plugin. It hasn't worked in a long time and isn't being maintained, therefore we no longer want it.
Pidgin:
· Duplicate code cleanup.
· Voice/Video call window adapts correctly to adding or removing streams on the fly.
· Don't cancel an ongoing call when rejecting the addition of a stream to the existing call.
· Pidgin plugins can now override tab completion and detect clicks on usernames in the chat userlist.
· Fix the tooltip being destroyed when it is full of information and cover the mouse (dliang)
libpurple:
· media: Allow obtaining active local and remote candidates.
· media: Allow getting/setting video capabilities.
· Simple Silence Suppression is optional per-account.
· Fix purple-url-handler being unable to find an account.
· media: Allow adding/removing streams on the fly.
· Support new connection states in NetworkManager 0.9.
· When removing a buddy, delete the pounces associated with it.
· media: Allow libpurple and plugins to set SDES properties for RTP conferences.
· proxy: Add new "Tor/Privacy" proxy type that can be used to restrict operations that could leak potentially sensitive data (e.g. DNS queries).
· media: Add support for using TCP relaying with TURN (will only work with libnice 0.1.0 and later).
AIM:
· Fix setting icons with dimensions greater than 64x64 pixels by scaling them down to at most 64x64
Gadu-Gadu:
· Allow showing your status only to buddies.
· Updated internal libgadu to version 1.10.1.
· Updated internal libgadu to version 1.11.0.
· Suppress blank messages that happen when receiving inline images.
· Fix sending inline images to remote users, don't crash when trying to send large (> 256kB) images.
· Support typing notifications.
· Require libgadu 1.11.0 to avoid using internal libgadu.
· Don't count received messages or statuses when determining whether to send a keepalive packet.
· Fix a crash when receiving images on Windows or an incorrect timestamp in the log when receiving images on Linux.
· Support XML events, resulting in immediate update of other users' buddy icons.
· Accept poorly formatted URLs from other third-party clients in the same manner as the official client
ICQ:
· Fix setting icons with dimensions greater than 64x64 pixels by scaling them down to at most 64x64.
· Fix unsetting your mood when "None" is selected.
· Ignore Daylight Saving Time when performing calculations related to birthdays.
· It is now possible to specify multiple encodings on the Advanced tab of an ICQ account's settings by using a comma-delimited list.
IRC:
· Add "authserv" service command..
MSN:
· Fix a hard-to-exploit crash in the MSN protocol when using the HTTP connection method
MXit:
· Support for an Invite Message when adding a buddy.
· Fixed bug in splitting-up of messages that contain a lot of links.
· Fixed crash caused by timer not being disabled on disconnect. (introduced in 2.7.11)
· Clearing of the conversation window now works.
· When receiving an invite you can display the sender's profile information, avatar image, invite message.
· The Change PIN option was moved into separate action.
· New profile attributes added and shown.
· Update to protocol v6.3.
· Added the ability to view and invite your Suggested Friends, and to search for contacts.
· Also display the Status Message of offline contacts in their profile information.
XMPP:
· Remember the previously entered user directory when searching.
· Correctly handle a buddy's unsetting his/her vCard-based avatar.
· Squash one more situation that resulted in duplicate entries in the roster (this one where the server reports the buddy as being in the same (empty) group.
Plugins:
· The Voice/Video Settings plugin now includes the ability to test microphone settings.
· Fix a crash when handling some saved settings in the Voice/Video Settings plugin.
Windows-Specific Changes:
· Fix building libpurple with Visual C++ .NET 2005. This was accidentally broken in 2.7.11.
· Build internal libgadu using packed structs, fixing several long-standing Gadu-Gadu issues
March 11th, 2011General:
· Our bundled libgadu should now build on HP-UX.
· Fix some instances of file transfers never completing
Pidgin:
· Sort by Status no longer causes buddies to move around when you click them.
· Fix embedding in the system tray on older GTK+ releases
· No longer require libstartup-notification for startup notification support. GTK+ has included support for years, so use it instead.
AIM:
· Fix a bug where some buddies from your buddy list might not show up. Affected non-English ICQ users the most.
· Send keepalives for all types of network connections. Will hopefully make chat rooms more reliable
MSN:
· Fix bug that prevented added buddies to your buddy list in certain circumstances
XMPP:
· Fix building on platforms with an older glib (inadvertantly broken in 2.7.10). Don't treat the on-join status storms as 'new arrivals'.
· Extend the /join command to support room JIDs, enabling you to join a room on any server.
· Add support for receiving a limited amount of history when joining a room (not currently supported by Pidgin and Finch)
Yahoo!/Yahoo! JAPAN:
· Fix CVE-2011-1091, denials of service caused by NULL pointer dereferences due to improper handling of malformed YMSG packets.
March 11th, 2011General:
· Force video sources to all have the same capabilities. This reduces the number of times video must be scaled down, saving CPU time.
· Starting multiple video calls and ending one no longer causes the other calls to stop sending audio and video
· Perl bindings now respect LDFLAGS
· Added AddTrust External Root CA
· Resolve some issues validating X.509 certificates signed off the CAcert Class 3 intermediate cert when using the GnuTLS SSL/TLS plugin.
Gadu-Gadu:
· Don't drop whole messages when text is colored.
Groupwise:
· Don't show two windows when using "Get Info" on a buddy.
IRC:
· Don't send ISON messages longer than 512 bytes
libpurple:
· Stop sending audio when placing a call on hold.
· Stop translating gpointers to ints in the dbus API. This removes functions from the dbus API.
· Fix D-Bus introspection calls that omit the interface parameter.
· Fixed bugs in purple_str_to_time() that caused the most recent 'make check' failures.
· Correct an issue that caused some UIs other than Pidgin or Finch to leave a buddy in the "is typing" state.
· Fix potential information disclosure issues in the Cipher code
Pidgin:
· Support using the Page Up and Page Down keys on the numeric keypad in the conversation window.
· Fix a few memory leaks.
· Support rendering strikethrough when received as in-line CSS.
· Editable comboboxes are now more friendly to some GTK+ themes.
Plugins:
· The Voice/Video Settings plugin no longer resets selected devices to defaults.
· The Voice/Video Settings plugin no longer crashes when a stored device name is not found in the list of available devices.
· The Autoaccept plugin now allows disabling filename escaping.
· The Autoaccept plugin now allows choosing Reject/Ask/Accept for non-buddies
QQ:
· QQ2008 is now the default protocol version
XMPP:
· Don't crash when receiving an unexpected/invalid jingle transport type.
· Handle Connection: Close headers for BOSH, when the server does not terminate the connection itself.
· Improved parsing for DIGEST-MD5, which should resolve issues connecting to some jabberd2 servers. This corrects an issue parsing one-character or empty elements.
Yahoo!/Yahoo! JAPAN:
· Fix a crash when an account disconnects before a p2p session is completely set up
December 27th, 2010· Contains a fix for a security issue in MSN that leads to a crash.
December 20th, 2010General:
· Fix the exceptions in purple-remote on Python 2.6+. (Ari Pollak) (#12151)
Pidgin:
· When a conversation has reached the maximum limit on the number of smileys, display the text representation of the smiley properly when it contains HTML-escapable characters
· Drop dependency on GdkGC and use Cairo instead.
· New UI hack to assist in first-time setup of Facebook accounts with icon from Jakub Szypulka.
· Don't hide the buddy list if there is no notification area in which to put the icon. (#12129)
libpurple:
· Fix multipart parsing when '=' is included in the boundary for purple_mime_document_parse. (Jakub Adam) (#11598)
AIM and ICQ:
· Buddies who unset their status message will now be correctly shown without a message in your buddy list. (#12988)
Gadu-Gadu:
· Updated our bundled libgadu and minimum requirement for external libgadu to 1.9.0. (#12789)
MSN:
· Stop showing ourselves in the list of endpoints that can be disconnected.
· Allow full-size display names, by not escaping (most) non-English characters. (#8508)
· Fix receiving messages from users on Yahoo and other federated services. (#13022)
· Correctly remove old endpoints from the list when they sign out.
· Add option to disable connections from multiple locations. (#13017)
· Correctly update your own display name in the buddy list. (#13064)
· Correctly show ourselves as offline in the buddy list when going invisible. (#12945)
· Correctly update your own icon in the buddy list. (#12973)
· Remove struct packing for better portability. (#12856)
XMPP:
· Terminate Jingle sessions with unsupported content types. (#13048)
November 24th, 2010General:
· Allow multiple CA certificates to share the same Distinguished Name (DN). Partially fixes remaining MSN issues from #12906.
· The GNUTLS SSL plugin now discards any certificate (and all subsequent certificates) in a chain if it did not sign the previous certificate. Partially fixes remaining MSN issues from #12906.
· Open requests related to a file transfer are now closed when the request is cancelled locally.
AIM and ICQ:
· AIM should now connect if "Use clientLogin" is turned off and the "Server" field is set to anything other than "login.oscar.aol.com" or "slogin.oscar.aol.com".
· Fix a crash on connection loss.
November 24th, 2010General:
· Included Microsoft Internet Authority 2010 and Microsoft Secure Server Authority 2010 intermediate CA certificates to our bundle. This fixes the "Unable to validate certificate" error for omega.contacts.msn.com.
Pidgin:
· Avoid a use-after-free race condition in the media code (when there's an error reported by GStreamer).
AIM and ICQ:
· SSL option has been changed to a tri-state menu with choices for "Don't Use Encryption", "Use Encryption if Available", and "Require Encryption".
· Fix some possible clientLogin URL issues introduced in version 2.7.5.
· Don't show a ": Ok" connection error when using clientLogin.
· Cleaned up some debug output for improved readability.
MSN:
· Added support for MSNP16, including Multiple Points of Presence (MPOP) which allows multiple simultaneous sign-ins.
· Added extended capabilities support (none implemented).
· Merged the work done on the Google SoC (major rewrite of SLP code)
· Reworked the data transfer architecture. (SlpArchitecture)
· Lots of little changes.
· Don't process zero-length DC messages.
· Fixed a bunch of memory leaks.
· Prevent a use-after-free condition.
XMPP:
· Avoid a double-free in the Google Relay (V/V) code.
· Avoid double error message when failing a file transfer.
· Password-related information is printed out for SASL authentication when the PURPLE_UNSAFE_DEBUG environment variable is set.
· Authentication mechanisms can now be added by UI's or other plugins with some work. This is outside the API/ABI rules!
· Fixed a few printf("%s", NULL) crashes for broken OSes.
Windows-Specific Changes:
· Build the Pidgin Theme Editor plugin (finally).
· Untarring (for themes) now works for non-ASCII destination paths.
November 1st, 2010General:
· Added Verisign Class 3 Public CA - G2 root CA.
Pidgin:
· Properly differentiate between bn and bn_IN in the Translation Information dialog.
AIM and/or ICQ:
· Display the "Authorize buddy?" minidialog when the requestor has an empty nickname. (#12810)
· New ICQ accounts default to proper ICQ servers. Old accounts using one of the old default servers will be silently migrated to use the proper servers.
· ICQ accounts using clientLogin now use the correct ICQ servers. This is separate from the server settings mentioned above.
· '<' should no longer cause ICQ status messages to be truncated in some locations. (#11964, #12593)
· Fix sending messages to chat rooms. (#12768)
Bonjour:
· Don't crash when attempting to log into a Bonjour account and init failed.
Windows-Specific Changes:
· Quote the path stored in the registry when the "run at startup" option in the Windows Pidgin Options plugin is used. (#12781)
October 21st, 2010General:
· Fix search path for Tk when compiling on Debian Squeeze.
· purple-remote now expects and produces UTF-8.
· Add Deutsche Telekom, Thawte Primary, and Go Daddy Class 2 root CAs
· Fix CVE-2010-3711 by properly validating return values from the purple_base64_decode() function before using them.
· Fix two local crash bugs by properly validating return values from the purple_base16_decode() function before using them.
libpurple:
· Fall back to an ordinary request if a UI does not support showing a request with an icon. Fixes receiving MSN file transfer requests including a thumbnail in Finch.
· Fix an invalid memory access when removing UPnP mappings that could cause sporadic crashes, most notably when MSN Direct Connections are enabled.
· Add a sentence to the certificate warning for expired certificates suggesting the user check their computer's date and time.
Pidgin:
· Add support for the Gadu-Gadu protocol in the gevolution plugin to provide Evolution integration with contacts with GG IDs.
· Remap the "Set User Mood" shortcut to Control-D, which does not conflict with the previous shortcut for Get Buddy Info on the selected buddy.
· Add a plugin action menu (under Tools) for the Voice and Video Settings plugin.
· Use GRegex for the debug window where available. This brings regex filtering to the debug window on Windows.
· Add Google Chrome to the list of possible browsers on non-Windows systems.
· Add Chromium to the list of possible browsers on non-Windows systems.
· The "Manual" browser option is now stored as a string. It is no longer necessary to specify a full path to the browser command.
· The Send To menu can now be used if the active account in the conversation becomes disabled or inactive.
· xdg-open is now the default browser for new users on non-Windows platforms.
Finch:
· Add support for drop-down account options (like the SILC cipher and HMAC options or the QQ protocol version).
XMPP:
· Unify the connection security-related settings into one dropdown.
· Fix a crash when multiple accounts are simultaneously performing SASL authentication when built with Cyrus SASL support.
· Restore the ability to connect to XMPP servers that do not offer Stream ID.
· Added support for using Google's relay servers when making voice and video calls to Google clients.
· Fix detecting file transfer proxies advertised by the server.
· Advertise support for Google Talk's JID Domain Discovery extension in all cases again (changed in 2.7.0), not just when the domain is "gmail.com" or "googlemail.com" (it's also needed for Google Talk used for accounts on arbitrary domains not using Google Apps for Your Domain).
· Improved handling of adding oneself to your buddy list when using Non-SASL (legacy) authentication.
· Generate a connection error instead of just stalling when the _xmppconnect TXT record returns results, but none of them result in a valid BOSH URI.
Yahoo/Yahoo JAPAN:
· Stop doing unnecessary lookups of certain alias information. This solves deadlocks when a given Yahoo account has a ridiculously large (>500 buddies) list and may improve login speed for those on slow connections.
· Fix sending SMS messages. The lookup host changed on us.
· Improvements for some file transfer scenarios, but not all.
Windows:
· Bonjour support now requires Apple Bonjour Print Services version 2.0.0 or newer
August 11th, 2010General:
· Use silent build rules for automake >1.11. You can enable verbose builds with the --disable-silent-rules configure option, or using make V=1.
· libpurple
· Fix the TURN server settings (broken in 2.7.0).
Pidgin:
· Re-focus the input area after clicking the attention toolbar button.
· Re-arrange media window to make it more netbook-friendly.
· Finch
· Rebindable 'suggest-next-page' and 'suggest-prev-page' actions for textboxes (GntEntry) to scroll through list of suggestions.
· o Rebindable 'dropdown' action for comboboxes (GntComboBox?) to show the dropdown list of options.
IRC:
· Fix non-ASCII arguments to /mode et al. (thanks to Max Ulidtko)
· MSN
· Support for web-based buddy icons, used when a buddy logs in to the messenger on the Live website.
· Fix file transfers with some clients that don't support direct connections (e.g., papyon, telepathy-butterfly, etc.) (#12150)
MXit:
· Fix filename for the Shocked emoticon. (#12364)
· Implement the new naming conventions where possible. (MXitId, etc)
· Display a message in the Groupchat window when you invite somebody.
· Birthday field in profile cannot be edited when server says it is locked.
· If a buddy is offline, show in their profile when last they were online.
· Handle pushed profile update packets (ie, when changing your avatar via the Gallery bot).
· If a buddy is offline and we see from their profile that they have updated their avatar, request the new avatar image from the server.
· Fix a possible crash if a link is clicked while disconnected.
· Unescape any escaped characters in a chatroom nickname.
· Add the new MXit moods and emoticons.
· MXit emoticons added to the small emoticon theme.
XMPP:
· Allow connecting to servers that only advertise GSSAPI and expect a fallback to legacy IQ authentication (broken in 2.7.0).
· Fix a crash when receiving custom emoticons that don't adhere to the specification.
· When initiating a file transfer, don't show resources that are certain to not support file transfers in the resource selection dialog.
· Fix connecting to servers using BOSH and authenticating with DIGEST-MD5 when libpurple was built with Cyrus SASL support.
Yahoo/Yahoo JAPAN:
· Renamed "Use account proxy for SSL connections" to "Use account proxy for HTTP and HTTPS requests" and tied the option to HTTP requests too.
· Properly detect HTTP proxy server use when the HTTP proxy is the global proxy server, an account-level non-HTTP proxy server is configured, and the "Use account proxy for HTTP and HTTPS requests" account option is turned off. This fixes connecting for some HTTP proxy servers.
· Fall back to connecting to scsa.msg.yahoo.com (not configurable) if the HTTP-based connect server lookup fails. This does not work for Yahoo JAPAN accounts.
· Fix file transfers that get stuck with "Waiting for transfer to begin".
July 22nd, 2010AIM and ICQ:
· Fix a crash bug related to X-Status messages that can be triggered by remove users. This is CVE-2010-2528.
· Fix a rare crash bug caused by certain incoming SMS messages (discovered by Jan Kaluza--thanks Jan!).
· Change HTML sent from ICQ accounts so that official ICQ clients hopefully display it correctly.
MSN:
· Fix a crash related to fast buddy icon transfers.
June 1st, 2010General:
· Build fixes on OpenSolaris.
· Add configure option --enable-trayicon-compat which installs tray icons into directories that are compatible with older versions of hicolor-icon-theme (0.9).
Pidgin:
· Restore the tray icon's blinking functionality.
· Fix a crash setting moods when an account is disconnected.
Bonjour:
· Fix a crash on disconnect.
ICQ:
· Fix bug that caused HTML to be displayed in incoming messages.
MSN:
· Fix unnecessary bandwidth consumption for buddy icon requests when buddies have capital letters in their passport addresses.
· Support for direct connections, enabling faster file transfers, smiley and buddy icon loading.
XMPP:
· Allow connecting to servers that advertise EXTERNAL (broken in 2.7.0)
MXit:
· Replace the MXit-specific mood management with the new standard Moods API
· Add the standard MXit emoticons.
· Improve the handling of users being kicked from MultiMX rooms.
· MXit doesn't allow you to see your buddy's Email Address or Title, so remove those two fields from the "Buddy Information" page.
· Show buddy's Registration Country in their profile.
· Increment protocol version to v6.0
· If an invite you sent was rejected with a reason, display that message in the buddy tooltip.
· CAPTCHA value is a required field during account activation. (Resolves issue on Maemo)
· When your avatar image is changed, don't forget the user's profile information.
Windows-Specific Changes:
· Fix a regression introduced in 2.7.0 that caused Window Flashing not to work.
May 13th, 2010· General
· Changed GTK+ minimum version requirement to 2.10.0.
· Changed GLib minimum version requirement to 2.12.0.
· Using the --disable-nls argument to configure now works properly. You will no longer be forced to have intltool to configure and build.
· Fix two related crashes in the GnuTLS and NSS plugins when they suffer internal errors immediately upon attempting to establish an SSL connection.
· Fix NSS to work when reinitialized after being used. (Thanks to Ludovico Cavedon for the testcase)
· Added support for PURPLE_GNUTLS_PRIORITIES environment variable. This can be used to specify GnuTLS priorities on a per-host basis. The format is "host=priority;host2=priority;...". The default priority can be overridden by using "*" as the host. See the GnuTLS manual for documentation on the format of the priority strings.
· Fix autoconf detection of Python. (Brad Smith)
· Fix a crash when a Windows proxy (from IE) does not have a port. (Marten Klencke)
· Pidgin
· Moved the "Debugging Information" section of the About box to a "Build Information" dialog accessible on the Help menu.
· Moved the Developer and Crazy Patch Writer information from the About box to a "Developer Information" dialog accessible on the Help menu.
· Moved the Translator information from the About box to a "Translator Information" dialog accessible on the Help menu.
· Use G!tkStatusIcon for the docklet, providing better integration in notification area.
· Added UI for sending attentions (buzz, nudge) on supporting protocols.
· Make the search dialog unobtrusive in the conversation window (by making it look and behave like the search dialog in Firefox)
· The Recent Log Activity sort method for the Buddy List now distinguishes between no activity and a small amount of activity in the distant past. (Greg McNew)
· Added a menu set mood globally for all mood-supporting accounts (currently XMPP and ICQ).
· Default binding of Ctrl+Shift+v to 'Paste as Plain Text' in conversation windows. This can be changed in .gtkrc-2.0. For example, Ctrl+v can be bound to 'Paste as Plain Text' by default.
· Plugins can now handle markup in buddy names by attaching to the "drawing-buddy" signal. (Daniele Ricci, Andrea Piccinelli)
· Be more accommodating when scaling down large images for use as buddy icons.
· The 'Message Timestamp Formats' plugin allows changing the timestamp format from the timestamps' context menu in conversation log.
· The 'Message Timestamp Formats' plugin allows forcing 12-hour timestamps. (Jonathan Maltz)
· Fix pastes from Chrome (rich-text pastes and probably URLs having garbage appended to them).
· Show file transfer thumbnails for images on supporting protocols (currently only supported on MSN).
· Bonjour
· Added support for IPv6. (Thanks to T_X for testing)
· Gadu-Gadu
· Updated our bundled libgadu to 1.9.0-rc2 (many thanks to Krzysztof Klinikowski for the work and testing put in here!)
· Minimum requirement for external libgadu is now also 1.9.0-rc2.
· AIM and ICQ
· X-Status (Custom ICQ status icon) support. Since most of the icons available reflect moods, this is labeled "Set Mood" on the Accounts->ICQ Account menu. (Andrew Ivanov, Tomáš Kebert, Yuriy Yevgrafov, and trac users bob007, salieff, and nops)
· Allow setting and displaying icons between 1x1 and 100x100 pixels for ICQ. Previously only icons between 48x48 and 52x64 were allowed.
· When using the clientLogin authentication method, prompt for a password on reconnect when "Remember Password" is not checked and authentication fails due to an incorrect password. (This is the same behavior as the legacy authentication method)
· Support sending and receiving HTML-formatted messages for ICQ.
· Use the proper URL for "View web profile" link for ICQ buddies. (Alexander Nartov)
· MSN
· Support for version 9 of the MSN protocol has been removed. This version is no longer supported on the servers.
· Support file transfer thumbnails (previews) for images.
· Fix CVE-2010-1624 (custom emoticon remote crash).
· XMPP
· Direct messages to a specific resource only upon receipt of a message with content (as opposed to a typing notification, etc). (Thanks to rjoly for testing)
· Present a better error message when authentication fails while trying to connect to Facebook. (David Reiss, Facebook)
· When sending data using in-band-bytestreams, interpret the block-size attribute as the size of the BASE64-encoded representation of the data.
· Validate the hash on incoming BoB data objects (for custom smileys etc.), cache based per JID when the CID is not a valid hash (as specified by the BoB XEP).
· Send whitespace keepalives if we haven't sent data in a while (2 minutes). This fixes an issue with Openfire disconnecting a libpurple-baesd client that has just been quiet for about 6 minutes.
· Only support Google Talk's JID Domain Discovery extension (allowing a user to log in with "@gmail.com" or "@googlemail.com" interchangeably) for those two domains. This change was made due to interoperability issues with some BOSH Connection Managers and namespaced attributes.
· Yahoo/Yahoo JAPAN
· Attempt to better handle transparent proxies interfering with HTTP-based login.
· Fix handling of P2P packets, thus fixing the loss of some messages.
· Retrieve the pager server address from Yahoo!'s servers directly.
· Removed the "Pager server" account option, as it is no longer needed.
· The authentication code is now less order-sensitive with the components of the server's response.
· The authentication process now acts more like the official client.
· Finch
· New action 'history-search', with default binding ctrl+r, to search the entered string in the input history.
February 18th, 2010· libpurple
· Fix 'make check' on OS X. (David Fang)
· Fix a quirk in purple_markup_html_to_xhtml that caused some messages to be improperly converted to XHTML.
· Set "controlling-mode" correctly when initializing a media session. Fixes receiving voice calls from Psi.
· When looking up DNS records, use the type of record returned by the server (instead of the type we asked for) to determine how to process the record.
· Fix an issue with parsing XML attributes that contain "". See ChangeLog.API for more details.
· General
· Correctly disable all missing dependencies when using the --disable-missing-dependencies option. (Gabriel Schulhof)
· Gadu-Gadu
· Fix display of avatars after a server-side change. (Krzysztof Klinikowski)
· AIM
· Allow setting and displaying icons between 1x1 and 100x100 pixels. Previously only icons between 48x48 and 50x50 were allowed.
· MSN
· Fix CVE-2010-0277, a possible remote crash when parsing an incoming SLP message. (Discovered by Fabian Yamaguchi)
· File transfer requests will no longer cause a crash if you delete the file before the other side accepts.
· Received files will no longer hold an extra lock after completion, meaning they can be moved or deleted without complaints from your OS.
· Buddies who sign in from a second location will no longer cause an unnecessary chat window to open.
· Support setting an animated GIF as a buddy icon.
· Numerous code cleanups and memory savings.
· MySpace
· Fix a leak and crash when retrieving buddy icons.
· XMPP
· Less likely to send messages to a contact's idle/inactive resource. Previously, if a message was received from a specific resource, responses would be sent to that resource until either it went offline or a message is received from another resource. Now, messages are sent to the bare JID upon receipt of any presence change from the contact.
· Added support for the SCRAM-SHA-1 SASL mechanism. This is only available when built without Cyrus SASL support.
· When getting info on a domain-only (server) JID, show uptime (when given by the result of the "last query") and don't show status as offline.
· Fix getting info on your own JID.
· Wrap XHTML messages in , as described in XEP-0071, for compatibility with some clients.
· Don't do an SRV lookup for a STUN server associated with the account if one is already set globally in prefs.
· Don't send custom smileys larger than the recommended maximum object size specified in the BoB XEP. This prevents a client from being disconnected by servers that dislike overly-large stanzas.
· Fix receiving messages without markup over an Openfire BOSH connection (forcibly put the stanzas in the jabber:client namespace).
· The default value for the file transfer proxies is automatically updated when an account connects, if it is still the old (broken) default (from 'proxy.jabber.org' to 'proxy.eu.jabber.org').
· Fix an issue where libpurple created duplicate buddies if the roster contains a buddy in two groups that differ only by case (e.g. "XMPP" and "xmpp") (or not at all).
· Yahoo
· Don't send and tags. (Fartash Faghri)
· Support PingBox. PingBoxes will appear as pbx/PingBoxName. (Kartik Mohta)
· Pidgin
· Fix CVE-2010-0423, a denial of service attack due to the parsing of large numbers of smileys. (Discovered by Antti Hayrynen)
· Correctly size conversation and status box entries when the interior-focus style property is diabled. (Gabriel Schulhof)
· Correctly handle a multiline text field being required in a request form. (Thanks to Florian Zeitz for finding this problem)
· Search friends by email-addresses in the buddy list. (Luoh Ren-Shan)
· Allow dropping an image on Custom Smiley window to add a new one.
· Prompt for confirmation when clearing a whiteboard (doodle) session. (Kartik Mohta)
· Use the "hand" cursor when hovering over usernames in chat history to indicate that the username is an actionable item.
· Double-clicking usernames in chat history will open an IM with that user.
· Put an icon on the "Filter" button in the debug window.
· Don't treat "/messages/like/this " as commands.
· Explicitly mark user interaction when inserting smilies from the toolbar so "Undo" correctly removes these smilies.
· Clicking "New" or "Saved" in the status selector menu while typing a status message no longer keeps the status entry area stuck in "typing" mode forever.
· Show tooltips for ellipsized conversation tabs. On older systems, tooltips will show for all tabs.
· The File Transfers and Debug Window windows are no longer created as dialogs. These windows should now have minimize buttons in many environments in which they were previously missing (including Windows).
· Smiley themes with Windows line endings no longer cause theme descriptions not to be displayed in the theme selector.
· Finch
· Fix CVE-2010-0420, a possible remote crash when handling chat room buddy names.
· Rebindable 'move-first' and 'move-last' actions for tree widgets. So it is possible to jump to the first or last entry in the buddy list (and other such lists) by pressing home or end key (defaults) respectively.
January 11th, 2010libpurple:
· TLS certificates are actually stored to the local cache once again (accepting a name mismatch on a certificate should now be remembered)
General:
· AIM and ICQ
· Messages from some mobile clients are no longer displayed as Chinese characters (broken in 2.6.4)
MSN:
· Fix an issue allowing a remote user to download arbitrary files from a libpurple client. (CVE-2010-0013)
XMPP:
· Do not crash when attempting to register for a new account on Windows.
· Fix file transfer with clients that do not support Entity Capabilities (e.g. Spark)
November 30th, 2009libpurple:
· Actually emit the hold signal for media calls.
· Fix building the GnuTLS plugin with older versions of GnuTLS.
· Fix DNS TXT query resolution.
· Don't send Proxy-Authorization headers to HTTP proxy servers until we've received a "407 Proxy Authentication Required" response from the server. (thecrux)
· Added "MXit" protocol plugin, supported and maintained by the MXit folks themselves (MXit Lifestyle (Pty) Ltd.)
General:
· New 'plugins' sub-command to 'debug' command (i.e. '/debug plugins') to announce the list of loaded plugins (in both Finch and Pidgin).
· Always rejoin open chats after an account reconnects.
· AIM and ICQ
· Better rate limit calculations and other improvements. (Aman Gupta)
· More detailed error messages when messages fail to send. (Aman Gupta)
· The simultaneous login account option is respected when using the clientLogin authentication method.
· Fix offline message retrieval (broken in 2.6.3)
· Fix handling of markup on some messages (broken in 2.6.2)
· Fix SSL when clientLogin is enabled.
· Fix sending and receiving Unicode characters in a Direct IM
MSN:
· Don't forget display names for buddies.
· Fix a random crash that might occur when idle.
· Fix more FQY 240 connection errors.
· Fix a crash that could occur when adding a buddy.
· Fix an occasional crash when sending message to an offline user.
· Fix a random crash that might occur when idle.
· Fix a crash when logging in with some long non-ASCII passwords. (Shaun Lindsay)
· Cache our own friendly name as the server no longer does that for us. Users of older versions may need to re-set their friendly name as it has probably been reset.
· XMPP
· Users connecting to Google Talk now have an "Initiate Chat" context menu option for their buddies. (Eion Robb)
· Fix a crash when attempting to validate an invalid JID.
· Resolve an issue when connecting to iChat Server when no resource is specified.
· Try to automatically find a STUN server by using an SRV lookup on the account's domain, and use that for voice and video if found and the user didn't set one manually in prefs.
· Fix a crash when adding a buddy without an '@'.
· Don't show the option to send a file to a buddy if we know for certain they don't support any file transfer method supported by libpurple.
· Keep the avatar on the server if one is not set locally.
Yahoo:
· Fix sending /buzz.
· Fix blocking behavior for federated (MSN/OCS/Sametime) service users. (Jason Cohen)
· Add support for adding OCS and Sametime buddies. OCS users are added as "ocs/user@…" and Sametime users are added as "ibm/sametime_id". (Jason Cohen)
Finch:
· The TinyURL plugin now creates shorter URLs for long non-conversation URLs, e.g. URLs to open Inbox in Yahoo/MSN protocols, or the Yahoo Captcha when joining chat rooms.
· Fix displaying umlauts etc. in non-utf8 locale (fix in libgnt).
Pidgin:
· The userlist in a multiuser chat can be styled via gtkrc by using the widget name "pidgin_conv_userlist". (Heiko Schmitt)
· Add a hold button to the media window.
· Fix a bug where the conversation backlog stops scrolling in a very busy chat room.
· In the Conversation "Send To" menu, offline buddies appear grayed out (but are still selectable). Previously, only offline buddies on accounts that do not support offline messaging appeared grayed out.
Pidgin Preference and Preference Window Changes:
· Removed the "Use font from theme" and "Conversation Font" preferences for everyone except Windows users. The font can be controlled from the Pidgin GTK+ Theme Control plugin.
· Tabs in the Preferences window are now on the left side.
· The Browser tab is now visible for GNOME users.
· Added a Proxy tab shown no matter what environment Pidgin runs in.
· The Browser and Proxy tabs show appropriate GNOME-specific messages and allow launching the correct applications to change the relevant GNOME preferences if found. These were previously together on the Network tab.
· Moved the port range spin buttons on the Network tab to be beside the checkbox that enables/disables them.
· Reorganized preferences on the Status/Idle tab to have one less "section."
· Reorganized preferences on the Sounds tab to have one less "section."
· Renamed Smiley Themes tab to Themes.
· Moved Buddy List Theme and Status Icon Theme selectors from Interface tab to Themes tab.
· Moved Sound Theme selector from Sounds tab to Themes tab.
· Changed the Smiley Theme selector to be consistent with the other theme selectors.
· Rearranged tabs such that Interface is first and all remaining tabs are alphabetized in English.
October 20th, 2009General:
· Fix a crash when performing DNS queries on Unixes that use the blocking DNS lookups.
AIM and ICQ:
· Fix a crash when some clients send contacts in a format we don't understand.
· Fix blocking and other privacy lists.
September 6th, 2009· libpurple
· Fix --disable-avahi to actually disable it in configure, as opposed to just making the warning non-fatal.
· Fix using GNOME proxy settings properly. (Erik van Pienbroek)
· IRC
· Fix parsing of invalid TOPIC messages. (CVE-2009-2703)
· MSN
· Sending custom smileys in chats is now supported.
· Ink messages are now saved when using the HTML logger.
· Fix a crash when receiving some handwritten messages.
· Fix a crash when receiving certain SLP invite messages.
· Chats with multiple people should no longer spontaneously disconnect.
· XMPP
· Prompt the user before cancelling a presence subscription.
· Escape status messages that have HTML entities in the Get Info dialog.
· Fix connecting to XMPP domains with no SRV records from Pidgin on Windows.
· Fix typing notifications with Pidgin 2.5.9 or earlier.
· Fix connecting using BOSH and legacy authentication (XEP-0078).
· Adding buddies of the form "romeo@…/Resource" are handled properly. In addition, it is no longer possible to add buddies of the form "room@…/User", where room@… is a MUC.
· Don't crash when receiving "smileyfied" XHTML-IM from clients that don't support bits of binary (ie. when getting an empty in return)
· Fix bug where SSL/TLS was not required even though the "require SSL/TLS" preference checked when connecting to servers that use the older iq-based authentication. (CVE-2009-3026)
· Yahoo!/Yahoo! JAPAN
· Accounts now have "Use account proxy for SSL connections" option. This option force-overrides the account specific proxy settings for SSL connections only and instead uses the global proxy configuration.
· Finch
· Properly detect libpanel on OpenBSD. (Brad Smith)
· Remove IO watches in gnt_quit. (Tomasz Mon)
· Pidgin
· Fix the auto-personize functionality in the Buddy List.
· Set the window icon for the media window to an icon corresponding to the type of call (headphone or webcam).
· Customized sound files are no longer reset whenever opening the Preferences dialog.
· The buddy list should now immediately refresh upon changing the icon theme.
August 19th, 2009· Fix a crash when some users send you a link in a Yahoo IM
· Fix compilation with GTK+ < 2.6.0
· Fix compilation on Windows
August 19th, 2009libpurple:
· Theme support in libpurple, with some minor additions and cleanups.
· Voice & Video framework in libpurple, thanks to Mike Ruprecht's summer of code project in 2008.
· It should no longer be possible to end up with duplicates of buddies in a group on the buddy list.
· Removed the unmaintained and unneeded toc protocol plugin.
· Fixed NTLM authentication on big-endian systems.
· Various memory cleanups when unloading libpurple.
· Report idle time 'From last message sent' should work properly.
· Better handling of corrupt certificates in the TLS Peers cache.
· More efficient buddy list and conversation search functions.
· Install scalable versions of the main Pidgin icon, the protocol icons, the dialog icons, and the Buddy List emblems.
· Build properly on Hurd.
· Various memory leaks fixed as reported
· Properly handle an IRC buddy appearing in multiple groups.
· Escape HTML entities in usernames when written with the HTML logger.
· Do not display MySpace? status changes as incoming IMs.
DNS:
· DNS servers are re-read when DNS queries fail in case the system has moved to a new network and the old servers are not accessible.
· DNS SRV records with equal priority are sorted with respect to their weight as specified in RFC 2782. (Vijay Raghunathan)
· Don't do IPv6 address lookups if the computer does not have an IPv6 address configured.
· Fix a leak when the UI provides its own DNS resolving UI op.
· Don't fork a DNS resolver process to resolve IP addresses.
· Internationalized Domain Names are supported when libpurple is compiled against the GNU IDN library.
Environment Variables:
· GnuTLS logging (disabled by default) can be controlled through the PURPLE_GNUTLS_DEBUG environment variable, which is an integer between 0 and 9 (higher is more verbose). Higher values may reveal sensitive information.
· PURPLE_VERBOSE_DEBUG environment variable. Currently, this is an "on" or "off" variable. Set it to any value to turn it on and unset it to turn it off. This will optionally be used to only show less useful debug information on an as-needed basis.
· PURPLE_LEAKCHECK_HELP environment variable. Currently, this is an "on" or "off" variable. Set it to any value to turn it on and unset it to turn it off. This will be used to perform various actions that are useful when running libpurple inside of Valgrind or similar programs. Currently, it keeps plugins in memory, allowing Valgrind to perform symbol resolution of leak traces at shutdown.
AIM and ICQ:
· Preliminary support for a new authentication scheme called "clientLogin."
· Fixed a bug where your away message sometimes would not get set when you first sign on.
· Make sure links in your away messages show up as links to other people.
· For ICQ, Never change the privacy setting specified by the user.
Gadu-Gadu:
· Accounts can specify a server to which to connect.
· Correctly show tooltip status for contacts with status messages.
· Support for fetching buddy icons.
· Support connection progress steps in Gadu-Gadu.
MSN:
· Add support for receiving handwritten (ink) messages on MSN.
· Add support for receiving audio clips on MSN.
· Show the invite message for buddies that requested authorization from you on MSN.
· Support sending an invite message to buddies when requesting authorization from them on MSN.
· Timeout switchboard connections aggressively (60 seconds).
XMPP:
· Voice & Video support with Jingle (XEP-0166, 0167, 0176, & 0177), voice support with GTalk and voice and video support with the GMail web client.
· Added a Service Discovery Browser plugin for Pidgin.
· Support for in-band bytestreams for file transfers (XEP-0047).
· Support for sending and receiving attentions (equivalent to "buzz" and "nudge") using the command /buzz. (XEP-0224)
· Support for connecting using BOSH.
· A buddy's local time is displayed in the Get Info dialog if the remote client supports it.
· The set_chat_topic function can unset the chat topic.
· The Ad-Hoc commands associated with our server are now always shown at login.
· Support showing and reporting idle times in the buddy list. (XEP-0256)
· Support most recent version of User Avatar. (XEP-0084 v1.1)
· Updated Entity Capabilities support.
· Better support for receiving remote users' nicknames.
· /affiliate and /role will now list the room members with the specified affiliation/role if possible.
· Put section breaks between resources in "Get Info" to improve readability.
· Silently remove invalid XML 1.0 entities (e.g. ASCII control characters) from sent messages.
· XHTML markup is only included in outgoing messages when the message contains formatting.
· Show when the user was last logged in when doing "Get Info" on an offline buddy, provided the server supports it.
· Support custom smileys in MUCs (only when all participants support the "Bits of Binary" extension, and a maximum of 10 participants are in the chat to avoid getting too many fetch requests).
· Fix an issue with Jabber (pre-XMPP) servers and the user's preference to require SSL not being respected.
· Fix an issue where Cyrus SASL DIGEST MD5 authentication might fail if the username, password, or realm (the JID domain) contain non-ASCII characters.
· Show emblem for mobile, handheld, and web clients and bots (if the other client supports it).
· Google Talk mail notifications should now work for people for whom they inexplicably did not. (Thanks to yukam for determining the reason)
· New XMPP and Google Talk accounts require SSL by default.
· Display kicks (and the reasons given) in chat rooms when an occupant is kicked.
· Fix issues with case-sensitivity of XMPP roster and case-insensitive Purple groups.
· For contacts who advertise Entity Capabilities, only send rich text markup if they support it.
· Removed support for obsoleted XEP-0022 (Message Events) and XEP-0091 (Legacy Entity Time).
· When the GNU IDN library (libidn) is available, it is used for normalization of Jabber IDs. When unavailable, internal routines are used (as in previous versions).
· Topics that contain '
August 19th, 2009· Fix a crash via a specially crafted MSN message (CVE-2009-2694).
· Fix a crash in Bonjour, MSN, and XMPP when trying to transfer files with NULL names.
June 29th, 2009ICQ:
· Fix misparsing a web message as an SMS message. (Yuriy Kaminskiy)
MSN:
· Increase NS command history size to prevent crashes on buddy lists that have a lot of buddies on other networks like Yahoo!
MySpace:
· Accounts with empty buddy lists are now properly marked as connected.
· Fix receiving messages from users of MySpace IM's web client.
Yahoo:
· Fixed phantom online buddies. They should now properly disappear when signing out.
· Fixed the crashes some users were seeing with cn.scs.msg.yahoo.com in 2.5.7.
· Fixed compiling on systems with glib 2.4.x or older.
· Fixed an issue with file transfers. This may not resolve all issues, but it should resolve at least some of the most common ones.
· The pager server will automatically update to scsa.msg.yahoo.com if the user empties the field or if it is scs.msg.yahoo.com. This should ease the pain of transition to the new login method.
XMPP:
· Fix an incompatibility betweeen Prosody and libpurple clients.
June 21st, 2009· Yahoo Protocol 16 support, including new HTTPS login method; this should fix a number of login problems that have recently cropped up. (Sulabh Mahajan, Mike "Maiku" Ruprecht)
· Only display the AIM "Unable to Retrieve Buddy List" message once per connection. (Rob Taft)
· Blocking MSN users not on your buddy list no longer disconnects you.
May 29th, 2009· libpurple
· Improve sleep behavior by aggregation of longer timeouts on second boundaries to allow better power saving. (Arunan Balasubramaniam)
· Fix various crashes on exit.
· Make XML parsing more resilient to interactions with other libraries. This, along with the fix for libxml2 bug 564217, fixes the crashes on connect in XMPP with recent gst-plugins-bad (see #8830 for details).
· Many security related fixes
· IRC
· Correctly handle WHOIS for users who are joined to a large number of channels.
· Notify the user if a /nick command fails, rather than trying fallback nicks.
· MSN
· Fix a race condition causing occasional Pidgin crashes.
· Fix some errors about the friendly name changing too fast caused by MSN/Yahoo integration buddies.
· XMPP
· Less likely to pop up a new conversation window in disregard of the "Hide new IM conversations" preference.
· Yahoo
· Fix a crash when sending very long messages.
· Fix a bug where UTF-8 status messages get garbled when going idle.
May 20th, 2009· libpurple
· Fix a crash when removing an account with an unknown protocol id.
· Beta support for SSL connections for AIM and ICQ accounts. To enable, check the "Use SSL" option from the Advanced tab when editing your AIM or ICQ account. (Paul Aurich)
· Fix a memory leak in SILC. (Luke Petre)
· Fix some string handling in the SIMPLE prpl, which fixes some buddy name handling and other issues. (Paul Aurich, Marcus Sundberg)
· Implement support for resolving DNS via the SOCKS4 proxy (SOCKS4a).
· ICQ
· Fix retrieval of status messages from users of ICQ 6.x, Miranda, and other libpurple clients. (Daniel Ljungborg)
· Change client ID to match ICQ Basic 14.34.3096. This fixes publishing of buddy icons and available messages.
· Properly publish status messages for statuses other than Available. ICQ 6.x users can now see these status messages. (Daniel Ljungborg)
· Fix receipt of messages from the mobile client Slick. (David Jedelsky)
· MSN
· Fix transfer of buddy icons, custom smileys, and files from the latest Windows Live Messenger 9 official client. (Thomas Gibson-Robinson)
· Large (multi-part) messages are now correctly re-combined.
· Federated/Yahoo! buddies should now stop creating sync issues at every signin. You may need to remove duplicates in the Address Book. See the FAQ for more information. Thanks to Jason Lingohr for lots of debugging and testing.
· Messages from Yahoo! buddies are no longer silently dropped.
· We now save and use the CacheKey for ABCH SOAP requests.
· Don't try to parse Personal Status Messages or Current Media if they don't exist.
· Convert from ISO-8859-1 encoding to UTF-8 when no charset is specified on incoming messages. This should fix some issues with messages from older clients.
· Force sending the font "Segoe UI" if outgoing formatting doesn't specify a font already.
· Queue callbacks when token updates are in progress to prevent two token update attempts from trampling each other.
· Fixed a crash on Windows when removing a buddy's alias.
· Update the Address Book when buddies' friendly names change. This prevents seeing an outdated alias or not seeing an alias at all for buddies who are offline when you sign in.
· Update tokens for FindMembership and ABFindAll SOAP requests.
· We no longer try to send empty messages. This could happen when a message contained only formatting and that formatting was not supported on MSN.
· Buddies on both the Allow and Block list are now automatically removed from the Allow list. Users with this problem will now no longer receive an ADL 241 error. The problematic buddy should now appear on the buddy list and can be removed or unblocked as desired.
· XMPP
· Resources using __HOSTNAME__ substitution will now grab only the short hostname instead of the FQDN on systems which put the FQDN in the hostname. (Matěj Cepl)
· No longer send a 'to' attribute on an outgoing stanza when we haven't received one. This fixes a registration bug as described in ticket #6635.
· Pidgin
· Tooltip windows now appear below the mouse cursor. (Kosta Arvanitis)
· Tooltip windows now disappear on keypress events. (Kosta Arvanitis)
· Tooltip windows no longer linger when scrolling the buddy list. (Kosta Arvanitis)
· Finch
· Allow rebinding keys to change the focused widget (details in the man-page, look for GntBox::binding)
January 13th, 2009libpurple:
· Fix a connection timeout with empty Gadu-Gady buddy lists. (Martin Rosinski)
· Don't ignore namespace information when parsing XMPP data. (Michal Witkowski)
· Fix a crash that occurred when retrieving certain Offline Messages on MSN.
· Extended purple-url-handler to handle "gtalk" URI's. (Paul Aurich)
· Fix the hang on exit in Network Location Awareness for Windows XP and Windows Vista. (Paul Aurich)
MSN:
· Change Contact Server to temporarily fix connection problems. (Thanks to Youness Alaoui)
XMPP:
· Support for XEP-0191 blocking. (Vijay Raghunathan)
· Don't put SASL PLAIN or IQ Auth passwords in debug logs. (Paul Aurich)
· Fix removal of avatars (both PEP and vCard), we weren't removing them correctly before. (Paul Aurich)
Pidgin:
· Fix a crash in the Add Account dialog when changing protocols under certain circumstances.
Finch:
· Redirect stderr outputs to the debug window.
· Fix rebinding actions with the arrow-keys and tab.
Windows-specific changes:
· Fix the "Hang on Exit" issue that a number of users encountered.
· Updated GTK+ to 2.14.6
December 21st, 2008· libpurple
· The Buddy State Notification plugin no longer prints duplicate notifications when the same buddy is in multiple groups. (Florian Quèze)
· The Buddy State Notification plugin no longer turns JID's, MSN Passport ID's, etc. into links. (Florian Quèze)
· purple-remote now has a "getstatusmessage" command to retrieve the text of the current status message.
· Various fixes to the nullprpl. (Paul Aurich)
· Fix a crash when accessing the roomlist for an account that's not connected. (Paul Aurich)
· Fix a crash in purple_accounts_delete that happens when this function is called before the buddy list is initialized. (Florian Quèze)
· Fix use of av_len in perl bindings to fix some off-by-one bugs. (Paul Aurich)
· On ICQ, advertise the ICQ 6 typing capability. This should fix the reports of typing notifications not working with third-party clients. (Jaromír Karmazín)
· Many QQ fixes and improvements, including the ability to connect using QQ2008 protocol and sending/receiving of long messages. The recommended version to use is still QQ2005.
· Fix a crash with DNS SRV lookups. (Florian Quèze)
· Fix a crash caused by authorization requests. (Florian Quèze)
· Gadu-Gadu
· Add support for IM images. (Adam Strzelecki)
· Gadu-Gadu now checks that UID's are valid. (Adam Strzelecki)
· Gadu-Gadu now does proper charset translations where needed. (Adam Strzelecki)
· MSN
· Fix an error with offline messages by shipping the new "Microsoft Secure Server Authority" and the "Microsoft Internet Authority" certificates. These are now always installed even when using --with-system-ssl-certs because most systems don't ship those intermediate certificates.
· The Games and Office media can now be set and displayed (in addition to the previous Music media). The Media status text now shows the album, if possible.
· Messages sent from a mobile device while you were offline are now correctly received.
· Server transfers after you've been connected for a long time should now be handled correctly.
· Many improvements to handling of "federated" buddies, such as those on the Yahoo network.
· Several known crashes have been resolved.
· Many other fixes and code cleanup.
· MySpace
· Respect your privacy settings set using the official MySpace client.
· Add support for blocking buddies.
· Fix a bug where buddies didn't appear in their correct groups the first time you sign into your account.
· Properly disconnect and sign out of the service when logging off.
· Support for foreground and background font colors in outgoing IMs.
· Support for background font colors in incoming IMs.
· Many other fixes and code cleanup.
· Sametime
· Fix insanely long idle times for Sametime 7.5 buddies by assuming 0 idle time if the idle timestamp is in the future. (Laurent Montaron)
· Fix a crash that can occur on login. (Raiko Nitzsche)
· SIMPLE
· Fix a crash when a malformed message is received.
· Don't allow connecting accounts if no server name has been specified. (Florian Quèze)
· XMPP
· Fix the namespace URL we look for in PEP reply stanzas to match the URL used in the 'get' requests (Paul Aurich)
· Resources can be set to the local machine's hostname by using __HOSTNAME__ as the resource string. (Jonathan Sailor)
· Resources can now be left blank, causing the server to generate a resource for us where supported. (Jonathan Sailor)
· Resources now default to no value, but "Home" is used if the server refuses to provide a resource.
· Quit trying to get user info for MUC's. (Paul Aurich)
· Send "client-accepts-full-bind-result" attribute during SASL login. This will fix Google Talk login failures if the user configures the wrong domain for his/her account.
· Support new element to indicate no XEP-0084 User Avatar. (Paul Aurich)
· Fix SHA1 avatar checksum errors that occur when one of the bytes in a checksum begins with 0. (Paul Aurich)
· Fix a problem with duplicate buddies. (Paul Aurich)
· Yahoo
· Corrected maximum message lengths for Yahoo!
· Fix file transfers with older Yahoo protocol versions.
· Zephyr
· Enable auto-reply, to emulate 'zaway.' (Toby Schaffer)
· Fix a crash when an account is configured to use tzc but tzc is not installed or the configured tzc command is invalid. (Michael Terry)
· Fix a 10 second delay waiting on tzc if it is not installed or the configured command is invalid. (Michael Terry)
· Pidgin
· On GTK+ 2.14 and higher, we're using the gtk-tooltip-delay setting instead of our own (hidden) tooltip_delay pref. If you had previously changed that pref, add a line like this to ~/.purple/gtkrc-2.0 (where 500 is the timeout (in ms) you want): gtk-tooltip-timeout = 500
· To completely disable tooltips (e.g. if you had an old tooltip_delay of zero), add this to ~/.purple/gtkrc-2.0: gtk-enable-tooltips = 0
· Moved the release notification dialog to a mini-dialog in the buddylist. (Casey Ho)
· Fix a crash when closing an authorization minidialog with the X then immediately going offline. (Paul Aurich)
· Fix a crash cleaning up custom smileys when Pidgin is closed.
· Fix adding a custom smiley using the context menu in a conversation if no custom smilies have previously been added using the smiley manager.
· Improved support for some message formatting in conversations.
· Allow focusing the coversation history or userlist with F6.
· Fixed the Send Button plugin to avoid duplicate buttons in a single conversation.
· Double-clicking a saved status will now activate it and close the saved status manager, rather than edit the status.
· Finch
· Allow binding meta+arrow keys for actions.
· Added default meta+erase binding for delete previous word.
· Added "Show When Offline" to buddy menus, so a plugin is no longer needed.
September 1st, 2008· In the Join/Part plugin, add the ability to apply the rules to buddies. By default, joins and parts for buddies are still shown.
· Support SOCKS proxies specified in GNOME or Windows proxy settings.
· Fix some possible crashes in MSNP15.
· Enable a default SSL trust relationship for MSN servers.
· Avoid disconnecting from XMPP servers on parse errors that are non-fatal.
· Include some perl files that were mistakenly omitted in 2.5.0.
· Prevent use of custom smilies without "shortcuts."
· Fix a crash that could appear with AIM buddy tooltips.
· General refresh of many icons in the interface.
· Many cleanups to artwork source are now included in the distribution.
· A new "throbber" animation has been added to indicate when accounts are connecting.
August 19th, 2008· Custom buddy icons can now be added to and removed from buddy list entries via the buddy list entry right-click menu.
· Resize large incoming custom smileys to a maximum of 96px on either side.
· Offer to add new buddies into the same contact as existing buddies in the same group if the alias given is the same.
· Minor smiley style update.
July 2nd, 2008· Yahoo! Japan now uses UTF-8, matching the behavior of official clients and restoring compatibility with the web messenger
· Setting your buddy icon once again works for Yahoo! accounts.
· Fixes in the Yahoo! protocol to prevent a double free, crashes on aliases, and alias functionality
· Fix crashes in the bonjour protocol
· Always use UTF-8 for Yahoo!
· Fix a crash when the given jabber id is invalid.
· Make the IRC "unknown message" debugging messages UTF-8 safe.
· Fix connecting to ICQ
· Fix a memleak when handling jabber xforms.
· Include the send button plugin in the win32 build
· Various memory leak fixes
May 19th, 2008· libpurple
· In MySpaceIM, messages from spambots are discarded (Justin Williams)
· Strip mIRC formatting codes from quit and part messages.
· IRC now displays ban lists in-channel for joined channels.
· Fixed a bug where the list of loaded plugins would get removed when switching between different operating systems.
· Fix reception of IRC PART without a part message on Undernet (fixes a problem with litter in the channel user list).
· IRC no longer crashes on /list on servers which erroneously omit RPL_LISTSTART.
· Update the NetworkManager support to use D-Bus directly, instead of libnm-glib. Hopefully it's stable now. It will now compile by default if you have D-Bus support and NetworkManager.h. (Elliott Sales de Andrade)
· MSN buddy list synchronization is now more forgiving, only asking about buddies who have disappeared completely from the server list and not those that have simply moved groups.
· IRC will now try to append 1-9 to your nick if it is in use, instead of substituting the last character with 1-9 where possible.
· Bonjour buddies will be saved persistently if they're moved out of the "Bonjour" group. (Eion Robb)
· Pidgin
· The typing notification in the conversation history can be disabled or customized (font, color etc.) in .gtkrc-2.0.
· Added a plugin (not installed by default) which adds a Send button back to the conversation window. People without physical keyboards have a hard time with the lack of the button.
· Clicking on the buddyicon in the conversation window toggles the size of the icon between small and large.
· The settings of a chat (e.g. Handle in an XMPP chat, or Exchange in an AIM chat) can be edited from its context menu in the buddy list.
· Add a "Present conversation window" preference to the Message Notification plugin; the "Raise conversation window" option does not unminimize windows or draw attention to them when they are on other workspaces--the "Present" option should.
· Add a preference to set Escape as the keyboard shortcut for closing the conversation window.
· Add an option in the context menu to disable smileys in the selected text in the conversation history/log viewer. This should help people who regularly paste code in conversations.
· Add a preference to choose the minimum size of the text input area in lines.
· Moved the "Local alias" field in the Modify Account dialog to be below the "User Options" heading on the "Basic" tab.
· Number of room occupants is now shown in chat tooltips where possible
· General
· The configure script now dies on more absent dependencies. The --disable-xxx arguments to configure can be used to bypass unneeded dependencies. This will also cause the configure script to die if an --enable-xxx option is used and the dependencies it requires are missing.
· The Evolution integration plugin must now be explicitly enabled. Use the --enable-gevolution argument to configure to enable it.
· The Contact Availability Prediction plugin must now be explicitly enabled. Use the --enable-cap argument to configure to enable it.
· Finch
· New default binding ctrl x to open context menus.
· Menu triggers and other bindings will no longer conflict.
· Middle click pastes the internal clipboard (when mouse support is enabled).
April 1st, 2008· libpurple
· Treat AIM Unicode messages as UTF-16 rather than UCS-2; this should have no functional effect, other than continued support on systems which have dropped UCS-2 conversions.
· Add support for setting buddy icons on Gadu-Gadu (Tomasz Salacinski)
· Fix a crash when clearing the buddy icon for an account on XMPP
· Fix a crash during login for some ICQ accounts
· Prefer more available resources on XMPP when priorities are equal
· Fix incorrectly marking some Yahoo! contacts as blocked
· Improved handling of UTF-8 group names on ICQ (beret)
· Fix a crash when starting if you have a Zephyr account
· Increase XMPP ping timeout to 120 seconds, to prevent poor network connections from timing out unnecessarily.
· Don't crash on XMPP forms with empty default values.
· Fix issues with CHAP authentication for SOCKS5 proxies.
· Pidgin
· Remove a workaround for older versions gstreamer that was causing crashes on some non-Linux systems such as HPUX
· Fix some cases of the conversation input entry area being 1 pixel high
· Fix for displaying channel & buddy names in conversation window when they have '&' in them
· Some memory leak fixes, especially in the Text Replacement plugin
· Rectangular but non-square buddy icons have rounded corners in the buddy list
· Finch
· Fix compiling with Glib older than 2.6
· Ensure existing conversations selected from the 'Send IM' dialog are given focus
· Move the tooltip on the left of the buddylist if there's not enough room on the right to show it.
February 29th, 2008· * * libpurple
· Added support for offline messages for AIM accounts (thanks to Matthew Goldstein)
· Fixed various problems with loss of status messages when going or returning from idle on MySpaceIM.
· Eliminated unmaintained Howl backend implementation for the Bonjour protocol. Avahi (or Apple's Bonjour runtime on win32) is now required to use Bonjour.
· Partial support for viewing ICQ status notes (Collin from ComBOTS GmbH).
· Support for /notice on IRC.
· Support for Yahoo! Messenger 7.0 file transfer method (Thanumalayan S.)
· Support for retrieving full names and addresses from the address book on Yahoo! Japan (Yusuke Odate)
· The AIM/ICQ server-side preference for "allow others to see me as idle" is no longer unconditionally set to "yes" even when your libpurple preference is "no."
· Fix SSL certificate checks for renewed certificates
· Fix the ability to set vCard buddy icons on Google Talk/XMPP
· D-Bus fixes on 64bit
· Fixed retrieval of buddy icons and setting of server-side aliases on Yahoo! and Yahoo! Japan when using an HTTP proxy server (Gideon N. Guillen)
· Fixed an MSN bug that would leave you appearing offline when transferred to different server
· * * Pidgin
· Added the ability to theme conversation name colors (red and blue) through your GTK theme, and exposed those theme settings to the Pidgin GTK Theme Control plugin (Dustin Howett)
· Fixed having multiple alias edit areas in the infopane (Elliott Sales de Andrade)
· Save the conversation "Enable Logging" option per-contact (Moos Heintzen)
· Typing notifications are now shown in the conversation area
· * * Finch
· Color is used in the buddylist to indicate status, and the conversation window to indicate various message attributes. Look at the sample gntrc file in the man page for details.
· The default keybinding for dump-screen is now M-D and uses a file request dialog. M-d will properly delete-forward-word, and M-f has been fixed to imitate readline's behavior.
· New bindings alt tab and alt shift tab to help navigating between the higlighted windows (details on the man page).
· Recently signed on (or off) buddies blink in the buddy list.
· New action 'Room List' in the action list can be used to get the list of available chat rooms for an online account.
· The 'Grouping' plugin can be used for alternate grouping in the buddylist. The current options are 'Group Online/Offline' and 'No Group'.
· Added a log viewer
· Added the ability to block/unblock buddies - see the buddy context menu and the menu for the buddy list.
· Fixed a bug preventing finch working on x86_64
December 8th, 2007· Fixed a number of MSN bugs introduced in 2.3.0, resolving problems connecting to MSN and random local display name changes
· Going idle on MySpaceIM will no longer clear your status and message.
· Idle MySpaceIM buddies should now appear online at login.
· Fixed crashes in XMPP when discovering a client's capabilities
· Don't set the current tune title if it's NULL (XMPP/Google Talk)
· Don't allow buddies to be manually added to Bonjour
· Don't advertise IPv6 on Bonjour because we don't support it
· Compile fixes for FreeBSD and Solaris
· Update QQ client version so some accounts can connect again
· Do not allow ISON requests to stack in IRC, preventing flooding IRC servers when temporary network outages are restored
· Plug several leaks in the perl plugin loader
· Prevent autoaccept plugin overwriting existing files
August 21st, 2007· Added an account action to open your inbox in the yahoo prpl
· Added support for Unicode status messages in Yahoo
· Server-stored aliases for Yahoo. (John Moody)
· Fixed support for Yahoo! doodling
· Limited support for MSN Messenger contacts
· Bonjour plugin uses native Avahi instead of Howl
· Bonjour plugin supports Buddy Icons
· Show current outgoing conversation formatting on the font label on the toolbar
· Slim new redesign of conversation tabs to maximize number of conversations that can fit in a window
· Tab bar is not visible when only one conversation is open. You can drag and drop conversations from the infopane
· Moved "Reset Formatting" toolbar button to Font menu
· Double click on the infopane to alias buddies and set topics on chats
· New smiley style
· Sound support (Eric Polino)