In theory, this should have already been handled by the
YapDatabaseRelationship extension via edges.
However, in practice, there were situations (cause unknown) where
interactions would exist without an edge to their corresponding thread.
Rather than being clever with the edge/callback machinery, now threads
explicitly delete all their interactions, and interactions delete all
their attachments (when applicable).
Also, a class to clean up spurious interactions / attachments
In the process:
- refactored TSYapDatabaseObject init to specify designated initializer
- added some testing niceties to TSYapDatabaseObject
// FREEBIE
* Use SocketRocket pluggable policies
Pluggable policies are currently only in our fork, but pending upstream
PR: https://github.com/facebook/SocketRocket/pull/429
Also:
* rebased SocketRocket against latest upstream to incorporate bug fixes.
* adapt to new upstream API for error handling (vs previous exception throwing)
* renamed AFSecurityOWSPolicy -> OWSHTTPSecurityPolicy to differentiate
it from OSWWebSocketSecurityPolicy
* Follow conventional singleton pattern with onceToken
* bump xcode version to play nice with SWIFT_NAME in SocketRocket
// FREEBIE
While trying to pull in upstream changes to our fork of SocketRocket I
noticed we're publishing it/installing it from CocoaPods trunk, but
there's no need to do that.
Also, due to upstream refactoring, the actual included file has
changed.
// FREEBIE