Meteor has announced version 1.3, bringing ES2015 Modules as well as a completely rewritten Cordova layer.
ECMAScript 2015 was announced as the official JavaScript of the Meteor platform, along with support for Angular and React, in September 2015, but missing at the time was ES2015 import
and export
syntax.
Talking to InfoQ, Meteor co-founder Matt DeBergalis said the release had "brought the best of the JavaScript ecosystem to Meteor," including full support for the latest ES2015 language features, as well as out-of-the-box npm integration.
In the blog post Announcing Meteor 1.3 - ES2015 Modules, App Testing, Mobile Improvements and More Meteor's director of customer success, Zoltan Olah, said "Meteor 1.3 fills that gap with a fully standards-compliant module system that works on both the client and the server, solves multiple long-standing problems for Meteor applications (such as controlling file load order), all backwards compatible with existing Meteor code."
New to 1.3, Meteor's npm integration enables developers to install both client and server packages directly into their applications, expanding the inventory of 3rd-party packages available to developers from growing communities, including Angular and React.
Expanding further, DeBergalis said "Decoupling of core packages means making it easier for the community to contribute to core packages by moving them into separate git repositories. This changes the concept of a traditional 'Meteor Release’ so that it’s possible to mix and match core packages from different authors."
Also upgraded for 1.3 is Meteor's Cordova layer for building iOS and Android applications.
In the release notes, Olah says:
The plugin used for file serving and hot code push has been completely rewritten. Among many other improvements, it downloads updates incrementally, can recover from downloading faulty JavaScript code, and is much more reliable and performant.
See cordova-plugin-meteor-webapp for more a more detailed description of the new design.
The upgraded hot code push system is faster and also uses incremental and resumable updates, saving both network bandwidth and battery life. Also new for mobile developers in 1.3 is support for WKWebView on iOS, improving performance and frame rates.
Developers using the major release will now be able to perform testing on production-ready apps directly at the application level, with test modes unit and integration.
With the former, meteor test,
Meteor loads test modules and their specific imports, isolating and testing specific sections of code, and the latter, meteor test--full-app,
loads all application code in addition to the tests.
News of Meteor's 1.3 release was greeted warmly by the JavaScript community.
Talking directly to InfoQ, Richard Silverton -- developer at TABLEFLIP -- said:
The 1.3 release represents a major step forward for the platform. Not only does it make utilising NPM's vast universe of packages as easy as in any other Node application, it also allows for much greater flexibility in terms of code structure.
The challenge now will be for Meteor to retain its strong identity. As previously required parts of the platform become optional and integration with the broader world of NPM becomes painless, developers will be left asking themselves what the value of Meteor actually is.
On HackerNews, in the discussion Meteor 1.3 Released: ES2015 & npm Support, App Testing, Mobile Improvements, user designorant commented "I wouldn't be surprised if Meteor gains some traction after this. 1.3 is a great, long-awaited release with all the stuff that should be there from the beginning."
Ben Newman, software developer for Meteor, replied "As one of the people intimately involved in this release, I completely agree with the 'stuff that should be there from the beginning' part of what you said."
More details about Meteor 1.3 can be found in the release notes.