mirror of
https://github.com/jashkenas/coffeescript.git
synced 2026-01-13 16:57:54 -05:00
Fixes issue #3349, prints deprecation warning
This patch fixes issue #3349, by prints deprecation warning for users who depends on old(<1.7.0) implicit module registration.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
// Generated by CoffeeScript 1.7.1
|
||||
(function() {
|
||||
var Lexer, SourceMap, compile, formatSourcePosition, fs, getSourceMap, helpers, lexer, parser, path, sourceMaps, vm, withPrettyErrors,
|
||||
var Lexer, SourceMap, compile, ext, formatSourcePosition, fs, getSourceMap, helpers, lexer, parser, path, sourceMaps, vm, withPrettyErrors, _i, _len, _ref,
|
||||
__hasProp = {}.hasOwnProperty,
|
||||
__indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
|
||||
|
||||
@@ -186,6 +186,18 @@
|
||||
return require('./register');
|
||||
};
|
||||
|
||||
if (require.extensions) {
|
||||
_ref = this.FILE_EXTENSIONS;
|
||||
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
||||
ext = _ref[_i];
|
||||
if (require.extensions[ext] == null) {
|
||||
require.extensions[ext] = function() {
|
||||
throw new Error('Use CoffeeScript.register() or the coffee-script/register module to dynamically load CoffeeScript files');
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
exports._compileFile = function(filename, sourceMap) {
|
||||
var answer, err, raw, stripped;
|
||||
if (sourceMap == null) {
|
||||
@@ -233,9 +245,9 @@
|
||||
parser.yy = require('./nodes');
|
||||
|
||||
parser.yy.parseError = function(message, _arg) {
|
||||
var errorLoc, errorTag, errorText, errorToken, token, tokens, _ref;
|
||||
var errorLoc, errorTag, errorText, errorToken, token, tokens, _ref1;
|
||||
token = _arg.token;
|
||||
_ref = parser.lexer, errorToken = _ref.errorToken, tokens = _ref.tokens;
|
||||
_ref1 = parser.lexer, errorToken = _ref1.errorToken, tokens = _ref1.tokens;
|
||||
errorTag = errorToken[0], errorText = errorToken[1], errorLoc = errorToken[2];
|
||||
errorText = errorToken === tokens[tokens.length - 1] ? 'end of input' : errorTag === 'INDENT' || errorTag === 'OUTDENT' ? 'indentation' : helpers.nameWhitespaceCharacter(errorText);
|
||||
return helpers.throwSyntaxError("unexpected " + errorText, errorLoc);
|
||||
@@ -292,11 +304,11 @@
|
||||
sourceMaps = {};
|
||||
|
||||
getSourceMap = function(filename) {
|
||||
var answer, _ref;
|
||||
var answer, _ref1;
|
||||
if (sourceMaps[filename]) {
|
||||
return sourceMaps[filename];
|
||||
}
|
||||
if (_ref = path != null ? path.extname(filename) : void 0, __indexOf.call(exports.FILE_EXTENSIONS, _ref) < 0) {
|
||||
if (_ref1 = path != null ? path.extname(filename) : void 0, __indexOf.call(exports.FILE_EXTENSIONS, _ref1) < 0) {
|
||||
return;
|
||||
}
|
||||
answer = exports._compileFile(filename, true);
|
||||
@@ -318,10 +330,10 @@
|
||||
}
|
||||
};
|
||||
frames = (function() {
|
||||
var _i, _len, _results;
|
||||
var _j, _len1, _results;
|
||||
_results = [];
|
||||
for (_i = 0, _len = stack.length; _i < _len; _i++) {
|
||||
frame = stack[_i];
|
||||
for (_j = 0, _len1 = stack.length; _j < _len1; _j++) {
|
||||
frame = stack[_j];
|
||||
if (frame.getFunction() === exports.run) {
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -158,6 +158,14 @@ exports.eval = (code, options = {}) ->
|
||||
|
||||
exports.register = -> require './register'
|
||||
|
||||
# Throw Error to register extension explicitly.
|
||||
if require.extensions
|
||||
for ext in @FILE_EXTENSIONS
|
||||
unless require.extensions[ext]?
|
||||
require.extensions[ext] = ->
|
||||
throw new Error('''Use CoffeeScript.register() or the coffee-script/register module \
|
||||
to dynamically load CoffeeScript files''')
|
||||
|
||||
exports._compileFile = (filename, sourceMap = no) ->
|
||||
raw = fs.readFileSync filename, 'utf8'
|
||||
stripped = if raw.charCodeAt(0) is 0xFEFF then raw.substring 1 else raw
|
||||
|
||||
Reference in New Issue
Block a user