[libgdata: 1/2] remove deprecated youtube api




commit 27c60a1d52874c3f06db8cc7e6f4b2546c2a45be
Author: Daniel Kolesa <dkolesa igalia com>
Date:   Tue Mar 30 16:10:33 2021 +0200

    remove deprecated youtube api

 demos/youtube/youtube-cli.c                    |  12 -
 docs/reference/gdata-docs.xml                  |   2 -
 docs/reference/gdata-sections.txt.in           |  51 ---
 gdata/gdata-core.symbols                       |  19 --
 gdata/gdata.h                                  |   2 -
 gdata/services/youtube/gdata-youtube-content.c | 155 ---------
 gdata/services/youtube/gdata-youtube-content.h | 108 ------
 gdata/services/youtube/gdata-youtube-credit.c  | 177 ----------
 gdata/services/youtube/gdata-youtube-credit.h  |  97 ------
 gdata/services/youtube/gdata-youtube-query.c   | 343 +-------------------
 gdata/services/youtube/gdata-youtube-query.h   |  56 +---
 gdata/services/youtube/gdata-youtube-service.c |  28 --
 gdata/services/youtube/gdata-youtube-service.h |  47 +--
 gdata/services/youtube/gdata-youtube-video.c   | 165 ----------
 gdata/services/youtube/gdata-youtube-video.h   |  27 --
 gdata/services/youtube/meson.build             |   4 -
 gdata/symbol.map                               |  19 --
 gdata/tests/youtube.c                          | 433 +------------------------
 18 files changed, 14 insertions(+), 1731 deletions(-)
