Permalink
Browse files

Merge branch 'release-0.5.1'

  • Loading branch information...
2 parents 68dafc9 + ba76b0f commit 16cf8a26218ae4650eb36b25ee55c2b5f6a71a31 @n1mmy n1mmy committed Nov 20, 2012
Showing with 13,198 additions and 7,351 deletions.
  1. +85 −0 History.md
  2. +0 −7 LICENSE.txt
  3. +8 −5 README.md
  4. +1 −1 admin/debian/changelog
  5. +46 −29 admin/generate-dev-bundle.sh
  6. +11 −12 admin/increment-version.js
  7. +1 −1 admin/install-s3.sh
  8. +3 −3 admin/manifest.json
  9. +1 −1 admin/meteor.spec
  10. +15 −15 app/lib/bundler.js
  11. +15 −15 app/lib/files.js
  12. +5 −5 app/lib/mongo_runner.js
  13. +12 −12 app/lib/packages.js
  14. +3 −3 app/lib/project.js
  15. +372 −231 app/lib/third/underscore.js
  16. +2 −2 app/lib/updater.js
  17. +7 −6 app/meteor/deploy.js
  18. +26 −18 app/meteor/meteor.js
  19. +3 −3 app/meteor/post-upgrade.js
  20. +7 −7 app/meteor/run.js
  21. +6 −6 app/meteor/update.js
  22. +10 −2 app/server/server.js
  23. +372 −231 app/server/underscore.js
  24. +130 −102 docs/client/api.html
  25. +60 −38 docs/client/api.js
  26. +35 −9 docs/client/concepts.html
  27. +1 −1 docs/client/docs.html
  28. +8 −3 docs/client/docs.js
  29. +0 −1 docs/client/packages.html
  30. +6 −5 docs/client/packages/accounts-ui.html
  31. +3 −3 docs/client/packages/jquery.html
  32. +0 −21 docs/client/packages/sass.html
  33. +11 −0 examples/.gitignore
  34. +1 −0 examples/other/quiescence/.meteor/.gitignore
  35. +7 −0 examples/other/quiescence/.meteor/packages
  36. +35 −0 examples/other/quiescence/quiescence.html
  37. +95 −0 examples/other/quiescence/quiescence.js
  38. +9 −4 examples/unfinished/accounts-ui-viewer/accounts-ui-viewer.html
  39. +12 −16 examples/unfinished/accounts-ui-viewer/accounts-ui-viewer.js
  40. +1 −0 examples/unfinished/benchmark/.meteor/.gitignore
  41. +8 −0 examples/unfinished/benchmark/.meteor/packages
  42. +58 −0 examples/unfinished/benchmark/benchmark-scenarios.js
  43. +1 −0 examples/unfinished/benchmark/benchmark.css
  44. +23 −0 examples/unfinished/benchmark/benchmark.html
  45. +168 −0 examples/unfinished/benchmark/benchmark.js
  46. +62 −0 examples/unfinished/benchmark/run-local.sh
  47. +1 −1 meteor
  48. +140 −46 packages/accounts-base/accounts_client.js
  49. +5 −1 packages/accounts-base/accounts_common.js
  50. +6 −13 packages/accounts-base/accounts_server.js
  51. +9 −13 packages/accounts-base/localstorage_token.js
  52. +4 −1 packages/accounts-base/package.js
  53. +8 −3 packages/accounts-google/google_configure.html
  54. +12 −24 packages/accounts-oauth-helper/oauth_client.js
  55. +13 −4 packages/accounts-oauth-helper/oauth_server.js
  56. +14 −30 packages/accounts-password/email_tests.js
  57. +5 −5 packages/accounts-password/package.js
  58. +25 −51 packages/accounts-password/{passwords_client.js → password_client.js}
  59. 0 packages/accounts-password/{passwords_common.js → password_common.js}
  60. +1 −1 packages/accounts-password/{passwords_server.js → password_server.js}
  61. +33 −85 packages/accounts-password/{passwords_tests.js → password_tests.js}
  62. 0 packages/accounts-password/{passwords_tests_setup.js → password_tests_setup.js}
  63. +45 −24 packages/accounts-ui-unstyled/login_buttons.html
  64. +21 −6 packages/accounts-ui-unstyled/login_buttons.js
  65. +2 −2 packages/accounts-ui-unstyled/login_buttons_dialogs.js
  66. +42 −30 packages/accounts-ui-unstyled/login_buttons_dropdown.html
  67. +14 −10 packages/accounts-ui-unstyled/login_buttons_dropdown.js
  68. +42 −2 packages/accounts-ui-unstyled/login_buttons_session.js
  69. +26 −8 packages/accounts-ui-unstyled/login_buttons_single.html
  70. +1 −1 packages/accounts-ui-unstyled/login_buttons_single.js
  71. +41 −14 packages/accounts-ui/login_buttons.less
  72. +33 −3 packages/bootstrap/css/bootstrap-responsive.css
  73. +377 −258 packages/bootstrap/css/bootstrap.css
  74. +105 −107 packages/bootstrap/js/bootstrap.js
  75. +8 −6 packages/bootstrap/package.js
  76. +3 −1 packages/code-prettify/package.js
  77. +8 −5 packages/email/email.js
  78. +5 −2 packages/email/email_tests.js
  79. +2 −1 packages/handlebars/evaluate.js
  80. +3 −1 packages/handlebars/package.js
  81. +5 −2 packages/handlebars/parse.js
  82. +2 −0 packages/http/httpcall_server.js
  83. +77 −0 packages/jquery-history/history.adapter.jquery.js
  84. +621 −0 packages/jquery-history/history.html4.js
  85. +1,943 −0 packages/jquery-history/history.js
  86. +0 −1 packages/jquery-history/jquery.history.js
  87. +6 −2 packages/jquery-history/package.js
  88. +64 −21 packages/jquery-waypoints/waypoints.js
  89. +4,024 −3,988 packages/jquery/jquery.js
  90. +3 −4 packages/json/json2.js
  91. +3 −0 packages/livedata/crossbar.js
  92. +740 −366 packages/livedata/livedata_connection.js
  93. +710 −198 packages/livedata/livedata_connection_tests.js
  94. +22 −44 packages/livedata/livedata_server.js
  95. +22 −16 packages/livedata/livedata_test_service.js
  96. +33 −58 packages/livedata/livedata_tests.js
  97. +6 −1 packages/livedata/writefence.js
  98. +6 −0 packages/localstorage-polyfill/localstorage_polyfill.js
  99. +144 −0 packages/meteor/fiber_helpers.js
  100. +63 −0 packages/meteor/fiber_helpers_test.js
  101. +3 −0 packages/meteor/package.js
  102. +48 −7 packages/minimongo/diff.js
  103. +217 −127 packages/minimongo/minimongo.js
  104. +234 −232 packages/minimongo/minimongo_tests.js
  105. +2 −2 packages/minimongo/modify.js
  106. +4 −2 packages/minimongo/selector.js
  107. +29 −39 packages/mongo-livedata/allow_tests.js
  108. +49 −30 packages/mongo-livedata/collection.js
  109. +467 −195 packages/mongo-livedata/mongo_driver.js
  110. +194 −13 packages/mongo-livedata/mongo_livedata_tests.js
  111. +4 −2 packages/reload/reload.js
  112. +0 −33 packages/sass/package.js
  113. +0 −14 packages/sass/sass_tests.js
  114. +0 −7 packages/sass/sass_tests.sass
  115. +3 −1 packages/session/package.js
  116. +3 −1 packages/showdown/package.js
  117. +12 −6 packages/spark/spark_tests.js
  118. +19 −11 packages/spiderable/spiderable.js
  119. +1 −1 packages/stream/package.js
  120. +95 −27 packages/stream/{sockjs-0.3.1.js → sockjs-0.3.4.js}
  121. +4 −4 packages/templating/package.js
  122. +2 −1 packages/test-in-browser/driver.css
  123. +19 −1 packages/test-in-browser/driver.html
  124. +32 −3 packages/test-in-browser/driver.js
  125. +2 −6 packages/tinytest/model.js
  126. +26 −38 packages/tinytest/tinytest_client.js
  127. +64 −39 packages/tinytest/tinytest_server.js
  128. +372 −231 packages/underscore/underscore.js
