* Introduces flow types for storage
* Better typing of QueryOptions
* Adds flow types to SchemaCOntroller,
- runs flow on pre tests
- fixes flow
* Adds ClassLevelPermissions type
* Moves Controller types into a single file
* Changes import styles
* Changes import styles
* fixing method setIndexesWithSchemaFormat (#4454)
Fixing invalid database code in method `setIndexesWithSchemaFormat`:
* It must be a transaction, not a task, as it executes multiple database changes
* It should contain the initial queries inside the transaction, providing the context, not outside it;
* Replaced the code with the ES6 Generator notation
* Removing the use of batch, as the value of the result promise is irrelevant, only success/failure that matters
* nits
* Fixes tests, improves flow typing
* Update status through increment
* adds support for incrementing nested keys
* fix issue when having spaces in keys for ordering
* Refactors PushController to use worker
* Adds tests for custom push queue config
* Makes PushController adapter independant
* Better logging of _PushStatus in VERBOSE
* HooksRouter is enabled by default
* Adds middleswares on PromiseRouter, fixes#2410
* Move testing line to helper
* Modernize middlewares.js
* Moves DB uniqueness initialization to DBController, modernize
* Moves testing related code to spec folder
* remove unused _removeHook function
* Adds tests, docs for Analytics and improvements
* nit
* moves back TestUtils
* Add unique indexing
* Add unique indexing for username/email
* WIP
* Finish unique indexes
* Notes on how to upgrade to 2.3.0 safely
* index on unique-indexes: c454180 Revert "Log objects rather than JSON stringified objects (#1922)"
* reconfigure username/email tests
* Start dealing with test shittyness
* Remove tests for files that we are removing
* most tests passing
* fix failing test
* Make specific server config for tests async
* Fix more tests
* fix more tests
* Fix another test
* fix more tests
* Fix email validation
* move some stuff around
* Destroy server to ensure all connections are gone
* Fix broken cloud code
* Save callback to variable
* no need to delete non existant cloud
* undo
* Fix all tests where connections are left open after server closes.
* Fix issues caused by missing gridstore adapter
* Update guide for 2.3.0 and fix final tests
* use strict
* don't use features that won't work in node 4
* Fix syntax error
* Fix typos
* Add duplicate finding command
* Update 2.3.0.md
* Moves transform to MongoTransform
- Adds ACL query injection in MongoTransform
* Removes adaptiveCollection from DatabaseController
- All collections manipulations are now handled by a DBController
- Adds optional flags to configure an unsafe databaseController for direct
access
- Adds ability to configure RestWrite with multiple writes
- Moves some transfirmations to MongoTransform as they output specific code
* Renames Unsafe to WithoutValidation