# HG changeset patch
# Node ID 237d0f942cf9
# Parent  563e7a17c220
diff --git a/libpurple/blistnode.h b/libpurple/blistnode.h
--- a/libpurple/blistnode.h
+++ b/libpurple/blistnode.h
@@ -51,6 +51,8 @@
  * A Buddy list node.  This can represent a group, a buddy, or anything else.
  * This is a base class for PurpleBuddy, PurpleContact, PurpleGroup, and for
  * anything else that wants to put itself in the buddy list.
+ *
+ * Since: 2.0.0
  */
 struct _PurpleBlistNode {
 	GObject gparent;
@@ -96,7 +98,10 @@
  *   purple_blist_node_get_sibling_next(), purple_blist_node_get_sibling_prev().
  *
  * Returns: (transfer none): The next node
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 PurpleBlistNode *purple_blist_node_next(PurpleBlistNode *node, gboolean offline);
 
 /**
@@ -197,7 +202,10 @@
  * @value: The value to set
  *
  * Associates a boolean with a node in the buddy list
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_node_set_bool(PurpleBlistNode *node, const char *key, gboolean value);
 
 /**
@@ -208,7 +216,10 @@
  * Retrieves a named boolean setting from a node in the buddy list
  *
  * Returns: The value, or FALSE if there is no setting
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 gboolean purple_blist_node_get_bool(PurpleBlistNode *node, const char *key);
 
 /**
@@ -218,7 +229,10 @@
  * @value: The value to set
  *
  * Associates an integer with a node in the buddy list
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_node_set_int(PurpleBlistNode *node, const char *key, int value);
 
 /**
@@ -229,7 +243,10 @@
  * Retrieves a named integer setting from a node in the buddy list
  *
  * Returns: The value, or 0 if there is no setting
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 int purple_blist_node_get_int(PurpleBlistNode *node, const char *key);
 
 /**
@@ -239,9 +256,11 @@
  * @value: The value to set
  *
  * Associates a string with a node in the buddy list
+ *
+ * Since: 2.0.0
  */
-void purple_blist_node_set_string(PurpleBlistNode *node, const char *key,
-		const char *value);
+PURPLE_AVAILABLE_IN_ALL
+void purple_blist_node_set_string(PurpleBlistNode *node, const char *key, const char *value);
 
 /**
  * purple_blist_node_get_string:
@@ -251,7 +270,10 @@
  * Retrieves a named string setting from a node in the buddy list
  *
  * Returns: The value, or NULL if there is no setting
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 const char *purple_blist_node_get_string(PurpleBlistNode *node, const char *key);
 
 /**
@@ -260,7 +282,10 @@
  * @key:   The name of the setting
  *
  * Removes a named setting from a blist node
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_node_remove_setting(PurpleBlistNode *node, const char *key);
 
 /**
@@ -296,7 +321,10 @@
  * Returns: (element-type PurpleActionMenu) (transfer full): The extended menu
  *          items for a buddy list node, as harvested by the
  *          blist-node-extended-menu signal.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 GList *purple_blist_node_get_extended_menu(PurpleBlistNode *n);
 
 G_END_DECLS
diff --git a/libpurple/buddy.h b/libpurple/buddy.h
--- a/libpurple/buddy.h
+++ b/libpurple/buddy.h
@@ -75,6 +75,8 @@
  * PurpleBuddy:
  *
  * A buddy on the buddy list.
+ *
+ * Since: 2.0.0
  */
 struct _PurpleBuddy {
 	PurpleBlistNode node;
@@ -121,7 +123,10 @@
  * See purple_account_add_buddy(), purple_blist_add_buddy().
  *
  * Returns: A newly allocated buddy
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 PurpleBuddy *purple_buddy_new(PurpleAccount *account, const char *name, const char *alias);
 
 /**
@@ -148,7 +153,10 @@
  * call purple_buddy_icon_set_data().
  *
  * See purple_buddy_icon_set_data().
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_buddy_set_icon(PurpleBuddy *buddy, PurpleBuddyIcon *icon);
 
 /**
@@ -158,7 +166,10 @@
  * Returns a buddy's icon.
  *
  * Returns: The buddy icon.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 PurpleBuddyIcon *purple_buddy_get_icon(PurpleBuddy *buddy);
 
 /**
@@ -168,7 +179,10 @@
  * Returns a buddy's account.
  *
  * Returns: (transfer none): The account.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 PurpleAccount *purple_buddy_get_account(PurpleBuddy *buddy);
 
 /**
@@ -190,7 +204,10 @@
  * Returns a buddy's name
  *
  * Returns: The name.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 const char *purple_buddy_get_name(PurpleBuddy *buddy);
 
 /**
@@ -233,7 +250,10 @@
  * Returns a buddy's contact.
  *
  * Returns: (transfer none): The buddy's contact.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 PurpleMetaContact *purple_buddy_get_contact(PurpleBuddy *buddy);
 
 /**
@@ -243,7 +263,10 @@
  * Returns a buddy's presence.
  *
  * Returns: (transfer none): The buddy's presence.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 PurplePresence *purple_buddy_get_presence(PurpleBuddy *buddy);
 
 /**
@@ -293,7 +316,10 @@
  *
  * Returns:        The alias (if set), server alias (if set),
  *                or NULL.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 const char *purple_buddy_get_alias_only(PurpleBuddy *buddy);
 
 /**
@@ -315,7 +341,10 @@
  * Gets the server alias for a buddy.
  *
  * Returns:  The server alias, or NULL if it is not set.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 const char *purple_buddy_get_server_alias(PurpleBuddy *buddy);
 
 /**
@@ -328,7 +357,9 @@
  *
  * Returns:       The appropriate name or alias, or NULL.
  *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 const char *purple_buddy_get_contact_alias(PurpleBuddy *buddy);
 
 /**
@@ -340,7 +371,10 @@
  * the buddy's user name.
  *
  * Returns:        The appropriate name or alias, or NULL
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 const char *purple_buddy_get_alias(PurpleBuddy *buddy);
 
 /**
@@ -362,7 +396,10 @@
  * Returns the local alias for the buddy, or %NULL if none exists.
  *
  * Returns:       The local alias for the buddy
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 const char *purple_buddy_get_local_alias(PurpleBuddy *buddy);
 
 /**
@@ -372,7 +409,10 @@
  * Returns the group of which the buddy is a member.
  *
  * Returns: (transfer none): The group or %NULL if the buddy is not in a group.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 PurpleGroup *purple_buddy_get_group(PurpleBuddy *buddy);
 
 G_END_DECLS
diff --git a/libpurple/buddylist.h b/libpurple/buddylist.h
--- a/libpurple/buddylist.h
+++ b/libpurple/buddylist.h
@@ -81,6 +81,8 @@
  * PurpleBuddyList:
  *
  * The Buddy List
+ *
+ * Since: 2.0.0
  */
 /**
  * PurpleBuddyListClass:
@@ -210,7 +212,10 @@
  * Returns the root node of the specified buddy list.
  *
  * Returns: (transfer none): The root node.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 PurpleBlistNode *purple_blist_get_root(PurpleBuddyList *list);
 
 /**
@@ -234,7 +239,10 @@
  * purple_blist_show:
  *
  * Shows the buddy list, creating a new one if necessary.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_show(void);
 
 /**
@@ -242,7 +250,10 @@
  * @show:   Whether or not to show the buddy list
  *
  * Hides or unhides the buddy list.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_set_visible(gboolean show);
 
 /**
@@ -284,7 +295,10 @@
  * The chat will be inserted right after node or appended to the end
  * of group if node is NULL.  If both are NULL, the buddy will be added to
  * the "Chats" group.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_add_chat(PurpleChat *chat, PurpleGroup *group, PurpleBlistNode *node);
 
 /**
@@ -300,7 +314,10 @@
  * The buddy will be inserted right after node or prepended to the
  * group if node is NULL.  If both are NULL, the buddy will be added to
  * the default group.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_add_buddy(PurpleBuddy *buddy, PurpleMetaContact *contact, PurpleGroup *group, PurpleBlistNode *node);
 
 /**
@@ -312,7 +329,10 @@
  *
  * The new group will be inserted after insert or prepended to the list if
  * node is NULL.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_add_group(PurpleGroup *group, PurpleBlistNode *node);
 
 /**
@@ -325,7 +345,10 @@
  *
  * The new contact will be inserted after insert or prepended to the list if
  * node is NULL.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_add_contact(PurpleMetaContact *contact, PurpleGroup *group, PurpleBlistNode *node);
 
 /**
@@ -336,7 +359,10 @@
  * This doesn't actually try to remove the buddy from the server list.
  *
  * See purple_account_remove_buddy().
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_remove_buddy(PurpleBuddy *buddy);
 
 /**
@@ -348,7 +374,10 @@
  * doesn't remove the buddies from the server list.
  *
  * See purple_blist_remove_buddy().
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_remove_contact(PurpleMetaContact *contact);
 
 /**
@@ -356,7 +385,10 @@
  * @chat:   The chat to be removed
  *
  * Removes a chat from the buddy list and frees the memory allocated to it.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_remove_chat(PurpleChat *chat);
 
 /**
@@ -365,7 +397,10 @@
  *
  * Removes a group from the buddy list and frees the memory allocated to it and to
  * its children
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_remove_group(PurpleGroup *group);
 
 /**
@@ -447,7 +482,10 @@
  * Finds a chat by name.
  *
  * Returns: (transfer none): The chat, or %NULL if the chat does not exist.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 PurpleChat *purple_blist_find_chat(PurpleAccount *account, const char *name);
 
 /**
@@ -456,7 +494,10 @@
  *
  * Called when an account connects.  Tells the UI to update all the
  * buddies.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_add_account(PurpleAccount *account);
 
 /**
@@ -465,7 +506,10 @@
  *
  * Called when an account disconnects.  Sets the presence of all the buddies to 0
  * and tells the UI to update them.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_remove_account(PurpleAccount *account);
 
 /**
@@ -508,7 +552,10 @@
  * change to <filename>blist.xml</filename> using one of the functions in the
  * buddy list API, then the buddy list is saved automatically, so you should not
  * need to call this.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_schedule_save(void);
 
 /**
@@ -520,7 +567,10 @@
  *
  * Requests from the user information needed to add a buddy to the
  * buddy list.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_request_add_buddy(PurpleAccount *account, const char *username,
 								  const char *group, const char *alias);
 
@@ -533,7 +583,10 @@
  *
  * Requests from the user information needed to add a chat to the
  * buddy list.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_request_add_chat(PurpleAccount *account, PurpleGroup *group,
 								 const char *alias, const char *name);
 
@@ -542,7 +595,10 @@
  *
  * Requests from the user information needed to add a group to the
  * buddy list.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_request_add_group(void);
 
 /**
@@ -627,14 +683,20 @@
  * Returns the handle for the buddy list subsystem.
  *
  * Returns: The buddy list subsystem handle.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void *purple_blist_get_handle(void);
 
 /**
  * purple_blist_init:
  *
  * Initializes the buddy list subsystem.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_init(void);
 
 /**
@@ -653,7 +715,10 @@
  * purple_blist_uninit:
  *
  * Uninitializes the buddy list subsystem.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 void purple_blist_uninit(void);
 
 G_END_DECLS
diff --git a/libpurple/group.h b/libpurple/group.h
--- a/libpurple/group.h
+++ b/libpurple/group.h
@@ -48,13 +48,15 @@
 /* Data Structures                                                        */
 /**************************************************************************/
 
-/*
+/**
  * PurpleGroup:
  *
  * A group on the buddy list.
  *
  * A group is a counting node, which means it keeps track of the counts of the
  * chats and contacts under this group.
+ *
+ * Since: 2.0.0
  */
 struct _PurpleGroup {
 	PurpleCountingNode counting;
@@ -88,15 +90,18 @@
 
 /**
  * purple_group_new:
- * @name:   The name of the new group
+ * @name: The name of the new group
  *
  * Creates a new group
  *
  * You can't have more than one group with the same name.  Sorry.  If you pass
  * this the name of a group that already exists, it will return that group.
  *
- * Returns:       A new group struct
-*/
+ * Returns: A new group struct
+ *
+ * Since: 2.0.0
+ */
+PURPLE_AVAILABLE_IN_ALL
 PurpleGroup *purple_group_new(const char *name);
 
 /**
@@ -107,7 +112,10 @@
  *
  * Returns: (element-type PurpleAccount) (transfer container): A list of
  *          accounts, or %NULL if the group has no accounts.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 GSList *purple_group_get_accounts(PurpleGroup *g);
 
 /**
@@ -118,7 +126,10 @@
  * Determines whether an account owns any buddies in a given group
  *
  * Returns: TRUE if there are any buddies in the group, or FALSE otherwise.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 gboolean purple_group_on_account(PurpleGroup *g, PurpleAccount *account);
 
 /**
@@ -140,7 +151,10 @@
  * Returns the name of a group.
  *
  * Returns: The name of the group.
+ *
+ * Since: 2.0.0
  */
+PURPLE_AVAILABLE_IN_ALL
 const char *purple_group_get_name(PurpleGroup *group);
 
 G_END_DECLS
