Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Another question to volatile() #1202

Closed
jankopriva opened this issue Jul 23, 2012 · 14 comments
Closed

Another question to volatile() #1202

jankopriva opened this issue Jul 23, 2012 · 14 comments
Milestone

Comments

@jankopriva
Copy link

Hi all,

I have run into issue with volatile being a reserved word in js. That means that older tools like yuicompressor and javascript lint will not work with new ember apps. I noticed pull request #957 Don't use reserved word 'volatile' for non-cached properties
with explanation that this is EC3 vs EC5 issues.

However, not only closure compiler but also other tools fail and I would like to know what's the ember community view on this:
Definitely stick with volatile keyword in ember or patch the old tools to remove volatile check restriction?

Also, I am not sure, whether using volatile does not break IE8 functionality.

Thanks.

@trek
Copy link
Member

trek commented Jul 23, 2012

Is this related to #957?

@jankopriva
Copy link
Author

yes, but it showed to be a problem not with closure compiler but with other tools too.

@trek
Copy link
Member

trek commented Jul 23, 2012

Gotcha. Should have read a bit closer. This is a question better suited for @wycats.

@wagenet
Copy link
Member

wagenet commented Jul 25, 2012

@jankopriva Can you give me examples of actual libraries that fail? I'm not seeing failures on current JSLint. We've also tested in IE8 without any visible issues related to volatile.

@jankopriva
Copy link
Author

yuicompressor https://github.com/yui/yuicompressor/
http://www.javascriptlint.com/docs/index.htm

I realize javascript lint is quite old and probably not developed any more, but yuicompressor is quite popular.

@wagenet
Copy link
Member

wagenet commented Jul 25, 2012

@jankopriva Hmm, this does seem to be reserved in YUI Compressor. In my opinion, this is a bug in YUI. They have removed other previously reserved words for ES5 but have only done a partial job. I can't see any point in reserving ES3 words when they are no longer reserved in ES5 and were never used in ES3.

@jankopriva
Copy link
Author

Ok, thanks for the answer. I will patch yuicompressor, then.

@leon
Copy link

leon commented Aug 22, 2012

It also breaks in Rhino saying org.mozilla.javascript.EvaluatorException: missing name after . operator

@wagenet
Copy link
Member

wagenet commented Oct 19, 2012

Looks like YUICompressor is deprecated http://www.yuiblog.com/blog/2012/10/16/state-of-yui-compressor/.
We'll still need to consider Rhino.

@wycats
Copy link
Member

wycats commented Oct 20, 2012

@wagenet If someone can demonstrate problems in any browser (IE6?, IE7? IE8?), I'll reconsider. Just supporting extremely old non-browser environments that are not up-to-date with modern JavaScript is not a good enough reason imho.

@wycats wycats closed this as completed Oct 20, 2012
@wagenet
Copy link
Member

wagenet commented Oct 20, 2012

@wycats Sounds good to me.

@krumpi
Copy link

krumpi commented Dec 7, 2012

Hi

I'm trying to run an ember precompiler for the play framework and I'm getting affected but the usage of the volatile keyword.

The error given by rhino is
org.mozilla.javascript.EvaluatorException: missing name after . operator (ember-1.0.0-pre.2.js#3106)

where we have the definition of
ComputedPropertyPrototype.volatile

Changing the language version in Rhino has no effect
could we reconsider changing the name?

@benmccann
Copy link

I've run into this with Closure Compiler as well. I had to add the following to my plovr config:
"experimental-compiler-options": {
"languageIn": "ECMASCRIPT5"
}

@sandstrom
Copy link
Contributor

Note: people trying the closure compiler web ui can use // @language ECMASCRIPT5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants