Deprecated List

Global _GtkIMHtml::clipboard_html_string
Global _GtkIMHtml::clipboard_text_string
Class _GtkIMHtmlFontDetail
  as of 2.7.10
Global _PidginBuddyList::connection_errors
  in favour of purple_account_get_current_error(), which also gives you the PurpleConnectionError value.
Global _PidginBuddyList::headline_close
  : Close image for closing the headline without triggering the callback
Global _PidginConversation::sg
Global _purple_oscar_convert (const char *act, const char *protocol)
  This function should not be used in new code and should be removed in 3.0.0. The aim/icq prpl split happened a long time ago, and we don't need to keep migrating old data.
Global _PurpleConvChat::in_room
  Will be removed in 3.0.0
Global _PurplePluginProtocolInfo::add_buddy )(PurpleConnection *, PurpleBuddy *buddy, PurpleGroup *group)
  Since 2.8.0, add_buddy_with_invite is preferred.
Global _PurplePluginProtocolInfo::get_cb_away )(PurpleConnection *, int, const char *who)
  Use PurplePluginProtocolInfo.get_cb_real_name and PurplePluginProtocolInfo.status_text instead.
Global _PurplePluginProtocolInfo::get_cb_info )(PurpleConnection *, int, const char *who)
  Use PurplePluginProtocolInfo.get_info instead.
Page Buddy List Signals

  Use blist-node-added instead.

  Use blist-node-removed instead.

Global pidgin_blist_update_account_error_state (PurpleAccount *account, const char *message)
  There was no good reason for code other than gtkconn to call this.
Global pidgin_check_if_dir (const char *path, GtkFileSelection *filesel)
  Pidgin no longer uses GtkFileSelection internally. It has also been deprecated by GTK+. Use GtkFileChooser instead and ignore this function.
Global pidgin_set_custom_buddy_icon (PurpleAccount *account, const char *who, const char *filename)
  See purple_buddy_icons_node_set_custom_icon_from_file()
Global pidgin_setup_screenname_autocomplete (GtkWidget *entry, GtkWidget *optmenu, gboolean all)
  For new code, use the equivalent: pidgin_setup_screenname_autocomplete_with_filter(entry, optmenu, pidgin_screenname_autocomplete_default_filter, `GINT_TO_POINTER(all)`)
Global purple_account_add_buddies (PurpleAccount *account, GList *buddies)
  Use purple_account_add_buddies_with_invite and `NULL` message.
Global purple_account_add_buddy (PurpleAccount *account, PurpleBuddy *buddy)
  Use purple_account_add_buddy_with_invite and `NULL` message.
Global purple_blist_destroy (void)
  The UI is responsible for cleaning up the PurpleBuddyList->ui_data. purple_blist_uninit() will free the PurpleBuddyList* itself.
Global purple_blist_new (void)
  In 3.0.0, this will be handled by purple_blist_init()
Global purple_blist_update_buddy_icon (PurpleBuddy *buddy)
  Use purple_blist_update_node_icon() instead.
Global purple_buddy_get_local_alias (PurpleBuddy *buddy)
  Try purple_buddy_get_alias(), if server aliases are okay.
Global purple_buddy_icons_find_custom_icon (PurpleContact *contact)
  Use purple_buddy_icons_node_find_custom_icon instead.
Global purple_buddy_icons_has_custom_icon (PurpleContact *contact)
  Use purple_buddy_icons_node_has_custom_icon instead.
Global purple_buddy_icons_set_custom_icon (PurpleContact *contact, guchar *icon_data, size_t icon_len)
  Use purple_buddy_icons_node_set_custom_icon instead.
Global purple_certificate_check_signature_chain (GList *chain)
  This function will be removed in 3.0.0 and replaced with purple_certificate_check_signature_chain_with_failing
Global purple_certificate_check_signature_chain_with_failing (GList *chain, PurpleCertificate **failing)
  This function will become purple_certificate_check_signature_chain in 3.0.0
Global purple_connection_destroy (PurpleConnection *gc)
  As this is internal, we should make it private in 3.0.0.
