Skip to content

Commit

Permalink
Merge branch 'release-0.5.1'
Browse files Browse the repository at this point in the history
  • Loading branch information
n1mmy committed Nov 20, 2012
2 parents 68dafc9 + ba76b0f commit 16cf8a2
Show file tree
Hide file tree
Showing 128 changed files with 13,198 additions and 7,351 deletions.
85 changes: 85 additions & 0 deletions History.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,91 @@

## vNEXT

## v0.5.1

* Speed up server-side subscription handling by avoiding redundant work
when the same Mongo query is observed multiple times concurrently (eg,
by multiple users subscribing to the same subscription), and by using
a simpler "unordered" algorithm.

* Meteor now waits to invoke method callbacks until all the data written by the
method is available in the local cache. This way, method callbacks can see the
full effects of their writes. This includes the callbacks passed to
`Meteor.call` and `Meteor.apply`, as well as to the `Meteor.Collection`
`insert`/`update`/`remove` methods.

If you want to process the method's result as soon as it arrives from the
server, even if the method's writes are not available yet, you can now specify
an `onResultReceived` callback to `Meteor.apply`.

* Rework latency compensation to show server data changes sooner. Previously, as
long as any method calls were in progress, Meteor would buffer all data
changes sent from the server until all methods finished. Meteor now only
buffers writes to documents written by client stubs, and applies the writes as
soon as all methods that wrote that document have finished.

* `Meteor.userLoaded()` and `{{currentUserLoaded}}` have been removed.
Previously, during the login process on the client, `Meteor.userId()` could be
set but the document at `Meteor.user()` could be incomplete. Meteor provided
the function `Meteor.userLoaded()` to differentiate between these states. Now,
this in-between state does not occur: when a user logs in, `Meteor.userId()`
only is set once `Meteor.user()` is fully loaded.

* New reactive function `Meteor.loggingIn()` and template helper
`{{loggingIn}}`; they are true whenever some login method is in progress.
`accounts-ui` now uses this to show an animation during login.

* The `sass` CSS preprocessor package has been removed. It was based on an
unmaintained NPM module which did not implement recent versions of the Sass
language and had no error handling. Consider using the `less` or `stylus`
packages instead. #143

* `Meteor.setPassword` is now called `Accounts.setPassword`, matching the
documentation and original intention. #454

* Passing the `wait` option to `Meteor.apply` now waits for all in-progress
method calls to finish before sending the method, instead of only guaranteeing
that its callback occurs after the callbacks of in-progress methods.

* New function `Accounts.callLoginMethod` which should be used to call custom
login handlers (such as those registered with
`Accounts.registerLoginHandler`).

* The callbacks for `Meteor.loginWithToken` and `Accounts.createUser` now match
the other login callbacks: they are called with error on error or with no
arguments on success.

* Fix bug where method calls could be dropped during a brief disconnection. #339

* Prevent running the `meteor` command-line tool and server on unsupported Node
versions.

* Fix Minimongo query bug with nested objects. #455

* In `accounts-ui`, stop page layout from changing during login.

* Use `path.join` instead of `/` in paths (helpful for the unofficial Windows
port) #303

