datascript
datascript copied to clipboard
Transacting a refid not corresponding with any datom eids should fail?
The following transaction fails in Datomic, but not DataScript:
[[:db/add (d/tempid :db.part/user -1) :some.ref/attr (d/tempid :db.part/user -2)]]
This means a little bit of extra work automatically syncing Datomic and Datascript, at least if you want to try to catch and handle quirks like this.
There are obviously plenty of other points where DataScript is intentionally different from Datomic, and if this isn't something you want to move towards parity on, I'm fine with that. But perhaps we should have a more comprehensive list of subtle behavior differences like this on the wiki? This could start off with what's at the bottom of the README, but try to encompass a broader range of subtler differences, such as #166, #187, etc. I'm happy to start this if you like.