Backed out changeset 59bc932c44ea (bug 1386906) for breaking single locale fennec builds a=bustage
authorWes Kocher <wkocher@mozilla.com>
Fri, 11 Aug 2017 12:30:22 -0700
changeset 426058 d0afe5d6350426e338c1acff28a4a0c38ba1965f
parent 426057 2261de3ebaaa934e43f4e12835e114ec0c8fec5c
child 426106 e7dc8329e2d478087314605e8184627489eef636
push id1567
push userjlorenzo@mozilla.com
push dateThu, 02 Nov 2017 12:36:05 +0000
treeherdermozilla-release@e512c14a0406 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbustage
bugs1386906
milestone57.0a1
backs out59bc932c44ea301a7bec1507d2aead09ba1cd8f8
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out changeset 59bc932c44ea (bug 1386906) for breaking single locale fennec builds a=bustage MozReview-Commit-ID: 4z1nq8Z9gnV
mobile/android/base/AppConstants.java.in
mobile/android/base/generate_build_config.py
mobile/android/base/java/org/mozilla/gecko/activitystream/homepanel/topstories/PocketStoriesLoader.java
mobile/android/base/moz.build
mobile/android/base/pocket-api-sandbox.token
mobile/android/config/mozconfigs/android-aarch64/l10n-nightly
mobile/android/config/mozconfigs/android-api-15/l10n-nightly
mobile/android/config/mozconfigs/android-api-15/nightly
mobile/android/config/mozconfigs/android-api-15/nightly-old-id
mobile/android/config/mozconfigs/common
mobile/android/moz.configure
toolkit/moz.configure
--- a/mobile/android/base/AppConstants.java.in
+++ b/mobile/android/base/AppConstants.java.in
@@ -332,16 +332,9 @@ public class AppConstants {
      * MozillaOnline (Mozilla China) version of Fennec.
      */
     public static final boolean MOZ_ANDROID_MOZILLA_ONLINE =
 //#ifdef MOZ_ANDROID_MOZILLA_ONLINE
         true;
 //#else
         false;
 //#endif
-
-    public static final String MOZ_POCKET_API_KEY =
-//#ifdef MOZ_ANDROID_POCKET
-        "@MOZ_POCKET_API_KEY@";
-//#else
-        null;
-//#endif
 }
--- a/mobile/android/base/generate_build_config.py
+++ b/mobile/android/base/generate_build_config.py
@@ -45,17 +45,16 @@ def _defines():
                 'MOZ_ANDROID_EXCLUDE_FONTS',
                 'MOZ_ANDROID_GCM',
                 'MOZ_ANDROID_MLS_STUMBLER',
                 'MOZ_ANDROID_MMA',
                 'MOZ_ANDROID_MOZILLA_ONLINE',
                 'MOZ_ANDROID_PWA',
                 'MOZ_LEANPLUM_SDK_KEY',
                 'MOZ_LEANPLUM_SDK_CLIENTID',
-                'MOZ_ANDROID_POCKET',
                 'MOZ_ANDROID_SEARCH_ACTIVITY',
                 'MOZ_CRASHREPORTER',
                 'MOZ_DEBUG',
                 'MOZ_INSTALL_TRACKING',
                 'MOZ_NATIVE_DEVICES',
                 'MOZ_SWITCHBOARD'):
         if CONFIG[var]:
             DEFINES[var] = 1
@@ -108,19 +107,16 @@ def _defines():
     # leak the value to build logs.
     if CONFIG['MOZ_INSTALL_TRACKING']:
         DEFINES['MOZ_INSTALL_TRACKING_ADJUST_SDK_APP_TOKEN'] = CONFIG['MOZ_ADJUST_SDK_KEY']
 
     if CONFIG['MOZ_ANDROID_MMA']:
         DEFINES['MOZ_LEANPLUM_SDK_KEY'] = CONFIG['MOZ_LEANPLUM_SDK_KEY']
         DEFINES['MOZ_LEANPLUM_SDK_CLIENTID'] = CONFIG['MOZ_LEANPLUM_SDK_CLIENTID']
 
