Regular expressions not parsed correctly
pronvit opened this issue · comments
Code
if (/^\/admin/.test(req.url)) {
next();
return;
}
gives an error
xxx.tjs:79
if (/ ^\ / admin / . test ( req . url )) {
^^^^^
SyntaxError: Unexpected identifier
at Module._compile (module.js:439:25)
at Object._extension [as .tjs] (/Users/vit/Development/xxx/node_modules/tamejs/lib/tamejs.js:62:12)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/Users/vit/Development/xxx/lib/xxx.js:871:1)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
SyntaxError: Unexpected identifier
at Module._compile (module.js:439:25)
at Object._extension [as .tjs] (/Users/vit/Development/xxx/node_modules/tamejs/lib/tamejs.js:62:12)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
undefined
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/Users/vit/Development/xxx/lib/xxx.js:871:1)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
It's a known problem, look at the old bugs. We need to change parsers. You can use the regex constructor with a string: (new RegExp("^admin")).test(req.url) or similar, wrap it in a function and it's easier to use anyway, I think. That's the first bug I ever reported to the project.
On Wed, Sep 17, 2014 at 4:06 AM, Vitaly Pronkin notifications@github.com
wrote:
Code
if (/^\/admin/.test(req.url)) { next(); return; }
gives an error
xxx.tjs:79 if (/ ^\ / admin / . test ( req . url )) { ^^^^^ SyntaxError: Unexpected identifier at Module._compile (module.js:439:25) at Object._extension [as .tjs] (/Users/vit/Development/xxx/node_modules/tamejs/lib/tamejs.js:62:12) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.require (module.js:364:17) at require (module.js:380:17) at Object.<anonymous> (/Users/vit/Development/xxx/lib/xxx.js:871:1) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) SyntaxError: Unexpected identifier at Module._compile (module.js:439:25) at Object._extension [as .tjs] (/Users/vit/Development/xxx/node_modules/tamejs/lib/tamejs.js:62:12) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) undefined at Module.require (module.js:364:17) at require (module.js:380:17) at Object.<anonymous> (/Users/vit/Development/xxx/lib/xxx.js:871:1) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32)
Reply to this email directly or view it on GitHub:
#44
Oh yes, I missed another open issue for this, sorry.