REPRODUCIBILITY: Update to 3.4.0.22
BUILD ID: 3.4.0.22
HARDWARE (Jolla1, Tablet, XA2,…): Xperia X
UI LANGUAGE: N/A
REGRESSION: Yes
DESCRIPTION:
python3-sqlite (and quite possibly other sqlite bindings) is missing since the update, this breaks both OS apps (Wireless connections, Contacts) and 3rd party apps (gPodder)
PRECONDITIONS:
STEPS TO REPRODUCE:
Update to 3.4.0.22
Open gPodder/contact/wireless settings
EXPECTED RESULT:
See subscriptions/contacts/known networks
ACTUAL RESULT:
Nothing found
ADDITIONAL INFORMATION:
This can be resolved by running devel-su pkcon install python3-sqlite but obviously normal users should not need to do that.
An additional data point: I can confirm this affects my application SailSync ownCloud. The fix is easy enough, I guess it’s a matter to determining what the “right” way to fix it is (e.g. OS ship with the package, or that I set it as a runtime dependency in the RPM).
OS level apps depend on this too and are broken so of course the OS needs to ship it, that being said we will add python3-sqlite as an explicit dependency for gPodder to prevent this.
So adding the python3-sqlite dependency for harbour is a no-go it’s not allowed, but at least OpenRepos users can have a better (non-breaking) experience.
Contacts, Wireless connections, VPN connections, call history, SMS history are all stored in sqlite databases and there are a ton of topics open about those things being “lost” after the update.
Personally I did not verify each and every one of them but I did see my wireless stored connections were gone until I installed python3-sqlite.
In short - major f*ck up by someone preparing the release to leave out such a basic lib.
/Edit it could of course be that those apps use different sqlite bindings that were also not installed properly however when I ran the manual install python3-sqlite was the only package being installed so that does not seem to be the case.
It could be that the install of the python3 bindings fixes a broken install of other language bindings.
Maybe the install didn’t happen in the first place due to an error during updates to sqlite.
Figuring that out is the sailors jobs until Jolla decide to become more open.
Your reaction also places us (the app devs) in an untenable position, it can’t be that a basic lib that always shipped with the OS stops shipping for no good reason and that we also can’t specify it as a dependency on harbour. I have been releasing a harbour compatible and a more feature rich version of gPodder on OpenRepos for the past year but if I can’t fix the app for users by defining proper dependencies on harbour I’ll be forced to pull it.
The reason it’s not allowed is exactly that - if we allowed it, we would be basically promising that it will be there forever. Adding new packages to the list of allowed dependencies is something that we don’t do on a whim, but it’s always a result of careful consideration.
We are not talking about a crazy application or library here, we’re talking about python sqlite bindings.
Python is at this point an officially supported language for developing on SFOS and it’s bindings to sqlite which is used extensively on the system are basic functionality.
I don’t disagree with you here. The way I see is that allowing dependency to python3-sqlite in harbour would be enough to fix the apps - would you agree?
I just went through the changelog and I think I found the culprit:
[Python3] Drop sqlite to ease up bootstrapping.
(…)
[python3] Package sqlite in a separated package.
Meaning as far as I understand that until now the python3 package was compiled with sqlite bindings and now it became a separate package, I’ll try and verify this on my old Jolla 1 which I haven’t yet updated later.
Thanks @vige for the prompt action python3-sqlite is now an allowed dependency.
Vige or someone else is there a way to do SFOS version in the dependencies because SFOS < 3.4 does not have python3-sqlite and harbour does not allow setting a package for SFOS >= 3.4.
python3-sqlite does not seem to e available for me?
pkcon install python3-sqlite
Resolving [ ] (0%) Package not found: python3-sqlite
Command failed: This tool could not find any available package: No packages were found