-    if CONFIG['MOZ_ANDROID_POCKET']:
-        DEFINES['MOZ_POCKET_API_KEY'] = CONFIG['MOZ_POCKET_API_KEY']
-
     DEFINES['MOZ_BUILDID'] = open(os.path.join(buildconfig.topobjdir, 'buildid.h')).readline().split()[2]
 
     # Set the appropriate version code if not set by MOZ_APP_ANDROID_VERSION_CODE.
     if CONFIG.get('MOZ_APP_ANDROID_VERSION_CODE'):
         DEFINES['ANDROID_VERSION_CODE'] = \
             CONFIG.get('MOZ_APP_ANDROID_VERSION_CODE')
     else:
         min_sdk = int(CONFIG.get('MOZ_ANDROID_MIN_SDK_VERSION') or '0') or None
--- a/mobile/android/base/java/org/mozilla/gecko/activitystream/homepanel/topstories/PocketStoriesLoader.java
+++ b/mobile/android/base/java/org/mozilla/gecko/activitystream/homepanel/topstories/PocketStoriesLoader.java
@@ -6,17 +6,16 @@
 package org.mozilla.gecko.activitystream.homepanel.topstories;
 
 import android.content.AsyncTaskLoader;
 import android.content.Context;
 import android.content.SharedPreferences;
 import android.net.Uri;
 import android.util.Log;
 
-import org.mozilla.gecko.AppConstants;
 import org.mozilla.gecko.Locales;
 import org.mozilla.gecko.util.FileUtils;
 import org.mozilla.gecko.util.ProxySelector;
 
 import java.io.BufferedInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.net.HttpURLConnection;
