* Handle overridden _.template settings in boilerplate-generator
When `underscore`'s default `_.template` settings are overridden
using `_.templateSettings` in an application, this can adversely
affect the `_.template` calls used by the `boilerplate-generator`
to render an application's initial HTML template. These changes
make sure the `boilerplate-generator` is overridding any
defined `_.templateSettings` with its own verified to work
settings.
Fixes #9149.
* Add comment explaining additional _.template config override
* Handle overridden _.templateSettings with the cordova boilerplate
* Remove underscore use wherever possible
* Change incorrect implementation of an "empty" manifest.
This test was trying to imply an empty manifest by using an empty
associative array (hash), whereas a manifest is only ever an array
of hashes (as per the bundler code). Therefore, an empty manifest
should be an array with no items.
This is to fix the failure seen in https://travis-ci.org/meteor/meteor/builds/291857783?utm_source=github_status&utm_medium=notification
because of @hwillson's changes in 9aee811a4b.
Refs: meteor/meteor#9250.
* Make underscore replacement code more defensive
`_.map` handles a falsy input value, whereas `Array.prototype.map`
(obivously) does not. While not likely common practice, it's
possible falsy values are being passed into the boilerplate
generator, for elements like `js`, `css`, etc. These changes
replicate `_.map`'s handling of incoming falsy values by
converting them to an empty array.
webapp
Source code of released version | Source code of development version
The webapp package contains the core functionality that makes a
Meteor project into a web application. It is a "value added HTTP
server" that includes not just a web server, but also advanced app
serving functionality like over-the-air mobile app updates and HTML5
Appcache support. For more information, see the Webapp project
page.
Direct access to connect mongodb API
The webapp package is implemented using the
npm connect module. webapp exposes
the connect API for handling requests through Webapp.connectHandlers. See
https://docs.meteor.com/#/full/webapp for more details
If you'd like direct access to the connect module (for example, to use one of
the middleware handlers that it defines), you can find it at
WebAppInternals.NpmModules.connect.module. Its version can be read at
WebAppInternals.NpmModules.connect.version.
The version of connect used may change incompatibly from version to version of
Meteor (or we may even replace it with an entirely different implementation);
use at your own risk.