---
diff --git a/demos/youtube/youtube-cli.c b/demos/youtube/youtube-cli.c
index e3e0e3dc..35f3d6a7 100644
--- a/demos/youtube/youtube-cli.c
+++ b/demos/youtube/youtube-cli.c
@@ -241,22 +241,10 @@ standard_feed_type_from_name (const gchar *name,
 {
        /* Indexed by GDataYouTubeStandardFeedType. */
        const gchar *feed_type_names[] = {
-               "top-rated",
-               "top-favorites",
-               "most-viewed",
                "most-popular",
-               "most-recent",
-               "most-discussed",
-               "most-linked",
-               "most-responded",
-               "recently-featured",
-               "watch-on-mobile",
        };
        guint i;
 
-       G_STATIC_ASSERT (G_N_ELEMENTS (feed_type_names) ==
-                        GDATA_YOUTUBE_WATCH_ON_MOBILE_FEED + 1);
-
        for (i = 0; i < G_N_ELEMENTS (feed_type_names); i++) {
                if (g_strcmp0 (feed_type_names[i], name) == 0) {
                        *out = (GDataYouTubeStandardFeedType) i;
diff --git a/docs/reference/gdata-docs.xml b/docs/reference/gdata-docs.xml
index eb279c84..09764c8d 100644
--- a/docs/reference/gdata-docs.xml
+++ b/docs/reference/gdata-docs.xml
@@ -117,8 +117,6 @@
                <chapter>
                        <title>YouTube API</title>
                        <xi:include href="xml/gdata-youtube-category.xml"/>
-                       <xi:include href="xml/gdata-youtube-content.xml"/>
-                       <xi:include href="xml/gdata-youtube-credit.xml"/>
                        <xi:include href="xml/gdata-youtube-state.xml"/>
                </chapter>
        </part>
diff --git a/docs/reference/gdata-sections.txt.in b/docs/reference/gdata-sections.txt.in
index 135fe403..4a5dc697 100644
--- a/docs/reference/gdata-sections.txt.in
+++ b/docs/reference/gdata-sections.txt.in
@@ -227,18 +227,15 @@ GDATA_YOUTUBE_ACTION_EMBED
 GDATA_YOUTUBE_ACTION_SYNDICATE
 GDATA_YOUTUBE_LICENSE_CC
 GDATA_YOUTUBE_LICENSE_STANDARD
-GDATA_YOUTUBE_RATING_TYPE_SIMPLE
 GDATA_YOUTUBE_RATING_TYPE_MPAA
 GDATA_YOUTUBE_RATING_TYPE_V_CHIP
 GDataYouTubeVideo
 GDataYouTubeVideoClass
 GDataYouTubePermission
 gdata_youtube_video_new
-gdata_youtube_video_look_up_content
 gdata_youtube_video_get_thumbnails
 gdata_youtube_video_get_category
 gdata_youtube_video_set_category
-gdata_youtube_video_get_credit
 gdata_youtube_video_get_description
 gdata_youtube_video_set_description
 gdata_youtube_video_get_duration
@@ -255,14 +252,11 @@ gdata_youtube_video_set_access_control
 gdata_youtube_video_get_player_uri
 gdata_youtube_video_is_private
 gdata_youtube_video_set_is_private
-gdata_youtube_video_is_draft
-gdata_youtube_video_set_is_draft
 gdata_youtube_video_get_state
 gdata_youtube_video_get_rating
 gdata_youtube_video_get_uploaded
 gdata_youtube_video_get_recorded
 gdata_youtube_video_set_recorded
-gdata_youtube_video_get_video_id
 gdata_youtube_video_get_video_id_from_uri
 gdata_youtube_video_get_aspect_ratio
 gdata_youtube_video_set_aspect_ratio
@@ -441,10 +435,6 @@ GDataYouTubeUploader
 gdata_youtube_query_new
 gdata_youtube_query_get_age
 gdata_youtube_query_set_age
-gdata_youtube_query_get_format
-gdata_youtube_query_set_format
-gdata_youtube_query_get_language
-gdata_youtube_query_set_language
 gdata_youtube_query_get_license
 gdata_youtube_query_set_license
 gdata_youtube_query_get_location
@@ -455,10 +445,6 @@ gdata_youtube_query_get_restriction
 gdata_youtube_query_set_restriction
 gdata_youtube_query_get_safe_search
 gdata_youtube_query_set_safe_search
-gdata_youtube_query_get_sort_order
-gdata_youtube_query_set_sort_order
-gdata_youtube_query_get_uploader
-gdata_youtube_query_set_uploader
 <SUBSECTION Standard>
 GDATA_IS_YOUTUBE_QUERY
 GDATA_IS_YOUTUBE_QUERY_CLASS
@@ -1047,25 +1033,6 @@ GDATA_TYPE_MEDIA_CREDIT
 GDataMediaCreditPrivate
 </SECTION>
 
-<SECTION>
-<FILE>gdata-youtube-credit</FILE>
-<TITLE>GDataYouTubeCredit</TITLE>
-GDATA_YOUTUBE_CREDIT_ENTITY_PARTNER
-GDataYouTubeCredit
-GDataYouTubeCreditClass
-gdata_youtube_credit_get_entity_type
-<SUBSECTION Standard>
-gdata_youtube_credit_get_type
-GDATA_YOUTUBE_CREDIT
-GDATA_YOUTUBE_CREDIT_CLASS
-GDATA_YOUTUBE_CREDIT_GET_CLASS
-GDATA_IS_YOUTUBE_CREDIT
-GDATA_IS_YOUTUBE_CREDIT_CLASS
-GDATA_TYPE_YOUTUBE_CREDIT
-<SUBSECTION Private>
-GDataYouTubeCreditPrivate
-</SECTION>
-
 <SECTION>
 <FILE>gdata-media-content</FILE>
 <TITLE>GDataMediaContent</TITLE>
@@ -1095,24 +1062,6 @@ GDATA_TYPE_MEDIA_CONTENT
 GDataMediaContentPrivate
 </SECTION>
 
-<SECTION>
-<FILE>gdata-youtube-content</FILE>
-<TITLE>GDataYouTubeContent</TITLE>
-GDataYouTubeContent
-GDataYouTubeContentClass
-gdata_youtube_content_get_format
-<SUBSECTION Standard>
-gdata_youtube_content_get_type
-GDATA_YOUTUBE_CONTENT
-GDATA_YOUTUBE_CONTENT_CLASS
-GDATA_YOUTUBE_CONTENT_GET_CLASS
-GDATA_IS_YOUTUBE_CONTENT
-GDATA_IS_YOUTUBE_CONTENT_CLASS
-GDATA_TYPE_YOUTUBE_CONTENT
-<SUBSECTION Private>
-GDataYouTubeContentPrivate
-</SECTION>
-
 <SECTION>
 <FILE>gdata-media-thumbnail</FILE>
 <TITLE>GDataMediaThumbnail</TITLE>
diff --git a/gdata/gdata-core.symbols b/gdata/gdata-core.symbols
index b9b4cb0f..db529ae2 100644
--- a/gdata/gdata-core.symbols
+++ b/gdata/gdata-core.symbols
@@ -123,18 +123,13 @@ gdata_youtube_video_get_player_uri
 gdata_youtube_video_is_restricted_in_country
 gdata_youtube_video_get_category
 gdata_youtube_video_set_category
-gdata_youtube_video_get_credit
 gdata_youtube_video_get_description
 gdata_youtube_video_set_description
-gdata_youtube_video_look_up_content
 gdata_youtube_video_get_thumbnails
 gdata_youtube_video_get_duration
 gdata_youtube_video_is_private
 gdata_youtube_video_set_is_private
 gdata_youtube_video_get_uploaded
-gdata_youtube_video_get_video_id
-gdata_youtube_video_is_draft
-gdata_youtube_video_set_is_draft
 gdata_youtube_video_get_state
 gdata_youtube_video_get_recorded
 gdata_youtube_video_set_recorded
@@ -143,29 +138,19 @@ gdata_youtube_video_get_aspect_ratio
 gdata_youtube_video_set_aspect_ratio
 gdata_youtube_format_get_type
 gdata_youtube_safe_search_get_type
-gdata_youtube_sort_order_get_type
 gdata_youtube_age_get_type
-gdata_youtube_uploader_get_type
 gdata_youtube_query_get_type
 gdata_youtube_query_new
-gdata_youtube_query_get_format
-gdata_youtube_query_set_format
 gdata_youtube_query_get_location
 gdata_youtube_query_set_location
-gdata_youtube_query_get_language
-gdata_youtube_query_set_language
 gdata_youtube_query_get_order_by
 gdata_youtube_query_set_order_by
 gdata_youtube_query_get_restriction
 gdata_youtube_query_set_restriction
 gdata_youtube_query_get_safe_search
 gdata_youtube_query_set_safe_search
-gdata_youtube_query_get_sort_order
-gdata_youtube_query_set_sort_order
 gdata_youtube_query_get_age
 gdata_youtube_query_set_age
-gdata_youtube_query_get_uploader
-gdata_youtube_query_set_uploader
 gdata_calendar_calendar_get_type
 gdata_calendar_calendar_new
 gdata_calendar_calendar_get_timezone
@@ -430,8 +415,6 @@ gdata_media_credit_get_type
 gdata_media_credit_get_credit
 gdata_media_credit_get_scheme
 gdata_media_credit_get_role
-gdata_youtube_credit_get_type
-gdata_youtube_credit_get_entity_type
 gdata_media_content_get_type
 gdata_media_content_get_uri
 gdata_media_content_get_filesize
@@ -443,8 +426,6 @@ gdata_media_content_get_duration
 gdata_media_content_get_height
 gdata_media_content_get_width
 gdata_media_content_download
-gdata_youtube_content_get_type
-gdata_youtube_content_get_format
 gdata_media_thumbnail_get_type
 gdata_media_thumbnail_get_uri
 gdata_media_thumbnail_get_height
diff --git a/gdata/gdata.h b/gdata/gdata.h
index 1650ae35..8612dc05 100644
--- a/gdata/gdata.h
+++ b/gdata/gdata.h
@@ -93,8 +93,6 @@
 #include <gdata/services/youtube/gdata-youtube-feed.h>
 #include <gdata/services/youtube/gdata-youtube-query.h>
 #include <gdata/services/youtube/gdata-youtube-video.h>
-#include <gdata/services/youtube/gdata-youtube-content.h>
-#include <gdata/services/youtube/gdata-youtube-credit.h>
 #include <gdata/services/youtube/gdata-youtube-state.h>
 #include <gdata/services/youtube/gdata-youtube-enums.h>
 #include <gdata/services/youtube/gdata-youtube-category.h>
diff --git a/gdata/services/youtube/gdata-youtube-query.c b/gdata/services/youtube/gdata-youtube-query.c
index bb5cff15..7399618f 100644
--- a/gdata/services/youtube/gdata-youtube-query.c
+++ b/gdata/services/youtube/gdata-youtube-query.c
@@ -44,7 +44,6 @@
 
 #include "gdata-youtube-query.h"
 #include "gdata-query.h"
-#include "gdata-youtube-content.h"
 #include "gdata-private.h"
 
 static void gdata_youtube_query_finalize (GObject *object);
@@ -53,16 +52,9 @@ static void gdata_youtube_query_set_property (GObject *object, guint property_id
 static void get_query_uri (GDataQuery *self, const gchar *feed_uri, GString *query_uri, gboolean 
*params_started);
 
 struct _GDataYouTubeQueryPrivate {
-       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-       GDataYouTubeFormat format;
-       GDataYouTubeSortOrder sort_order;
-       GDataYouTubeUploader uploader;
-       G_GNUC_END_IGNORE_DEPRECATIONS
-
        gdouble latitude;
        gdouble longitude;
        gdouble location_radius;
-       gboolean has_location;
        gchar *language;
        gchar *order_by;
        gchar *restriction;
@@ -72,18 +64,13 @@ struct _GDataYouTubeQueryPrivate {
 };
 
 enum {
-       PROP_FORMAT = 1,
-       PROP_LATITUDE,
+       PROP_LATITUDE = 1,
        PROP_LONGITUDE,
        PROP_LOCATION_RADIUS,
-       PROP_HAS_LOCATION,
-       PROP_LANGUAGE,
        PROP_ORDER_BY,
        PROP_RESTRICTION,
        PROP_SAFE_SEARCH,
-       PROP_SORT_ORDER,
        PROP_AGE,
-       PROP_UPLOADER,
        PROP_LICENSE,
 };
 
@@ -101,23 +88,6 @@ gdata_youtube_query_class_init (GDataYouTubeQueryClass *klass)
 
        query_class->get_query_uri = get_query_uri;
 
-       /**
-        * GDataYouTubeQuery:format:
-        *
-        * Specifies that videos must be available in a particular video format. Use 
%GDATA_YOUTUBE_FORMAT_UNKNOWN to
-        * retrieve videos irrespective of their format availability.
-        *
-        * Since: 0.3.0
-        * Deprecated: 0.17.0: No longer supported by Google. The value of
-        *   this property will be unused in queries. There is no replacement.
-        */
-       g_object_class_install_property (gobject_class, PROP_FORMAT,
-                                        g_param_spec_enum ("format",
-                                                           "Format", "Specifies that videos must be 
available in a particular video format.",
-                                                           GDATA_TYPE_YOUTUBE_FORMAT, 
GDATA_YOUTUBE_FORMAT_UNKNOWN,
-                                                           G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
-                                                           G_PARAM_DEPRECATED));
-
        /**
         * GDataYouTubeQuery:latitude:
         *
@@ -129,9 +99,6 @@ gdata_youtube_query_class_init (GDataYouTubeQueryClass *klass)
         * If #GDataYouTubeQuery:location-radius is a non-<code class="literal">0</code> value, this will 
define a circle from which videos should be
         * found.
         *
-        * As it is deprecated, the value of #GDataYouTubeQuery:has-location is
-        * ignored.
-        *
         * For more information, see the <ulink type="http"
         * url="https://developers.google.com/youtube/v3/docs/search/list#location";>online 
documentation</ulink>.
         *
@@ -179,48 +146,6 @@ gdata_youtube_query_class_init (GDataYouTubeQueryClass *klass)
                                                              0.0, G_MAXDOUBLE, 0.0,
                                                              G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 
-       /**
-        * GDataYouTubeQuery:has-location:
-        *
-        * Whether to restrict search results to videos with specific coordinates associated with them. If 
used with a given
-        * #GDataYouTubeQuery:latitude and #GDataYouTubeQuery:longitude, only videos with specific 
coordinates (not those with merely
-        * a descriptive address) will be returned. If used without a latitude and longitude set, only videos 
with specific coordinates
-        * (regardless of those coordinates) will be returned.
-        *
-        * For more information, see the documentation for #GDataYouTubeQuery:latitude.
-        *
-        * Since: 0.3.0
-        * Deprecated: 0.17.0: No longer supported by Google. The value of
-        *   this property will be unused in queries.
-        */
-       g_object_class_install_property (gobject_class, PROP_HAS_LOCATION,
-                                        g_param_spec_boolean ("has-location",
-                                                              "Has location?", "Whether to restrict results 
to videos with specific coordinates.",
-                                                              FALSE,
-                                                              G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
-                                                              G_PARAM_DEPRECATED));
-
-       /**
-        * GDataYouTubeQuery:language:
-        *
-        * Restricts the search to videos that have a title, description or keywords in a specified language. 
The language code should
-        * be a two-letter ISO 639-1 code; or you can use <literal>zh-Hans</literal> for simplified Chinese 
and <literal>zh-Hant</literal>
-        * for traditional Chinese.
-        *
-        * For more information, see the <ulink type="http"
-        * url="http://code.google.com/apis/youtube/2.0/reference.html#lrsp";>online documentation</ulink>.
-        *
-        * Since: 0.3.0
-        * Deprecated: 0.17.0: No longer supported by Google. The value of
-        *   this property will be unused in queries. There is no replacement.
-        */
-       g_object_class_install_property (gobject_class, PROP_LANGUAGE,
-                                        g_param_spec_string ("language",
-                                                             "Language", "Restricts the search to videos 
described in the given language.",
-                                                             NULL,
-                                                             G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
-                                                             G_PARAM_DEPRECATED));
-
        /**
         * GDataYouTubeQuery:order-by:
         *
@@ -280,22 +205,6 @@ gdata_youtube_query_class_init (GDataYouTubeQueryClass *klass)
                                                            GDATA_TYPE_YOUTUBE_SAFE_SEARCH, 
GDATA_YOUTUBE_SAFE_SEARCH_MODERATE,
                                                            G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 
-       /**
-        * GDataYouTubeQuery:sort-order:
-        *
-        * Specifies the direction of sorting. To use the default sort order, set the property to 
%GDATA_YOUTUBE_SORT_NONE.
-        *
-        * Since: 0.3.0
-        * Deprecated: 0.17.0: No longer supported by Google. The value of
-        *   this property will be unused in queries. There is no replacement.
-        */
-       g_object_class_install_property (gobject_class, PROP_SORT_ORDER,
-                                        g_param_spec_enum ("sort-order",
-                                                           "Sort order", "Specifies the direction of 
sorting.",
-                                                           GDATA_TYPE_YOUTUBE_SORT_ORDER, 
GDATA_YOUTUBE_SORT_NONE,
-                                                           G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
-                                                           G_PARAM_DEPRECATED));
-
        /**
         * GDataYouTubeQuery:age:
         *
@@ -310,23 +219,6 @@ gdata_youtube_query_class_init (GDataYouTubeQueryClass *klass)
                                                            GDATA_TYPE_YOUTUBE_AGE, 
GDATA_YOUTUBE_AGE_ALL_TIME,
                                                            G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 
-       /**
-        * GDataYouTubeQuery:uploader:
-        *
-        * Restricts the search to videos from the specified type of uploader. Currently, this can only be 
used to restrict
-        * searches to videos from YouTube partners.
-        *
-        * Since: 0.3.0
-        * Deprecated: 0.17.0: No longer supported by Google. The value of
-        *   this property will be unused in queries. There is no replacement.
-        */
-       g_object_class_install_property (gobject_class, PROP_UPLOADER,
-                                        g_param_spec_enum ("uploader",
-                                                           "Uploader", "Restricts the search to videos from 
the specified type of uploader.",
-                                                           GDATA_TYPE_YOUTUBE_UPLOADER, 
GDATA_YOUTUBE_UPLOADER_ALL,
-                                                           G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
-                                                           G_PARAM_DEPRECATED));
-
        /**
         * GDataYouTubeQuery:license:
         *
@@ -379,9 +271,6 @@ gdata_youtube_query_get_property (GObject *object, guint property_id, GValue *va
        GDataYouTubeQueryPrivate *priv = GDATA_YOUTUBE_QUERY (object)->priv;
 
        switch (property_id) {
-               case PROP_FORMAT:
-                       g_value_set_enum (value, priv->format);
-                       break;
                case PROP_LATITUDE:
                        g_value_set_double (value, priv->latitude);
                        break;
@@ -391,12 +280,6 @@ gdata_youtube_query_get_property (GObject *object, guint property_id, GValue *va
                case PROP_LOCATION_RADIUS:
                        g_value_set_double (value, priv->location_radius);
                        break;
-               case PROP_HAS_LOCATION:
-                       g_value_set_boolean (value, priv->has_location);
-                       break;
-               case PROP_LANGUAGE:
-                       g_value_set_string (value, priv->language);
-                       break;
                case PROP_ORDER_BY:
                        g_value_set_string (value, priv->order_by);
                        break;
@@ -406,15 +289,9 @@ gdata_youtube_query_get_property (GObject *object, guint property_id, GValue *va
                case PROP_SAFE_SEARCH:
                        g_value_set_enum (value, priv->safe_search);
                        break;
-               case PROP_SORT_ORDER:
-                       g_value_set_enum (value, priv->sort_order);
-                       break;
                case PROP_AGE:
                        g_value_set_enum (value, priv->age);
                        break;
-               case PROP_UPLOADER:
-                       g_value_set_enum (value, priv->uploader);
-                       break;
                case PROP_LICENSE:
                        g_value_set_string (value, priv->license);
                        break;
@@ -431,11 +308,6 @@ gdata_youtube_query_set_property (GObject *object, guint property_id, const GVal
        GDataYouTubeQuery *self = GDATA_YOUTUBE_QUERY (object);
 
        switch (property_id) {
-               case PROP_FORMAT:
-                       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-                       gdata_youtube_query_set_format (self, g_value_get_enum (value));
-                       G_GNUC_END_IGNORE_DEPRECATIONS
-                       break;
                case PROP_LATITUDE:
                        self->priv->latitude = g_value_get_double (value);
                        break;
@@ -445,14 +317,6 @@ gdata_youtube_query_set_property (GObject *object, guint property_id, const GVal
                case PROP_LOCATION_RADIUS:
                        self->priv->location_radius = g_value_get_double (value);
                        break;
-               case PROP_HAS_LOCATION:
-                       self->priv->has_location = g_value_get_boolean (value);
-                       break;
-               case PROP_LANGUAGE:
-                       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-                       gdata_youtube_query_set_language (self, g_value_get_string (value));
-                       G_GNUC_END_IGNORE_DEPRECATIONS
-                       break;
                case PROP_ORDER_BY:
                        gdata_youtube_query_set_order_by (self, g_value_get_string (value));
                        break;
@@ -462,19 +326,9 @@ gdata_youtube_query_set_property (GObject *object, guint property_id, const GVal
                case PROP_SAFE_SEARCH:
                        gdata_youtube_query_set_safe_search (self, g_value_get_enum (value));
                        break;
-               case PROP_SORT_ORDER:
-                       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-                       gdata_youtube_query_set_sort_order (self, g_value_get_enum (value));
-                       G_GNUC_END_IGNORE_DEPRECATIONS
-                       break;
                case PROP_AGE:
                        gdata_youtube_query_set_age (self, g_value_get_enum (value));
                        break;
-               case PROP_UPLOADER:
-                       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-                       gdata_youtube_query_set_uploader (self, g_value_get_enum (value));
-                       G_GNUC_END_IGNORE_DEPRECATIONS
-                       break;
                case PROP_LICENSE:
                        gdata_youtube_query_set_license (self, g_value_get_string (value));
                        break;
@@ -685,67 +539,21 @@ gdata_youtube_query_new (const gchar *q)
        return g_object_new (GDATA_TYPE_YOUTUBE_QUERY, "q", q, NULL);
 }
 
-G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
-/**
- * gdata_youtube_query_get_format:
- * @self: a #GDataYouTubeQuery
- *
- * Gets the #GDataYouTubeQuery:format property.
- *
- * Return value: the format property
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. The value of
- *   this property will be unused in queries. There is no replacement.
- */
-GDataYouTubeFormat
-gdata_youtube_query_get_format (GDataYouTubeQuery *self)
-{
-       g_return_val_if_fail (GDATA_IS_YOUTUBE_QUERY (self), GDATA_YOUTUBE_FORMAT_UNKNOWN);
-       return self->priv->format;
-}
-
-/**
- * gdata_youtube_query_set_format:
- * @self: a #GDataYouTubeQuery
- * @format: the requested video format
- *
- * Sets the #GDataYouTubeQuery:format property of the #GDataYouTubeQuery to @format.
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. The value of
- *   this property will be unused in queries. There is no replacement.
- */
-void
-gdata_youtube_query_set_format (GDataYouTubeQuery *self, GDataYouTubeFormat format)
-{
-       g_return_if_fail (GDATA_IS_YOUTUBE_QUERY (self));
-       self->priv->format = format;
-       g_object_notify (G_OBJECT (self), "format");
-
-       /* Our current ETag will no longer be relevant */
-       gdata_query_set_etag (GDATA_QUERY (self), NULL);
-}
-
-G_GNUC_END_IGNORE_DEPRECATIONS
-
 /**
  * gdata_youtube_query_get_location:
  * @self: a #GDataYouTubeQuery
  * @latitude: (out caller-allocates) (allow-none): a location in which to return the latitude, or %NULL
  * @longitude: (out caller-allocates) (allow-none): a location in which to return the longitude, or %NULL
  * @radius: (out caller-allocates) (allow-none): a location in which to return the location radius, or %NULL
- * @has_location: (out caller-allocates) (allow-none): a location in which to return %TRUE if the query is 
searching for videos with a specific
  * location, %FALSE otherwise, or %NULL
  *
  * Gets the location-based properties of the #GDataYouTubeQuery<!-- -->: #GDataYouTubeQuery:latitude, 
#GDataYouTubeQuery:longitude,
  * #GDataYouTubeQuery:location-radius and #GDataYouTubeQuery:has-location.
  *
- * Since: 0.3.0
+ * Since: 1.0.0
  */
 void
-gdata_youtube_query_get_location (GDataYouTubeQuery *self, gdouble *latitude, gdouble *longitude, gdouble 
*radius, gboolean *has_location)
+gdata_youtube_query_get_location (GDataYouTubeQuery *self, gdouble *latitude, gdouble *longitude, gdouble 
*radius)
 {
        g_return_if_fail (GDATA_IS_YOUTUBE_QUERY (self));
 
@@ -755,8 +563,6 @@ gdata_youtube_query_get_location (GDataYouTubeQuery *self, gdouble *latitude, gd
                *longitude = self->priv->longitude;
        if (radius != NULL)
                *radius = self->priv->location_radius;
-       if (has_location != NULL)
-               *has_location = self->priv->has_location;
 }
 
 /**
@@ -765,78 +571,31 @@ gdata_youtube_query_get_location (GDataYouTubeQuery *self, gdouble *latitude, gd
  * @latitude: the new latitude, or %G_MAXDOUBLE
  * @longitude: the new longitude, or %G_MAXDOUBLE
  * @radius: the new location radius, or <code class="literal">0</code>
- * @has_location: %TRUE if the query is for videos with a specific location, %FALSE otherwise
  *
  * Sets the location-based properties of the #GDataYouTubeQuery<!-- -->: #GDataYouTubeQuery:latitude, 
#GDataYouTubeQuery:longitude,
  * #GDataYouTubeQuery:location-radius and #GDataYouTubeQuery:has-location.
  *
- * Since: 0.3.0
+ * Since: 1.0.0
  */
 void
-gdata_youtube_query_set_location (GDataYouTubeQuery *self, gdouble latitude, gdouble longitude, gdouble 
radius, gboolean has_location)
+gdata_youtube_query_set_location (GDataYouTubeQuery *self, gdouble latitude, gdouble longitude, gdouble 
radius)
 {
        g_return_if_fail (GDATA_IS_YOUTUBE_QUERY (self));
 
        self->priv->latitude = latitude;
        self->priv->longitude = longitude;
        self->priv->location_radius = radius;
-       self->priv->has_location = has_location;
 
        g_object_freeze_notify (G_OBJECT (self));
        g_object_notify (G_OBJECT (self), "latitude");
        g_object_notify (G_OBJECT (self), "longitude");
        g_object_notify (G_OBJECT (self), "location-radius");
-       g_object_notify (G_OBJECT (self), "has-location");
        g_object_thaw_notify (G_OBJECT (self));
 
        /* Our current ETag will no longer be relevant */
        gdata_query_set_etag (GDATA_QUERY (self), NULL);
 }
 
-/**
- * gdata_youtube_query_get_language:
- * @self: a #GDataYouTubeQuery
- *
- * Gets the #GDataYouTubeQuery:language property.
- *
- * Return value: the language property, or %NULL if it is unset
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. The value of
- *   this property will be unused in queries. There is no replacement.
- */
-const gchar *
-gdata_youtube_query_get_language (GDataYouTubeQuery *self)
-{
-       g_return_val_if_fail (GDATA_IS_YOUTUBE_QUERY (self), NULL);
-       return self->priv->language;
-}
-
-/**
- * gdata_youtube_query_set_language:
- * @self: a #GDataYouTubeQuery
- * @language: (allow-none): a new language name, or %NULL
- *
- * Sets the #GDataYouTubeQuery:language property of the #GDataYouTubeQuery to the new language, @language.
- *
- * Set @language to %NULL to unset the property in the query URI.
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. The value of
- *   this property will be unused in queries. There is no replacement.
- */
-void
-gdata_youtube_query_set_language (GDataYouTubeQuery *self, const gchar *language)
-{
-       g_return_if_fail (GDATA_IS_YOUTUBE_QUERY (self));
-       g_free (self->priv->language);
-       self->priv->language = g_strdup (language);
-       g_object_notify (G_OBJECT (self), "language");
-
-       /* Our current ETag will no longer be relevant */
-       gdata_query_set_etag (GDATA_QUERY (self), NULL);
-}
-
 /**
  * gdata_youtube_query_get_order_by:
  * @self: a #GDataYouTubeQuery
@@ -955,53 +714,6 @@ gdata_youtube_query_set_safe_search (GDataYouTubeQuery *self, GDataYouTubeSafeSe
        gdata_query_set_etag (GDATA_QUERY (self), NULL);
 }
 
-G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
-/**
- * gdata_youtube_query_get_sort_order:
- * @self: a #GDataYouTubeQuery
- *
- * Gets the #GDataYouTubeQuery:sort-order property.
- *
- * Return value: the sort order property
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. The value of
- *   this property will be unused in queries. There is no replacement.
- */
-GDataYouTubeSortOrder
-gdata_youtube_query_get_sort_order (GDataYouTubeQuery *self)
-{
-       g_return_val_if_fail (GDATA_IS_YOUTUBE_QUERY (self), GDATA_YOUTUBE_SORT_NONE);
-       return self->priv->sort_order;
-}
-
-/**
- * gdata_youtube_query_set_sort_order:
- * @self: a #GDataYouTubeQuery
- * @sort_order: the new sort order
- *
- * Sets the #GDataYouTubeQuery:sort-order property of the #GDataYouTubeQuery to @sort_order.
- *
- * Set @sort_order to %GDATA_YOUTUBE_SORT_NONE to unset the property in the query URI.
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. The value of
- *   this property will be unused in queries. There is no replacement.
- */
-void
-gdata_youtube_query_set_sort_order (GDataYouTubeQuery *self, GDataYouTubeSortOrder sort_order)
-{
-       g_return_if_fail (GDATA_IS_YOUTUBE_QUERY (self));
-       self->priv->sort_order = sort_order;
-       g_object_notify (G_OBJECT (self), "sort-order");
-
-       /* Our current ETag will no longer be relevant */
-       gdata_query_set_etag (GDATA_QUERY (self), NULL);
-}
-
-G_GNUC_END_IGNORE_DEPRECATIONS
-
 /**
  * gdata_youtube_query_get_age:
  * @self: a #GDataYouTubeQuery
@@ -1039,51 +751,6 @@ gdata_youtube_query_set_age (GDataYouTubeQuery *self, GDataYouTubeAge age)
        gdata_query_set_etag (GDATA_QUERY (self), NULL);
 }
 
-G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
-/**
- * gdata_youtube_query_get_uploader:
- * @self: a #GDataYouTubeQuery
- *
- * Gets the #GDataYouTubeQuery:uploader property.
- *
- * Return value: the uploader property
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. The value of
- *   this property will be unused in queries. There is no replacement.
- */
-GDataYouTubeUploader
-gdata_youtube_query_get_uploader (GDataYouTubeQuery *self)
-{
-       g_return_val_if_fail (GDATA_IS_YOUTUBE_QUERY (self), GDATA_YOUTUBE_UPLOADER_ALL);
-       return self->priv->uploader;
-}
-
-/**
- * gdata_youtube_query_set_uploader:
- * @self: a #GDataYouTubeQuery
- * @uploader: the new uploader
- *
- * Sets the #GDataYouTubeQuery:uploader property of the #GDataYouTubeQuery to @uploader.
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. The value of
- *   this property will be unused in queries. There is no replacement.
- */
-void
-gdata_youtube_query_set_uploader (GDataYouTubeQuery *self, GDataYouTubeUploader uploader)
-{
-       g_return_if_fail (GDATA_IS_YOUTUBE_QUERY (self));
-       self->priv->uploader = uploader;
-       g_object_notify (G_OBJECT (self), "uploader");
-
-       /* Our current ETag will no longer be relevant */
-       gdata_query_set_etag (GDATA_QUERY (self), NULL);
-}
-
-G_GNUC_END_IGNORE_DEPRECATIONS
-
 /**
  * gdata_youtube_query_get_license:
  * @self: a #GDataYouTubeQuery
diff --git a/gdata/services/youtube/gdata-youtube-query.h b/gdata/services/youtube/gdata-youtube-query.h
index 32924a1c..1bf4282b 100644
--- a/gdata/services/youtube/gdata-youtube-query.h
+++ b/gdata/services/youtube/gdata-youtube-query.h
@@ -26,7 +26,6 @@
 #include <gdata/gdata-query.h>
 #include <gdata/gdata-types.h>
 #include <gdata/services/youtube/gdata-youtube-enums.h>
-#include <gdata/services/youtube/gdata-youtube-content.h>
 
 G_BEGIN_DECLS
 
@@ -48,26 +47,6 @@ typedef enum {
        GDATA_YOUTUBE_SAFE_SEARCH_STRICT
 } GDataYouTubeSafeSearch;
 
-#ifndef LIBGDATA_DISABLE_DEPRECATED
-/**
- * GDataYouTubeSortOrder:
- * @GDATA_YOUTUBE_SORT_NONE: do not explicitly sort in any sense
- * @GDATA_YOUTUBE_SORT_ASCENDING: sort results in ascending order of the order field
- * @GDATA_YOUTUBE_SORT_DESCENDING: sort results in descending order of the order field
- *
- * Sort orders for the search results from queries. They specify the order of the designated order field.
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. There is no
- *   replacement.
- */
-typedef enum {
-       GDATA_YOUTUBE_SORT_NONE = 0,
-       GDATA_YOUTUBE_SORT_ASCENDING,
-       GDATA_YOUTUBE_SORT_DESCENDING
-} GDataYouTubeSortOrder;
-#endif /* !LIBGDATA_DISABLE_DEPRECATED */
-
 /**
  * GDataYouTubeAge:
  * @GDATA_YOUTUBE_AGE_ALL_TIME: retrieve all videos, regardless of the date they were uploaded
@@ -86,24 +65,6 @@ typedef enum {
        GDATA_YOUTUBE_AGE_THIS_MONTH
 } GDataYouTubeAge;
 
-#ifndef LIBGDATA_DISABLE_DEPRECATED
-/**
- * GDataYouTubeUploader:
- * @GDATA_YOUTUBE_UPLOADER_ALL: retrieve all videos, regardless of who uploaded them
- * @GDATA_YOUTUBE_UPLOADER_PARTNER: retrieve only videos uploaded by YouTube partners
- *
- * Video uploaders, allowing queries to be limited to returning videos uploaded by YouTube partners.
- *
- * Since: 0.3.0
- * Deprecated: 0.17.0: No longer supported by Google. There is no
- *   replacement.
- */
-typedef enum {
-       GDATA_YOUTUBE_UPLOADER_ALL = 0,
-       GDATA_YOUTUBE_UPLOADER_PARTNER
-} GDataYouTubeUploader;
-#endif /* !LIBGDATA_DISABLE_DEPRECATED */
-
 /**
  * GDATA_YOUTUBE_LICENSE_CC:
  *
@@ -166,8 +127,8 @@ GType gdata_youtube_query_get_type (void) G_GNUC_CONST;
 
 GDataYouTubeQuery *gdata_youtube_query_new (const gchar *q) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
 
-void gdata_youtube_query_get_location (GDataYouTubeQuery *self, gdouble *latitude, gdouble *longitude, 
gdouble *radius, gboolean *has_location);
-void gdata_youtube_query_set_location (GDataYouTubeQuery *self, gdouble latitude, gdouble longitude, gdouble 
radius, gboolean has_location);
+void gdata_youtube_query_get_location (GDataYouTubeQuery *self, gdouble *latitude, gdouble *longitude, 
gdouble *radius);
+void gdata_youtube_query_set_location (GDataYouTubeQuery *self, gdouble latitude, gdouble longitude, gdouble 
radius);
 const gchar *gdata_youtube_query_get_order_by (GDataYouTubeQuery *self) G_GNUC_PURE;
 void gdata_youtube_query_set_order_by (GDataYouTubeQuery *self, const gchar *order_by);
 const gchar *gdata_youtube_query_get_restriction (GDataYouTubeQuery *self) G_GNUC_PURE;
@@ -179,19 +140,6 @@ void gdata_youtube_query_set_age (GDataYouTubeQuery *self, GDataYouTubeAge age);
 const gchar *gdata_youtube_query_get_license (GDataYouTubeQuery *self) G_GNUC_PURE;
 void gdata_youtube_query_set_license (GDataYouTubeQuery *self, const gchar *license);
 
-#ifndef LIBGDATA_DISABLE_DEPRECATED
-G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-GDataYouTubeFormat gdata_youtube_query_get_format (GDataYouTubeQuery *self) G_GNUC_PURE G_GNUC_DEPRECATED;
-void gdata_youtube_query_set_format (GDataYouTubeQuery *self, GDataYouTubeFormat format) G_GNUC_DEPRECATED;
-const gchar *gdata_youtube_query_get_language (GDataYouTubeQuery *self) G_GNUC_PURE G_GNUC_DEPRECATED;
-void gdata_youtube_query_set_language (GDataYouTubeQuery *self, const gchar *language) G_GNUC_DEPRECATED;
-GDataYouTubeSortOrder gdata_youtube_query_get_sort_order (GDataYouTubeQuery *self) G_GNUC_PURE 
G_GNUC_DEPRECATED;
-void gdata_youtube_query_set_sort_order (GDataYouTubeQuery *self, GDataYouTubeSortOrder sort_order) 
G_GNUC_DEPRECATED;
-GDataYouTubeUploader gdata_youtube_query_get_uploader (GDataYouTubeQuery *self) G_GNUC_PURE 
G_GNUC_DEPRECATED;
-void gdata_youtube_query_set_uploader (GDataYouTubeQuery *self, GDataYouTubeUploader uploader) 
G_GNUC_DEPRECATED;
-G_GNUC_END_IGNORE_DEPRECATIONS
-#endif /* !LIBGDATA_DISABLE_DEPRECATED */
-
 G_END_DECLS
 
 #endif /* !GDATA_YOUTUBE_QUERY_H */
diff --git a/gdata/services/youtube/gdata-youtube-service.c b/gdata/services/youtube/gdata-youtube-service.c
index 35994c54..e5edc7b1 100644
--- a/gdata/services/youtube/gdata-youtube-service.c
+++ b/gdata/services/youtube/gdata-youtube-service.c
@@ -674,34 +674,6 @@ standard_feed_type_to_feed_uri (GDataYouTubeStandardFeedType feed_type)
                return _gdata_service_build_uri ("https://www.googleapis.com/youtube/v3/videos";
                                                 "?part=snippet"
                                                 "&chart=mostPopular");
-       case GDATA_YOUTUBE_TOP_RATED_FEED:
-       case GDATA_YOUTUBE_TOP_FAVORITES_FEED:
-       case GDATA_YOUTUBE_MOST_VIEWED_FEED:
-       case GDATA_YOUTUBE_MOST_RECENT_FEED:
-       case GDATA_YOUTUBE_MOST_DISCUSSED_FEED:
-       case GDATA_YOUTUBE_MOST_LINKED_FEED:
-       case GDATA_YOUTUBE_MOST_RESPONDED_FEED:
-       case GDATA_YOUTUBE_RECENTLY_FEATURED_FEED:
-       case GDATA_YOUTUBE_WATCH_ON_MOBILE_FEED: {
-               gchar *date, *out;
-               GDateTime *tv, *tv2;
-
-               /* All feed types except MOST_POPULAR have been deprecated for
-                * a while, and fall back to MOST_POPULAR on the server anyway.
-                * See: 
https://developers.google.com/youtube/2.0/developers_guide_protocol_video_feeds#Standard_feeds */
-               tv = g_date_time_new_now_utc ();
-               tv2 = g_date_time_add_days (tv, -1);
-               g_date_time_unref (tv);
-               date = g_date_time_format_iso8601 (tv2);
-               g_date_time_unref (tv2);
-               out = _gdata_service_build_uri ("https://www.googleapis.com/youtube/v3/videos";
-                                               "?part=snippet"
-                                               "&chart=mostPopular"
-                                               "&publishedAfter=%s", date);
-               g_free (date);
-
-               return out;
-       }
        default:
                g_assert_not_reached ();
        }
diff --git a/gdata/services/youtube/gdata-youtube-service.h b/gdata/services/youtube/gdata-youtube-service.h
index 74710675..45403a95 100644
--- a/gdata/services/youtube/gdata-youtube-service.h
+++ b/gdata/services/youtube/gdata-youtube-service.h
@@ -33,46 +33,10 @@ G_BEGIN_DECLS
 
 /**
  * GDataYouTubeStandardFeedType:
- * @GDATA_YOUTUBE_TOP_RATED_FEED: This feed contains the most highly rated
- *   YouTube videos. Deprecated: 0.17.0: Google no longer supports this feed
- *   type, and it will return results equivalent to
- *   %GDATA_YOUTUBE_MOST_POPULAR_FEED.
- * @GDATA_YOUTUBE_TOP_FAVORITES_FEED: This feed contains videos most frequently
- *   flagged as favorite videos. Deprecated: 0.17.0: Google no longer
- *   supports this feed type, and it will return results equivalent to
- *   %GDATA_YOUTUBE_MOST_POPULAR_FEED.
- * @GDATA_YOUTUBE_MOST_VIEWED_FEED: This feed contains the most frequently
- *   watched YouTube videos. Deprecated: 0.17.0: Google no longer supports
- *   this feed type, and it will return results equivalent to
- *   %GDATA_YOUTUBE_MOST_POPULAR_FEED.
  * @GDATA_YOUTUBE_MOST_POPULAR_FEED: This feed contains the most popular YouTube
  *   videos, selected using an algorithm that combines many different signals to
  *   determine overall popularity. As of version 0.17.0, this is the only
  *   supported feed type.
- * @GDATA_YOUTUBE_MOST_RECENT_FEED: This feed contains the videos most recently
- *   submitted to YouTube. Deprecated: 0.17.0: Google no longer supports
- *   this feed type, and it will return results equivalent to
- *   %GDATA_YOUTUBE_MOST_POPULAR_FEED.
- * @GDATA_YOUTUBE_MOST_DISCUSSED_FEED: This feed contains the YouTube videos
- *   that have received the most comments. Deprecated: 0.17.0: Google no
- *   longer supports this feed type, and it will return results equivalent to
- *   %GDATA_YOUTUBE_MOST_POPULAR_FEED.
- * @GDATA_YOUTUBE_MOST_LINKED_FEED: This feed contains the YouTube videos that
- *   receive the most links from other websites. Deprecated: 0.17.0: Google
- *   no longer supports this feed type, and it will return results equivalent to
- *   %GDATA_YOUTUBE_MOST_POPULAR_FEED.
- * @GDATA_YOUTUBE_MOST_RESPONDED_FEED: This feed contains YouTube videos that
- *   receive the most video responses. Deprecated: 0.17.0: Google no longer
- *   supports this feed type, and it will return results equivalent to
- *   %GDATA_YOUTUBE_MOST_POPULAR_FEED.
- * @GDATA_YOUTUBE_RECENTLY_FEATURED_FEED: This feed contains videos recently
- *   featured on the YouTube home page or featured videos tab. Deprecated:
- *   0.17.0: Google no longer supports this feed type, and it will return
- *   results equivalent to %GDATA_YOUTUBE_MOST_POPULAR_FEED.
- * @GDATA_YOUTUBE_WATCH_ON_MOBILE_FEED: This feed contains videos suitable for
- *   playback on mobile devices. Deprecated: 0.17.0: Google no longer
- *   supports this feed type, and it will return results equivalent to
- *   %GDATA_YOUTUBE_MOST_POPULAR_FEED.
  *
  * Standard feed types for standard feed queries with
  * gdata_youtube_service_query_standard_feed(). For more information, see the
@@ -80,16 +44,7 @@ G_BEGIN_DECLS
  * documentation</ulink>.
  */
 typedef enum {
-       GDATA_YOUTUBE_TOP_RATED_FEED,
-       GDATA_YOUTUBE_TOP_FAVORITES_FEED,
-       GDATA_YOUTUBE_MOST_VIEWED_FEED,
-       GDATA_YOUTUBE_MOST_POPULAR_FEED,
-       GDATA_YOUTUBE_MOST_RECENT_FEED,
-       GDATA_YOUTUBE_MOST_DISCUSSED_FEED,
-       GDATA_YOUTUBE_MOST_LINKED_FEED,
-       GDATA_YOUTUBE_MOST_RESPONDED_FEED,
-       GDATA_YOUTUBE_RECENTLY_FEATURED_FEED,
-       GDATA_YOUTUBE_WATCH_ON_MOBILE_FEED
+       GDATA_YOUTUBE_MOST_POPULAR_FEED
 } GDataYouTubeStandardFeedType;
 
 /**
diff --git a/gdata/services/youtube/gdata-youtube-video.c b/gdata/services/youtube/gdata-youtube-video.c
index 85a3bb84..771ebc7e 100644
--- a/gdata/services/youtube/gdata-youtube-video.c
+++ b/gdata/services/youtube/gdata-youtube-video.c
@@ -145,13 +145,10 @@ enum {
        PROP_KEYWORDS,
        PROP_PLAYER_URI,
        PROP_CATEGORY,
-       PROP_CREDIT,
        PROP_DESCRIPTION,
        PROP_DURATION,
        PROP_IS_PRIVATE,
        PROP_UPLOADED,
-       PROP_VIDEO_ID,
-       PROP_IS_DRAFT,
        PROP_STATE,
        PROP_RECORDED,
        PROP_ASPECT_RATIO,
@@ -320,25 +317,6 @@ gdata_youtube_video_class_init (GDataYouTubeVideoClass *klass)
                                                              GDATA_TYPE_MEDIA_CATEGORY,
                                                              G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 
-       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
-       /**
-        * GDataYouTubeVideo:credit:
-        *
-        * Identifies the owner of the video.
-        *
-        * Deprecated: 0.17.0: This is no longer supported by Google, and
-        *   will always be %NULL. There is no replacement.
-        */
-       g_object_class_install_property (gobject_class, PROP_CREDIT,
-                                        g_param_spec_object ("credit",
-                                                             "Credit", "Identifies the owner of the video.",
-                                                             GDATA_TYPE_YOUTUBE_CREDIT,
-                                                             G_PARAM_READABLE | G_PARAM_STATIC_STRINGS |
-                                                             G_PARAM_DEPRECATED));
-
-       G_GNUC_END_IGNORE_DEPRECATIONS
-
        /**
         * GDataYouTubeVideo:description:
         *
@@ -395,38 +373,6 @@ gdata_youtube_video_class_init (GDataYouTubeVideoClass *klass)
                                                             -1, G_MAXINT64, -1,
                                                             G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
 
-       /**
-        * GDataYouTubeVideo:video-id:
-        *
-        * Specifies a unique ID which YouTube uses to identify the video. For example: 
<literal>qz8EfkS4KK0</literal>.
-        *
-        * For more information, see the <ulink type="http"
-        * url="https://developers.google.com/youtube/v3/docs/videos#id";>online documentation</ulink>.
-        *
-        * Deprecated: 0.17.0: This is now equal to #GDataEntry:id.
-        */
-       g_object_class_install_property (gobject_class, PROP_VIDEO_ID,
-                                        g_param_spec_string ("video-id",
-                                                             "Video ID", "Specifies a unique ID which 
YouTube uses to identify the video.",
-                                                             NULL,
-                                                             G_PARAM_READABLE | G_PARAM_STATIC_STRINGS |
-                                                             G_PARAM_DEPRECATED));
-
-       /**
-        * GDataYouTubeVideo:is-draft:
-        *
-        * Indicates whether the video is in draft, or unpublished, status.
-        *
-        * Deprecated: 0.17.0: This is now equal to
-        *   #GDataYouTubeVideo:is-private.
-        */
-       g_object_class_install_property (gobject_class, PROP_IS_DRAFT,
-                                        g_param_spec_boolean ("is-draft",
-                                                              "Draft?", "Indicates whether the video is in 
draft, or unpublished, status.",
-                                                              FALSE,
-                                                              G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
-                                                              G_PARAM_DEPRECATED));
-
        /**
         * GDataYouTubeVideo:state:
         *
@@ -602,9 +548,6 @@ gdata_youtube_video_get_property (GObject *object, guint property_id, GValue *va
                case PROP_CATEGORY:
                        g_value_set_object (value, priv->category);
                        break;
-               case PROP_CREDIT:
-                       g_value_set_object (value, NULL);
-                       break;
                case PROP_DESCRIPTION:
                        g_value_set_string (value, gdata_entry_get_summary (GDATA_ENTRY (object)));
                        break;
@@ -617,12 +560,6 @@ gdata_youtube_video_get_property (GObject *object, guint property_id, GValue *va
                case PROP_UPLOADED:
                        g_value_set_int64 (value, gdata_entry_get_published (GDATA_ENTRY (object)));
                        break;
-               case PROP_VIDEO_ID:
-                       g_value_set_string (value, gdata_entry_get_id (GDATA_ENTRY (object)));
-                       break;
-               case PROP_IS_DRAFT:
-                       g_value_set_boolean (value, gdata_youtube_video_is_private (GDATA_YOUTUBE_VIDEO 
(object)));
-                       break;
                case PROP_STATE:
                        g_value_set_object (value, gdata_youtube_video_get_state (GDATA_YOUTUBE_VIDEO 
(object)));
                        break;
@@ -666,9 +603,6 @@ gdata_youtube_video_set_property (GObject *object, guint property_id, const GVal
                case PROP_IS_PRIVATE:
                        gdata_youtube_video_set_is_private (self, g_value_get_boolean (value));
                        break;
-               case PROP_IS_DRAFT:
-                       gdata_youtube_video_set_is_private (self, g_value_get_boolean (value));
-                       break;
                case PROP_RECORDED:
                        gdata_youtube_video_set_recorded (self, g_value_get_int64 (value));
                        break;
@@ -1956,27 +1890,6 @@ gdata_youtube_video_set_category (GDataYouTubeVideo *self, GDataMediaCategory *c
        g_object_notify (G_OBJECT (self), "category");
 }
 
-G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
-/**
- * gdata_youtube_video_get_credit:
- * @self: a #GDataYouTubeVideo
- *
- * Gets the #GDataYouTubeVideo:credit property.
- *
- * Return value: (transfer none): a #GDataMediaCredit giving information on whom to credit for the video, or 
%NULL
- * Deprecated: 0.17.0: This is no longer supported by Google, and will
- *   always return %NULL. There is no replacement.
- */
-GDataYouTubeCredit *
-gdata_youtube_video_get_credit (GDataYouTubeVideo *self)
-{
-       g_return_val_if_fail (GDATA_IS_YOUTUBE_VIDEO (self), NULL);
-       return NULL;
-}
-
-G_GNUC_END_IGNORE_DEPRECATIONS
-
 /**
  * gdata_youtube_video_get_description:
  * @self: a #GDataYouTubeVideo
@@ -2009,33 +1922,6 @@ gdata_youtube_video_set_description (GDataYouTubeVideo *self, const gchar *descr
        g_object_notify (G_OBJECT (self), "description");
 }
 
-G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
-/**
- * gdata_youtube_video_look_up_content:
- * @self: a #GDataYouTubeVideo
- * @type: the MIME type of the content desired
- *
- * Looks up a #GDataYouTubeContent from the video with the given MIME type. The video's list of contents is
- * a list of URIs to various formats of the video itself, such as its SWF URI or RTSP stream.
- *
- * Return value: (transfer none): a #GDataYouTubeContent matching @type, or %NULL
- * Deprecated: 0.17.0: This is no longer supported by Google, and will
- *   always return %NULL. To view a video, open the URI returned by
- *   gdata_youtube_video_get_player_uri() in a web browser.
- */
-GDataYouTubeContent *
-gdata_youtube_video_look_up_content (GDataYouTubeVideo *self, const gchar *type)
-{
-       g_return_val_if_fail (GDATA_IS_YOUTUBE_VIDEO (self), NULL);
-       g_return_val_if_fail (type != NULL, NULL);
-
-       /* Not supported in the v3 API. */
-       return NULL;
-}
-
-G_GNUC_END_IGNORE_DEPRECATIONS
-
 /**
  * gdata_youtube_video_get_thumbnails:
  * @self: a #GDataYouTubeVideo
@@ -2111,57 +1997,6 @@ gdata_youtube_video_get_uploaded (GDataYouTubeVideo *self)
        return gdata_entry_get_published (GDATA_ENTRY (self));
 }
 
-/**
- * gdata_youtube_video_get_video_id:
- * @self: a #GDataYouTubeVideo
- *
- * Gets the #GDataYouTubeVideo:video-id property.
- *
- * Return value: the video's unique and permanent ID
- * Deprecated: 0.17.0: This is now equal to #GDataEntry:id.
- */
-const gchar *
-gdata_youtube_video_get_video_id (GDataYouTubeVideo *self)
-{
-       g_return_val_if_fail (GDATA_IS_YOUTUBE_VIDEO (self), NULL);
-       return gdata_entry_get_id (GDATA_ENTRY (self));
-}
-
-/**
- * gdata_youtube_video_is_draft:
- * @self: a #GDataYouTubeVideo
- *
- * Gets the #GDataYouTubeVideo:is-draft property.
- *
- * Return value: %TRUE if the video is a draft, %FALSE otherwise
- * Deprecated: 0.17.0: This is now equal to
- *   gdata_youtube_video_is_private().
- */
-gboolean
-gdata_youtube_video_is_draft (GDataYouTubeVideo *self)
-{
-       g_return_val_if_fail (GDATA_IS_YOUTUBE_VIDEO (self), FALSE);
-       return gdata_youtube_video_is_private (self);
-}
-
-/**
- * gdata_youtube_video_set_is_draft:
- * @self: a #GDataYouTubeVideo
- * @is_draft: whether the video is a draft
- *
- * Sets the #GDataYouTubeVideo:is-draft property to decide whether the video is a draft.
- *
- * Deprecated: 0.17.0: This is now equivalent to
- *   gdata_youtube_video_set_is_private().
- */
-void
-gdata_youtube_video_set_is_draft (GDataYouTubeVideo *self, gboolean is_draft)
-{
-       g_return_if_fail (GDATA_IS_YOUTUBE_VIDEO (self));
-       gdata_youtube_video_set_is_private (self, is_draft);
-       g_object_notify (G_OBJECT (self), "is-draft");
-}
-
 /* Convert from v3 to v2 API video upload state. References:
  * v2: https://developers.google.com/youtube/2.0/reference?csw=1#youtube_data_api_tag_yt:state
  * v3: https://developers.google.com/youtube/v3/docs/videos#processingDetails.processingStatus
diff --git a/gdata/services/youtube/gdata-youtube-video.h b/gdata/services/youtube/gdata-youtube-video.h
index da526334..060be485 100644
--- a/gdata/services/youtube/gdata-youtube-video.h
+++ b/gdata/services/youtube/gdata-youtube-video.h
@@ -25,8 +25,6 @@
 
 #include <gdata/gdata-entry.h>
 #include <gdata/media/gdata-media-category.h>
-#include <gdata/services/youtube/gdata-youtube-content.h>
-#include <gdata/services/youtube/gdata-youtube-credit.h>
 #include <gdata/services/youtube/gdata-youtube-state.h>
 
 G_BEGIN_DECLS
@@ -97,21 +95,6 @@ G_BEGIN_DECLS
  */
 #define GDATA_YOUTUBE_ACTION_SYNDICATE "syndicate"
 
-#ifndef LIBGDATA_DISABLE_DEPRECATED
-/**
- * GDATA_YOUTUBE_RATING_TYPE_SIMPLE:
- *
- * A rating type to pass to gdata_youtube_video_get_media_rating() for “simple” ratings. The values which 
can be returned for such ratings are:
- * <code class="literal">adult</code> and <code class="literal">nonadult</code>.
- *
- * Since: 0.10.0
- * Deprecated: 0.17.0: No longer supported by Google. Calling
- *   gdata_youtube_video_get_media_rating() with this rating type will always
- *   return %NULL.
- */
-#define GDATA_YOUTUBE_RATING_TYPE_SIMPLE "simple"
-#endif /* !LIBGDATA_DISABLE_DEPRECATED */
-
 /**
  * GDATA_YOUTUBE_RATING_TYPE_MPAA:
  *
@@ -223,16 +206,6 @@ void gdata_youtube_video_set_coordinates (GDataYouTubeVideo *self, gdouble latit
 
 gchar *gdata_youtube_video_get_video_id_from_uri (const gchar *video_uri) G_GNUC_WARN_UNUSED_RESULT 
G_GNUC_MALLOC;
 
-#ifndef LIBGDATA_DISABLE_DEPRECATED
-const gchar *gdata_youtube_video_get_video_id (GDataYouTubeVideo *self) G_GNUC_PURE 
G_GNUC_DEPRECATED_FOR(gdata_entry_get_id);
-GDataYouTubeContent *gdata_youtube_video_look_up_content (GDataYouTubeVideo *self, const gchar *type) 
G_GNUC_PURE G_GNUC_DEPRECATED_FOR(gdata_youtube_video_get_player_uri);
-
-gboolean gdata_youtube_video_is_draft (GDataYouTubeVideo *self) G_GNUC_PURE 
G_GNUC_DEPRECATED_FOR(gdata_youtube_video_is_private);
-void gdata_youtube_video_set_is_draft (GDataYouTubeVideo *self, gboolean is_draft) 
G_GNUC_DEPRECATED_FOR(gdata_youtube_video_set_is_private);
-
-GDataYouTubeCredit *gdata_youtube_video_get_credit (GDataYouTubeVideo *self) G_GNUC_PURE G_GNUC_DEPRECATED;
-#endif /* !LIBGDATA_DISABLE_DEPRECATED */
-
 G_END_DECLS
 
 #endif /* !GDATA_YOUTUBE_VIDEO_H */
diff --git a/gdata/services/youtube/meson.build b/gdata/services/youtube/meson.build
index 84b21237..e4f8f2e5 100644
--- a/gdata/services/youtube/meson.build
+++ b/gdata/services/youtube/meson.build
@@ -5,8 +5,6 @@ include_subdir = gdata_include_subdir / 'services/youtube'
 headers = files(
   'gdata-youtube-category.h',
   'gdata-youtube-comment.h',
-  'gdata-youtube-content.h',
-  'gdata-youtube-credit.h',
   'gdata-youtube-feed.h',
   'gdata-youtube-query.h',
   'gdata-youtube-service.h',
@@ -24,8 +22,6 @@ gir_headers += headers
 sources += files(
   'gdata-youtube-category.c',
   'gdata-youtube-comment.c',
-  'gdata-youtube-content.c',
-  'gdata-youtube-credit.c',
   'gdata-youtube-feed.c',
   'gdata-youtube-query.c',
   'gdata-youtube-service.c',
diff --git a/gdata/symbol.map b/gdata/symbol.map
index f4ffa762..eec13753 100644
--- a/gdata/symbol.map
+++ b/gdata/symbol.map
@@ -829,35 +829,23 @@ global:
        gdata_youtube_comment_get_type;
        gdata_youtube_comment_new;
        gdata_youtube_comment_set_parent_comment_uri;
-       gdata_youtube_content_get_format;
-       gdata_youtube_content_get_type;
-       gdata_youtube_credit_get_entity_type;
-       gdata_youtube_credit_get_type;
        gdata_youtube_feed_get_type;
        gdata_youtube_format_get_type;
        gdata_youtube_permission_get_type;
        gdata_youtube_query_get_age;
-       gdata_youtube_query_get_format;
-       gdata_youtube_query_get_language;
        gdata_youtube_query_get_license;
        gdata_youtube_query_get_location;
        gdata_youtube_query_get_order_by;
        gdata_youtube_query_get_restriction;
        gdata_youtube_query_get_safe_search;
-       gdata_youtube_query_get_sort_order;
        gdata_youtube_query_get_type;
-       gdata_youtube_query_get_uploader;
        gdata_youtube_query_new;
        gdata_youtube_query_set_age;
-       gdata_youtube_query_set_format;
-       gdata_youtube_query_set_language;
        gdata_youtube_query_set_license;
        gdata_youtube_query_set_location;
        gdata_youtube_query_set_order_by;
        gdata_youtube_query_set_restriction;
        gdata_youtube_query_set_safe_search;
-       gdata_youtube_query_set_sort_order;
-       gdata_youtube_query_set_uploader;
        gdata_youtube_safe_search_get_type;
        gdata_youtube_service_error_get_type;
        gdata_youtube_service_error_quark;
@@ -876,19 +864,16 @@ global:
        gdata_youtube_service_query_videos;
        gdata_youtube_service_query_videos_async;
        gdata_youtube_service_upload_video;
-       gdata_youtube_sort_order_get_type;
        gdata_youtube_standard_feed_type_get_type;
        gdata_youtube_state_get_help_uri;
        gdata_youtube_state_get_message;
        gdata_youtube_state_get_name;
        gdata_youtube_state_get_reason_code;
        gdata_youtube_state_get_type;
-       gdata_youtube_uploader_get_type;
        gdata_youtube_video_get_access_control;
        gdata_youtube_video_get_aspect_ratio;
        gdata_youtube_video_get_category;
        gdata_youtube_video_get_coordinates;
-       gdata_youtube_video_get_credit;
        gdata_youtube_video_get_description;
        gdata_youtube_video_get_duration;
        gdata_youtube_video_get_favorite_count;
@@ -902,20 +887,16 @@ global:
        gdata_youtube_video_get_thumbnails;
        gdata_youtube_video_get_type;
        gdata_youtube_video_get_uploaded;
-       gdata_youtube_video_get_video_id;
        gdata_youtube_video_get_video_id_from_uri;
        gdata_youtube_video_get_view_count;
-       gdata_youtube_video_is_draft;
        gdata_youtube_video_is_private;
        gdata_youtube_video_is_restricted_in_country;
-       gdata_youtube_video_look_up_content;
        gdata_youtube_video_new;
        gdata_youtube_video_set_access_control;
        gdata_youtube_video_set_aspect_ratio;
        gdata_youtube_video_set_category;
        gdata_youtube_video_set_coordinates;
        gdata_youtube_video_set_description;
-       gdata_youtube_video_set_is_draft;
        gdata_youtube_video_set_is_private;
        gdata_youtube_video_set_keywords;
        gdata_youtube_video_set_location;
diff --git a/gdata/tests/youtube.c b/gdata/tests/youtube.c
index b2732680..e4780848 100644
--- a/gdata/tests/youtube.c
+++ b/gdata/tests/youtube.c
@@ -34,28 +34,6 @@ static UhmServer *mock_server = NULL;
 #define CLIENT_SECRET "-fA4pHQJxR3zJ-FyAMPQsikg"
 #define REDIRECT_URI "urn:ietf:wg:oauth:2.0:oob"
 
-/* Effectively gdata_test_mock_server_start_trace() but calling uhm_server_run() instead of 
uhm_server_start_trace(). */
-static void
-gdata_test_mock_server_run (UhmServer *server)
-{
-       const gchar *ip_address;
-       UhmResolver *resolver;
-
-       uhm_server_run (server);
-       gdata_test_set_https_port (server);
-
-       if (uhm_server_get_enable_online (server) == FALSE) {
-               /* Set up the expected domain names here. This should technically be split up between
-                * the different unit test suites, but that's too much effort. */
-               ip_address = uhm_server_get_address (server);
-               resolver = uhm_server_get_resolver (server);
-
-               uhm_resolver_add_A (resolver, "www.google.com", ip_address);
-               uhm_resolver_add_A (resolver, "gdata.youtube.com", ip_address);
-               uhm_resolver_add_A (resolver, "uploads.gdata.youtube.com", ip_address);
-       }
-}
-
 static void
 test_authentication (void)
 {
@@ -118,337 +96,6 @@ test_service_properties (void)
        g_object_unref (service);
 }
 
-static void
-test_query_standard_feeds (gconstpointer service)
-{
-       GDataFeed *feed;
-       GError *error = NULL;
-       guint i;
-       gulong filter_id;
-       GDataYouTubeStandardFeedType feeds[] = {
-               /* This must be kept up-to-date with GDataYouTubeStandardFeedType. */
-               GDATA_YOUTUBE_TOP_RATED_FEED,
-               GDATA_YOUTUBE_TOP_FAVORITES_FEED,
-               GDATA_YOUTUBE_MOST_VIEWED_FEED,
-               GDATA_YOUTUBE_MOST_POPULAR_FEED,
-               GDATA_YOUTUBE_MOST_RECENT_FEED,
-               GDATA_YOUTUBE_MOST_DISCUSSED_FEED,
-               GDATA_YOUTUBE_MOST_LINKED_FEED,
-               GDATA_YOUTUBE_MOST_RESPONDED_FEED,
-               GDATA_YOUTUBE_RECENTLY_FEATURED_FEED,
-               GDATA_YOUTUBE_WATCH_ON_MOBILE_FEED,
-       };
-       const gchar *ignore_query_param_values[] = {
-               "publishedAfter",
-               NULL,
-       };
-
-       filter_id = uhm_server_filter_ignore_parameter_values (mock_server,
-                                                              ignore_query_param_values);
-       gdata_test_mock_server_start_trace (mock_server, "query-standard-feeds");
-
-       for (i = 0; i < G_N_ELEMENTS (feeds); i++) {
-               feed = gdata_youtube_service_query_standard_feed (GDATA_YOUTUBE_SERVICE (service), feeds[i], 
NULL, NULL, NULL, NULL, &error);
-               g_assert_no_error (error);
-               g_assert (GDATA_IS_FEED (feed));
-               g_clear_error (&error);
-
-               g_assert_cmpuint (g_list_length (gdata_feed_get_entries (feed)), >, 0);
-
-               g_object_unref (feed);
-       }
-
-       uhm_server_end_trace (mock_server);
-       uhm_server_compare_messages_remove_filter (mock_server, filter_id);
-}
-
-static void
-test_query_standard_feed (gconstpointer service)
-{
-       GDataFeed *feed;
-       GError *error = NULL;
-       gulong filter_id;
-       const gchar *ignore_query_param_values[] = {
-               "publishedAfter",
-               NULL,
-       };
-
-       filter_id = uhm_server_filter_ignore_parameter_values (mock_server,
-                                                              ignore_query_param_values);
-       gdata_test_mock_server_start_trace (mock_server, "query-standard-feed");
-
-       feed = gdata_youtube_service_query_standard_feed (GDATA_YOUTUBE_SERVICE (service), 
GDATA_YOUTUBE_TOP_RATED_FEED, NULL, NULL, NULL, NULL, &error);
-       g_assert_no_error (error);
-       g_assert (GDATA_IS_FEED (feed));
-       g_clear_error (&error);
-
-       g_assert_cmpuint (g_list_length (gdata_feed_get_entries (feed)), >, 0);
-
-       g_object_unref (feed);
-
-       uhm_server_end_trace (mock_server);
-       uhm_server_compare_messages_remove_filter (mock_server, filter_id);
-}
-
-static void
-test_query_standard_feed_with_query (gconstpointer service)
-{
-       GDataYouTubeQuery *query;
-       GDataFeed *feed;
-       GError *error = NULL;
-       gulong filter_id;
-       const gchar *ignore_query_param_values[] = {
-               "publishedAfter",
-               NULL,
-       };
-
-       filter_id = uhm_server_filter_ignore_parameter_values (mock_server,
-                                                              ignore_query_param_values);
-
-       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
-       gdata_test_mock_server_start_trace (mock_server, "query-standard-feed-with-query");
-
-       query = gdata_youtube_query_new (NULL);
-       gdata_youtube_query_set_language (query, "fr");
-
-       feed = gdata_youtube_service_query_standard_feed (GDATA_YOUTUBE_SERVICE (service), 
GDATA_YOUTUBE_TOP_RATED_FEED, GDATA_QUERY (query), NULL, NULL, NULL, &error);
-       g_assert_no_error (error);
-       g_assert (GDATA_IS_FEED (feed));
-       g_clear_error (&error);
-
-       g_assert_cmpuint (g_list_length (gdata_feed_get_entries (feed)), >, 0);
-
-       g_object_unref (query);
-       g_object_unref (feed);
-
-       uhm_server_end_trace (mock_server);
-       uhm_server_compare_messages_remove_filter (mock_server, filter_id);
-
-       G_GNUC_END_IGNORE_DEPRECATIONS
-}
-
-/* HTTP message responses and the expected associated GData error domain/code. */
-static const GDataTestRequestErrorData query_standard_feed_errors[] = {
-       /* Generic network errors. */
-       { SOUP_STATUS_BAD_REQUEST, "Bad Request", "Invalid parameter ‘foobar’.",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_PROTOCOL_ERROR },
-       { SOUP_STATUS_NOT_FOUND, "Not Found", "Login page wasn't found for no good reason at all.",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_NOT_FOUND },
-       { SOUP_STATUS_PRECONDITION_FAILED, "Precondition Failed", "Not allowed to log in at this time, 
possibly.",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_CONFLICT },
-       { SOUP_STATUS_INTERNAL_SERVER_ERROR, "Internal Server Error", "Whoops.",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_PROTOCOL_ERROR },
-#if 0
-FIXME
-       /* Specific query errors. */
-       { SOUP_STATUS_FORBIDDEN, "Too Many Calls",
-         "<?xml version='1.0' 
encoding='UTF-8'?><errors><error><domain>yt:quota</domain><code>too_many_recent_calls</code></error></errors>",
-         gdata_youtube_service_error_quark, GDATA_YOUTUBE_SERVICE_ERROR_API_QUOTA_EXCEEDED },
-       { SOUP_STATUS_FORBIDDEN, "Too Many Entries",
-         "<?xml version='1.0' 
encoding='UTF-8'?><errors><error><domain>yt:quota</domain><code>too_many_entries</code></error></errors>",
-         gdata_youtube_service_error_quark, GDATA_YOUTUBE_SERVICE_ERROR_ENTRY_QUOTA_EXCEEDED },
-       { SOUP_STATUS_SERVICE_UNAVAILABLE, "Maintenance",
-         "<?xml version='1.0' 
encoding='UTF-8'?><errors><error><domain>yt:service</domain><code>disabled_in_maintenance_mode</code></error></errors>",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_UNAVAILABLE },
-       { SOUP_STATUS_FORBIDDEN, "YouTube Signup Required",
-         "<?xml version='1.0' 
encoding='UTF-8'?><errors><error><domain>yt:service</domain><code>youtube_signup_required</code></error></errors>",
-         gdata_youtube_service_error_quark, GDATA_YOUTUBE_SERVICE_ERROR_CHANNEL_REQUIRED },
-       { SOUP_STATUS_FORBIDDEN, "Forbidden",
-         "<?xml version='1.0' 
encoding='UTF-8'?><errors><error><domain>yt:authentication</domain><code>TokenExpired</code>"
-         "<location type='header'>Authorization: GoogleLogin</location></error></errors>",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_AUTHENTICATION_REQUIRED },
-       /* Malformed YouTube errors to test parser error handling. */
-       { SOUP_STATUS_INTERNAL_SERVER_ERROR, "Malformed XML",
-         "<?xml version='1.0' encoding='UTF-8'?><errors>",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_PROTOCOL_ERROR },
-       { SOUP_STATUS_FORBIDDEN, "Empty Response", "",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_AUTHENTICATION_REQUIRED },
-       { SOUP_STATUS_INTERNAL_SERVER_ERROR, "Unknown Element",
-         "<?xml version='1.0' encoding='UTF-8'?><errors> <error> <foobar /> </error> </errors>",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_PROTOCOL_ERROR },
-       { SOUP_STATUS_INTERNAL_SERVER_ERROR, "Wrong Top-Level Element",
-         "<?xml version='1.0' encoding='UTF-8'?><nonerrors></nonerrors>",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_PROTOCOL_ERROR },
-       { SOUP_STATUS_FORBIDDEN, "Unknown Error Code (Service)",
-         "<?xml version='1.0' 
encoding='UTF-8'?><errors><error><domain>yt:service</domain><code>UnknownCode</code></error></errors>",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_PROTOCOL_ERROR },
-       { SOUP_STATUS_FORBIDDEN, "Unknown Error Code (Quota)",
-         "<?xml version='1.0' 
encoding='UTF-8'?><errors><error><domain>yt:quota</domain><code>UnknownCode</code></error></errors>",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_PROTOCOL_ERROR },
-       { SOUP_STATUS_FORBIDDEN, "Unknown Error Domain",
-         "<?xml version='1.0' 
encoding='UTF-8'?><errors><error><domain>yt:foobaz</domain><code>TokenExpired</code></error></errors>",
-         gdata_service_error_quark, GDATA_SERVICE_ERROR_PROTOCOL_ERROR },
-#endif
-};
-
-static void
-test_query_standard_feed_error (gconstpointer service)
-{
-       GDataFeed *feed;
-       GError *error = NULL;
-       gulong handler_id, filter_id;
-       guint i;
-       const gchar *ignore_query_param_values[] = {
-               "publishedAfter",
-               NULL,
-       };
-
-       if (uhm_server_get_enable_logging (mock_server) == TRUE) {
-               g_test_message ("Ignoring test due to logging being enabled.");
-               return;
-       } else if (uhm_server_get_enable_online (mock_server) == TRUE) {
-               g_test_message ("Ignoring test due to running online and test not being reproducible.");
-               return;
-       }
-
-       filter_id = uhm_server_filter_ignore_parameter_values (mock_server,
-                                                              ignore_query_param_values);
-
-       for (i = 0; i < G_N_ELEMENTS (query_standard_feed_errors); i++) {
-               const GDataTestRequestErrorData *data = &query_standard_feed_errors[i];
-
-               handler_id = g_signal_connect (mock_server, "handle-message", (GCallback) 
gdata_test_mock_server_handle_message_error, (gpointer) data);
-               gdata_test_mock_server_run (mock_server);
-
-               /* Query the feed. */
-               feed = gdata_youtube_service_query_standard_feed (GDATA_YOUTUBE_SERVICE (service), 
GDATA_YOUTUBE_TOP_RATED_FEED, NULL, NULL, NULL, NULL, &error);
-               g_assert_error (error, data->error_domain_func (), data->error_code);
-               g_assert (feed == NULL);
-               g_clear_error (&error);
-
-               uhm_server_stop (mock_server);
-               g_signal_handler_disconnect (mock_server, handler_id);
-       }
-
-       uhm_server_compare_messages_remove_filter (mock_server, filter_id);
-}
-
-static void
-test_query_standard_feed_timeout (gconstpointer service)
-{
-       GDataFeed *feed;
-       GError *error = NULL;
-       gulong handler_id, filter_id;
-       const gchar *ignore_query_param_values[] = {
-               "publishedAfter",
-               NULL,
-       };
-
-       if (uhm_server_get_enable_logging (mock_server) == TRUE) {
-               g_test_message ("Ignoring test due to logging being enabled.");
-               return;
-       } else if (uhm_server_get_enable_online (mock_server) == TRUE) {
-               g_test_message ("Ignoring test due to running online and test not being reproducible.");
-               return;
-       }
-
-       filter_id = uhm_server_filter_ignore_parameter_values (mock_server,
-                                                              ignore_query_param_values);
-       handler_id = g_signal_connect (mock_server, "handle-message", (GCallback) 
gdata_test_mock_server_handle_message_timeout, NULL);
-       gdata_test_mock_server_run (mock_server);
-
-       /* Set the service's timeout as low as possible (1 second). */
-       gdata_service_set_timeout (GDATA_SERVICE (service), 1);
-
-       /* Query the feed. */
-       feed = gdata_youtube_service_query_standard_feed (GDATA_YOUTUBE_SERVICE (service), 
GDATA_YOUTUBE_TOP_RATED_FEED, NULL, NULL, NULL, NULL, &error);
-       g_assert_error (error, GDATA_SERVICE_ERROR, GDATA_SERVICE_ERROR_NETWORK_ERROR);
-       g_assert (feed == NULL);
-       g_clear_error (&error);
-
-       uhm_server_stop (mock_server);
-       g_signal_handler_disconnect (mock_server, handler_id);
-       uhm_server_compare_messages_remove_filter (mock_server, filter_id);
-}
-
-typedef struct {
-       GDataAsyncTestData async_data;
-       gulong filter_id;
-} StandardFeedData;
-
-static void
-set_up_standard_feed_async (StandardFeedData *standard_feed_data,
-                            gconstpointer test_data)
-{
-       const gchar *ignore_query_param_values[] = {
-               "publishedAfter",
-               NULL,
-       };
-
-       gdata_set_up_async_test_data (&standard_feed_data->async_data,
-                                     test_data);
-       standard_feed_data->filter_id =
-               uhm_server_filter_ignore_parameter_values (mock_server,
-                                                          ignore_query_param_values);
-}
-
-static void
-tear_down_standard_feed_async (StandardFeedData *standard_feed_data,
-                               gconstpointer test_data)
-{
-       uhm_server_compare_messages_remove_filter (mock_server,
-                                                  standard_feed_data->filter_id);
-       gdata_tear_down_async_test_data (&standard_feed_data->async_data,
-                                        test_data);
-}
-
-GDATA_ASYNC_TEST_FUNCTIONS (query_standard_feed, void,
-G_STMT_START {
-       gdata_youtube_service_query_standard_feed_async (GDATA_YOUTUBE_SERVICE (service), 
GDATA_YOUTUBE_TOP_RATED_FEED, NULL, cancellable,
-                                                        NULL, NULL, NULL, async_ready_callback, async_data);
-} G_STMT_END,
-G_STMT_START {
-       GDataFeed *feed;
-
-       feed = gdata_service_query_finish (GDATA_SERVICE (obj), async_result, &error);
-
-       if (error == NULL) {
-               g_assert (GDATA_IS_FEED (feed));
-
-               g_assert_cmpuint (g_list_length (gdata_feed_get_entries (feed)), >, 0);
-
-               g_object_unref (feed);
-       } else {
-               g_assert (feed == NULL);
-       }
-} G_STMT_END);
-
-static void
-test_query_standard_feed_async_progress_closure (gconstpointer service)
-{
-       GDataAsyncProgressClosure *data = g_slice_new0 (GDataAsyncProgressClosure);
-       gulong filter_id;
-       const gchar *ignore_query_param_values[] = {
-               "publishedAfter",
-               NULL,
-       };
-
-       g_assert (service != NULL);
-
-       filter_id = uhm_server_filter_ignore_parameter_values (mock_server,
-                                                              ignore_query_param_values);
-       gdata_test_mock_server_start_trace (mock_server, "query-standard-feed-async-progress-closure");
-
-       data->main_loop = g_main_loop_new (NULL, TRUE);
-
-       gdata_youtube_service_query_standard_feed_async (GDATA_YOUTUBE_SERVICE (service), 
GDATA_YOUTUBE_TOP_RATED_FEED, NULL, NULL,
-                                                        (GDataQueryProgressCallback) 
gdata_test_async_progress_callback,
-                                                        data, (GDestroyNotify) 
gdata_test_async_progress_closure_free,
-                                                        (GAsyncReadyCallback) 
gdata_test_async_progress_finish_callback, data);
-       g_main_loop_run (data->main_loop);
-       g_main_loop_unref (data->main_loop);
-
-       /* Check that both callbacks were called exactly once */
-       g_assert_cmpuint (data->progress_destroy_notify_count, ==, 1);
-       g_assert_cmpuint (data->async_ready_notify_count, ==, 1);
-
-       g_slice_free (GDataAsyncProgressClosure, data);
-
-       uhm_server_end_trace (mock_server);
-       uhm_server_compare_messages_remove_filter (mock_server, filter_id);
-}
-
 static GDataYouTubeVideo *
 get_video_for_related (void)
 {
@@ -1059,10 +706,6 @@ test_parsing_app_control (void)
        g_clear_error (&error);
 
        /* Test the app:control values */
-       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-       g_assert (gdata_youtube_video_is_draft (video) == TRUE);
-       G_GNUC_END_IGNORE_DEPRECATIONS
-
        state = gdata_youtube_video_get_state (video);
        g_assert_cmpstr (gdata_youtube_state_get_name (state), ==, NULL);
        g_assert_cmpstr (gdata_youtube_state_get_message (state), ==, NULL);
@@ -1376,10 +1019,8 @@ test_parsing_ratings (void)
        g_assert_cmpstr (gdata_youtube_video_get_media_rating (video, GDATA_YOUTUBE_RATING_TYPE_MPAA), ==, 
NULL);
        g_assert_cmpstr (gdata_youtube_video_get_media_rating (video, GDATA_YOUTUBE_RATING_TYPE_V_CHIP), ==, 
"tv-y7-fv");
 
-       /* Check that calling with an arbitrary rating type returns NULL.
-        * %GDATA_YOUTUBE_RATING_TYPE_SIMPLE is no longer supported. */
+       /* Check that calling with an arbitrary rating type returns NULL */
        g_assert_cmpstr (gdata_youtube_video_get_media_rating (video, "fooish bar"), ==, NULL);
-       g_assert_cmpstr (gdata_youtube_video_get_media_rating (video, GDATA_YOUTUBE_RATING_TYPE_SIMPLE), ==, 
NULL);
 
        g_object_unref (video);
 }
@@ -1554,25 +1195,17 @@ static void
 test_query_uri (void)
 {
        gdouble latitude, longitude, radius;
-       gboolean has_location;
        gchar *query_uri;
        GDataYouTubeQuery *query = gdata_youtube_query_new ("q");
        gchar *this_week_date_str, *expected_uri;
 
-       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
-       /* This should not appear in the query because it is deprecated. */
-       gdata_youtube_query_set_format (query, GDATA_YOUTUBE_FORMAT_RTSP_H263_AMR);
-       g_assert_cmpuint (gdata_youtube_query_get_format (query), ==, 1);
-
        /* Location */
-       gdata_youtube_query_set_location (query, 45.01364, -97.12356, 112.5, TRUE);
-       gdata_youtube_query_get_location (query, &latitude, &longitude, &radius, &has_location);
+       gdata_youtube_query_set_location (query, 45.01364, -97.12356, 112.5);
+       gdata_youtube_query_get_location (query, &latitude, &longitude, &radius);
 
        g_assert_cmpfloat (latitude, ==, 45.01364);
        g_assert_cmpfloat (longitude, ==, -97.12356);
        g_assert_cmpfloat (radius, ==, 112.5);
-       g_assert (has_location == TRUE);
 
        query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com";);
        g_assert_cmpstr (query_uri, ==, 
"http://example.com?q=q&safeSearch=none&location=45.013640000000002,-97.123559999999998&locationRadius=112.5m";);
@@ -1581,23 +1214,18 @@ test_query_uri (void)
        /* This used to set the has-location parameter in the query, but that’s
         * no longer supported by Google, so it should be the same as the
         * following query. */
-       gdata_youtube_query_set_location (query, G_MAXDOUBLE, 0.6672, 52.8, TRUE);
+       gdata_youtube_query_set_location (query, G_MAXDOUBLE, 0.6672, 52.8);
 
        query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com";);
        g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&safeSearch=none";);
        g_free (query_uri);
 
-       gdata_youtube_query_set_location (query, G_MAXDOUBLE, G_MAXDOUBLE, 0.0, FALSE);
+       gdata_youtube_query_set_location (query, G_MAXDOUBLE, G_MAXDOUBLE, 0.0);
 
        query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com";);
        g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&safeSearch=none";);
        g_free (query_uri);
 
-       /* Language; this should not appear in the query as it is no longer
-        * supported. */
-       gdata_youtube_query_set_language (query, "fr");
-       g_assert_cmpstr (gdata_youtube_query_get_language (query), ==, "fr");
-
        gdata_youtube_query_set_order_by (query, "relevance_lang_fr");
        g_assert_cmpstr (gdata_youtube_query_get_order_by (query), ==, "relevance_lang_fr");
 
@@ -1615,17 +1243,9 @@ test_query_uri (void)
        g_assert_cmpstr (query_uri, ==, 
"http://example.com?q=q&safeSearch=strict&order=relevance&regionCode=192.168.0.1";);
        g_free (query_uri);
 
-       /* Deprecated and unused: */
-       gdata_youtube_query_set_sort_order (query, GDATA_YOUTUBE_SORT_ASCENDING);
-       g_assert_cmpuint (gdata_youtube_query_get_sort_order (query), ==, GDATA_YOUTUBE_SORT_ASCENDING);
-
        gdata_youtube_query_set_age (query, GDATA_YOUTUBE_AGE_THIS_WEEK);
        g_assert_cmpuint (gdata_youtube_query_get_age (query), ==, GDATA_YOUTUBE_AGE_THIS_WEEK);
 
-       /* Deprecated and unused: */
-       gdata_youtube_query_set_uploader (query, GDATA_YOUTUBE_UPLOADER_PARTNER);
-       g_assert_cmpuint (gdata_youtube_query_get_uploader (query), ==, GDATA_YOUTUBE_UPLOADER_PARTNER);
-
        gdata_youtube_query_set_license (query, GDATA_YOUTUBE_LICENSE_CC);
        g_assert_cmpstr (gdata_youtube_query_get_license (query), ==, GDATA_YOUTUBE_LICENSE_CC);
 
@@ -1650,8 +1270,6 @@ test_query_uri (void)
        g_free (query_uri);
 
        g_object_unref (query);
-
-       G_GNUC_END_IGNORE_DEPRECATIONS
 }
 
 static void
@@ -1662,29 +1280,21 @@ test_query_etag (void)
        /* Test that setting any property will unset the ETag */
        g_test_bug ("613529");
 
-       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
 #define CHECK_ETAG(C) \
        gdata_query_set_etag (GDATA_QUERY (query), "foobar");           \
        (C);                                                            \
        g_assert (gdata_query_get_etag (GDATA_QUERY (query)) == NULL);
 
-       CHECK_ETAG (gdata_youtube_query_set_format (query, GDATA_YOUTUBE_FORMAT_RTSP_H263_AMR))
-       CHECK_ETAG (gdata_youtube_query_set_location (query, 0.0, 65.0, 15.0, TRUE))
-       CHECK_ETAG (gdata_youtube_query_set_language (query, "British English"))
+       CHECK_ETAG (gdata_youtube_query_set_location (query, 0.0, 65.0, 15.0))
        CHECK_ETAG (gdata_youtube_query_set_order_by (query, "shizzle"))
        CHECK_ETAG (gdata_youtube_query_set_restriction (query, "restriction"))
        CHECK_ETAG (gdata_youtube_query_set_safe_search (query, GDATA_YOUTUBE_SAFE_SEARCH_MODERATE))
-       CHECK_ETAG (gdata_youtube_query_set_sort_order (query, GDATA_YOUTUBE_SORT_DESCENDING))
        CHECK_ETAG (gdata_youtube_query_set_age (query, GDATA_YOUTUBE_AGE_THIS_WEEK))
-       CHECK_ETAG (gdata_youtube_query_set_uploader (query, GDATA_YOUTUBE_UPLOADER_PARTNER))
        CHECK_ETAG (gdata_youtube_query_set_license (query, GDATA_YOUTUBE_LICENSE_STANDARD))
 
 #undef CHECK_ETAG
 
        g_object_unref (query);
-
-       G_GNUC_END_IGNORE_DEPRECATIONS
 }
 
 static void
@@ -1704,10 +1314,7 @@ test_query_single (gconstpointer service)
        g_assert (video != NULL);
        g_assert (GDATA_IS_YOUTUBE_VIDEO (video));
 
-       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-       g_assert_cmpstr (gdata_youtube_video_get_video_id (video), ==, "_LeQuMpwbW4");
        g_assert_cmpstr (gdata_entry_get_id (GDATA_ENTRY (video)), ==, "_LeQuMpwbW4");
-       G_GNUC_END_IGNORE_DEPRECATIONS
 
        g_clear_error (&error);
 
@@ -1728,11 +1335,8 @@ G_STMT_START {
        video = GDATA_YOUTUBE_VIDEO (gdata_service_query_single_entry_finish (GDATA_SERVICE (obj), 
async_result, &error));
 
        if (error == NULL) {
-               G_GNUC_BEGIN_IGNORE_DEPRECATIONS
                g_assert (GDATA_IS_YOUTUBE_VIDEO (video));
-               g_assert_cmpstr (gdata_youtube_video_get_video_id (video), ==, "_LeQuMpwbW4");
                g_assert_cmpstr (gdata_entry_get_id (GDATA_ENTRY (video)), ==, "_LeQuMpwbW4");
-               G_GNUC_END_IGNORE_DEPRECATIONS
 
                g_object_unref (video);
        } else {
@@ -2185,16 +1789,6 @@ test_batch (BatchData *data, gconstpointer service)
        g_object_unref (service2);
        g_free (feed_uri);
 
-       /* Run a singleton batch operation to query one of the entries. This
-        * should now always fail, as batch operations were deprecated by v3
-        * of the YouTube API. */
-       gdata_test_batch_operation_query (operation, gdata_entry_get_id (data->new_video), 
GDATA_TYPE_YOUTUBE_VIDEO, data->new_video, NULL, NULL);
-
-       g_assert (!gdata_batch_operation_run (operation, NULL, &error));
-       g_assert_error (error, GDATA_SERVICE_ERROR,
-                       GDATA_SERVICE_ERROR_WITH_BATCH_OPERATION);
-
-       g_clear_error (&error);
        g_object_unref (operation);
 
        /* Run another batch operation to query the two entries */
@@ -2410,21 +2004,6 @@ main (int argc, char *argv[])
 
        g_test_add_func ("/youtube/authentication", test_authentication);
 
-       g_test_add_data_func ("/youtube/query/standard_feeds", service, test_query_standard_feeds);
-       g_test_add_data_func ("/youtube/query/standard_feed", service, test_query_standard_feed);
-       g_test_add_data_func ("/youtube/query/standard_feed/with_query", service, 
test_query_standard_feed_with_query);
-       g_test_add_data_func ("/youtube/query/standard_feed/error", service, test_query_standard_feed_error);
-       g_test_add_data_func ("/youtube/query/standard_feed/timeout", service, 
test_query_standard_feed_timeout);
-       g_test_add ("/youtube/query/standard_feed/async", StandardFeedData,
-                   service, set_up_standard_feed_async,
-                   (void (*)(StandardFeedData *, const void *)) test_query_standard_feed_async,
-                   tear_down_standard_feed_async);
-       g_test_add_data_func ("/youtube/query/standard_feed/async/progress_closure", service, 
test_query_standard_feed_async_progress_closure);
-       g_test_add ("/youtube/query/standard_feed/async/cancellation",
-                   StandardFeedData, service, set_up_standard_feed_async,
-                   (void (*)(StandardFeedData *, const void *)) test_query_standard_feed_async_cancellation,
-                   tear_down_standard_feed_async);
-
        g_test_add_data_func ("/youtube/query/related", service, test_query_related);
        g_test_add ("/youtube/query/related/async", GDataAsyncTestData, service, 
gdata_set_up_async_test_data, test_query_related_async,
                    gdata_tear_down_async_test_data);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]