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
Settings are currently written in INI form via QSettings. This includes important, potentially irreplaceable information like the contacts list.
QSettings is a known-buggy mess of technical debt. Most notably, it truncates before writing and on a variety of read errors, meaning all settings can easily be lost (https://bugreports.qt-project.org/browse/QTBUG-21739).
JSON + QSaveFile is a much safer solution that is still easily readable and hand-modifiable.
The text was updated successfully, but these errors were encountered:
QSettings has been used to store configuration, including critical data
like the contacts list. But it is flawed: lack of atomic writes can result
in data loss, the ini format is limited and crappy, the API is awful,
and there is no easy way to support QML or bindings.
This system addresses these concerns with a new JSON-based settings API.
It can be exposed to QML, supports change notification, always uses
atomic writes, and improves the read/write APIs.
Fixesricochet-im#21
special
added a commit
to special/ricochet
that referenced
this issue
Jul 16, 2014
QSettings has been used to store configuration, including critical data
like the contacts list. But it is flawed: lack of atomic writes can result
in data loss, the ini format is limited and crappy, the API is awful,
and there is no easy way to support QML or bindings.
This system addresses these concerns with a new JSON-based settings API.
It can be exposed to QML, supports change notification, always uses
atomic writes, and improves the read/write APIs.
Fixesricochet-im#21
Merging into v3-2020-alpha to consolidate future development in the main repo. Changes have been made to the build process, hence the Travis CI build error. This will be fixed once further updates are completed.
Settings are currently written in INI form via QSettings. This includes important, potentially irreplaceable information like the contacts list.
QSettings is a known-buggy mess of technical debt. Most notably, it truncates before writing and on a variety of read errors, meaning all settings can easily be lost (https://bugreports.qt-project.org/browse/QTBUG-21739).
JSON + QSaveFile is a much safer solution that is still easily readable and hand-modifiable.
The text was updated successfully, but these errors were encountered: