1024 Commits

Author SHA1 Message Date
Kenneth Geisshirt
356033a8c4 Merge branch 'tg/update-object-store' of github.com:realm/realm-js into 2.0.x 2017-09-08 14:56:01 +02:00
Kenneth Geisshirt
fa0016ba6b Merge branch 'master' of github.com:realm/realm-js into 2.0.x 2017-09-08 14:54:56 +02:00
Ashwin Phatak
119cd79e5d Add Realm.deleteFile API (#363) 2017-09-07 10:12:59 +05:30
Thomas Goyne
d3fde5f728 Bump objectstore version again 2017-09-05 10:16:08 -07:00
Thomas Goyne
682a45a18e Disambiguate some uses of PropertyType for msvc 2017-09-05 10:04:41 -07:00
Thomas Goyne
360a5fbd07 Don't throw an exception every 10ms in the RPC worker
Cuts the time taken to run the react native tests on my machine from 198
seconds to 41 seconds. Probably has a similar impact on the react native
debugger performance.
2017-09-01 10:32:51 -07:00
Kenneth Geisshirt
806146b07c [1.11.1] Bump version 2017-09-01 13:07:37 +02:00
Thomas Goyne
7e1466b47a Don't throw an exception every 10ms in the RPC worker
Cuts the time taken to run the react native tests on my machine from 198
seconds to 41 seconds. Probably has a similar impact on the react native
debugger performance.
2017-08-31 16:43:25 -07:00
Thomas Goyne
c06daa795e Add missing files to the xcode project 2017-08-31 16:43:25 -07:00
Thomas Goyne
736277084e Fix creating admin token users 2017-08-31 13:49:45 -07:00
Thomas Goyne
9c1b04f8e5 Restore old list property validation logic 2017-08-31 13:49:45 -07:00
Thomas Goyne
cb9a3c9f76 Add the invalid value to the type error exception message 2017-08-31 13:49:45 -07:00
Thomas Goyne
944ef57b59 Fix property type conversions to ObjectStore types 2017-08-31 13:49:45 -07:00
Thomas Goyne
ce0ce3d299 Update to latest objectstore master and core/sync 2017-08-31 13:49:45 -07:00
kristiandupont
de94dc0e16 [1.11.0] Bump version 2017-08-31 12:52:36 +02:00
Thomas Goyne
675b517274 Fix some incorrect checks for Array property types 2017-08-29 15:23:49 -07:00
blagoev
1e5c8b95e1 fix property type checking 2017-08-29 14:52:21 -07:00
blagoev
f115a641b0 Remove not needed casts 2017-08-29 14:52:04 -07:00
blagoev
5e6f576e31 address code review for property type checks 2017-08-29 14:52:02 -07:00
blagoev
736cbd3ef3 Update object store 2017-08-29 14:51:25 -07:00
Kenneth Geisshirt
85fb49b354 Adding methods and property to manually control write transactions (#1216)
* Adding methods and property to manually control write transactions
2017-08-21 17:48:53 +02:00
Kenneth Geisshirt
bd28c05936 Add shouldCompactOnLaunch option to configuration (#1209)
* Adding shouldCompactOnLaunch option to configuration
* Adding Realm.compact()
2017-08-18 14:22:29 +02:00
Yavor Georgiev
614c699385 [2.0.0-rc4] Bump version 2017-08-17 13:21:34 +02:00
Yavor Georgiev
1be5340129 [2.0.0-rc3] Bump version 2017-08-17 13:20:41 +02:00
Yavor Georgiev
c78f82ac0c Update download script for the new core build system 2017-08-17 13:01:41 +02:00
Yavor Georgiev
05cce5aeec use newest object store 2017-08-17 13:01:01 +02:00
kristiandupont
0db8fac3e5 [1.10.3] Version bump 2017-08-17 11:35:13 +02:00
kristiandupont
796ebe2533 [1.10.2] Bump version 2017-08-15 15:12:18 +02:00
Yavor Georgiev
fb7f11263c Modernize V8 ArrayBuffer usage (#1198)
Instead of manually allocating a chunk of memory and asking V8 to create an ArrayBuffer around it, have V8 create an ArrayBuffer with its own allocator and copy the data in it. (fixes #1197)

Remove an extra copy when reading data from ArrayBufferViews.

Remove TODOs for Node.js versions older than 4.
2017-08-10 11:45:48 +02:00
Yavor Georgiev
b71eec6b98
[1.10.1] Bump version 2017-08-02 14:07:16 +02:00
Yavor Georgiev
22a086859f
[1.10.0] Bump version 2017-07-12 16:45:35 +02:00
Yavor Georgiev
5dd9264225
Add Realm.empty 2017-07-12 13:02:21 +02:00
Yavor Georgiev
1e58351ace
Don’t enter node::MakeCallback if we have a calling context
this means we already have JavaScript frames on the execution stack
2017-07-11 17:47:10 +02:00
Yavor Georgiev
fe756bdc86
Rethrow callback errors as fatal Node.js errors
Instead of rethrowing the JavaScript error emitted from a callback function, we should instead pass it to `node::FatalException`.

Callbacks are employed when there is no other JavaScript frame on the stack prior so rethrowing the JS error as a C++ exception is not going to propagate the error back to JavaScript. `node::FatalException` will raise the `uncaughtError` event on the `process` object , print the error and stacktrace, and alert the debugger is there is one attached. This would make our async callbacks behave consistently with Node’s own async callbacks such as `setTimeout` when encountering an error.
2017-07-11 17:47:09 +02:00
Yavor Georgiev
7b9c4eee46
[1.9.0] Bump version 2017-07-10 17:26:44 +02:00
Yavor Georgiev
1ba9b434b4 Add a new optional server parameter to User.adminUser (#1111)
* add a new optional server parameter to User.adminUser

This enables `User.openManagementRealm()` for admin token users.

* changelog

* API docs
2017-07-10 15:04:55 +02:00
Mark Rowe
89149c0a75 Make it possible to assign a List or Results to a List property once more (#1126)
* Make it possible to assign a List or Results to a List property.

The change made in #1069 to improve error messages when values of
incorrect types were assigned to a given property was being too
narrow in the types it accepted for list properties, allowing only
arrays. Lists and Results are now accepted once more.

* Update CHANGELOG.md
2017-07-10 13:45:49 +02:00
Yavor Georgiev
02c19bacb2 Close uv handles on the loop thread (#1125) 2017-07-07 14:50:34 +02:00
Marius Rackwitz
9e0a9a3bd3 Add support for accessing linking objects / backlinks (#1101)
* Add support for linkingObjects

* Test linkingObjects

* Borrow names helper from list tests

* include computed properties when serializing the schema for the RN debugger

* add API docs

* review comments

* Expose admin users to JS (#1100)

The JS binding used to conflate `SyncUser::is_admin()` with the user being created by calling `Realm.Sync.User.adminToken()`, but now that we expose a user’s role on the server under `is_admin()` this supposition is no longer correct.

#1097 attempted to fix one such case, but fixing it only uncovered another: in `UserClass<T>::all_users()`.  I’ve gone through all the callsites of `SyncUser::is_admin()` to make sure they don’t assume an admin token user.

* [1.8.3] Bump version

* add linkingObjects method to Realm.Object

* changelog
2017-06-29 11:59:10 +02:00
blagoev
f54487c6cc Rename the progress function to better reflect purpose
refactored registration code to remove the unneccesary lambda
2017-06-28 15:02:28 +03:00
blagoev
97f25cc1ab Add progress notifications
Support download progress notifications for Realm open and openAsync methods
2017-06-28 13:40:35 +03:00
Yavor Georgiev
1adabdd73e
[1.8.3] Bump version 2017-06-27 20:38:39 +02:00
Yavor Georgiev
7ab3aff82f Expose admin users to JS (#1100)
The JS binding used to conflate `SyncUser::is_admin()` with the user being created by calling `Realm.Sync.User.adminToken()`, but now that we expose a user’s role on the server under `is_admin()` this supposition is no longer correct.

#1097 attempted to fix one such case, but fixing it only uncovered another: in `UserClass<T>::all_users()`.  I’ve gone through all the callsites of `SyncUser::is_admin()` to make sure they don’t assume an admin token user.
2017-06-27 20:32:34 +02:00
Yavor Georgiev
e6818d693d
[1.8.2] Bump version 2017-06-26 13:49:50 +02:00
astigsen
db4e184524 Added method to find index of object in collections (#1094)
* Added method to find index of object in collections

* rework as the indexOf method
2017-06-26 13:43:49 +02:00
Yavor Georgiev
beda604425 Fix refreshing the access token of a logged-in admin user (#1097)
Fixes #1091
2017-06-26 12:03:48 +02:00
Yavor Georgiev
feba70333b
[1.8.1] Bump version 2017-06-20 16:27:05 +02:00
Mark Rowe
30e58022cf Include property names in type error exceptions thrown by Realm.create (#1069)
* Add and adopt `Value::is_binary` / `Value::to_binary` / `Value::from_binary`.

These methods allow conversions between `BinaryData` and the equivalent
JavaScript types without using `NativeAccessor`. Instead,
`NativeAccessor` now itself delegates to these methods.

* Have `NativeAccessor::value_for_property` and `RealmObjectClass::set_property`
verify that values are valid for the property in question.

If not, we throw an exception that includes the name and type of the
property in question.

`NativeAccessor` is changed to always hold a reference to a `Realm` and
an `ObjectSchema` in order to make this validation possible.

* Fix the Windows build.

* Remove an unused, incorrect forward declaration of a template class
  named `Realm` that caused ambiguity with object store's `Realm` class.
* Disambiguate between `realm::js::PropertyType` and
  `realm::PropertyType`.

* Update CHANGELOG.md
2017-06-20 14:40:01 +02:00
Adam Fish
37dba6bb36 Add objectSchema method to Realm Object (#1055)
* Add objectSchema property to Realm Object

* fix
2017-06-20 11:42:43 +02:00
Yavor Georgiev
28fe678a1b Use an uncached realm instance for _waitForDownload (#1083)
Fixes #1061
2017-06-19 13:58:19 +02:00