Commit Graph

19114 Commits

Author SHA1 Message Date
Ben Newman
4051780fc1 Bump package versions for 1.5.1-rc.3 release. release/METEOR@1.5.1-rc.3 2017-06-30 11:43:14 -04:00
Ben Newman
54c4dbcbf7 Require opting into the behavior introduced by the previous commit.
Although I think 8c70716954 is a good idea
in practice, it altered the timing of self-tests enough to cause a number
of failures, so for now that behavior will be gated behind the environment
variable METEOR_WATCH_PRIORITIZE_CHANGED.
2017-06-30 11:41:00 -04:00
Ben Newman
8c70716954 Use native file watchers only to watch recently changed files.
This drastically reduces the number of open file descriptors by not
preemptively acquiring a file descriptor for every watched file.

The downside is that the first time you edit a particular file, you may
have to wait up to DEFAULT_POLLING_INTERVAL milliseconds before Meteor
notices the change. The upside is that changes will be detected
instantaneously for that file in the future, even after restart.

If holding open too many file descriptors is indeed a contributing factor
to issues such as #8648, then this change should go a long way towards
mitigating those problems.

cc @abernix @hwillson
2017-06-30 10:24:11 -04:00
Ben Newman
e86600b52b Rename "watchers" to "entries" where appropriate in safe-watcher.js. 2017-06-30 10:06:19 -04:00
Ben Newman
e0565d5d16 Bump package versions for 1.5.1-rc.2 release. release/METEOR@1.5.1-rc.2 2017-06-29 16:21:11 -04:00
Ben Newman
fb73388ce3 Make server-render API more flexible and isomorph-ish.
Render callbacks can now inject HTML content into multiple different
elements, and may also append content to the <head> or <body> elements, on
both the client and the server.

This new API was inspired by trying to use the styled-components npm
package on the server, which involves not only rendering and injecting
static HTML somewhere in the <body>, but also appending the resulting
<style> tag(s) into the <head>:

  import { onPageLoad } from "meteor/server-render";
  import { renderToString } from "react-dom/server";
  import { ServerStyleSheet } from "styled-components";

  onPageLoad(sink => {
    const sheet = new ServerStyleSheet();
    const html = renderToString(sheet.collectStyles(
      <App location={sink.request.url} />
    ));

    sink.renderIntoElementById("app", html);
    sink.appendToHead(sheet.getStyleTags());
  });

Note that the server-render package now exports an onPageLoad function,
rather than the old renderIntoElementById function. The functionality of
renderIntoElementById is now exposed by the {Client,Server}Sink API.

I say the client-side version of this API is 'isomorphish' to the
server-side version, because ClientSink methods can accept DOM nodes in
addition to raw HTML strings, whereas DOM nodes don't really make sense on
the server.
2017-06-29 15:08:32 -04:00
Ben Newman
576641658c Bump package versions for 1.5.1-rc.1 release. release/METEOR@1.5.1-rc.1 2017-06-27 20:06:58 -04:00
Ben Newman
0ad123db5b Bump accounts-password minor (not major) version.
Previously: 4be0fbd594
2017-06-27 16:59:40 -04:00
Ben Newman
fe3284644c Fix typo in webapp_server error handler. 2017-06-27 13:32:54 -04:00
Ben Newman
02b4b6b2b7 Bump package versions for 1.5.1-rc.0 release. release/METEOR@1.5.1-rc.0 2017-06-27 11:13:17 -04:00
Ben Newman
4e8917db98 Bump shell-server package version to 0.2.4. 2017-06-27 11:12:48 -04:00
Ben Newman
ac2595ad92 Merge branch 'devel' into release-1.5.1 2017-06-27 09:36:42 -04:00
Antonio Tapiador del Dujo
0b1a1ef59f Make require and module visible for meteor shell scripts 2017-06-27 09:31:43 -04:00
Antonio Tapiador del Dujo
2bcfb073c4 Remove parentheses wrapper of evaluateAndExit commmand
The prevented to run certain commands in scripts,
like `import { Foo } from './bar'`

