Meteor 0.9.4 is out today with improved PhoneGap/Cordova support, speedups for the packaging system, several backwards-compatible API changes, and some new features: a new meteor debug command, an option for running Velocity tests with the command line tool, and a new configuration file for specifying mobile app metadata, icons, and splash screens.

This is the last significant release starting with a 0.

Please help the project by updating as early as you can, testing it out, and reporting any issues you find to GitHub or the mailing lists. You can easily trial run an app on the new release with

meteor run --release 0.9.4

and update it permanently with

meteor update

There are far more changes in 0.9.4 than will fit here. See the full release notes for a complete list of what’s new.

Mobile

Meteor supports building cross-platform mobile apps for iOS and Android from a single codebase. With the help of Percolate Studio, we’ve refreshed the Meteor Todos example to show off how insanely awesome this is. Try it out by running meteor create --example todos .

We refined many elements of mobile development in 0.9.4. Highlights include a new mobile-config.js file where you can set app metadata, icons, splash screens, preferences, and PhoneGap/Cordova plugin settings, and smoother workflows for installing the iOS and Android SDKs and for publishing apps into the App Store and Play Store.

Testing and debugging

Meteor now natively supports application tests written in Jasmine, Mocha, and Selenium usingVelocity, Meteor’s official reactive test framework. Try it out by running meteor run --test .

We also added a new meteor debug command that allows you to use node-inspector to debug your server-side code. Try adding a debugger statement to your code to create a breakpoint.

API and package changes

New callbacks make it easier to build custom user interfaces on top of the accounts system: Accounts.onResetPasswordLink , Accounts.onEnrollmentLink , and Accounts.onEmailVerificationLink .

Packages can now be marked as debug-only by adding debugOnly: true to Package.describe . Debug-only packages are not bundled for production, allowing package authors to build packages specifically for testing and debugging without increasing the size of the resulting app bundle or causing apps to ship with debug functionality built in.

We deprecated the Template.someTemplate.myHelper = ... syntax in favor of Template.someTemplate.helpers(...) . Using the older syntax still works, but it prints a deprecation warning to the console.

We also deprecated the amplify , backbone , bootstrap , and d3 integration packages in favor of community alternatives. These packages will no longer be maintained by MDG.

We renamed the showdown package to markdown .

Performance

We made many changes in 0.9.4 to improve SDK performance, particularly around packaging. The local package catalog is now stored in SQLite, which is much faster than the previous implementation. The constraint solver used by the client to find compatible versions of packages is now much faster. And for operations that take longer than a few seconds, like downloading packages or installing the Android SDK, we now show a progress bar.

And as always, thanks to our Github contributors who made contributions to the release. Special thanks to the velocity-core team for leading the charge on application testing in Meteor and for spearheading its integration into 0.9.4.