Ember 3.2 ist da. Wie immer bei Ember bringt das Minor Release neue Features und Deprecations mit. In den Major Releases werden die als deprecated markierten Features dann entfernt. So ist es nun auch in Version 3.2: Ein neues Feature für Ember.js selbst und drei Deprecations bringt das Release mit. Ember Data und das Ember CLI haben ebenfalls Updates bekommen.
Ember 3.2: Neue Features
Für Ember.js selbst wurde ein neuer Block Template Helper eingeführt: let
. Damit können neue Bindings für Templates erstellt werden. Im Blogpost zum Release wird das folgende Beispiel für den Einsatz des neuen Template Helpers genannt, mit dem hier der erste und letzte Name im Template groß geschrieben werden:
{{#let (capitalize person.firstName) (capitalize person.lastName) as |firstName lastName| }} Welcome back {{concat firstName ' ' lastName}} Account Details: First Name: {{firstName}} Last Name: {{lastName}} {{/let}}
Ember Data brint in Version 3.2 vier neue Features mit. Eins betrifft das Lazy Relationship Parsing, das nun auch polymorphe Relationships umfasst. Die anderen drei neuen Features betreffen die Feature Flags in Ember Data, die zu diesem Release entfernt wurden. Für das bisherige Feature Flag ds-improved-ajax
steht nun stattdessen ein Addon zur Verfügung; für ds-pushpayload-return
wurde ein manueller Workaround eingeführt.
Das Ember CLI 3.2 umfasst zwei neue Feautres. Die bisherige Dependency quint-dom wird nun standardmäßig allen Apps und Addons hinzugefügt und muss manuell entfernt werden, wenn sie nicht benötigt wird. Auch das zweite neue Feature betrifft quint-dom und löst ein Problem mit dem automatischen Update der Dependency, das bei manchen vorherigen Versionen auftrat.
Ember 3.2: Deprecations
Die Zahl der Deprecations in Ember 3.2 fiel höher aus als die der neuen Features. Allein für Ember.js wurden drei Features als deprecated markiert: Ember.Logger
und Router#router
sollten nicht mehr verwendet und in Projekten ersetzt werden. Außerdem wurde die Option zur direkten Zuweisung von computed Properites zu Objekten deprecated, um den Support für ES5 Getters zu verbessern.
Weitere Informationen zu allen erwähnten Neuerungen sowie den Deprecations im Ember CLI und Ember Data können den Release Notes zu Ember 3.2 entnommen werden. Details zu Bugfixes finden sich außerdem im Changelog auf GitHub.