See https://github.com/meteor/meteor/issues/8823
2017-06-27 09:31:43 -04:00
Ben Newman
fd400434b4 Bump package versions for 1.5.1-beta.5 release. release/METEOR@1.5.1-beta.5 2017-06-26 19:26:00 -04:00
Ben Newman
3a1f446105 Remove webapp version constraint for now.
The server-render package requires webapp@1.3.17 or later, but using a
non-prerelease version contraint for a package involved in the release
(i.e., webapp) is tricky during the prerelease phase, since the -beta.n
version is strictly enforced.
2017-06-26 19:25:56 -04:00
Ben Newman
d411229206 Merge branch 'devel' into release-1.5.1 2017-06-26 19:07:05 -04:00
Ben Newman
395e43258b Go back to defining the main function inside runWebAppServer.
This should fix at least some of the recent Circle CI test failures.
2017-06-26 19:05:18 -04:00
Ben Newman
a4ba6bd5cd Mention the server-render package prominently in History.md. 2017-06-26 16:02:23 -04:00
Ben Newman
cf3c8270c6 Display PhantomJS stderr after tests finish, if not empty string. 2017-06-26 15:29:25 -04:00
Ben Newman
49f566d765 Implement a generic server-render package. 2017-06-26 14:52:29 -04:00
Ben Newman
44fd232489 Allow boilerplate data callbacks to return promises.
https://github.com/meteor/meteor/pull/8841#issuecomment-310848373
2017-06-26 14:52:29 -04:00
Ben Newman
a01be34618 Don't modify boilerplate.baseData when adding extraData.
This is a bug that will be fixed by @stevenhao's boilerplate-generator
refactoring (#8820), but I need it fixed now :)
2017-06-26 14:52:29 -04:00
Ben Newman
d8c38bfe4c Give boilerplate data callbacks access to dynamic{Head,Body}, too. 2017-06-26 14:52:29 -04:00
Ben Newman
0fb8636930 Bump the webapp package version to 1.3.17. 2017-06-26 14:52:29 -04:00
Ben Newman
7ac873d0e1 Implement WebAppInternals.registerBoilerplateDataCallback.
This API allows registering callbacks that have the opportunity to modify
boilerplate.baseData on each request, which will be useful for
implementing server-side rendering.

The code in question behaves the same as before if there are no callbacks
registered, so this change should be completely backwards compatible.
2017-06-26 14:52:29 -04:00
Ben Newman
4ff0d0d469 First pass at modernizing the webapp package. 2017-06-26 14:52:29 -04:00
Jesse Rosenberger
e2a6f397e7 Merge pull request #8842 from RickvdP/master
Updated old github wiki references to Meteor Guide/API docs
2017-06-26 14:08:39 +03:00
Rick van der Plas
e71a9e9856 Updated old github wiki references to Meteor Guide/API docs 2017-06-24 18:44:10 +02:00
Ben Newman
5b43e2d1c2 Bump package versions for 1.5.1-beta.4 release.
This release should make the problem reported in #8830 go away.
release/METEOR@1.5.1-beta.4
2017-06-22 11:23:46 -04:00
Ben Newman
36b599496e Bump ddp package version (accidentally missed in 1.5.1-beta.3).
Will fix #8830, as explained by
https://github.com/meteor/meteor/issues/8830#issuecomment-310378955.

Related: ac12eea2d4
2017-06-22 11:17:14 -04:00
Ben Newman
78553410b6 Remove beta suffixes from modules, babel-compiler, ecmascript.
These packages need to be published in advance of the 1.5.1 release.
2017-06-21 14:50:03 -04:00
Ben Newman
f5d1cd9c24 Update uglify-js to version 3.0.18. 2017-06-21 14:37:47 -04:00
Hugh Willson
2a3a01acb3 Adjusted the jshint package to meet its own linting requirements. (#8825) 2017-06-21 14:07:52 -04:00
Ben Newman
7cb7866b60 Bump package versions for 1.5.1-beta.3 release. release/METEOR@1.5.1-beta.3 2017-06-21 13:50:33 -04:00
Jesse Rosenberger
94a6d13977 Add additional History.md clarity for #8754.
[no ci]
2017-06-21 13:48:26 -04:00
Jesse Rosenberger
49a28be680 Bump major version of ddp-client for #8754.
To reflect that meteor/meteor#8754 is a breaking change, we should bump the major version here.
2017-06-21 13:47:47 -04:00
Simon Fridlund
ad243d9566 Update History.md 2017-06-21 13:47:17 -04:00
Simon Fridlund
5b9e23f2db Update tests for reactive sub and reub 2017-06-21 13:47:03 -04:00
Simon Fridlund
e51e72b4d7 Trigger ready callback on resubscribe
This fixes #1173.
2017-06-21 13:47:02 -04:00
Ben Newman
4bca448c07 Merge branch 'devel' into release-1.5.1 2017-06-21 13:32:28 -04:00
Ben Newman
d502d2c522 Merge pull request #8796 from hwillson/issue-8794
Adjust mongo upserts so MongoID.ObjectID's aren't filtered from queries.
2017-06-21 11:28:29 -04:00
Ben Newman
bc5db29c55 Merge pull request #8769 from mpowaga/additional-packages-option
Add option to include additional packages
2017-06-21 11:24:48 -04:00
Ben Newman
a32a979856 Merge pull request #8756 from aldeed/client-safe-errors
isClientSafe DDP errors
2017-06-21 11:23:00 -04:00
Jesse Rosenberger
80c8436924 Merge pull request #8819 from RickvdP/patch-1
Updated doc URLs
2017-06-19 19:23:29 +03:00
Jesse Rosenberger
a05be9a600 Merge branch 'devel' into additional-packages-option 2017-06-19 14:58:37 +03:00
Jesse Rosenberger
1eb578927e Append _1 to coffeescript npm-wrapper package.
As discussed in https://github.com/meteor/meteor/pull/8777 it seems best
to always have the suffix on npm-wrapper packages.

If anything, as a reminder when bumping the version on wrapper packages,
but also just to generally make it more clear if a version suffixed with
`_1` is actually higher than a non-suffixed version or not.
2017-06-19 14:41:49 +03:00
Geoffrey Booth
a09f5e30e5 Update CoffeeScript to 1.12.6 (#8777)
* Update CoffeeScript to 1.12.6; switch to new primary NPM repo

* Added coffeescript update History.md entry and adjusted package version.

* Added missing PR reference.
2017-06-19 14:37:52 +03:00
Rick
c6f80b9502 Updated doc URLs 2017-06-19 12:00:35 +02:00
Ben Newman
0a1b4239a1 Bump package versions for 1.5.1-beta.2 release. release/METEOR@1.5.1-beta.2 2017-06-16 15:17:04 -04:00