After these aside-y questions, let’s go on investigating the error.
└─$ cd /usr/local/lib/python3.11/dist-packages/bench/patches/v5/
└─$ ls -l
-rw-r–r-- 1 root root 425 Aug 29 20:21 fix_backup_cronjob.py
-rw-r–r-- 1 root root 1806 Aug 29 20:21 fix_user_permissions.py
-rw-r–r-- 1 root root 0 Aug 29 20:21 init.py
drwxr-xr-x 2 root root 4096 Aug 29 20:21 pycache
-rw-r–r-- 1 root root 135 Aug 29 20:21 set_live_reload_config.py
-rw-r–r-- 1 root root 1342 Aug 29 20:21 update_archived_sites.py
fix_user_permissions.py looks like a candidate for a missing “salt” field, as “salt” most of the time relates to securing passwords.
Ah, and the installation currently doesn’t allow login. “verifying …” endlessly.
└─$ grep salt fix_user_permissions.py
└─$ grep salt *.py
Now what? Where are older patches?
└─$ cd … (here are two dots only, not three as in the rendering of the discuss software)
Here there is a mismatch with the version bench version reported:
└─$ bench version
So there seems to be a relict from a formerly installed frappe version from the 15.0.0-dev branch.
It seems the installation has been downversioned at some point.
But why was the version in apps.json not updated to the 14.47.0 version? Is this a bug? Or a feature permitting such kind of “forensic” exercise?
This might have to do with the missing salt field.
So maybe I should investigate the migration patches of the 15.0.0-dev version to see if there is a clue.
But then, can this be solved, and how? Gracefully, that is. (Scrapping is too easy if you want to really understand.)
Other people had the same error and suggested solutions, for instance:
There are some insights to be found there (like in similar threads), but the solution wasn’t enough in my case: another missing field (device) was raised in an error.
So I decided to scrap some non-functioning instances and enjoyed practicing
and observe it’s functioning, speed, hard disk strain, results, etc.