* refactoring database code
Starting to refactor the database code for better use of promises + ES6 generators, to prepare for ES7 await/async.
* Update PostgresStorageAdapter.js
* Update PostgresStorageAdapter.js
naming the transaction.
* Add Indexes to Schema API
* error handling
* ci errors
* postgres support
* full text compound indexes
* pg clean up
* get indexes on startup
* test compound index on startup
* add default _id to index, full Text index on startup
* lint
* fix test
* let travis build against 3.x
* Cleanup dependencies and bump min version to current LTS
* Makes npm-git push all branches to -preview
* restores releases
* Bumps mime to 2.0.3 (requires node 6+)
* Bumps express to latest version
* Fixes linting issue after upgrade
* Use travis-branch for partial releases
* Add handleShutdown Test of MongoStorageAdapter.
* Add `handleShutdown` function in PostgresStorageAdapter, with it's test.
* Replace the _pgp to _client
* Use `adapter._client.$pool.ending` to ckeck is ending
* Add `handleShutdown()` in ParseServer.spec.js
* Trigger
* Set Server to Default
* Support for Aggregate Queries
* improve pg and coverage
* Mongo 3.4 aggregates and tests
* replace _id with objectId
* improve tests for objectId
* project with group query
* typo
* Fix for unhandled undefined config
When an invalid application id is passed either for reset/change password or email verification, config.get returns undefined. This causes internal server.
* Throwing a 403 exception instead of returning a 404 for an invalid app id
Also, added a missing semicolon
* Fix indent issues
* Fix invalid colon to semicolon
* Fix space and indent issues
* Tests for the fix for unhandled undefined config
* Adds 'now' as an option in relative time
* reenables no-console in previous spot
* Adds weeks,months,years and abbreviations
* modified tests to address coverage
* month be gone!
* Add relative time queries
* Encode successful result
* Add integration test
* Add more error cases
* Remove unnecessary new Date
* Error when time has both 'in' and 'ago'
* naturalTimeToDate -> relativeTimeToDate
* Add $relativeTime operator
* Throw error if $relativeTime is invalid
* Add integration test for invalid relative time
* Exclude $exists query
* Only run integration tests on MongoDB
* Add it_only_db test helper
bd2ea87c1d/CONTRIBUTING.md (L23)
* Handle where val might be null or undefined
* Add integration test for multiple results
* Lowercase text before processing
* Always past if not future
* Precompute seconds multiplication
* Add shorthand for interval
hr, hrs
min, mins
sec, secs
* Throw error if $relativeTime is used with $exists, $ne, and $eq
* Improve coverage for relativeTimeToDate
* Add test for erroring on floating point units
* Remove unnecessary dropDatabase function
* Unit test $ne, $exists, $eq
* Verify field type
* Fix unit test for $exists
Unnest query object
* Add support for expiration_interval in Push
* Support expiration_interval for immediate pushes
* Test
* Add 'expiration_interval' to _PushStatus class
* Fix coverage
* Adds flow types / Configuration interfaces
* Lets call it options
* Use a single interface to generate the configurations
* Translates options to definitions only if comments are set
* improves logic
* Moves objects around
* Fixes issue affecting logging of circular objects
* fixes undefined env
* Moves all defaults to defaults
* Adds back CLI defaults
* Restored defaults in commander.js
* Merge provided defaults and platform defaults
* Addresses visual nits
* Improves Config.js code
* Adds ability to pass the default value in trailing comments
* Load platform defaults from the definitions file
* proper default values on various options
* Adds ParseServer.start and server.start(options) as quick startup methods
* Moves creating liveQueryServer http into ParseServer.js
* removes dead code
* Adds tests to guarantee we can start a LQ Server from main module
* Fixes incorrect code regading liveQuery init port
* Start a http server for LQ if port is specified
* ensure we dont fail if config.port is not set
* Specify port
* ignore other path skipped in tests
* Adds test for custom middleware setting
* Refactors new Config into Config.get
- Hides AppCache from ParseServer.js, use Config.put which validates
* Extracts controller creation into Controllers/index.js
- This makes the ParseServer init way simpler
* Move serverURL inference into ParseServer
* review nits
* add the client ip to the request config object
* add the config ip to the trigger request object
* add the config ip to the functions request object
* add tests
* remove log
* remove log
* Added basic validation of publicServerURL
* Fixed up 'verifyServerUrl' and added tests
* Use Parse.serverURL instead, general cleanup.
* Test server port moved to 13376
* Removed reconfigureServer calls with simple changing of Parse.serverURL
* changed var to const
* Disabled automatic serverURL verification during testing, moved verification call into app.on('mount') callback, removed setTimeout from verification.
* Fixes an issue where a beforeSave hook could cause a numeric val to be dropped in response.
* Use hasOwnProperty to check instead
* Remove redundant set
* Adds failing test for #4194
* Use the rest module instad of the Parse._request
- Some users have an invalid serverUrl passed in the options
* removes console.logs, fixes tests that leveraged Parse._request
* Refactors pushStatusHandler to use HTTP interface so we can bind CloudCode hooks
* Handle correctly nested dot atomic operations
* Better handling of restricted class names, add support for afterSave _PushStatus
* Adds simple testing for afterSave(PushStatus)
* Reverts jobStatusHandler
* Addresses fixes
* adds delays to all methods