Oni Apollo 0.10.0: less bytes and modularized!

November 19, 2010 by Alexander Fritze

We're pleased to announce the release of Oni Apollo 0.10.0. For the full list of changes please consult the commit history in our github repository.

In this release, we have reduced the size of the oni-apollo.js StratifiedJS runtime to ~15kB (gzipped), and enhanced our CommonJS-compliant module system to be fully cross-domain capable. For modern browsers we utilize CORS and for legacy browsers (IE6, IE7, Opera) we use a JSONP-like fallback protocol.

In addition to being cross-domain capable, Apollo's module system now has powerful features for managing the resolution of external modules.

oni-apollo.js now consists solely of the StratifiedJS runtime and the machinery for the cross-domain module system. We have taken all modules that were previously prepackaged into this file and externalized them into the Apollo Standard Module Library.

Because of the change from built-in to external modules, 'require'-calls to Standard Library modules now need to be prefixed with 'apollo:', e.g.:

require('apollo:google');
instead of
require('google');

as in previous versions where 'google' was a built-in module.

As always, if you give 0.10.0 a spin, we're interested in any feedback you have. Please post any questions to the Apollo Google Group.