From 9ec0a602e762096fc51091caf65fbc01eed64bdb Mon Sep 17 00:00:00 2001 From: Mark Banner Date: Thu, 28 Oct 2021 14:28:54 +0000 Subject: [PATCH] Bug 1738235 - Remove unused precompile_cache.js. r=firefox-build-system-reviewers,mhentges Differential Revision: https://phabricator.services.mozilla.com/D129805 --- .eslintrc.js | 1 - toolkit/mozapps/installer/precompile_cache.js | 84 ------------------- 2 files changed, 85 deletions(-) delete mode 100644 toolkit/mozapps/installer/precompile_cache.js diff --git a/.eslintrc.js b/.eslintrc.js index ef7980db89e1..e02a777c0cc1 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -610,7 +610,6 @@ module.exports = { "toolkit/mozapps/extensions/test/xpcshell/test_webextension.js", "toolkit/mozapps/extensions/test/xpcshell/test_webextension_events.js", "toolkit/mozapps/extensions/test/xpcshell/test_XPIStates.js", - "toolkit/mozapps/installer/precompile_cache.js", ], rules: { "mozilla/reject-chromeutils-import-params": "off", diff --git a/toolkit/mozapps/installer/precompile_cache.js b/toolkit/mozapps/installer/precompile_cache.js deleted file mode 100644 index 948584c470e6..000000000000 --- a/toolkit/mozapps/installer/precompile_cache.js +++ /dev/null @@ -1,84 +0,0 @@ -/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ -/* vim:set ts=2 sw=2 sts=2 et: */ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -// see http://mxr.mozilla.org/mozilla-central/source/services/sync/Weave.js#76 - -const { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm"); - -const rph = Services.io - .getProtocolHandler("resource") - .QueryInterface(Ci.nsIResProtocolHandler); - -function endsWith(str, end) { - return str.slice(-end.length) == end; -} - -function jar_entries(jarReader, pattern) { - return Array.from(jarReader.findEntries(pattern)); -} - -function dir_entries(baseDir, subpath, ext) { - try { - var dir = baseDir.clone(); - dir.append(subpath); - var enumerator = dir.directoryEntries; - } catch (e) { - return []; - } - var entries = []; - while (enumerator.hasMoreElements()) { - var file = enumerator.nextFile; - if (file.isDirectory()) { - entries = entries.concat( - dir_entries(dir, file.leafName, ext).map(p => subpath + "/" + p) - ); - } else if (endsWith(file.leafName, ext)) { - entries.push(subpath + "/" + file.leafName); - } - } - return entries; -} - -function get_modules_under(uri) { - if (uri instanceof Ci.nsIJARURI) { - let jar = uri.QueryInterface(Ci.nsIJARURI); - let jarReader = Cc["@mozilla.org/libjar/zip-reader;1"].createInstance( - Ci.nsIZipReader - ); - let file = jar.JARFile.QueryInterface(Ci.nsIFileURL); - jarReader.open(file.file); - let entries = jar_entries(jarReader, "components/*.js") - .concat(jar_entries(jarReader, "modules/*.js")) - .concat(jar_entries(jarReader, "modules/*.jsm")); - jarReader.close(); - return entries; - } else if (uri instanceof Ci.nsIFileURL) { - let file = uri.QueryInterface(Ci.nsIFileURL); - return dir_entries(file.file, "components", ".js") - .concat(dir_entries(file.file, "modules", ".js")) - .concat(dir_entries(file.file, "modules", ".jsm")); - } - throw new Error("Expected a nsIJARURI or nsIFileURL"); -} - -function load_modules_under(spec, uri) { - var entries = get_modules_under(uri).sort(); - for (let entry of entries) { - try { - dump(spec + entry + "\n"); - ChromeUtils.import(spec + entry, null); - } catch (e) {} - } -} - -function resolveResource(spec) { - var uri = Services.io.newURI(spec); - return Services.io.newURI(rph.resolveURI(uri)); -} - -function precompile_startupcache(uri) { - load_modules_under(uri, resolveResource(uri)); -}