* Test against Node.js 8
Configure Travis CI test against Node.js 8 and allow failures.
Node.js 8 release notes: https://nodejs.org/en/blog/release/v8.0.0/
* Updates to TravisCI
* Refactor picking debug argument for different Node.js versions
* feat(gulp): replacing the unmaintained gulp-livereload with gulp-refresh
Replacing the unmaintained gulp-livereload with gulp-refresh (#1552)
* ~ instead of ^ for gulp-refresh package
* fix(core): updating old package dependencies
* mistaken updated the wrong package
* updating gulpfile with new csslint package
* updating old gulpfile usage with the failformatter option of csslint
* updating package.json for original version of airbnb supported version
* resolving eslint issue
* eslint back to original package
* updating no failure of CSS issues
Fixes an issue with an empty/missing/null Email coming from GitHub's
OAuth call response.
Also, introduces the `sparse` index option on the User model's Email
field. This will ensure that we can have multiple User documents without
the Email field.
Adds a server-side User model test for the sparse index setting on the
email field.
Confirms that User documents without the email field are not indexed,
illustrating the sparse option on the schema's email field works
properly.
Added the dropdb task to the Gulp test:client & test:server tasks, to
ensure we have a clean database & that any indexes are rebuilt; this
will ensure any Schema changes (in this case the email index is rebuilt using
the sparse index option) are reflected when the database is started again.
Added a UPGRADE.md for tracking important upgrade information for our
user's to be aware of, when we introduce potentially breaking changes.
Included an explanation of the Sparse index being added, and how to apply it
to an existing MEANJS application's database.
Adds a script for dropping the `email` field's index from the User
collection.
Related #1145
Sets the behavior of the test:server:watch Gulp task to only run a single
test suite if the modified server file is a test suite. Previously this was
acheived through the use of the `onlyChanged` parameter. The parameter has
been removed since this is almost certainly the only use case.
Also, refactors this Gulp task to be a stand-alone watch task rather than
including it in the 'watch' task.
Removed the need for using yargs library, and removed the yargs package
from the framework.
Closes#1297
Adds a task to copy the example local environment config example, and save
it as a development environment config.
Renamed the task for Gulp from copy:localConfig (Grunt naming convention) to
copyLocalEnvConfigExample.
Releated #1175
Fixes an error occurring when running `gulp`:
```bash
/mean/gulpfile.js
199:22 error A space is required after '{' object-curly-spacing
199:42 error A space is required before '}' object-curly-spacing
```
Adds a Gulp task that watches all server files (including server tests),
and upon any changes it will perform the Gulp *test:server* task.
Added a watch for server assets, to the main gulp watch config. This will only
add the watch when the NODE_ENV is set to "test".
Also, includes an **optional** argument for the task that can specify
that if the changed file is a test, then it will only run that test
file.
Example usage: gulp test:server:watch --onlyChanged
Added the timeout option to the Mocha grunt task; set to 10000.
Removed the individual test suite timeouts, for all server tests.
Also, added global timeout for Mocha gulp task.