Thomas Goyne
b381437a45
Make Realm::compact() more robust
...
Throw if it's called on a read-only Realm and ensure the Realm is left in a
valid state regardless of the starting state.
2015-09-09 11:25:55 -07:00
Thomas Goyne
6133eebf8b
Reduce the scope of a variable
2015-09-09 11:25:55 -07:00
Thomas Goyne
0c111a2035
Fix a comment
2015-09-09 11:25:55 -07:00
Thomas Goyne
ba278c5d4f
Fix checks for what types of columns can be optional
2015-09-09 11:25:54 -07:00
Thomas Goyne
7de20ea3a6
USe more const refs to avoid copies
2015-09-09 11:25:54 -07:00
Thomas Goyne
dbac77f69b
Make a bunch of things const
2015-09-09 11:25:54 -07:00
Thomas Goyne
14004504b1
Remove an unused function
2015-09-09 11:25:54 -07:00
Thomas Goyne
06e0ff8373
Share ExternalCommitHelpers between Realm instances for a single path
2015-09-09 11:25:54 -07:00
Thomas Goyne
f79dec9033
Allow more nullable property types when supported
2015-09-09 11:25:54 -07:00
Thomas Goyne
0eb0bd14d7
Honor is_nullable when creating columns
2015-09-09 11:25:54 -07:00
Thomas Goyne
ea5c47510b
Refactor schema initialization a bit
...
Change schema verification to operate on a pair of Schema objects rather than a
Schema and a Group to eliminate some redundant work done, defer some of the
work done for migrations to within the migration block to avoid doing it
unnecessarily, and make passing in a custom schema in the Config when creating
a Realm entirely equivalent to calling update_schema() afterwards.
2015-09-09 11:25:54 -07:00
Thomas Goyne
e4f29fe221
Move the interprocess notification functionality to the object store
2015-09-09 11:25:53 -07:00
Thomas Goyne
b129ebe8c1
Shuffle stuff around and clean some things up
2015-09-09 11:25:53 -07:00
Thomas Goyne
eeb2ddd794
Improve array KVO performance a bit
2015-09-09 11:25:53 -07:00
Thomas Goyne
c3649fbd17
Skip PK uniqueness checking when first creating a Realm file
2015-09-09 11:25:53 -07:00
Thomas Goyne
0a41c85d0a
Improve performance of realm_requires_update() and make more things const
2015-09-09 11:25:53 -07:00
Thomas Goyne
efdfa08524
Port some of the KVO support functionality to the object store
2015-09-09 11:25:53 -07:00
Thomas Goyne
65e1eb5d08
Add the ability to bypass the Realm cache entirely
2015-09-09 11:25:53 -07:00
Thomas Goyne
3f226cf342
Rework change notifications
...
Switch to an abstract class rather than std::function in preparation for having
more kinds of notifications with different arguments for KVO.
2015-09-09 11:25:53 -07:00
Thomas Goyne
045c7b2066
Add Realm::get_schema_version()
2015-09-09 11:25:52 -07:00
Thomas Goyne
e4377bb42a
Change realm::Schema to a vector rather than a map
...
Much faster to copy and destroy with no loss in lookup performance.
2015-09-09 11:25:52 -07:00
Thomas Goyne
cae4cf2fc0
Remove property.hpp include from object_schema.hpp
2015-09-09 11:25:52 -07:00
Thomas Goyne
55e6cca243
Convert RLMRealmConfiguration to a wrapper around Realm::Config
2015-09-09 11:25:52 -07:00
Thomas Goyne
563a8374d0
Use NSDMIs for realm::Property
2015-09-09 11:25:52 -07:00
Thomas Goyne
0ae1bb188e
Don't cache dynamic realms in the ObjectStore cache either
2015-09-09 11:25:52 -07:00
Thomas Goyne
25a6734111
Eliminate some copies
2015-09-09 11:25:52 -07:00
Thomas Goyne
45890f2772
Use NSDMIs for Realm
2015-09-09 11:25:52 -07:00
Thomas Goyne
348f4a7b39
Reduce s_init_mutex's scope
2015-09-09 11:25:51 -07:00
Thomas Goyne
b4f856bdd0
Use NSDMIs for Realm::Config and make it moveable
2015-09-09 11:25:51 -07:00
Thomas Goyne
a91839bf7e
Store a copy of the encryption key
2015-09-04 11:51:19 -07:00
Ari Lazier
0700428945
Merge pull request #3 from realm/al-bugfixes
...
Bugfixes from the cocoa branch
2015-08-13 09:45:36 -07:00
Ari Lazier
b0843356dc
clear Realm cache between tests
2015-08-13 09:42:21 -07:00
Ari Lazier
cb8364c255
property copy schema from cached realms
2015-08-13 09:42:21 -07:00
Ari Lazier
8712c8bc2c
fixes for latest object store changes
2015-08-13 09:42:21 -07:00
JP Simard
453e4d8277
Fix crash when adding a property to a model without updating the schema version.
2015-08-13 09:42:21 -07:00
Ari Lazier
043f5ff4ab
Merge pull request #1 from realm/al-realm
...
SharedRealm object with support for transactions and notifications
2015-08-10 09:23:11 -07:00
Ari Lazier
6ef8e214f3
move exception message creation to exception constructors
2015-07-30 12:22:01 -07:00
Ari Lazier
136f9a4640
add more object_schema validation
2015-07-28 12:17:58 -07:00
Ari Lazier
373375fa1b
cleaup schema initialization
2015-07-28 12:17:58 -07:00
Ari Lazier
e9379491d6
fix for swift issues
2015-07-28 12:17:57 -07:00
Ari Lazier
94c7ea512f
update to newest object store apis
2015-07-28 12:17:57 -07:00
Ari Lazier
eb2b079e2a
pr fixes
2015-07-28 12:17:57 -07:00
Ari Lazier
d8e9d36c88
rebase fixes
2015-07-28 12:17:57 -07:00
Ari Lazier
2a0a5d234f
run migrations and schema update through new Realm apis
2015-07-28 12:17:56 -07:00
Ari Lazier
60700ba121
first pass refactor of RLMRealm to c++
2015-07-28 12:17:56 -07:00
Ari Lazier
68296d04b7
undef INFO_KEY macro after use
2015-07-28 12:17:16 -07:00
Ari Lazier
26f1a0a4c8
support exception format strings
2015-07-28 12:17:16 -07:00
Ari Lazier
3874860d50
allow replacement of work 'property' in default exception messages
2015-07-28 12:17:16 -07:00
Ari Lazier
c3e82a58ae
use enum for dict/info keys, support per platform/language exception messages
2015-07-28 12:17:16 -07:00
Samuel E. Giddins
a29037b47f
[ObjectStore] No need to template set_value, it can be overloaded
2015-06-24 11:19:43 -07:00