upcoming release; please test

95 views
Skip to first unread message

Nick Martin

unread,
Mar 12, 2013, 2:02:41 PM3/12/13
to meteo...@googlegroups.com
Hey all,

We're getting ready to release version 0.5.8. I've cut a release branch, cleverly named `release-0.5.8`. If you have a moment, please give it a whirl with your apps and see if there are any problems.

There is only one breaking change in this release, a complete re-write of the core reactivity library, Deps. It used to be called `Meteor.deps` and is now just plain `Deps`. Unless you specifically call something in `Meteor.deps`, your app should continue to work unmodified (`Meteor.flush` and `Meteor.autorun` are now aliases for `Deps.flush` and `Deps.autorun`). If you define your own reactive sources or consumers directly with `Meteor.deps`, you will have to port your code. See http://devel-docs.meteor.com/#deps for the new API.

There are a number of new features which may be useful to you, including:

- appcache package (see http://devel-docs.meteor.com/#appcache for details)

- A `transform` option to Collection that allows you to associate methods with documents returned from mongo. This is a low-level hook to let people experiment with various patterns for models.

Plus loads of bugfixes and other improvements. A full changelog is at http://github.com/meteor/meteor/tree/release-0.5.8/History.md

Cheers,
-- Nick

Tom Coleman

unread,
Mar 12, 2013, 11:56:03 PM3/12/13
to meteo...@googlegroups.com
Am I right in assuming this is now 0.5.9 given 0.5.8 seems to be the security fix?
--
You received this message because you are subscribed to the Google Groups "meteor-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email to meteor-core...@googlegroups.com.
To post to this group, send email to meteo...@googlegroups.com.
Visit this group at http://groups.google.com/group/meteor-core?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Nick Martin

unread,
Mar 13, 2013, 12:24:50 AM3/13/13
to meteo...@googlegroups.com
Yup =)

Tom Coleman

unread,
Mar 13, 2013, 1:02:09 AM3/13/13
to meteo...@googlegroups.com
There's a '0.5.9' branch of the router that works against 'release-0.5.9' if anyone needs that to test their apps.

I've tested this against the app I'm currently working on and it seems great (the transform stuff especially, awesome stuff Naomi!; I've dumped my janky modelled-collection code, that feels good).

Geoff Jacobsen

unread,
Mar 13, 2013, 4:59:30 AM3/13/13
to meteo...@googlegroups.com
W.R.T. the transform functionality:

I am using a caching factory so that my model instance is only represented once in memory.

The trouble I have is that line 868 of packages/minimongo/minimongo.js calls transform on both the new and old doc. which causes my model to revert back to its original state.

   changed: function (id, fields) {
      var strId = LocalCollection._idStringify(id);
      var doc = docs[strId];
       var oldDoc = EJSON.clone(doc);
      // writes through to the doc set
      LocalCollection._applyChanges(doc, fields);
=>   suppressed || callbacks.changed && callbacks.changed(transform(doc), transform(oldDoc));


One improvement I can suggest is to reverse the order in which the transforms are done:
 
  if(!suppressed && callbacks.changed) {
    oldDoc = transform(oldDoc);
    callbacks.changed(transform(doc), oldDoc);
  }
or just don't call the transform on the oldDoc.

What do people think? Is this a reasonable request or am I causing myself grief by caching the model/transform?

Geoff Jacobsen

unread,
Mar 13, 2013, 7:43:16 AM3/13/13
to meteo...@googlegroups.com
Just realised the obvious; that doc is identical to the attributes/doc already in my model so I can tell if it is an old doc because model.doc !== oldDoc
Am I relying on implementation details or is it reasonable to assume that changed will always pass the same doc object? Also is removed the only case I need to worry about for clearing an object from my cache?

Maxime Quandalle

unread,
Mar 13, 2013, 10:04:39 AM3/13/13
to meteo...@googlegroups.com
Three things concerning the updated coffeescript smart package :
  • The extension ".coffee.md" should be evaluated as litterate CoffeeScript
  • The admin/generate-dev-bundle.sh should use the last version of coffeescript (1.6.1) because 1.5 has some bugs
  • Should be great to add the source maps feature ("map: true" in the options hash)

David Glasser

unread,
Mar 13, 2013, 10:12:43 AM3/13/13
to meteo...@googlegroups.com
Hi Maxime! The upgrade to coffeescript was driven by our users: https://github.com/meteor/meteor/pull/766  So I'm generally happy to take another pull request, eg for coffee.md support. (We do support '.litcoffee' in 0.5.8 though.). Probably won't get in to this release though.

(Once we get the engine release out, hopefully next week, it will be much much much easier to upgrade NPM modules, without needing to use the generate-dev-bundle script.)


--

Maxime Quandalle

unread,
Mar 13, 2013, 11:24:49 AM3/13/13
to meteo...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages