Closed cjohn001 closed 1 month ago
I'm also blocked from updating the CLI to 8.8.x because the same exact issue.
@eric-sandstrom: If you are also using the commercial version of the SQLite database (encrytion module), one note here. I am currently in touch with Nathan A. He is currently investigating the issue. According to first feedback, it seems like the cli is broken rather than the plugin.
@cjohn001 Yes I do use all these paid modules. I actually emailed him 30min ago so good that you are in touch already! :)
Hello together, attached you find a workaround for the nativescript-sqlite-encrypted plugin. As the plugin is closed source I can unfortunately only provide you with an explanation on how to fix it. Please note, according to the SQLCipher homepage the latest version of SQLCipher should be compatible with the commercial plugin, however, bear in mind that my version uses SQLCipher 3.46.1 in case you run into issues. An explanation to build a different version from source is provided in the zip archive as well.
How to fix: Get a copy from nativescript-sqlite-encrypted from node_modules and copy the folder to your application directory. Than replace SQLCipher.framework in platforms/ios with the SQLCipher.xcframework from here. The archive also includes the sources, so you do not need to trust my binary :) Optionally, you can also add the types. However, they are not required to get encryption back running.
Finally you need to switch to the modified plugin in package.json
"nativescript-sqlite-encrypted": "file:nativescript-sqlite-encrypted"
Hope this helps till the package maintainer releases an update. I believe this is not an issue of Nativescript, but with the way the framework file in the plugin was built. I assume it breaks because of the switch to swift and xcframeworks. There was an error report on the sqlcipher homepage which brought me to the idea to rebuild it, see section about "Preprocessor Macros" when using swift https://www.zetetic.net/sqlcipher/ios-tutorial/
Issue Description
Hello together, I have tried upgrading my NS Angular app to nativescript version 8.8.0. I am able to build and run the app with the nativscript 8.7.2 CLI and the new core 8.8 as well as ios runtime packages. However, when upgrading the CLI to 8.8 I get the following error at runtime. Hence, definitely a problem with the CLI. Seems like the SQLCipher is not linked into the app.
NativeScript loaded library /Library/Developer/CoreSimulator/Volumes/iOS_21F79/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 17.5.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libsqlite3.dylib SQLCipher does not seem to be linked into the application
I have no idea how to resolve this issue. Would be great if someone could provide some directions.
Please note, in the environment attached below you see 8.7.2 as I have already downgraded the CLI to get things back running. The relevant CLI version I installed was 8.8.0
Best regards, Christoph
Reproduction
No response
Relevant log output (if applicable)
No response
Environment
Dependencies
Please accept these terms