= Roadmap for Pidgin 3.0.0 = == Todo == * libpurple * Merge-ready SOC branches: * [wiki:GSoC2010/DetachableLibpurple Detachable libpurple sessions] * [wiki:GSoC2009/PrivacyRewrite Privacy Rewrite] * [wiki:GSoC2008/MasterPassword Master Password] * Struct hiding * Gobjectification (might not be absolutely necessary to complete for 3.0.0? See previous point) * Fix proxy handling * The current proxy API doesn't allow for the proxy behavior to be set per host, protocol, etc. In many cases, there is more than one host and protocol used per account. * See #3034, #3239, #4459 * Remove deprecated API * Remove {{{purple_network_map_external}}} (replace with a parameter to {{{purple_network_listen}}}) (#3967) * Merge {{{purple_network_listen}}} and {{{purple_network_listen_family}}} to a single function * Merge {{{purple_network_listen_range}}} and {{{purple_network_listen_range_family}}} to a single function * Remove {{{purple_blist_new}}} (should be handled by {{{purple_blist_init}}}) * Remove {{{purple_set_blist}}} (should be handled by {{{purple_blist_init}}}) * Remove {{{purple_blist_destroy}}} * Remove {{{purple_blist_update_buddy_icon}}} * Remove {{{purple_contact_set_alias}}} * Remove {{{purple_buddy_get_local_alias}}} * Remove {{{purple_buddy_icons_has_custom_icon}}} * Remove {{{purple_buddy_icons_find_custom_icon}}} * Remove {{{purple_buddy_icons_set_custom_icon}}} * Merge {{{purple_certificate_check_signature_chain_with_failing}}} and {{{purple_certificate_check_signature_chain}}} * Remove {{{PurpleConnectionUIOps::report_disconnect}}} * Hide {{{purple_connection_new}}} (should be an internal function) * Hide {{{purple_connection_new_unregister}}} (should be an internal function) * Hide {{{purple_connection_destroy}}} (should be an internal function) * Replace {{{purple_connection_error}}} with {{{purple_connection_error_reason}}} * Remove {{{PURPLE_CONNECTION_IS_VALID}}} * Remove {{{purple_notify_searchresults_get_rows_count}}} * Remove {{{purple_notify_searchresults_get_columns_count}}} * Remove {{{purple_notify_searchresults_row_get}}} * Remove {{{purple_notify_searchresults_column_get_title}}} * Remove {{{purple_notify_user_info_remove_entry}}} * Remove {{{purple_plugins_register_probe_notify_cb}}} * Remove {{{purple_plugins_unregister_probe_notify_cb}}} * Remove {{{purple_plugins_register_load_notify_cb}}} * Remove {{{purple_plugins_unregister_load_notify_cb}}} * Remove {{{purple_plugins_register_unload_notify_cb}}} * Remove {{{purple_plugins_unregister_unload_notify_cb}}} * Remove {{{purple_prefs_set_generic}}} (and {{{struct purple_pref->value.generic}}} * Remove {{{PurpleProtocolPluginInfo::get_cb_info}}} * Remove {{{PurpleProtocolPluginInfo::get_cb_away}}} * Remove {{{purple_request_field_list_add}}} * Remove {{{serv_send_attention}}} * Remove {{{serv_got_attention}}} * Remove {{{purple_ssl_connect_fd}}} * Remove {{{purple_status_type_set_primary_attr}}} * Remove {{{purple_status_type_add_attr}}} * Remove {{{purple_status_type_add_attrs}}} * Remove {{{purple_status_type_add_attrs_vargs}}} * Remove {{{purple_status_type_get_primary_attr}}} * Hide {{{purple_status_set_attr_boolean}}} * Hide {{{purple_status_set_attr_int}}} * Hide {{{purple_status_set_attr_string}}} * Remove {{{purple_presence_add_status}}} * Remove {{{purple_presence_add_list}}} * Merge {{{purple_util_fetch_url}}} and {{{purple_util_fetch_url_len}}} * Remove {{{purple_util_fetch_url_request_len}}} * Remove {{{purple_ip_address_is_valid}}} * Remove {{{_purple_oscar_convert}}} * Remove {{{xmlnode_set_attrib_with_prefix}}} * Remove {{{xmlnode_set_attrib_with_namespace}}} * Pidgin * Port to GTK+ 3 (going on in branch im.pidgin.cpw.qulogic.gtk3) * Replace GtkIMHtml with Webkit (going on in branch im.pidgin.soc.2009.webkitmessageview) [query:status=new&status=new&order=priority&col=id&col=summary&col=status&col=type&col=milestone&col=component&milestone=3.0.0 Tickets with a 3.0.0 milestone]