{"push_id":541311296,"size":9,"distinct_size":9,"ref":"refs/heads/select-refact","head":"338864fb484548252110b14c68b571656f4705d5","before":"17370986a0ad49239e0edac0e31822aba729b5ad","commits":[{"sha":"e24d96827628285976526c7e8d91090a90e36322","author":{"email":"bdb14cfc1ab8d24e13de84adc40b41ae60c13bd1@brycehanscomb.com","name":"Bryce Hanscomb"},"message":"style(ngRoute): move comment inside relevant function\n\nThis is a functional workaround for https://github.com/6to5/6to5/issues/376\nAnd makes the comment code-style more consistent with line 143 and line 463.","distinct":true,"url":"https://api.github.com/repos/petebacondarwin/angular.js/commits/e24d96827628285976526c7e8d91090a90e36322"},{"sha":"d2a9a163fbf6c9e1274392167ba739364645eb00","author":{"email":"208f472c236667fadd25d3f221c6b819a04c75cc@gmail.com","name":"Uri Goldshtein"},"message":"docs(guide/index): add angular-easyfb with Facebook login to login libraries\n\nMerci~\n\nCloses #5792","distinct":true,"url":"https://api.github.com/repos/petebacondarwin/angular.js/commits/d2a9a163fbf6c9e1274392167ba739364645eb00"},{"sha":"1334b8c8326b93e0ca016c85516627900c7a9fd3","author":{"email":"e93abf4e471b18d410f233bcd309156a9365cee9@gmail.com","name":"Pawel Kozlowski"},"message":"fix(dateFilter): ignore invalid dates\n\nFixes #10640","distinct":true,"url":"https://api.github.com/repos/petebacondarwin/angular.js/commits/1334b8c8326b93e0ca016c85516627900c7a9fd3"},{"sha":"647d93338ffa97454079483d89525afa5860ee38","author":{"email":"e3b6cda228242c30b711ac17cb264f1dbadfd0b6@bacondarwin.com","name":"Peter Bacon Darwin"},"message":"chore(benchmark): add ngOptions benchmark","distinct":true,"url":"https://api.github.com/repos/petebacondarwin/angular.js/commits/647d93338ffa97454079483d89525afa5860ee38"},{"sha":"089bc59481342da8b8842884ebd7372d02840bca","author":{"email":"e3b6cda228242c30b711ac17cb264f1dbadfd0b6@bacondarwin.com","name":"Peter Bacon Darwin"},"message":"fix(ngOptions): ensure that the correct option is selected when options are loaded async\n\n**Major reworking of select and ngOptions**:\n\n* The `SelectController` is now used as an abstraction for the `select` and `ngOptions` directives\nto override to get their desired behaviour\n* The `select` directive is completely oblivious to the ngOptions directive now - the `ngOptions`\ndirective could be deleted without having to make any changes to the `select` directive.\n* Select related directives (single/multiple/ngOptions) can provide specific versions of\n`SelectController.writeValue` and `SelectController.readValue`, which are responsible for getting\nthe `$viewValue` in or out of the actual `<select>` element and its `<option>` children.\n\nBREAKING CHANGE:\n\nWhen using `ngOptions`: the directive applies a surrogate key as the value of the `<option>` element.\nThis commit changes the actual string used as the surrogate key. We now store a string that is computed\nby calling `hashKey` on the item in the options collection; previously it was the index or key of the\nitem in the collection.\n\n(This is in keeping with the way that the unknown option value is represented in the select directive.)\n\nBefore you might have seen:\n\n```\n<select ng-model=\"x\" ng-option=\"i in items\">\n  <option value=\"1\">a</option>\n  <option value=\"2\">b</option>\n  <option value=\"3\">c</option>\n  <option value=\"4\">d</option>\n</select>\n```\n\nNow it will be something like:\n\n```\n<select ng-model=\"x\" ng-option=\"i in items\">\n  <option value=\"string:a\">a</option>\n  <option value=\"string:b\">b</option>\n  <option value=\"string:c\">c</option>\n  <option value=\"string:d\">d</option>\n</select>\n```\n\nIf your application code relied on this value, which it shouldn't, then you will need to modify your\napplication to accommodate this. You may find that you can use the `track by` feaure of `ngOptions`\nas this provides the ability to specify the key that is stored.\n\nCloses #9714","distinct":true,"url":"https://api.github.com/repos/petebacondarwin/angular.js/commits/089bc59481342da8b8842884ebd7372d02840bca"},{"sha":"05d02da07321503f05597d0e2a0b7b79d4dea9cf","author":{"email":"e3b6cda228242c30b711ac17cb264f1dbadfd0b6@bacondarwin.com","name":"Peter Bacon Darwin"},"message":"refact(ngOptions): move into its own file\n\nSince select is not aware of ngOptions, it makes sense to move it into its\nown file for more easy maintenance.","distinct":true,"url":"https://api.github.com/repos/petebacondarwin/angular.js/commits/05d02da07321503f05597d0e2a0b7b79d4dea9cf"},{"sha":"ff6aa36205329eb947ef4859f9d0111e5abbabfa","author":{"email":"e3b6cda228242c30b711ac17cb264f1dbadfd0b6@bacondarwin.com","name":"Peter Bacon Darwin"},"message":"refact(select): tidy up","distinct":true,"url":"https://api.github.com/repos/petebacondarwin/angular.js/commits/ff6aa36205329eb947ef4859f9d0111e5abbabfa"},{"sha":"1134ce25f03604d1549a6ba2d14e91316ea2ac82","author":{"email":"e3b6cda228242c30b711ac17cb264f1dbadfd0b6@bacondarwin.com","name":"Peter Bacon Darwin"},"message":"fix(select): ensure `SelectController.hasOption` copes with options moving between groups","distinct":true,"url":"https://api.github.com/repos/petebacondarwin/angular.js/commits/1134ce25f03604d1549a6ba2d14e91316ea2ac82"},{"sha":"338864fb484548252110b14c68b571656f4705d5","author":{"email":"e3b6cda228242c30b711ac17cb264f1dbadfd0b6@bacondarwin.com","name":"Peter Bacon Darwin"},"message":"refact(ngOptions): optimizations","distinct":true,"url":"https://api.github.com/repos/petebacondarwin/angular.js/commits/338864fb484548252110b14c68b571656f4705d5"}]}