I just came across this, an object created & persisted in another context still had a temporary ID assigned to it, which caused MR_inContext to get a Cocoa 13300 Error.
I dont have the time to make a pull request at the moment (I've not even got a personal fork of Magical Record at the moment), but here is the code I did to fix this problem.
NSError *error = nil;
BOOL success = [self.managedObjectContext obtainPermanentIDsForObjects:@[self]
error = nil;
NSManagedObject *inContext = [otherContext existingObjectWithID:[self objectID] error:&error];
Thank you! This fix really helped me.
Since I had to fork the repo, I went ahead and submitted a pull request. #378
Dammit I submitted this as a pull request ages ago and it was rejected. I think I'm done helping MagicalRecord.
I'm not sure why your original pull request was closed without explanation, but I'll find out and we'll get this sorted out. It's possible that it was closed because the pull request was made against the master branch, and not develop where we merge in changes before release, but you should have been provided an explanation.
I should leave it at that… while I can understand your frustration over your fix not being merged, looking after this project is an unpaid gig, and there are only 3 of us on the team. Mistakes and oversights happen, and over the last month or so the focus was on fixing up problems with the save methods. The best we can do is apologise and do our best to prevent this from happening again.
That came out way grumpier than it should have done, so I apologise (this is after a few fairly involved twitter / app.net discussions). I shouldn't post before I've had my morning coffee.
side note: I dont actually use MagicalRecord, but I have looked at it in the past so any fixes I do post are usually just to help out :)