View
@@ -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
View
@@ -157,13 +157,6 @@ Copyright (c) 2010 LearnBoost <dev@learnboost.com>
----------
-sass: https://github.com/visionmedia/sass.js
-----------
-
-Copyright (c) 2009 TJ Holowaychuk <tj@vision-media.ca>
-
-
-----------
jquery-waypoints: https://github.com/imakewebthings/jquery-waypoints
----------
View
@@ -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: ```contact@meteor.com```
-* 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
View
@@ -1,4 +1,4 @@
-meteor (0.5.0-1) unstable; urgency=low
+meteor (0.5.1-1) unstable; urgency=low
* Automated debian build.
@@ -3,7 +3,7 @@
set -e
set -u
-BUNDLE_VERSION=0.2.5
+BUNDLE_VERSION=0.2.8
UNAME=$(uname)
ARCH=$(uname -m)
@@ -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
@@ -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
@@ -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"
@@ -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 connect@1.9.2 # not 2.x yet. sockjs doesn't work w/ new connect
npm install gzippo@0.1.7
-npm install optimist@0.3.4
-npm install coffee-script@1.3.3
-npm install less@1.3.0
-npm install sass@0.5.0
-npm install stylus@0.29.0
+npm install optimist@0.3.5
+npm install coffee-script@1.4.0
+npm install less@1.3.1
+npm install stylus@0.30.1
npm install nib@0.8.2
npm install mime@1.2.7
-npm install semver@1.0.14
-npm install handlebars@1.0.6-2
-npm install mongodb@1.1.5
-npm install uglify-js@1.3.3
-npm install clean-css@0.6.0
-npm install progress@0.0.5
+npm install semver@1.1.0
+npm install handlebars@1.0.7
+npm install mongodb@1.1.11
+npm install uglify-js@1.3.4
+npm install clean-css@0.8.2
npm install useragent@1.1.0
-npm install request@2.11.0
-npm install http-proxy@0.8.2
-npm install simplesmtp@0.1.20
+npm install request@2.12.0
+npm install simplesmtp@0.1.25
npm install stream-buffers@0.2.3
npm install keypress@0.1.0
- # 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 mailcomposer@0.1.15
-# When adding new node modules (or any software) to the dev bundle, remember to
-# update LICENSE.txt!
+npm install sockjs@0.3.4
+npm install http-proxy@0.8.5
-# 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 sockjs@0.3.3
-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 progress@0.0.5
+
+# 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 mailcomposer@0.1.15
+# If you update the version of fibers in the dev bundle, also update the "npm
+# install" command in docs/client/concepts.html.
npm install fibers@0.6.9
# 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
@@ -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
@@ -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
View
@@ -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')
View
@@ -5,7 +5,7 @@
## example.
URLBASE="https://d3sqy0vbqsdhku.cloudfront.net"
-VERSION="0.5.0"
+VERSION="0.5.1"
PKGVERSION="${VERSION}-1"
UNAME=`uname`
View
@@ -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"
}
View
@@ -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
Oops, something went wrong.

0 comments on commit 16cf8a2

Please sign in to comment.