@@ -25,38 +24,30 @@ import java.net.URISyntaxException;
 import java.util.Locale;
 import java.util.concurrent.TimeUnit;
 
 /**
  * Loader implementation for loading fresh or cached content from the Pocket Stories API.
  * {@link #loadInBackground()} returns a JSON string of Pocket stories.
  *
  * NB: Using AsyncTaskLoader rather than AsyncTask so that loader is tied Activity lifecycle.
- *
- * Access to Pocket Stories is controlled by a private Pocket API token.
- * Add the following to your mozconfig to compile with the Pocket Stories:
- *
- *   export MOZ_ANDROID_POCKET=1
- *   ac_add_options --with-pocket-api-keyfile=$topsrcdir/mobile/android/base/pocket-api-sandbox.token
- *
- * and include the Pocket API token in the token file.
  */
 
 public class PocketStoriesLoader extends AsyncTaskLoader<String> {
     public static String LOGTAG = "PocketStoriesLoader";
 
     // Pocket SharedPreferences keys
     private static final String POCKET_PREFS_FILE = "PocketStories";
     private static final String CACHE_TIMESTAMP_MILLIS_PREFIX = "timestampMillis-";
     private static final String STORIES_CACHE_PREFIX = "storiesCache-";
 
     // Pocket API params and defaults
     private static final String GLOBAL_ENDPOINT = "https://getpocket.com/v3/firefox/global-recs";
     private static final String PARAM_APIKEY = "consumer_key";
-    private static final String APIKEY = AppConstants.MOZ_POCKET_API_KEY;
+    private static final String APIKEY = "KEY_PLACEHOLDER"; // Bug 1386906: Add Pocket keys to builders.
     private static final String PARAM_COUNT = "count";
     private static final int DEFAULT_COUNT = 20;
     private static final String PARAM_LOCALE = "locale_lang";
 
     private static final long REFRESH_INTERVAL_MILLIS = TimeUnit.HOURS.toMillis(3);
 
     private static final int BUFFER_SIZE = 2048;
     private static final int CONNECT_TIMEOUT = (int) TimeUnit.SECONDS.toMillis(15);
@@ -86,20 +77,16 @@ public class PocketStoriesLoader extends
 
     @Override
     protected void onReset() {
         localeLang = Locales.getLanguageTag(Locale.getDefault());
     }
 
     @Override
     public String loadInBackground() {
-        if (APIKEY == null) {
-            Log.e(LOGTAG, "Missing Pocket API key! See class comment about how to set up a mozconfig.");
-            return null;
-        }
         return makeAPIRequestWithKey(APIKEY);
     }
 
     protected String makeAPIRequestWithKey(final String apiKey) {
         HttpURLConnection connection = null;
 
         final Uri uri = Uri.parse(GLOBAL_ENDPOINT)
                 .buildUpon()
--- a/mobile/android/base/moz.build
+++ b/mobile/android/base/moz.build
@@ -11,19 +11,16 @@ with Files('*.java.*'):
     BUG_COMPONENT = ('Firefox for Android', 'General')
 
 with Files('*Manifest*'):
     BUG_COMPONENT = ('Firefox for Android', 'General')
 
 with Files('adjust-sdk-sandbox.token'):
     BUG_COMPONENT = ('Firefox for Android', 'Build Config & IDE Support')
 
-with Files('pocket-api-sandbox.token'):
-    BUG_COMPONENT = ('Firefox for Android', 'Build Config & IDE Support')
-
 with Files('android-services.mozbuild'):
     BUG_COMPONENT = ('Android Background Services', 'Android Sync')
 
 with Files('geckoview.ddf'):
     BUG_COMPONENT = ('Firefox for Android', 'GeckoView')
 
 with Files('crashreporter/**'):
     BUG_COMPONENT = ('Firefox for Android', 'General')
deleted file mode 100644
--- a/mobile/android/base/pocket-api-sandbox.token
+++ /dev/null
@@ -1,1 +0,0 @@
-123456789
--- a/mobile/android/config/mozconfigs/android-aarch64/l10n-nightly
+++ b/mobile/android/config/mozconfigs/android-aarch64/l10n-nightly
@@ -28,13 +28,12 @@ ac_add_options --disable-stdcxx-compat
 mk_add_options AUTOCLOBBER=
 
 # Disable Keyfile Loading (and checks) since l10n doesn't need these keys
 # This overrides the settings in the common android mozconfig
 ac_add_options --without-mozilla-api-keyfile
 ac_add_options --without-google-api-keyfile
 ac_add_options --without-adjust-sdk-keyfile
 ac_add_options --without-leanplum-sdk-keyfile
-ac_add_options --without-pocket-api-keyfile
 # Similarly explicitly disable install tracking for l10n, we'll inherit from en-US
 export MOZ_INSTALL_TRACKING=
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
--- a/mobile/android/config/mozconfigs/android-api-15/l10n-nightly
+++ b/mobile/android/config/mozconfigs/android-api-15/l10n-nightly
@@ -28,13 +28,12 @@ ac_add_options --disable-stdcxx-compat
 mk_add_options AUTOCLOBBER=
 
 # Disable Keyfile Loading (and checks) since l10n doesn't need these keys
 # This overrides the settings in the common android mozconfig
 ac_add_options --without-mozilla-api-keyfile
 ac_add_options --without-google-api-keyfile
 ac_add_options --without-adjust-sdk-keyfile
 ac_add_options --without-leanplum-sdk-keyfile
-ac_add_options --without-pocket-api-keyfile
 # Similarly explicitly disable install tracking for l10n, we'll inherit from en-US
 export MOZ_INSTALL_TRACKING=
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
--- a/mobile/android/config/mozconfigs/android-api-15/nightly
+++ b/mobile/android/config/mozconfigs/android-api-15/nightly
@@ -10,11 +10,10 @@ ac_add_options --with-branding=mobile/an
 
 # This will overwrite the default of stripping everything and keep the symbol table.
 # This is useful for profiling with eideticker. See bug 788680
 STRIP_FLAGS="--strip-debug"
 
 export MOZILLA_OFFICIAL=1
 export MOZ_TELEMETRY_REPORTING=1
 export MOZ_ANDROID_MMA=1
-export MOZ_ANDROID_POCKET=1
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
--- a/mobile/android/config/mozconfigs/android-api-15/nightly-old-id
+++ b/mobile/android/config/mozconfigs/android-api-15/nightly-old-id
@@ -10,11 +10,10 @@ ac_add_options --with-branding=mobile/an
 
 # This will overwrite the default of stripping everything and keep the symbol table.
 # This is useful for profiling with eideticker. See bug 788680
 STRIP_FLAGS="--strip-debug"
 
 export MOZILLA_OFFICIAL=1
 export MOZ_TELEMETRY_REPORTING=1
 export MOZ_ANDROID_MMA=1
-export MOZ_ANDROID_POCKET=1
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
--- a/mobile/android/config/mozconfigs/common
+++ b/mobile/android/config/mozconfigs/common
@@ -73,29 +73,16 @@ if test "$MOZ_UPDATE_CHANNEL" = "release
 elif test "$MOZ_UPDATE_CHANNEL" = "beta" ; then
     ac_add_options --with-leanplum-sdk-keyfile=/builds/leanplum-sdk-beta.token
 elif test "$MOZ_UPDATE_CHANNEL" = "nightly" ; then
     ac_add_options --with-leanplum-sdk-keyfile=/builds/leanplum-sdk-nightly.token
 else
     ac_add_options --with-leanplum-sdk-keyfile="$topsrcdir/mobile/android/base/leanplum-sdk-sandbox.token"
 fi
 
-# MOZ_ANDROID_POCKET depends on --with-pocket-api-keyfile, and will
-# fail if MOZ_ANDROID_POCKET is specified but a keyfile is not. We set a default
-# dummy key for non-channel builds, because Pocket is not a critical component.
-if test "$MOZ_UPDATE_CHANNEL" = "release" ; then
-    ac_add_options --with-pocket-api-keyfile=/builds/pocket-api-release.token
-elif test "$MOZ_UPDATE_CHANNEL" = "beta" ; then
-    ac_add_options --with-pocket-api-keyfile=/builds/pocket-api-beta.token
-elif test "$MOZ_UPDATE_CHANNEL" = "nightly" ; then
-    ac_add_options --with-pocket-api-keyfile=/builds/pocket-api-nightly.token
-else
-    ac_add_options --with-pocket-api-keyfile="$topsrcdir/mobile/android/base/pocket-api-sandbox.token"
-fi
-
 export SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE=/builds/crash-stats-api.token
 
 # Package js shell.
 export MOZ_PACKAGE_JSSHELL=1
 
 # Use ccache
 
 HOST_CC="$topsrcdir/gcc/bin/gcc"
--- a/mobile/android/moz.configure
+++ b/mobile/android/moz.configure
@@ -39,23 +39,16 @@ add_old_configure_assignment('MOZ_INSTAL
 
 option(env='MOZ_ANDROID_MMA',
        help='Enable mobile marketing automation (currently using the Leanplum SDK).',
        default=False)
 
 set_config('MOZ_ANDROID_MMA',
            depends_if('MOZ_ANDROID_MMA')(lambda _: True))
 
-option(env='MOZ_ANDROID_POCKET',
-       help='Enable Pocket Stories in Activity Stream.',
-       default=True)
-
-set_config('MOZ_ANDROID_POCKET',
-           depends_if('MOZ_ANDROID_POCKET')(lambda _: True))
-
 project_flag('MOZ_ANDROID_DOWNLOADS_INTEGRATION',
              help='Enable system download manager on Android',
              default=True)
 
 project_flag('MOZ_ANDROID_BEAM',
              help='Enable NFC permission on Android',
              default=True)
 
@@ -161,15 +154,8 @@ def check_android_mma(android_mma,
             die('You must specify MOZ_NATIVE_DEVICES=1 when'
                 ' building with MOZ_ANDROID_MMA=1')
         if not android_gcm:
             die('You must specify MOZ_ANDROID_GCM=1 when'
                 ' building with MOZ_ANDROID_MMA=1')
         if not leanplum_sdk_keyfile:
             die('You must specify --with-leanplum-sdk-keyfile=/path/to/keyfile when'
                 ' building with MOZ_ANDROID_MMA=1')
-
-@depends('MOZ_ANDROID_POCKET',
-         '--with-pocket-api-keyfile')
-def check_android_pocket(android_pocket, pocket_api_keyfile):
-    if android_pocket and not pocket_api_keyfile:
-        die('You must specify --with-pocket-api-keyfile=/path/to/keyfile when'
-            ' building with MOZ_ANDROID_POCKET=1')
--- a/toolkit/moz.configure
+++ b/toolkit/moz.configure
@@ -555,18 +555,16 @@ simple_keyfile('Mozilla API')
 simple_keyfile('Google API')
 
 id_and_secret_keyfile('Bing API')
 
 simple_keyfile('Adjust SDK')
 
 id_and_secret_keyfile('Leanplum SDK')
 
-simple_keyfile('Pocket API')
-
 # Servo integration
 # ==============================================================
 option('--enable-stylo', nargs='?', choices=('build',),
        help='Include Stylo in the build and/or enable it at runtime')
 
 @depends('--enable-stylo', '--help', target)
 def stylo_config(value, _, target):
     build_stylo = None