SDK compatibility issues between 2.5.12 and 3.x

We have an existing code base using the older couchbase python library (2.5.12).

We are looking to update to the latest available (couchbase 3.x) with as much backward compatibility as possible.

Currently, it seems like one of the biggest blockers for compatibility is the Exception names.

In 2.5.12 there were exceptions such as CouchbaseNetworkError CouchbaseTransientError. However in the latest versions these exception names no longer exist at all, and seem to have been replaced by similar (but not identical) CouchbaseNetworkException type names.

To update to the latest version of couchbase python lib, must we really go back and change update every exception used in our code?

Curious if there is an existing pattern that helps rectify some of these compatibility issues, making for a smoother upgrade from 2.5.12 to 3.x.


Hello @driseng do you think an existing list of Python exceptions will help you to begin with ?