Global purple_connection_error (PurpleConnection *gc, const char *reason)
  in favour of purple_connection_error_reason. Calling `purple_connection_error(gc, text)` is equivalent to calling `purple_connection_error_reason(gc, reason, text)` where `reason` is PURPLE_CONNECTION_ERROR_OTHER_ERROR if `gc->wants_to_die` is `TRUE`, and PURPLE_CONNECTION_ERROR_NETWORK_ERROR if not. (This is to keep auto-reconnection behaviour the same when using old prpls which don't use reasons yet.)
Global PURPLE_CONNECTION_IS_VALID (gc)
  Do not use this. Instead, cancel your asynchronous request when the PurpleConnection is destroyed.
Global purple_connection_new (PurpleAccount *account, gboolean regist, const char *password)
  As this is internal, we should make it private in 3.0.0.
Global purple_connection_new_unregister (PurpleAccount *account, const char *password, PurpleAccountUnregistrationCb cb, void *user_data)
  As this is internal, we should make it private in 3.0.0.
Global purple_contact_set_alias (PurpleContact *contact, const char *alias)
  Use purple_blist_alias_contact() instead.
Global purple_conv_chat_set_users (PurpleConvChat *chat, GList *users)
  This function will be removed in 3.0.0. You shouldn't be using it anyway.
Global purple_dnsquery_a (const char *hostname, int port, PurpleDnsQueryConnectFunction callback, gpointer data)
  Use purple_dnsquery_a_account instead
Global purple_ip_address_is_valid (const char *ip)
  This function will be replaced with one that validates as either IPv4 or IPv6 in 3.0.0. If you don't want this, behavior, use one of the more specific functions.
Global purple_network_listen_family (unsigned short port, int socket_family, int socket_type, PurpleNetworkListenCallback cb, gpointer cb_data)
  This function will be renamed to purple_network_listen in 3.0.0.
Global purple_network_listen_map_external (gboolean map_external)
  In 3.0.0 a boolean will be added to the functions mentioned above to perform the same function.
Global purple_network_listen_range_family (unsigned short start, unsigned short end, int socket_family, int socket_type, PurpleNetworkListenCallback cb, gpointer cb_data)
  This function will be renamed to purple_network_listen_range in 3.0.0.
Global purple_notify_searchresults_column_get_title (PurpleNotifySearchResults *results, unsigned int column_id)
  This function will be removed in Pidgin 3.0.0 unless there is sufficient demand to keep it. Using this function encourages looping through the columns inefficiently. Instead of using this function you should iterate through the name of a particular column you can use g_list_nth_data(results->columns, row_id).
Global purple_notify_searchresults_get_columns_count (PurpleNotifySearchResults *results)
  This function will be removed in Pidgin 3.0.0 unless there is sufficient demand to keep it. Using this function encourages looping through the columns inefficiently. Instead of using this function you should iterate through the columns using a loop similar to this: for (l = results->columns; l != NULL; l = l->next) If you really need to get the number of columns you can use g_list_length(results->columns).
Global purple_notify_searchresults_get_rows_count (PurpleNotifySearchResults *results)
  This function will be removed in Pidgin 3.0.0 unless there is sufficient demand to keep it. Using this function encourages looping through the results inefficiently. Instead of using this function you should iterate through the results using a loop similar to this: for (l = results->rows; l != NULL; l = l->next) If you really need to get the number of rows you can use g_list_length(results->rows).
Global purple_notify_searchresults_row_get (PurpleNotifySearchResults *results, unsigned int row_id)
  This function will be removed in Pidgin 3.0.0 unless there is sufficient demand to keep it. Using this function encourages looping through the results inefficiently. Instead of using this function you should iterate through the results using a loop similar to this: for (l = results->rows; l != NULL; l = l->next) If you really need to get the data for a particular row you can use g_list_nth_data(results->rows, row_id).
Global purple_notify_user_info_remove_entry (PurpleNotifyUserInfo *user_info, PurpleNotifyUserInfoEntry *user_info_entry)
  Nothing is using this function and it should be removed in 3.0.0. Or, if we decide we want to keep it in 3.0.0 then we should make purple_notify_user_info_entry_destroy public so that entries can be free'd after they're removed.
Global purple_plugins_register_load_notify_cb (void(*func)(PurplePlugin *, void *), void *data)
  Use the plugin-load signal instead.
Global purple_plugins_register_probe_notify_cb (void(*func)(void *), void *data)
  If you need this, ask for a plugin-probe signal to be added.
Global purple_plugins_register_unload_notify_cb (void(*func)(PurplePlugin *, void *), void *data)
  Use the plugin-unload signal instead.
Global purple_plugins_unregister_load_notify_cb (void(*func)(PurplePlugin *, void *))
  Use the plugin-load signal instead.
Global purple_plugins_unregister_probe_notify_cb (void(*func)(void *))
  If you need this, ask for a plugin-probe signal to be added.
Global purple_plugins_unregister_unload_notify_cb (void(*func)(PurplePlugin *, void *))
  Use the plugin-unload signal instead.
Global purple_prefs_set_generic (const char *name, gpointer value)
  We're not really sure what purpose this function serves, so it will be removed in 3.0.0. Preferences values set using this function aren't serialized to prefs.xml, which could be misleading. There is also no purple_prefs_get_generic, which means that if you can't really get the value (other in a connected callback). If you think you have a use for this then please let us know.
Global purple_presence_add_list (PurplePresence *presence, GList *source_list)
  This function isn't used and should be removed in 3.0.0.
Global purple_presence_add_status (PurplePresence *presence, PurpleStatus *status)
  This function is only used by purple_presence_add_list, and both should be removed in 3.0.0.
Global purple_proxy_connect_socks5 (void *handle, PurpleProxyInfo *gpi, const char *host, int port, PurpleProxyConnectFunction connect_cb, gpointer data)
  Use purple_proxy_connect_socks5_account instead
Global purple_request_field_list_add (PurpleRequestField *field, const char *item, void *data)
  Use purple_request_field_list_add_icon() instead.
Global purple_set_blist (PurpleBuddyList *blist)
  In 3.0.0, this will be handled by purple_blist_init()
Global purple_srv_cancel (PurpleSrvTxtQueryData *query_data)
  Use purple_srv_txt_query_destroy instead
Global purple_srv_resolve (const char *protocol, const char *transport, const char *domain, PurpleSrvCallback cb, gpointer extradata)
  Use purple_srv_resolve_account instead
Global purple_ssl_connect_fd (PurpleAccount *account, int fd, PurpleSslInputFunction func, PurpleSslErrorFunction error_func, void *data)
  Use purple_ssl_connect_with_host_fd() instead.
Global purple_status_set_attr_boolean (PurpleStatus *status, const char *id, gboolean value)
  This function is only used by status.c and should be made static in 3.0.0.
Global purple_status_set_attr_int (PurpleStatus *status, const char *id, int value)
  This function is only used by status.c and should be made static in 3.0.0.
Global purple_status_set_attr_string (PurpleStatus *status, const char *id, const char *value)
  This function is only used by status.c and should be made static in 3.0.0.
Global purple_status_type_add_attr (PurpleStatusType *status_type, const char *id, const char *name, PurpleValue *value)
  This function isn't needed and should be removed in 3.0.0. Status type attributes should be set when the status type is created, in the call to purple_status_type_new_with_attrs.
Global purple_status_type_add_attrs (PurpleStatusType *status_type, const char *id, const char *name, PurpleValue *value,...) G_GNUC_NULL_TERMINATED
  This function isn't needed and should be removed in 3.0.0. Status type attributes should be set when the status type is created, in the call to purple_status_type_new_with_attrs.
Global purple_status_type_add_attrs_vargs (PurpleStatusType *status_type, va_list args)
  This function isn't needed and should be removed in 3.0.0. Status type attributes should be set when the status type is created, in the call to purple_status_type_new_with_attrs.
Global purple_status_type_get_primary_attr (const PurpleStatusType *type)
  This function isn't used and should be removed in 3.0.0.
Global purple_status_type_set_primary_attr (PurpleStatusType *status_type, const char *attr_id)
  This function isn't used and should be removed in 3.0.0.
Global purple_txt_cancel (PurpleSrvTxtQueryData *query_data)
  Use purple_srv_txt_query_destroy instead
Global purple_txt_resolve (const char *owner, const char *domain, PurpleTxtCallback cb, gpointer extradata)
  Use purple_txt_resolve_account instead
Global purple_util_fetch_url_len (url, full, user_agent, http11, max_len, cb, data)
  In 3.0.0, we'll rename this to "purple_util_fetch_url" and get rid of the old one
Global purple_util_fetch_url_request_data_len_with_account (PurpleAccount *account, const char *url, gboolean full, const char *user_agent, gboolean http11, const char *request, gsize request_len, gboolean include_headers, gssize max_len, PurpleUtilFetchUrlCallback callback, void *user_data)
  In 3.0.0, we'll rename this to "purple_util_fetch_url_request" and get rid of the old one
Global purple_util_fetch_url_request_len (const gchar *url, gboolean full, const gchar *user_agent, gboolean http11, const gchar *request, gboolean include_headers, gssize max_len, PurpleUtilFetchUrlCallback callback, gpointer data)
  In 3.0.0, this will go away.
Global purple_util_fetch_url_request_len_with_account (PurpleAccount *account, const gchar *url, gboolean full, const gchar *user_agent, gboolean http11, const gchar *request, gboolean include_headers, gssize max_len, PurpleUtilFetchUrlCallback callback, gpointer data)
  In 3.0.0, we'll rename this to "purple_util_fetch_url_request" and get rid of the old one
Global PurpleConnectionUiOps::report_disconnect )(PurpleConnection *gc, const char *text)
  in favour of PurpleConnectionUiOps.report_disconnect_reason.
Global serv_got_attention (PurpleConnection *gc, const char *who, guint type_code)
  Use purple_prpl_got_attention() instead.
Global serv_send_attention (PurpleConnection *gc, const char *who, guint type_code)
  Use purple_prpl_send_attention() instead.
Global xmlnode_set_attrib_with_namespace (xmlnode *node, const char *attr, const char *xmlns, const char *value)
  Use xmlnode_set_attrib_full instead.
Global xmlnode_set_attrib_with_prefix (xmlnode *node, const char *attr, const char *prefix, const char *value)
  Use xmlnode_set_attrib_full instead.