Commit Graph

413 Commits

Author SHA1 Message Date
Florent Vilmart
b7b57f7ea7 Adds support for Pointer Permissions
* WIP: Initial pointer permissions

* Process Pointer perms when no matching CLP are found

* Additional tests with read lockdown

* Create operation lockdown with pointer permissions,

on parse.com, when an class is locked down with write pointer perm, users can't create objects even if they set their own as the pointer permission key

* Adds test case for multiple write PointerPerms

* Adds validation for pointer permissions when setting

* Adds tests for validating pointer permissions column types

* Adds tests for complex ACL/CLP/PP hierarchy

* Restores power of the master

* Adds validation of borked fields

* Adds complex test for find

* Adds more variations around PointerPermissions tests
2016-04-20 21:51:11 -04:00
Drew
7b91ee98ed Fixes #1568 (#1574) 2016-04-20 18:42:18 -04:00
Drew
9776362ab2 Begin isolating object creation code into an externalizable API. (#1569)
* Tidy up transformKeyValue

* Specialize transformKeyValue for object creation

* remove keys that never appear in creation requests

* rename function

* remove local var

* early exit for simple keys

* Refactor create

* Force class creation when creating an object

* Pass parameters to key value transformer

* No need to check for array in this func

* start using Parse Format schema in MongoTransform

* Remove call to getExpectedType

* add tests to ensure client can't see _PushStatus
2016-04-20 13:35:48 -07:00
Drew
bf47a0b2b6 Remove acceptor parameter (#1553) 2016-04-19 14:29:05 -07:00
Drew
61b62e4e9f Rename Schema => SchemaController (#1542)
* Rename Schema to SchemaController

* Rename Schema => SchemaController

* Move to controllers folder

* Move SchemasController to Controllers folder

* remove ./..
2016-04-18 18:59:57 -07:00
Drew
cecb2a1cb1 Move 'ns not found' into mongo adapter. (#1541) 2016-04-18 17:06:51 -07:00
Drew
ab0ea09067 Schema.js cleanup (#1540)
* Tidy up schemas router

* de-duplicate logic for injecting default schemas

* Remove no-op promise

* use hasClass

* Make getAllSchemas part of SchemaController

* Move getOneSchema logic onto schema controller

* remove log
2016-04-18 17:06:00 -07:00
Drew
ac839f75c7 Remove mongo object create format from Parse Server (#1516) 2016-04-18 12:45:48 -04:00
Florent Vilmart
1023baf20d DBController refactoring (#1228)
* 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
2016-04-14 19:24:56 -04:00
Tyler Brock
d57e384dcb Apply credential stripping to all untransforms for _User (#1498) 2016-04-14 14:50:16 -07:00
Drew
fc1cdd4408 Remove collection prefix and default mongo URI (#1479)
* Remove collection prefix from DB Controller

* Remove collection prefix from cache

* Revert "Remove collection prefix from cache"

This reverts commit 529d67dd617b64c69c36a8a63382456e95edcab8.

* Remove knowledge of default mongo URI from Parse Server

* Remove adaptive collection paramater from deleteFields

* Tidy up DBAdapter.js
2016-04-13 19:45:07 -04:00
Florent Vilmart
c050a65d49 Schema.js database agnostic (#1468)
* Schema.js database agnostic

* nits
2016-04-12 17:39:27 -04:00
Florent Vilmart
bc96f0beb1 Adds X-Parse-Push-Status-Id header (#1412)
* Adds X-Parse-Push-Status-Id header

* Waits for _PushStatus to be stored
2016-04-07 18:08:09 -04:00
Florent Vilmart
0e3636d880 Make notEqual work on relations
*  regression tests for #1349

* 🎉 fixes #1349

* Adds support for multiple constraints on the same key
2016-04-04 11:05:03 -07:00
Fosco Marotto
8c12f80d28 Merge pull request #1269 from ParsePlatform/flovilmart.reportPushError
Improves report for Push error in logs and _PushStatus
2016-04-01 13:42:01 -07:00
Florent Vilmart
f0ebb7bae6 Merge pull request #1295 from drew-gross/test-1259
Fixes #1271
2016-03-30 23:14:17 -04:00
Drew Gross
73bca3b64c Improve comments 2016-03-30 19:48:33 -07:00
Drew Gross
6311c95785 Fixes #1271 2016-03-30 19:35:54 -07:00
Florent Vilmart
5d99075663 Properly let masterKey add fields 2016-03-30 20:27:12 -04:00
Florent Vilmart
6055f2a552 Improves report for Push error in logs and _PushStatus 2016-03-29 22:42:37 -04:00
Drew
337d3c297a Merge pull request #1248 from ParsePlatform/flovilmart.incrementBadge
Supports increment as well as Increment
2016-03-29 12:49:48 -07:00
Florent Vilmart
cb4b036947 Supports increment as well as Increment 2016-03-29 15:39:58 -04:00
Drew
ef08dcf76c Merge pull request #1234 from ParsePlatform/flovilmart.winston
Better logging with winston
2016-03-29 10:54:36 -07:00
Krzysztof Zielonka
6dc7aa87c6 Fixed bug with 'undefined' token in email verification link 2016-03-29 19:02:19 +02:00
Florent Vilmart
5c1fe3a325 Better logging with winston 2016-03-28 20:16:58 -04:00
Florent Vilmart
aeda714b87 Improve flattening of results from pushAdapter 2016-03-26 11:02:26 -04:00
Drew Gross
7cdf85b367 Use getter 2016-03-24 20:59:50 -07:00
Drew Gross
19e6293638 Mark push as enabled in serverInfo endpoint 2016-03-24 19:32:51 -07:00
Drew Gross
2f00a02936 Document email adapter 2016-03-24 14:41:13 -07:00
Florent Vilmart
f4ad4c1af5 Merge pull request #1172 from ParsePlatform/flovilmart.externalAdapters
Moves Files adapters to external packages
2016-03-24 14:46:15 -04:00
Florent Vilmart
1e45ac753a Moves Files adapters to external packages 2016-03-24 00:48:34 -04:00
Carmen
120c6feb61 Unset _perishable_token after reset password, instead of setting it to null. #951 2016-03-24 10:22:14 +08:00
Carmen
b3c5e836d5 Clear reset password token after reset password. _perishable_token is not a parse field, cannot clear it through rest. Update it separately. #951 2016-03-24 10:22:14 +08:00
Carmen
53e152e975 Instead of executing write directly, reuse rest.update to fix request object in user before save is empty when reset password. #951 2016-03-24 10:22:14 +08:00
wangmengyan95
555e25bf33 Add LiveQuery 2016-03-18 12:32:31 -07:00
Florent Vilmart
9624970cd0 Merge pull request #1004 from ParsePlatform/flovilmart.PushStatus
Push Status API
2016-03-17 08:16:35 -04:00
Florent Vilmart
e1c475512c Returns updated keys when running with beforeSave 2016-03-16 23:48:52 -04:00
Florent Vilmart
ba545fbf59 Returns full modifications on PUT 2016-03-16 22:30:52 -04:00
Florent Vilmart
7c387e1ee9 Adds support to store push results 2016-03-13 23:37:13 -04:00
Florent Vilmart
dad50d12f5 Upgrade APNS to use HTTP/2
- uses universal certificate
- removes tests logs
- standardized returned promises from APNS and GCM to something usable in _PushStatus
2016-03-13 18:15:15 -04:00
Florent Vilmart
a392c088d8 Uses the resolved promise from the adapter 2016-03-12 15:30:12 -05:00
Florent Vilmart
4d401d9daa Stores the _PushStatus when sending push, set pending, and running states 2016-03-12 14:32:39 -05:00
Florent Vilmart
b89619b6ee Full query support for badge Increment 2016-03-11 16:23:58 -05:00
Florent Vilmart
e75d233b7e Adds validation of addFields 2016-03-09 19:33:48 -05:00
Nikita Lutsenko
d86f0a8c69 Use schema collection instead of adaptive collection for all schema operations. 2016-03-09 15:21:29 -08:00
Nikita Lutsenko
2730398b92 Add new MongoSchemaCollection class that manages schemas for all collections. 2016-03-09 15:20:59 -08:00
Nikita Lutsenko
b9f08d9694 Do not mutate parameter object in DatabaseController. 2016-03-08 16:08:41 -08:00
Nikita Lutsenko
fb5b8fb58f Migrate Schema.js to adaptive mongo collection. 2016-03-08 00:53:51 -08:00
Nikita Lutsenko
a163327ac9 Remove usages of non-adaptive collection inside DatabaseController. 2016-03-08 00:53:51 -08:00
Nikita Lutsenko
98769a2226 Merge pull request #902 from ParsePlatform/flovilmart.FixPushNotifications
Increment badge the right way
2016-03-07 20:44:24 -08:00