IOS CBL and Catalyst

Did you ever figure out how to get past the “no library for this platform was found” error? I’m trying to compile for Mac Catalyst now with CBL 1.4.x.

So it seems that you can’t build the CI MacOS scheme in Xcode for Catalyst. You have to build the CI iOS scheme and enable Mac catalyst support on it. Then you can choose the Mac to build it in the schema popup menu. But this brings with it a host of problems with deprecated spin lock methods in memleak.cc and missing Endian.h in PSWebSocketDriver and who knows what else.

I really wish that Couchbase hadn’t abandoned CBL 1.4 or at least in CBL 2.x added support for CouchDB sync, which is the reason why I’m still on 1.4.x.

My dreams of using Catalyst may be shot.

Why aren’t you using the Sync Gateway at the sync endpoint with CBL clients ? The web sockets based 2.x replication protocol is vast improvement over the 1.x HTTP based version in terms of resource utilization (full duplex), efficiency (messaging overhead) and perf. Also gives us the ability to evolve the protocol with advanced capabilities like delta sync, conflict resolution etc

I wish I could. But I don’t host my customers’ sync data myself. I don’t want to have to manage a server environment that my customers use. They take care of syncing themselves either with IBM Cloudant, Apache CouchDB, Peer to Peer, or iCloud sync (which I built on top of CBL). My app is a consumer app, not an enterprise app. Anyone can buy it on the iOS and Mac App Stores. Does Sync Gateway even have a web GUI for configuration like CouchDB does with their Fauxton web interface? My customers span the full gamut of ages and experiences. So having them setup their own Couchbase Server and Sync Gateway is too much for them to have to learn. At least with CouchDB there’s a double-clickable Mac app and a web interface for configuration and it’s not too difficult with the instructions I wrote up for it.

I understand that CBL 2.x probably has a much better sync solution, but the amount of work necessary to migrate to 2.x would seem daunting to me. Did you even add CBLModel to it? I rely heavily on that in my app.

Are they any news on that?

It is still very important, are you working on that @jens?

Catalyst is not a high priority right now, but we will look at it as soon as we can.

This Jira ticket will show the progress. If there is any update happened, will update it CBL-399

A related update - Mac Catalyst support is available in Couchbase Lite 2.8.4. This is distributed as .xcframework via our downloads page or via Swift Package Manager.

1 Like