Closed
Bug 1463079
Opened 6 years ago
Closed 6 years ago
Update to AngularJS 1.7
Categories
(Tree Management :: Treeherder: Frontend, enhancement, P2)
Tree Management
Treeherder: Frontend
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: emorley, Assigned: emorley)
Details
Attachments
(2 files)
The AngularJS 1.7 release is the last breaking change release of AngularJS (they treat minor versions as breaking): https://github.com/angular/angular.js/blob/master/CHANGELOG.md#170-nonexistent-physiology-2018-05-11 In it they have removed the `$compileProvider.preAssignBindingsEnabled()` flag, which allowed reverting to the pre-AngularJS 1.6 behaviour: https://github.com/angular/angular.js/blob/master/CHANGELOG.md#compile-due-to https://github.com/angular/angular.js/commit/38f8c97af74649ce224b6dd45f433cc665acfbfb https://github.com/angular/angular.js/pull/15782 In order to update to 1.7 we'll need to fix the issue preAssignBindingsEnabled worked around. The Renovate PR is here: https://github.com/mozilla/treeherder/pull/3542
Comment 1•6 years ago
|
||
Assignee | ||
Updated•6 years ago
|
Attachment #8979207 -
Flags: review?(igoldan)
Attachment #8979207 -
Flags: feedback?(wlachance)
Assignee | ||
Updated•6 years ago
|
Assignee: nobody → emorley
Status: NEW → ASSIGNED
Updated•6 years ago
|
Attachment #8979207 -
Flags: review?(igoldan) → review+
Updated•6 years ago
|
Attachment #8979207 -
Flags: feedback?(wlachance) → feedback+
Comment 2•6 years ago
|
||
Commit pushed to master at https://github.com/mozilla/treeherder https://github.com/mozilla/treeherder/commit/607b447820e432c2560770219e35a72bb8c54aeb Bug 1463079 - Remove the preAssignBindingsEnabled workaround (#3567) AngularJS 1.6 changed the way controller bindings were initialised, but allowed users to revert to the previous behaviour by setting `preAssignBindingsEnabled(true)`. As part of our upgrade from AngularJS 1.5 to 1.6, we set that pref in Perfherder, to fix the bug 1428958 regression. However AngularJS 1.7 has now removed the pref, so we need to actually fix the root cause - by moving any controller logic that is dependant on the bindings into the `.$onInit()` method, which is only called after all of the bindings are guaranteed to exist. See: https://docs.angularjs.org/guide/migration#migrate1.5to1.6-ng-services-$compile Testing this locally shows the regression in bug 1428958 no longer occurs, and as far as I can tell all other functionality in Perfherder works fine (and there are no new exceptions seen in the console).
Comment 3•6 years ago
|
||
Assignee | ||
Updated•6 years ago
|
Attachment #8979692 -
Flags: review?(cdawson)
Updated•6 years ago
|
Attachment #8979692 -
Flags: review?(cdawson) → review+
Comment 4•6 years ago
|
||
Commit pushed to master at https://github.com/mozilla/treeherder https://github.com/mozilla/treeherder/commit/c89fa8cfcb9dff5da056e5930d8b9d8087994728 Bug 1463079 - Update to AngularJS 1.7 (#3570) Changelog: https://github.com/angular/angular.js/blob/master/CHANGELOG.md#170-nonexistent-physiology-2018-05-11 `PluginCtrl` has been updated to correctly cancel the `$http` requests made by `selectJob`, since previously they were silently failing to be cancelled, whereas under AngularJS 1.7 an exception is raised if `$timeout` is used incorrectly: https://code.angularjs.org/snapshot/docs/guide/migration#-timeout- The usage of `$timeout` has been removed in favour of this pattern: https://odetocode.com/blogs/scott/archive/2014/04/24/canceling-http-requests-in-angularjs.aspx Closes #3542.
Assignee | ||
Updated•6 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•