Hi, The next msn-pecan release started as 0.0.20 but there are so many changes that it's going to be 0.1.0. It is way more stable than 0.0.19 but we still would like to do more extensive testing, so we are rolling a release candidate in order to fix critical bugs that might be lingering. Hopefully it will be the only release candidate before the actual release.
The aim of 0.1.0 is going to be our "fist serious release", that doesn't mean the previous releases were bad, it just means that we were never truly confident about the code being delivered until now. Compared to 0.0.19: * Timeout issues fixed (switchboard error) * Better offline messages receiving support * Offline message sending support * Reorganization of P2P code (less crashes) * Several crash fixes * Adium improvements * Performance improvements * Massive code reorganization Special thanks for Devid Antonio Filoni, and Andrea Piccinelli who have been very active fixing issues and making sure msn-pecan is rock-solid. Also Rasmus Hummelmose who was essential in fixing the timeout issues, it wouldn't have been possible without his testing. Also thanks to the Pidgin developers (we picked some patches), and many other contributors. This is the list of issues fixed so far: * 37: Pidgin leaves handle on files after transfers * 82: Implement sending of offline messages * 117: Received offline messages are being cut * 138: Translation is not whole integrated from Launchpad * 144: Unable to chat after message timed out * 155: Pidgin crashes after connecting (using NTLM Authorization Proxy Server) * 156: msn-pecan crash in msg_ack() at cvr/slplink.c:321 * 157: msn-pecan crash in msn_switchboard_can_send() at switchboard.c:779 * 158: msn-pecan crash in msn_switchboard_free() at switchboard.c:262 * 159: Pidgin crash when connecting to MSN * 161: 0.0.19 ubuntu package * 163: Translations not working on win32 * 164: msn-pecan crash in pecan_contact_get_personal_message() at ab/pecan_contact.c:616 * 170: Crash upon sign in * 171: crash when disabling account * 174: Windows 7 RC and Pecan * 177: Offline messages of blocked contacts should not be displayed * 181: Too many timeout messages * 183: msn-pecan should use audio:// links with pidgin 2.6.0 * 184: already showed OIM message show again using another client * 185: Add support for receiving winks * 133: pidgin crashed with SIGSEGV in msn_message_destroy() * 154: Pidgin Randomly Crashes * 166: proxy authorization support missing * 153: User Adding Problems The diffstat is huge: 44 files changed, 3423 insertions(+), 3116 deletions(-) For the source tarball, win32 installer and maemo package check the usual location: http://code.google.com/p/msn-pecan/downloads/list And the Adium build is here: http://code.google.com/p/msn-pecan/wiki/AdiumBuilds So, start the testing! And please report back any issues :) Here is the current list of pending issues for 0.1.0 final: http://code.google.com/p/msn-pecan/issues/list?q=label%3Amilestone-0.1.0 And finally here is the shortlog Andrea Piccinelli (6): Added uninstall target to Makefile. Added missing "fr" translation to Makefile. Add support for audio:// links in pidgin >= 2.6.0 Add libmspack and swfobject Wink support improvements Show the wink preview on a new line Chris Stafford (1): Implement wink receiving David Geary (1): Proxy Authorization Devid Antonio Filoni (30): Fix build on Mac OS X. Don't show status name using Adium. Enable voice clips and Messenger Plus! sounds supports also using Adium. Don't leave the old current media if there isn't a new one. Fix regression in 2ca3085 Fix adium build pecan_ud_manager: call queue method only if the object is a display picture. switchboard: don't show a nudge in the conversation window if an unknown datacast is received. dp_manager: remove all PECAN_DP_MANAGER_TIMED stuff. dp_manager: retrieve 8 display pictures per minute in order to avoid error 800. dp_manager: add again contact to queue after an error. Fix adium build pn_oim.c: fix issue 117 Don't display OIMs of blocked contacts. Move rand_guid to pn_util.c. pn_util: add product_key to pn_handle_challenge Implement OIMs sending support. pn_oim: delete received oims from the server pn_oim.c: improve process_body_send ns: fix OIMs receiving when logged as invisible pn_oim: fix some issues on sending session: add PnPermission type Fix Adium build Adium: adjust voice clips and Plus! sounds messages ink receiving: use fwrite instead of PurpleStoredImage swboard: cleanup contactlist: remove useless stuff session: add PURPLE_MESSAGE_NOTIFY flag to purple_conversation_write show a better message when someone tries to initiate a video call dp_manager: don't try to receive failed dps after 5 attempts Elliott Sales de Andrade (4): Properly send MSN nudges in a chat to the right window, and not open a new conversation for the person who sent the nudge. When receiving an MSN custom smiley, look at the switchboard for the PurpleConversation, instead of searching for it. Re-combine large (multi-part) messages on MSN. New support for receiving handwritten implementation. Felipe Contreras (214): Fix win32 build Trivial cleanup Improve win32 build (and other platforms) sb: remove CAL timeouts printf: allow %x Add simple doxygen configuration Avoid pecan_strdup_printf Whitespace cleanups Trivial cleanups parser: no need for MSN_BUFF_LEN notification: improve system message Improve package name handling pecan_oim: cleanup Rename pecan_ud to pecan_dp_manager dp-manager: cleanup Fix copyrights Cleanup msnobj Cleanup pecan_buffer Cleanup pecan_socket Cleanup pecan_ssl_conn Cleanup pecan_parser Reorganize pecan_cmd_server a bit Cleanup pecan_cmd_server Cleanup pecan_http_server Remove slpsession Cleanup cvr Reorganize file transfer struff Cleanup pecan_group Cleanup addressbook stuff Fix package handling Cleanup client id stuff Move msn.h to pecan_global msn: cleanup and fix regression in f93474d Fix regressions in 502fc5, and cleanups cvr/slp: avoid crash when object is invalid Avoid setting wrong display picture ns: fix display picture retrieval when a user logs in dp-manager: fix possible crash dp_manager: remove unnecessary checks dp_manager: add sb window todo dp_manager: fix wrong loop break slpcall: remove from slplink at the right time Improve debug log level configuration cmdproc: initialize trans ref count correctly status: plug a leak tests/Makefile: trivial improvements tests: add util test util: random improvements Make ARRAY_SIZE part of util util: new pecan_html_unescape() tests: add unit test for pecan_html_unescape() contact: cleanup set_current_media() contact: fix previous commit Rename pn_log Rename pn_printf Rename pn_error Rename pn_util Rename pn_locale Rename pn_global Rename pn_oim Rename pn_dp_manager Rename pn_status Rename pn_siren7 Rename pn_msnobj Rename pn_stream Rename pn_buffer Rename pn_socket Rename pn_node Rename pn_ssl_conn Rename pn_parser Rename pn_http_server Rename pn_cmd_server Rename pn_group Rename pn_contact Rename pn_contactlist dp_manager: minor cleanups cmd-server: plug a leak Makefile: fix PECAN_LOG -> PN_LOG rename Use PECAN_ prefix for defines parser: codestyle cleanup msn: add error message when sb is not ready slplink: reorganize destroy() Remove history Add p2p-design document Allow slightly wrong msnobjs Warn instead of erroring out on non fatal errors Plug a leak introduced by 00cedc msnobj: fix regression in 03b9a37 sb: more proper usage of P4-Context session: reorder free sequence Fix transaction recounting Trivial cleanups slplink: general cleanups dp-manager: stop when logging off session: lookg up for chats in the right table dp-manager: improve message for empty queue Rename pn_peer_link Add refcount to peer_link Add some extra peer_link ref handling Remove unnecessary and wrong slp checks Improve switchboard refcounting Remove sb flag peer-link: rename destroy() to free() Convert peer_link list to hash table sb: avoid double freeing on error Cleanup message_destroy stuff sb: plug a leak when re-using messages General cleanups Rename pn_peer_call peer-call: add ref-count General peer-call cleanups peer-call: make timeout function internal peer-call: rename destroy() to free() Make xfer specific to libpurple Cleanup slp.c Rename pn_sip Rename pn_peer_msg Rename pn_direct_conn peer-msg: add ref-count peer-link: fix peer-msg refcount Reorganize peer code for tracking sbs better Trivial cleanups Cleanup peer-link, split into _priv.h Rename PnPeerLink to 'struct pn_peer_link' Rename PnPeerCall to 'struct pn_peer_call' peer-call: remove type field Rename PnPeerMsg 'struct pn_peer_msg' Rename PnDirectConn to 'struct pn_direct_conn' Rename PnMsnObj to 'struct pn_msnobj' cvr: some header reorganization pn-msnobj: cleanup type field Rename PnGroup to 'struct pn_group' Rename PnContact to 'struct pn_contact' Rename PnContactList to 'struct pn_contact_list' Rename PnContactListFunc to 'pn_contact_list_func_t' ab: reorganize headers Rename PnBuffer to 'struct pn_buffer' Reorganize headers for pn_buffer Move pn_buffer away from io subdir Remove peer_link_priv.h peer-call: split into _priv.h sip: whitespace cleanups Build fixes Move sip stuff to peer_msg Cleanup peer_msg stuff Split peer-msg into _priv.h peer-link: minor cleanup/optimization pn-printf: better implementation from klibc Fix tests' build Make printf test work again Fix klib's printf pointer format pn-log: cleanups pn-log: avoid debugging when it's disabled Avoid some warnings peer-link: fix ack msg issue dp-manager: improve fail log message peer-msg: show sip messages in the log peer-call: increase timeout dp-manager: more logging improvements sb: remove unnecessary checks tests: more printf checks Improve logging stuff http-server: fix auth while polling Rename po's so that launchpad is happy peer-link: avoid re-using peer_msg->msg msn: fix potential invalid mem usage peer-link: set peer_msg->msg, again cmdproc: add comment regarding cmdproc->multiparts Improve cmd logging stuff log: new pn_test macro parser: add pn_parser_read function oim: improve the soap parser oim: finalize parsing Move 'lib' to 'ext' ns: also set node id when invited to a sb sb: don't clear conv New pn_timer helper Improve ping functionality transaction: remove timeout stuff Remove msg->ack_ref stuff sb: close on inactivity msn: trivial cleanup and possible leak fix msn: trivial cleanups sb: a few cleanups and extra checks Completely remove msg timeout stuff sb: fix regression in 935613 sb: unref messages appropriately timer: fix a silly memleak contact: set media status correctly msn: improve current media stuff http-server: trivial leak fix log: random improvements peer-call: fix timer id peer-call: remove 'progress' flag sb: fix potential memleak Remove name param from pn_cmd_server_new() http-server: reset timer on read http-server: fix previous commit peer-link: fix timeout removal peer-link: trivial cleanups node: add 'open' field node: skip unnecessary steps http-server: check if the node is alive Random cleanups Reorganize peer_msg node: make pn_node_set_id() reusable sb: cleanup error handling util: fix warning on win32 log: add printf warnings Makefile: improve cross-compilation Localization improvements Random updates Build fixes for Maemo mspack: fix trivial warning Mike Ruprecht (2): Inform the user when someone tries to initiate a video call. Notify the user if a contact invites him to a voice call. -- Felipe Contreras
