* add support for geoWithin.centerSphere queries via withJSON
* added test for passing array of lat, lng instead of Parse.GeoPoint
* added postgres support
* added more tests
* improved tests and validation
* added more tests
* adding nor to specialQuerykeys
* adding nor suport
* adding test
* CRLF
* adding postgres NOR
* adding nor validation
* adding NOR test
* adding test amd fixing NOR cases
* revert the nor logic
* feat: Convert $regex value to RegExp object
* feat: Add lib folder
* Revert "feat: Add lib folder"
This reverts commit c9dfbcbf699ff220baeb2df5586a944d19808e5e.
* feat: Add $regex test in $all array
* test: Test regex with $all only in MongoDB
* Revert "test: Test regex with $all only in MongoDB"
This reverts commit d7194c7869dee98d924fbc2502593a198385dba1.
* feat: Add tests for containsAllStartingWith
* feat: Add postgres support
Thanks to @dplewis
* feat: Check that all values in $all must be regex or none
* test: Check that $all vaules must be regex or none
* feat: Update tests to use only REST API
* refactor: Move $all regex check to adapter
* feat: Check for valid $all values in progres
* refactor: Update function name
* fix: Postgres $all values regex checking
* fix: Check starts with as string
* fix: Define contains all regex sql function
* fix: Wrong value check
* fix: Check valid data
* fix: Check regex when there is only one value
* fix: Constains all starting with string returns empty with bad params
* fix: Pass correct regex value
* feat: Add missing tests
* feat: Add missing tests
* feat: Add more tests
* fix: Unify MongoDB and PostgreSQL functionality
* fix: Lint checks
* fix: Test broken
$regex in $all list must be { $regex: "string" }
* test for empty $all
* 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
* removes costly json serialization to InMemoryCacheAdapter
* Always cache a copy of the array
* Use own mapValues
* Makes sure we dont make unnecessary calls to the logger
* Do not bypass loggers with silent logging (only applies to stdout)
* warn is not warning
* use ===
* Wrap logRequest / logResponse in the loggerController for more granular control
Also give the ability to pass functions to the logger so we don't serialize too early in JSON (costly)
* reconfiguring winston would override the transports levels and make subsequent tests fail
* Added type polygon to schema
* refactoring and more tests
* fix tests
* update test and transform
* add support for polygonContains
* fix transform.mongoObjectToParseObject test
* add indexes for polygon
* index test
* postgres test fix
* remove invalid loop test
* add invalid loop test
* nit
* Full Text Support
* invalid input test
* Support for sort
* index exist test
* clean up
* better error messaging
* postgres support
* error instructions for $diacritic and $case sensitivity
* nit
* nit
* nit
* separate test for full text
* Adds error reproduction
* Fix transform in order to accept nested array results in $in/$nin
The error originated by the nesting of 2 array in $in [["..."]], using _.flatMap with those will guarantee at the lower level
that the query is properly resolved
* nits
* _.flatMap the $in/$nin values
* adds resetTokenValidityDuration setting
* adds a validator to validate password that can be used to enforce strong
passwords
* adds unit tests for passwordPolicy.validator
* adds unit tests to to fail reset password function if password is not in a valid format
* updates README.md for passwordPolicy
* prevents duplicate check for password validator in updateUserPassword
* adds optional setting to disallow username in password
* updates test cases to use fdescribe instead of describe
* updates test cases to use request-promise instead of request
* adds ability to use a RegExp or Callback function or both for a passwordPolicy.validator
* expect username parameter in redirect to password_reset_success
* adds support for _perishable_token_expires_at in postgres
* Removes runtime dependency babel-polyfill (#2692)
* Removes runtime dependency babel-polyfill
* removes references to polyfilled array includes
* Better support for polyfilling
* Removes unnecessary log
* Adds killswitch if tests are polyfilled
* Reverts usage of includes on strings
* Reproduction for #1567
* Recursive handling of nested pointer keys in select
* Better support for multi-level nested keys
* Adds support for selecting columns natively (mongo)
* Support for postgres column selections
* Filter-out empty keys for pg
* Adds passing tests
* Better containsAll implementation
* Full Geopoint support, fix inverted lat/lng
* Adds support for $and operator / PointerPermissions specs
* Fix issue updating CLPs on schema
* Extends query support
* Adds RestCreate to the specs
* Adds User specs
* Adds error handlers for failing tests
* nits
* Proper JSON update of AuthData
* fix for #1259 with PG
* Fix for Installations _PushStatus test
* Adds support for GlobalConfig
* Enables relations tests
* Exclude spec as legacy
* Makes corner case for 1 in GlobalConfig
* Start DB runner from tests
* Connect GridstoreAdapter only when needed
* removes unused package
* better test errors reporting
* Adds support for __op.Delete
* Better test error reporting
* Makes sure all tests can run without crashing
* Use xdescribe to skip test suite
* Removes unused dependencies
* Let volatiles classes be created with PG on start
* Do not fail if class dont exist
* adds index.spec.js to the pg suite
* Use a new config each test to prevent side effects
* Enable EmailVerificationToken specs with pg
* Makes sure failure output is not cut
* Reduces number of ignored tests in ParseObject.spec
* Inspect reconfiguration errors
* Mark GlobalConfig is incompatible with PG
- Problem is with nested updates (param.prop = value)
* PG: Nested JSON queries and updates
- Adds support for nested json and . operator queries
- Adds debug support for PG adapter
- Adds loglevel support in helper
* Enable working specs in ParseUser
* Sets default logLevel in tests to undefined
* Adds File type support, retores purchaseValidation specs
* Adds support for updating jsonb objects
- Restores PushController tests
* Proper implementation of deleteByQuery and ORs
- Adds ParseInstallation spec to the test suite
* xit only failing tests
* Nit on ParseAPI spec
* add sorting operator
* properly bound order keys
* reverts describe_only_db behavior
* Enables passing tests
* Adds basic support for relations, upsertOneObject aliased to createObject
* progress on queries options
* Fix ACL update related problems
* Creates relation tables on class creation
* Adds Relation tests
* remove flaky tests
* use promises instead of CB
* disable flaky test
* nits
* Fixes on schema spec
- Next thing is to implemenet geopoint and files correctly
* fix failues
* Basic GeoPoint support
* Adds support for $nearSphere/$maxDistance geopoint queries
* enable passing tests
* drop tables afterEach for PG, clean up relation tables too
* Better initialization/dropTables
* reload the right data
More passing postgres tests
Handle schema updates, and $in for non array columns
remove authdata from user and implement ensureUniqueness
Make some tests work, detect existing classes
Throw proper error for unique index violation
fix findOneAndUpdate
Support more types
support more type
Support boolean, fix _rperm/_wperm, add TODO
Support string types and also simplify tests
Move operator flattening into Parse Server and out of mongo adapters
Move authdata transform for create into Parse Server
Move authdata transforms completely in to Parse Server
Fix test setup
inline addSchema
Inject default schema to response from DB adapter
* Mark tests that don't work in Postgres
* Exclude one more test
* Exclude some more failing tests
* Exclude more tests
WIP
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
most tests passing
Make specific server config for tests async
Fix more tests
Save callback to variable
undo
remove uses of _collection
reorder some params
reorder find() arguments
finishsh touching up argument order
Accept a database adapter as a parameter
First passing test with postgres!
Fix tests
Setup travis
sudo maybe?
use postgres username
reorder find() arguments
Build objects with default fields correctly
Don't tell adapter about ACL
WIP
Passing postgres test with user
Fix up createdAt, updatedAt, nad _hashed_password handling
* Move ACL transforming into Parse Server
For the database adapters, it will be more performant and easier to work with _rperm and _wperm than with the ACL object. This way we can type it as an array and so on, and once we have stronger validations in Parse Server, we can type it as an array containing strings of length < x, which will be much much better in sql databases.
* Use destructuring
* Break dependency on MongoCollection for updateMany
* Move transformWhere usage into MongoTransform
* Pass parse schema into transformUpdate
* break dependency on schemaController
* remove schema parameter
* move key name validation up one level
* Move validation out of mongo adapter
* Move validation into Parse Server and transformUpdate in Mongo Adapter
* Update mongo adapter
* Use adapter API
* use and fix mongo adapter api
* Remove/rename stuff
* Kill transform in DBController
* better imports for transform
* Tidy ConfigRouter
* Remove schemaController in more places
* Remove comment