From 4da6513fb57307b6f95ed729546d46b443563da8 Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Tue, 7 Oct 2014 14:29:24 -0700 Subject: [PATCH] Add initial cache of resource path module --- src/module-cache.coffee | 15 +++++++++++++++ src/window-bootstrap.coffee | 5 ++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/module-cache.coffee b/src/module-cache.coffee index 1270e1e5c..6fff2ace2 100644 --- a/src/module-cache.coffee +++ b/src/module-cache.coffee @@ -95,3 +95,18 @@ exports.register = -> resolvedPath = getCachedModulePath(relativePath, parentModule) resolvedPath ? originalResolveFilename(relativePath, parentModule) registered = true + +dependencies = {} +folders = {} + +global.mc = {dependencies, folders} + +exports.add = (directoryPath) -> + cache = require(path.join(directoryPath, 'package.json'))?._atomModuleCache + for dependency in cache?.dependencies ? [] + dependencies[dependency.name] ?= {} + dependencies[dependency.name][dependency.version] = path.join(directoryPath, dependency.path) + + for entry in cache?.folders ? [] + for folderPath in entry.paths + folders[path.join(directoryPath, folderPath)] = entry.dependencies diff --git a/src/window-bootstrap.coffee b/src/window-bootstrap.coffee index 7312f99a5..bf0aabb3a 100644 --- a/src/window-bootstrap.coffee +++ b/src/window-bootstrap.coffee @@ -1,7 +1,10 @@ # Like sands through the hourglass, so are the days of our lives. startTime = Date.now() -require('./module-cache').register() +ModuleCache = require('./module-cache') +ModuleCache.add(JSON.parse(decodeURIComponent(location.search.substr(14))).resourcePath) +ModuleCache.register() + require './window' Atom = require './atom'