* The `spiderable` package serves pages to
[`facebookexternalhit`](https://www.facebook.com/externalhit_uatext.php) #411

* Fix error on Firefox with DOM Storage disabled.

* Avoid invalidating listeners if setUserId is called with current value.

* Upgrade many dependencies, including:
* MongoDB 2.2.1 (from 2.2.0)
* underscore 1.4.2 (from 1.3.3)
* bootstrap 2.2.1 (from 2.1.1)
* jQuery 1.8.2 (from 1.7.2)
* less 1.3.1 (from 1.3.0)
* stylus 0.30.1 (from 0.29.0)
* coffee-script 1.4.0 (from 1.3.3)

Patches contributed by GitHub users ayal, dandv, possibilities, TomWij,
tmeasday, and workmad3.

## v0.5.0

* This release introduces Meteor Accounts, a full-featured auth system that supports
Expand Down
7 changes: 0 additions & 7 deletions LICENSE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -156,13 +156,6 @@ stylus: https://github.com/learnboost/stylus
Copyright (c) 2010 LearnBoost <[email protected]>


----------
sass: https://github.com/visionmedia/sass.js
----------

Copyright (c) 2009 TJ Holowaychuk <[email protected]>


----------
jquery-waypoints: https://github.com/imakewebthings/jquery-waypoints
----------
Expand Down
13 changes: 8 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,11 +67,14 @@ You'll then be able to read the docs locally in your browser at ```http://localh

## Developer Resources

Get in touch! We'd love to hear what you think. You can get involved
in several ways:
Building an application with Meteor?

* Announcement list: sign up at http://www.meteor.com/
* IRC: ```#meteor``` on ```irc.freenode.net```
* Ask a question: http://stackoverflow.com/questions/tagged/meteor
* Email us: ```[email protected]```
* How to contribute to Meteor: https://github.com/meteor/meteor/wiki
* Meteor help and discussion mailing list: https://groups.google.com/group/meteor-talk
* IRC: ```#meteor``` on ```irc.freenode.net```

Interested in contributing to Meteor?

* Core framework design mailing list: https://groups.google.com/group/meteor-core
* Contribution guidelines: https://github.com/meteor/meteor/wiki
2 changes: 1 addition & 1 deletion admin/debian/changelog
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
meteor (0.5.0-1) unstable; urgency=low
meteor (0.5.1-1) unstable; urgency=low

* Automated debian build.

Expand Down
75 changes: 46 additions & 29 deletions admin/generate-dev-bundle.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
set -e
set -u

BUNDLE_VERSION=0.2.5
BUNDLE_VERSION=0.2.8
UNAME=$(uname)
ARCH=$(uname -m)

Expand All @@ -13,8 +13,8 @@ if [ "$UNAME" == "Linux" ] ; then
echo "Meteor only supports i686 and x86_64 for now."
exit 1
fi
MONGO_NAME="mongodb-linux-${ARCH}-2.2.0"
MONGO_URL="http://fastdl.mongodb.org/linux/${MONGO_NAME}.tgz"
MONGO_OS="linux"

elif [ "$UNAME" == "Darwin" ] ; then
SYSCTL_64BIT=$(sysctl -n hw.cpu64bit_capable 2>/dev/null || echo 0)
if [ "$ARCH" == "i386" -a "1" != "$SYSCTL_64BIT" ] ; then
Expand All @@ -30,8 +30,7 @@ elif [ "$UNAME" == "Darwin" ] ; then
exit 1
fi

MONGO_NAME="mongodb-osx-${ARCH}-2.2.0"
MONGO_URL="http://fastdl.mongodb.org/osx/${MONGO_NAME}.tgz"
MONGO_OS="osx"
else
echo "This OS not yet supported"
exit 1
Expand All @@ -55,6 +54,8 @@ cd build

git clone git://github.com/joyent/node.git
cd node
# When upgrading node versions, also update the values of MIN_NODE_VERSION at
# the top of app/meteor/meteor.js and app/server/server.js.
git checkout v0.8.11

./configure --prefix="$DIR"
Expand All @@ -70,40 +71,44 @@ which node

which npm

# When adding new node modules (or any software) to the dev bundle,
# remember to update LICENSE.txt! Also note that we include all the
# packages that these depend on, so watch out for new dependencies when
# you update version numbers.

cd "$DIR/lib/node_modules"
npm install [email protected] # not 2.x yet. sockjs doesn't work w/ new connect
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
npm install [email protected]
# pinned at older version. 0.1.16+ uses mimelib, not mimelib-noiconv
# which make the dev bundle much bigger. We need a better solution.
npm install [email protected]
# When adding new node modules (or any software) to the dev bundle, remember to
# update LICENSE.txt!
npm install [email protected]
npm install [email protected]

# Sockjs has a broken optional dependancy, and npm optional dependancies
# don't seem to quite work. Fake it out with a checkout.
git clone http://github.com/akdubya/rbytes.git
npm install [email protected]
rm -rf rbytes
# progress 0.1.0 has a regression where it opens stdin and thus does not
# allow the node process to exit cleanly. See
# https://github.com/visionmedia/node-progress/issues/19
npm install [email protected]

# pinned at older version. 0.1.16+ uses mimelib, not mimelib-noiconv
# which make the dev bundle much bigger. We need a better solution.
npm install [email protected]

# If you update the version of fibers in the dev bundle, also update the "npm
# install" command in docs/client/concepts.html.
npm install [email protected]
# Fibers ships with compiled versions of its C code for a dozen platforms. This
# bloats our dev bundle, and confuses dpkg-buildpackage and rpmbuild into
Expand All @@ -118,7 +123,14 @@ mv ../$FIBERS_ARCH .
cd ../..


# Download and install mongodb.
# To see the mongo changelog, go to http://www.mongodb.org/downloads,
# click 'changelog' under the current version, then 'release notes' in
# the upper right.
cd "$DIR"
MONGO_VERSION="2.2.1"
MONGO_NAME="mongodb-${MONGO_OS}-${ARCH}-${MONGO_VERSION}"
MONGO_URL="http://fastdl.mongodb.org/${MONGO_OS}/${MONGO_NAME}.tgz"
curl "$MONGO_URL" | tar -xz
mv "$MONGO_NAME" mongodb

Expand All @@ -129,6 +141,11 @@ cd mongodb/bin
rm bsondump mongodump mongoexport mongofiles mongoimport mongorestore mongos mongosniff mongostat mongotop mongooplog mongoperf
cd ../..

# Clean up an unneeded directory accidentally installed by the
# node-mongo-native driver. This will be fixed in later versions, but
# for now we have to manually remove it.
# https://github.com/mongodb/node-mongodb-native/issues/736
rm -rf lib/node_modules/mongodb/.coverage_data


echo BUNDLING
Expand Down
23 changes: 11 additions & 12 deletions admin/increment-version.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,21 @@ var semver = require('semver');

var optimist = require('optimist');

var updater = require('../app/lib/updater.js');
var _ = require('../app/lib/third/underscore.js');

var updater = require(path.join(__dirname, '..', 'app', 'lib', 'updater.js'));
var _ = require(path.join(__dirname, '..', 'app', 'lib', 'third', 'underscore.js'));

// What files to update. Relative to project root.
var UPDATE_FILES = ['app/lib/updater.js',
'app/meteor/post-upgrade.js',
'admin/install-s3.sh',
'admin/debian/changelog',
'admin/meteor.spec',
'docs/client/docs.js',
'docs/client/docs.html',
['admin/manifest.json', 'g']];
var UPDATE_FILES = [path.join('app', 'lib', 'updater.js'),
path.join('app', 'meteor', 'post-upgrade.js'),
path.join('admin', 'install-s3.sh'),
path.join('admin', 'debian', 'changelog'),
path.join('admin', 'meteor.spec'),
path.join('docs', 'client', 'docs.js'),
path.join('docs', 'client', 'docs.html'),
[path.join('admin', 'manifest.json'), 'g']];

// Files to update for dev_bundle
var BUNDLE_FILES = ['admin/generate-dev-bundle.sh', 'meteor'];
var BUNDLE_FILES = [path.join('admin', 'generate-dev-bundle.sh'), 'meteor'];


var opt = require('optimist')
Expand Down
2 changes: 1 addition & 1 deletion admin/install-s3.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
## example.

URLBASE="https://d3sqy0vbqsdhku.cloudfront.net"
VERSION="0.5.0"
VERSION="0.5.1"
PKGVERSION="${VERSION}-1"

UNAME=`uname`
Expand Down
6 changes: 3 additions & 3 deletions admin/manifest.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"version": "0.5.0",
"deb_version": "0.5.0-1",
"rpm_version": "0.5.0-1",
"version": "0.5.1",
"deb_version": "0.5.1-1",
"rpm_version": "0.5.1-1",
"urlbase": "https://d3sqy0vbqsdhku.cloudfront.net"
}
2 changes: 1 addition & 1 deletion admin/meteor.spec
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
Summary: Meteor platform and JavaScript application server
Vendor: Meteor
Name: meteor
Version: 0.5.0
Version: 0.5.1
Release: 1
License: MIT
Group: Networking/WWW
Expand Down
Loading

0 comments on commit 16cf8a2

Please sign in to comment.