# HG changeset patch
# Node ID 8d495a4cce7f
# Parent  408884ab47a9
diff --git a/libpurple/buddy.h b/libpurple/buddy.h
--- a/libpurple/buddy.h
+++ b/libpurple/buddy.h
@@ -204,7 +204,10 @@ const char *purple_buddy_get_name(Purple
  * See purple_buddy_set_protocol_data().
  *
  * Returns:      The protocol data.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 gpointer purple_buddy_get_protocol_data(PurpleBuddy *buddy);
 
 /**
@@ -217,7 +220,10 @@ gpointer purple_buddy_get_protocol_data(
  * This should only be called from the associated protocol.
  *
  * See purple_buddy_get_protocol_data().
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 void purple_buddy_set_protocol_data(PurpleBuddy *buddy, gpointer data);
 
 /**
diff --git a/libpurple/buddylist.h b/libpurple/buddylist.h
--- a/libpurple/buddylist.h
+++ b/libpurple/buddylist.h
@@ -224,7 +224,10 @@ PurpleBlistNode *purple_blist_get_root(P
  *
  * Returns: (element-type PurpleBlistNode) (transfer container): A list of every
  *          buddy in the list.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 GSList *purple_blist_get_buddies(void);
 
 /**
diff --git a/libpurple/connection.h b/libpurple/connection.h
--- a/libpurple/connection.h
+++ b/libpurple/connection.h
@@ -264,7 +264,10 @@ void purple_connection_set_display_name(
  * @proto_data: The protocol data to set for the connection.
  *
  * Sets the protocol data for a connection.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 void purple_connection_set_protocol_data(PurpleConnection *connection, void *proto_data);
 
 /**
@@ -395,7 +398,10 @@ const char *purple_connection_get_displa
  * Gets the protocol data from a connection.
  *
  * Returns: The protocol data for the connection.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 void *purple_connection_get_protocol_data(PurpleConnection *gc);
 
 /**
diff --git a/libpurple/debug.h b/libpurple/debug.h
--- a/libpurple/debug.h
+++ b/libpurple/debug.h
@@ -32,6 +32,8 @@
 
 #include <stdarg.h>
 
+#include "purpleversion.h"
+
 G_BEGIN_DECLS
 
 /**
@@ -150,7 +152,10 @@ void purple_debug_fatal(const gchar *cat
  * Enable or disable verbose debugging.  This ordinarily should only be called
  * by purple_debug_init(), but there are cases where this can be useful for
  * plugins.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 void purple_debug_set_verbose(gboolean verbose);
 
 /**
@@ -159,7 +164,10 @@ void purple_debug_set_verbose(gboolean v
  * Check if verbose logging is enabled.
  *
  * Returns: %TRUE if verbose debugging is enabled, %FALSE if it is not.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 gboolean purple_debug_is_verbose(void);
 
 /**
@@ -171,7 +179,10 @@ gboolean purple_debug_is_verbose(void);
  * Enable or disable unsafe debugging. This ordinarily should only be called by
  * purple_debug_init(), but there are cases where this can be useful for
  * plugins.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 void purple_debug_set_unsafe(gboolean unsafe);
 
 /**
@@ -182,7 +193,10 @@ void purple_debug_set_unsafe(gboolean un
  * Returns: %TRUE if the debug logging of all messages is enabled, %FALSE if
  *          messages that could potentially contain passwords and other
  *          sensitive information are not logged.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 gboolean purple_debug_is_unsafe(void);
 
 /******************************************************************************
diff --git a/libpurple/network.h b/libpurple/network.h
--- a/libpurple/network.h
+++ b/libpurple/network.h
@@ -106,7 +106,10 @@ gboolean purple_network_is_available(voi
  * This is what backs the --force-online command line argument in Pidgin,
  * for example.  This is useful for offline testing, especially when
  * combined with nullprotocol.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 void purple_network_force_online(void);
 
 /**
@@ -115,7 +118,10 @@ void purple_network_force_online(void);
  *
  * Update the STUN server IP given the host name
  * Will result in a DNS query being executed asynchronous
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 void purple_network_set_stun_server(const gchar *stun_server);
 
 /**
@@ -124,7 +130,10 @@ void purple_network_set_stun_server(cons
  * Get the IP address of the STUN server as a string representation
  *
  * Returns: the IP address
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 const gchar *purple_network_get_stun_ip(void);
 
 /**
diff --git a/libpurple/proxy.h b/libpurple/proxy.h
--- a/libpurple/proxy.h
+++ b/libpurple/proxy.h
@@ -54,7 +54,10 @@ PurpleProxyInfo *purple_global_proxy_get
  * @info:     The proxy information.
  *
  * Set purple's global proxy information.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 void purple_global_proxy_set_info(PurpleProxyInfo *info);
 
 /**************************************************************************/
diff --git a/libpurple/purpleversion.h b/libpurple/purpleversion.h
--- a/libpurple/purpleversion.h
+++ b/libpurple/purpleversion.h
@@ -106,6 +106,26 @@
 #define PURPLE_AVAILABLE_IN_ALL _PURPLE_EXTERN
 
 /**
+ * PURPLE_VERSION_2_6:
+ *
+ * A macro that evaluates to the 2.6 version of libpurple, in a format that
+ * can be used by the C pre-processor.
+ *
+ * Since: 3.0.0
+ */
+#define PURPLE_VERSION_2_6 (G_ENCODE_VERSION(2, 6))
+
+#if PURPLE_VERSION_MAX_ALLOWED < PURPLE_VERSION_2_6
+#define PURPLE_AVAILABLE_IN_2_6 PURPLE_UNAVAILABLE(2, 6)
+#define PURPLE_AVAILABLE_STATIC_INLINE_IN_2_6 PURPLE_UNAVAILABLE_STATIC_INLINE(2, 6)
+#define PURPLE_AVAILABLE_TYPE_IN_2_6 PURPLE_UNAVAILABLE_TYPE(2, 6)
+#else
+#define PURPLE_AVAILABLE_IN_2_6 _PURPLE_EXTERN
+#define PURPLE_AVAILABLE_STATIC_INLINE_IN_2_6
+#define PURPLE_AVAILABLE_TYPE_IN_2_6
+#endif
+
+/**
  * PURPLE_VERSION_2_7:
  *
  * A macro that evaluates to the 2.7 version of libpurple, in a format that
diff --git a/libpurple/request/purplerequestfield.h b/libpurple/request/purplerequestfield.h
--- a/libpurple/request/purplerequestfield.h
+++ b/libpurple/request/purplerequestfield.h
@@ -143,7 +143,10 @@ void purple_request_field_set_required(P
  * Returns the group for the field.
  *
  * Returns: (transfer none): The UI data.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 PurpleRequestGroup *purple_request_field_get_group(PurpleRequestField *field);
 
 /**
diff --git a/libpurple/util.h b/libpurple/util.h
--- a/libpurple/util.h
+++ b/libpurple/util.h
@@ -221,7 +221,10 @@ gboolean purple_running_kde(void);
  * strings are %NULL.
  *
  * Returns: %TRUE if the strings are the same, else %FALSE.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_STATIC_INLINE_IN_2_6
 static inline gboolean
 purple_strequal(const gchar *left, const gchar *right)
 {
@@ -431,7 +434,10 @@ gchar *purple_utf8_try_convert(const cha
  * The returned string must be freed by the caller.
  *
  * Returns: A newly allocated UTF-8 string without the unprintable characters.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 gchar *purple_utf8_strip_unprintables(const gchar *str);
 
 /**
diff --git a/libpurple/xfer.h b/libpurple/xfer.h
--- a/libpurple/xfer.h
+++ b/libpurple/xfer.h
@@ -703,7 +703,10 @@ void purple_xfer_conversation_write(Purp
  * Allows the UI to signal it's ready to send/receive data (depending on
  * the direction of the file transfer. Used when the UI is providing
  * read/write/data_not_sent UI ops.
+ *
+ * Since: 2.6.0
  */
+PURPLE_AVAILABLE_IN_2_6
 void purple_xfer_ui_ready(PurpleXfer *xfer);
 
 /**
