Commit Graph

535 Commits

Author SHA1 Message Date
Scott Kyle 40855f789c Prevent accidental leak of RealmDelegate
If a binding context already exists, we make sure it's a js::RealmDelegate for the same JS context. If not, then we throw an exception because this could lead to serious trouble.

Also, we update the defaults and constructors only if new ones were provided.
2016-05-06 15:40:35 -07:00
Ari Lazier 513c0fee77 Merge pull request #416 from realm/al-ignored
Allow setting of non-persisted properties
2016-05-03 13:47:44 -07:00
Ari Lazier d26924e2f9 allow setting of non-persisted properties 2016-05-03 13:05:48 -07:00
Scott Kyle c8e7ddc3af [0.12.0-rc] Bump version 2016-05-03 12:06:15 -07:00
Scott Kyle 18a4d66903 Explicitly stop the RPCWorker in RPCServer destructor 2016-05-03 12:06:15 -07:00
Scott Kyle 32219cf0a3 Clear protected value maps in RPCServer destructor 2016-05-03 11:42:37 -07:00
Scott Kyle 741db2037f Merge pull request #407 from realm/sk-chrome-migration
All tests now pass in Chrome debug mode (including migration)
2016-05-02 16:19:09 -07:00
Ari Lazier 8eef37a46f remove extraneous quote 2016-05-02 12:57:15 -07:00
Ari Lazier 0d1b22b10d improve error message when specifying invalid schema 2016-05-02 12:45:42 -07:00
Scott Kyle e8cd20d7bb Use RPC callback mechanism for writes and listeners
The callbacks are stored by their id in the RPCServer so they are properly uniqued. This prevents the same callback from being added multiple times as a change listener.
2016-05-02 12:41:53 -07:00
Scott Kyle 889b762566 Allow protected values to be empty
This makes them much more friendly to being put inside of STL containers, like maps.
2016-05-02 12:33:20 -07:00
Scott Kyle dd23c66e69 Address some PR feedback with more comments 2016-05-01 14:35:18 -07:00
Scott Kyle 32a8a2ed72 Make migration tests work in Chrome debug mode
All realm operations for the RPC are now done in their own thread so it can be allowed to block on waiting for callback results. The recursive and multi-threaded nature of this makes it pretty tricky, but it works!
2016-04-29 13:55:49 -07:00
Ari Lazier 2b6b0b97f4 Merge pull request #406 from realm/al-workspace
Add workspace and clean up xcproject layout
2016-04-29 13:53:26 -07:00
Ari Lazier 5a9e24cb06 tab to space 2016-04-29 13:11:19 -07:00
Ari Lazier 0c05259558 remove old umbrella header 2016-04-29 12:58:25 -07:00
Ari Lazier c493a8070b add workspace and clean up xcproject layout 2016-04-29 12:00:40 -07:00
Scott Kyle 85919dc66f Fix realm.schema property in Chrome debug mode 2016-04-29 11:16:10 -07:00
Ari Lazier 2b35360117 add readOnly property 2016-04-28 15:50:43 -07:00
Ari Lazier b9b3812c86 support for read-only realms 2016-04-28 15:42:28 -07:00
Ari Lazier a2ed550dde Merge pull request #383 from realm/al-migration
Basic data migrations
2016-04-28 15:40:27 -07:00
Ari Lazier 2c85f032d9 compare non-existent properties to undefined 2016-04-28 13:21:30 -07:00
Ari Lazier af9b54074e pr feedback 2016-04-28 13:03:38 -07:00
Ari Lazier 79446f957a test and bug fixes 2016-04-28 12:44:48 -07:00
Ari Lazier cff099a4af tests and bugfixes 2016-04-28 12:16:16 -07:00
Scott Kyle 041530ee72 Add validate_read() check to Results::set_live()
If the Results is detached, then this can cause a crash.
2016-04-28 09:39:53 -07:00
Scott Kyle 0c4dfcb914 Fix InvalidSchemaVersionException message 2016-04-27 14:00:34 -07:00
Scott Kyle d4d5e28d26 Improve error message for non-object ObjectSchema 2016-04-27 14:00:14 -07:00
Scott Kyle ca87f5a3e0 Fix Node crash from calling function with empty this 2016-04-27 10:42:42 -07:00
Ari Lazier 8602787fc9 add schema getters 2016-04-27 08:31:05 -07:00
Ari Lazier fea0b69865 add support for non-memmber functions 2016-04-27 08:30:59 -07:00
Ari Lazier 17e5946af4 support for data migrations 2016-04-27 08:30:59 -07:00
Ari Lazier 588bbc327a remove un-needed usings 2016-04-26 17:40:56 -07:00
Ari Lazier 27d973151f pr fixes 2016-04-26 16:59:03 -07:00
Ari Lazier b59784670b create RealmObject class and make isValid a member 2016-04-26 16:30:04 -07:00
Ari Lazier 988f723f49 remove unnecessary catch block 2016-04-21 13:38:10 -07:00
Ari Lazier 3509caedd5 bugfix for empty results, fix for realm.isValid 2016-04-19 17:29:34 -07:00
Ari Lazier 6072061463 api to check if object has been deleted 2016-04-19 17:29:34 -07:00
Scott Kyle 2a58862070 Add test script for Node 2016-04-19 14:10:10 -07:00
Scott Kyle 8e5afeccc9 Fix another crash involving protected values 2016-04-19 03:58:23 -07:00
Scott Kyle 541791fd85 Fix crash by properly protecting JSC values
The previous implementation was lazy and ended up unprotecting values due to the move constructor being defaulted.
2016-04-19 03:18:02 -07:00
Scott Kyle 8ff23b5411 Fix build issues on Android
GCC was more strict with how we handled some types.
2016-04-18 18:30:55 -07:00
Scott Kyle fc49470b3c Fix for failing nested transaction test 2016-04-18 15:11:56 -07:00
Scott Kyle a0424c6600 Fix some styling of exception handling in JS wrappers 2016-04-18 15:11:36 -07:00
Scott Kyle 4731610a58 Merge branch 'master' into sk-node
* master:
  add keypath tests
  pr feedback, changelog
  typo
  bug fix
  tests
  support keypath comparisons for types that support it
  support for null queries
  don't require optional or link properties when creating objects
  [0.11.1] Bump version
  Update CHANGELOG with 0.11.1 fixes
  Update changelog script
  Remove changes_available implementation that asserts
  Get correct path to adb from Android Studio
  add some simple tests for Realm.write
  Update apps to use React Native 0.22
2016-04-18 14:19:06 -07:00
Scott Kyle 1ca5a43982 Revert TValue to ValueType, etc. 2016-04-18 12:18:13 -07:00
Scott Kyle 49e2b54151 Convert some more camelCase in js_realm.hpp 2016-04-18 12:17:45 -07:00
Scott Kyle 5c56a99403 Split up JS abstractions into type-specific files 2016-04-18 01:15:54 -07:00
Scott Kyle d57483c675 Rename js_object.hpp -> js_realm_object.hpp 2016-04-18 01:14:48 -07:00
Scott Kyle 10f08747e7 Rename remained camelCase to snake_case
And fix some minor build warnings along the way.
2016-04-18 01:01:04 -07:00