diff --git a/src/browser/main.coffee b/src/browser/main.coffee index 74e23939f..9adfb4954 100644 --- a/src/browser/main.coffee +++ b/src/browser/main.coffee @@ -7,6 +7,16 @@ mkdirp = require 'mkdirp' start = -> args = parseCommandLine() + + # Note that HFS+ (the Mac filesystem) is case insensitive but case + # preserving. This means it's possible to erroneously set process.cwd + # to `/n1` instead of `/N1`. Since we use symlinks that have `N1` + # (uppercase) embedded in them, it's important the case matches. If it + # doesn't the require cache will fail for symlinked packages. + if args.devMode and /n1/.test(__dirname) + console.error("You must cd into `/N1` (uppercase) instead of `/n1` (lowercase).") + process.exit(1) + global.errorLogger = setupErrorLogger(args) configDirPath = setupConfigDir(args) args.configDirPath = configDirPath diff --git a/src/browser/main.js b/src/browser/main.js index 9f8bc9dbe..b57f16903 100644 --- a/src/browser/main.js +++ b/src/browser/main.js @@ -15,6 +15,10 @@ start = function() { var addFileToOpen, addUrlToOpen, args, configDirPath; args = parseCommandLine(); + if (args.devMode && /n1/.test(__dirname)) { + console.error("You must cd into `/N1` (uppercase) instead of `/n1` (lowercase)."); + process.exit(1); + } global.errorLogger = setupErrorLogger(args); configDirPath = setupConfigDir(args); args.configDirPath = configDirPath;