You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We are developing a .NET MAUI app for iOS and Android, and we're seeing an issue where a DllNotFoundException is thrown from within the 3rd party library's "support" library when we attempt to construct a new Couchbase.Lite.Database instance.
Here is the stack trace:
at
Couchbase.Lite.Logging.FileLogger.SetupDomainObjects()
at Couchbase.Lite.Logging.FileLogger..ctor()
at Couchbase.Lite.Logging.Log..ctor()
at Couchbase.Lite.Database..cctor()
This exception is only thrown for Release target builds, so I had the idea to add the MtouchInterpreter.
This fixes the problem:
<PropertyGroup Condition="$(TargetFramework.Contains('-ios')) and '$(Configuration)' == 'Release'"> <MtouchInterpreter>Couchbase.Lite.Enterprise.Support.iOS</MtouchInterpreter> </PropertyGroup>
this fix is more of a workaround with the downside of performance issues
the core issue could be fixed by the library author, with the proper support from the community
The library repo is here: https://github.com/couchbase/couchbase-lite-net
I raised a support ticket with Couchbase, and they are working on it, but they tend to beleive that it is a problem with Microsoft’s toolchain. They asked me to initiate a discussion here.
Description
We are developing a .NET MAUI app for iOS and Android, and we're seeing an issue where a DllNotFoundException is thrown from within the 3rd party library's "support" library when we attempt to construct a new Couchbase.Lite.Database instance.
Here is the stack trace:
at
Couchbase.Lite.Logging.FileLogger.SetupDomainObjects()
at Couchbase.Lite.Logging.FileLogger..ctor()
at Couchbase.Lite.Logging.Log..ctor()
at Couchbase.Lite.Database..cctor()
This exception is only thrown for Release target builds, so I had the idea to add the MtouchInterpreter.
This fixes the problem:
<PropertyGroup Condition="$(TargetFramework.Contains('-ios')) and '$(Configuration)' == 'Release'"> <MtouchInterpreter>Couchbase.Lite.Enterprise.Support.iOS</MtouchInterpreter> </PropertyGroup>
Based on my read of this issue about MtouchInterpreter, I conclude that:
The library repo is here: https://github.com/couchbase/couchbase-lite-net
I raised a support ticket with Couchbase, and they are working on it, but they tend to beleive that it is a problem with Microsoft’s toolchain. They asked me to initiate a discussion here.
Based on this historical post in the Couchbase community, I tried upgrading workloads, but it didn't fix anything.
I'm using workload version 8.0.406.
Steps to Reproduce
Clone this repo for the .NET MAUI Hello World project that I’ve modified: https://github.com/tele-bird/CouchbaseLiteExample
Remove the workaround (i.e. comment-out the lines in the .csproj file that adds the MtouchInterpreter)
Modify info.plist to use a bundle ID that you can sign via a provisioning profile on your dev box
Select the Release target
Build and deploy the app to your iPhone or Mac
Click the Click me button
Link to public reproduction project repository
https://github.com/tele-bird/CouchbaseLiteExample
Version with bug
Unknown/Other
Is this a regression from previous behavior?
Not sure, did not test other versions
Last version that worked well
Unknown/Other
Affected platforms
iOS, macOS
Affected platform versions
No response
Did you find any workaround?
workaround discussed above
Relevant log output
The text was updated successfully, but these errors were encountered: