<feed xmlns='http://www.w3.org/2005/Atom'>
<title>angular.js/docs/content/error/parse, branch g3_v1_2</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/'/>
<entry>
<title>chore(errors): rename folders to match namespaces</title>
<updated>2014-02-16T22:02:41+00:00</updated>
<author>
<name>Peter Bacon Darwin</name>
</author>
<published>2014-02-16T22:02:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=33e1bdc543bcb7875dcc004d487333393670ed2d'/>
<id>33e1bdc543bcb7875dcc004d487333393670ed2d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat($parse): revert hiding "private" properties</title>
<updated>2013-11-14T07:25:09+00:00</updated>
<author>
<name>Vojta Jina</name>
</author>
<published>2013-11-14T07:25:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=4ab16aaaf762e9038803da1f967ac8cb6650727d'/>
<id>4ab16aaaf762e9038803da1f967ac8cb6650727d</id>
<content type='text'>
Hiding `_*` properties was a feature primarily for developers using Closure compiler and Google JS
style. We didn't realize how many people will be affected by this change.

We might introduce this feature in the future, probably under a config option, but it needs more
research and so I'm reverting the change for now.

This reverts commit 3d6a89e8888b14ae5cb5640464e12b7811853c7e.

Closes #4926
Closes #4842
Closes #4865
Closes #4859
Closes #4849

Conflicts:
	src/ng/parse.js
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Hiding `_*` properties was a feature primarily for developers using Closure compiler and Google JS
style. We didn't realize how many people will be affected by this change.

We might introduce this feature in the future, probably under a config option, but it needs more
research and so I'm reverting the change for now.

This reverts commit 3d6a89e8888b14ae5cb5640464e12b7811853c7e.

Closes #4926
Closes #4842
Closes #4865
Closes #4859
Closes #4849

Conflicts:
	src/ng/parse.js
</pre>
</div>
</content>
</entry>
<entry>
<title>feat($parse): secure expressions by hiding "private" properties</title>
<updated>2013-10-31T00:01:51+00:00</updated>
<author>
<name>Chirayu Krishnappa</name>
</author>
<published>2013-10-18T02:44:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=3d6a89e8888b14ae5cb5640464e12b7811853c7e'/>
<id>3d6a89e8888b14ae5cb5640464e12b7811853c7e</id>
<content type='text'>
BREAKING CHANGE:
This commit introduces the notion of "private" properties (properties
whose names begin and/or end with an underscore) on the scope chain.
These properties will not be available to Angular expressions (i.e. {{
}} interpolation in templates and strings passed to `$parse`)  They are
freely available to JavaScript code (as before).

Motivation
----------
Angular expressions execute in a limited context.  They do not have
direct access to the global scope, Window, Document or the Function
constructor.  However, they have direct access to names/properties on
the scope chain.  It has been a long standing best practice to keep
sensitive APIs outside of the scope chain (in a closure or your
controller.)  That's easier said that done for two reasons: (1)
JavaScript does not have a notion of private properties so if you need
someone on the scope chain for JavaScript use, you also expose it to
Angular expressions, and (2) the new "controller as" syntax that's now
in increased usage exposes the entire controller on the scope chain
greatly increaing the exposed surface.  Though Angular expressions are
written and controlled by the developer, they (1) typically deal with
user input and (2) don't get the kind of test coverage that JavaScript
code would.  This commit provides a way, via a naming convention, to
allow publishing/restricting properties from controllers/scopes to
Angular expressions enabling one to only expose those properties that
are actually needed by the expressions.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
BREAKING CHANGE:
This commit introduces the notion of "private" properties (properties
whose names begin and/or end with an underscore) on the scope chain.
These properties will not be available to Angular expressions (i.e. {{
}} interpolation in templates and strings passed to `$parse`)  They are
freely available to JavaScript code (as before).

Motivation
----------
Angular expressions execute in a limited context.  They do not have
direct access to the global scope, Window, Document or the Function
constructor.  However, they have direct access to names/properties on
the scope chain.  It has been a long standing best practice to keep
sensitive APIs outside of the scope chain (in a closure or your
controller.)  That's easier said that done for two reasons: (1)
JavaScript does not have a notion of private properties so if you need
someone on the scope chain for JavaScript use, you also expose it to
Angular expressions, and (2) the new "controller as" syntax that's now
in increased usage exposes the entire controller on the scope chain
greatly increaing the exposed surface.  Though Angular expressions are
written and controlled by the developer, they (1) typically deal with
user input and (2) don't get the kind of test coverage that JavaScript
code would.  This commit provides a way, via a naming convention, to
allow publishing/restricting properties from controllers/scopes to
Angular expressions enabling one to only expose those properties that
are actually needed by the expressions.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix($parse): disallow access to window and dom in expressions</title>
<updated>2013-09-18T01:15:49+00:00</updated>
<author>
<name>Chirayu Krishnappa</name>
</author>
<published>2013-08-09T21:47:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=be0b4856699334ff51bacf2d1fd3394663d6bd28'/>
<id>be0b4856699334ff51bacf2d1fd3394663d6bd28</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docs(minErr): improve $parse/isecfn</title>
<updated>2013-08-07T16:32:23+00:00</updated>
<author>
<name>Igor Minar</name>
</author>
<published>2013-08-07T16:32:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=e38bf59aab871321182f454a6bad73c991df4228'/>
<id>e38bf59aab871321182f454a6bad73c991df4228</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docs(minerr): Adds a description for parser.lexerr</title>
<updated>2013-08-07T16:30:04+00:00</updated>
<author>
<name>James deBoer</name>
</author>
<published>2013-08-01T23:19:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=e21f252aa7cf588dee31ea16fdebc047a2d8e456'/>
<id>e21f252aa7cf588dee31ea16fdebc047a2d8e456</id>
<content type='text'>
Closes #3433
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Closes #3433
</pre>
</div>
</content>
</entry>
<entry>
<title>docs(minerr): Adds a description for parser.syntax</title>
<updated>2013-08-07T16:28:24+00:00</updated>
<author>
<name>James deBoer</name>
</author>
<published>2013-08-01T23:34:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=03475194d82ae481c72895a7dff4e0d5e89e304e'/>
<id>03475194d82ae481c72895a7dff4e0d5e89e304e</id>
<content type='text'>
Closes #3434
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Closes #3434
</pre>
</div>
</content>
</entry>
<entry>
<title>docs(minerr): Adds a description for parser.ueoe</title>
<updated>2013-08-07T16:26:04+00:00</updated>
<author>
<name>James deBoer</name>
</author>
<published>2013-08-01T23:40:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=68d79d560e2286078cc1f7984602733a5abc0208'/>
<id>68d79d560e2286078cc1f7984602733a5abc0208</id>
<content type='text'>
Closes #3435
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Closes #3435
</pre>
</div>
</content>
</entry>
<entry>
<title>docs(mirErr): add a description for $parse.isecfld and isecfn</title>
<updated>2013-08-07T15:49:56+00:00</updated>
<author>
<name>James deBoer</name>
</author>
<published>2013-08-01T22:38:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=63b6c5b3f275747bcf6f22ec2491596ff4569696'/>
<id>63b6c5b3f275747bcf6f22ec2491596ff4569696</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docs(minErr): Build minErr doc site</title>
<updated>2013-07-24T17:42:20+00:00</updated>
<author>
<name>Ken Sheedlo</name>
</author>
<published>2013-07-13T00:42:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/fork/angular.js/commit/?id=4a7b6a4555a76b19dd217171fc0ddce6707bca95'/>
<id>4a7b6a4555a76b19dd217171fc0ddce6707bca95</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
