Files
meteor/packages/webapp
Hugh Willson 18dcb4d6d2 Handle overridden _.template settings in boilerplate-generator (#9250)
* 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.
2017-11-08 18:43:14 +02:00
..
2017-08-15 09:18:10 -04:00

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.