# 0.9.6 night-vision (2010-12-06) # ### Security - several improvements in the HTML sanitizer code to prevent code execution via `href`s and other attributes. Commits: - 41d5938883a3d06ffe8a88a51efd8d1896f7d747 - 2bbced212e2ee93948c45360fee00b2e3f960392 ### Docs - set up http://docs.angularjs.org domain, the docs for the latest release will from now on be deployed here. - docs app UI polishing with dual scrolling and other improvements ### Bug Fixes - `select` widget now behaves correctly when it's `option` items are created via `ng:repeat` (issue #170) - fix for async xhr cache issue #152 by adding `$browser.defer` and `$defer` service ### Breaking Changes - Fix for issue #152 might break some tests that were relying on the incorrect behavior. The breakage will usually affect code that tests resources, xhr or services/widgets build on top of these. All that is typically needed to resolve the issue is adding a call to `$browser.defer.flush()` in your test just before the point where you expect all cached resource/xhr requests to return any results. Please see 011fa39c2a0b5da843395b538fc4e52e5ade8287 for more info. - The HTML sanitizer is slightly more strinct now. Please see info in the "Security" section above. # 0.9.5 turkey-blast (2010-11-25) # ### Docs - 99% of the content from the angular wiki is now in the docs ### Api - added `angular.Array.limitTo` to make it easy to select first or last few items of an array # 0.9.4 total-recall (2010-11-18) # ### Docs - searchable docs - UI improvements - we now have ~85% of the wiki docs migrated to ng docs - some but not all docs were updated along the way ### Api - ng:include now supports `onload` attribute (commit cc749760) ### Misc - Better error handling - compilation exception now contain stack trace (commit b2d63ac4) # 0.9.3 cold-resistance (2010-11-10) # ### Docs - prettier docs app with syntax highlighting for examples, etc - added documentation, examples and scenario tests for many more apis including: - all directives - all formatters - all validators - some widgets ### Api - date filter now accepts strings that angular.String.toDate can convert to Date objects - angular.String.toDate supports ISO8061 formated strings with all time fractions being optional - ng:repeat now exposes $position with values set to 'first', 'middle' or 'last' - ng:switch now supports ng:switch-default as fallback switch option ### Breaking changes - we now support ISO 8601 extended format datetime strings (YYYY-MM-DDTHH:mm:ss.SSSZ) as defined in EcmaScript 5 throughout angular. This means that the following apis switched from YYYY-MM-DDTHH:mm:ssZ to YYYY-MM-DDTHH:mm:ss.SSSZ (note the added millis) when representing dates: - angular.Date.toString - angular.String.fromDate - JSON serialization and deserialization (used by json filter, $xhr and $resource) - removed SSN validator. It's unlikely that most people will need it and if they do, it can be added simple RegExp validator. # 0.9.2 faunal-mimicry (2010-11-03) # ### Docs - created documentation framework based on jsdoc syntax (commit 659af29a) - jsdoc parser - template generator - json generator - angular doc viewer app - scenario runner for all example code - documentation for all angular filters (commits 1fe7e3a1 & 1ba8c2a33) - docs - example code - scenario tests for example code ### Testability #### Scenario Runner - binding DSL in Scenario can now match bindings without specifying filters - dsl statements now accept a label argument to make test output more readable (issue #94) - dsl element() statement now implements most of the jQuery API (issue #106) - new browser() dsl statement for getting info about the emulated browser running the app (issue #109) - scenario runner is now compatible with IE8 (issue #93) - scenarior runner checks if URL would return a non-success status code (issue #100) - binding() DSL now accepts regular expressions - new textarea() scenario runner DSL for entering text into textareas ### Misc - lots of small bugfixes ### Breaking changes #### Scenario Runner - navigating to about:blank is no longer supported. It results in a sandbox error - navigateTo() is now browser().navigateTo(). Old code must be updated - file:// URLs are no longer supported for running a scenario. You must use a web server that implements HEAD # 0.9.1 repulsion-field (2010-10-26) # ### Security - added html sanitizer to fix the last few known security issues (issues #33 and #34) ### API - new ng:submit directive for creating onSubmit handlers on forms (issue #76) - the date filter now accepts milliseconds as well as date strings (issue #78) - the html filter now supports 'unsafe' option to bypass html sanitization ### Testability - lots of improvements related to the scenario runner (commit 40d7e66f) ### Demo - added a new demo application: Personal Log (src example/personalLog) ### Chores - lots of fixes to get all tests pass on IE - added TzDate type to allow us to create timezone idependent tests (issue #88) ### Breaking changes - $cookieStore service is not globally published any more, if you use it, you must request it via $inject as any other non-global service - html filter now sanitizes html content for XSS attacks which may result in different behavior # 0.9.0 dragon-breath (2010-10-20) # ### Security - angular.fromJson not safer (issue #57) - readString consumes invalid escapes (issue #56) - use new Function instead of eval (issue #52) ### Speed - css cleanup + inline all css and images in the main js (issue #64) ### Testability - initial version of the built-in end-to-end scenario runner (issues #50, #67, #70) ### API - allow ng:controller nesting (issue #39) - new built-in date format filter (issue #45) - $location needs method you call on updates (issue #32) ### Chores - release versioning + file renaming (issue #69) ### Breaking changes - $location.parse was replaced with $location.update - all css and img files were inlined into the main js file, to support IE7 and older app must host angular-ie-compat.js file ### Big Thanks to Our Community Contributors - Vojta Jina