ubuntu-phone team mailing list archive
-
ubuntu-phone team
-
Mailing list archive
-
Message #09303
Re: Preferred Settings API for Ubuntu apps
I agree with what Michael said. Qt labs settings turned out to be a very
simple drop-in solution for some basic setting storage we required in an
app that we're developing. I had a look at the comparison document, and I
also agree that the upstream implementation seems much simpler/more
compact. I do not have much experience with U1Db, so I can't express
opinion on that end, but I found Qt labs settings to be simple and
convenient way to store (at least basic) settings.
I also like the idea that mhall suggested regarding wrapping the upstream
component (if that would be feasible).
Thanks,
karni
On Thu, Jul 31, 2014 at 8:12 PM, Michael Hall <mhall119@xxxxxxxxxx> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> The Qt.labs API definitely seems simpler, and has the advantage of
> being compatible with other Qt-supported platforms. On the other
> hand, the propose Ubuntu Settings API has the added advantage of being
> able to specify persistence and syncing on a per-group basis.
>
> Would it be possible for the Ubuntu Settings to simply wrap the
> Qt.labs.Settings and add the persistence and sync properties? That
> way developers can target it without having to change anything else in
> their app, and also giving us the option of continuing that component
> if upstream drops Qt.labs.Settings, of if it becomes official and
> changes namespace we can simply update our component, app developers
> wouldn't have to do anything.
>
> Michael Hall
> mhall119@xxxxxxxxxx
>
> On 07/29/2014 12:26 PM, Christian Dywan wrote:
> > Hey everyone,
> >
> > the subject of settings has come up again recently and there've
> > been Ubuntu.Components Settings under development which were
> > blocking on CI for some time. Whilst it was under development some
> > people tried out the new Qt.labs.settings which then came out. So
> > it makes sense to review both fully side by side now to see what
> > technology we prefer for storing app settings.
> >
> > Zsombor, Florian and I discussed it initially. Nekhelesh, Michael,
> > Olivier and Michał got a chance to see it to get obvious questions
> > sorted out. Finally we want all interested app devs to have the
> > chance to check it out, and review it before making a decision.
> >
> > The basic requirements are 1) Store app settings 2) Easy to use 3)
> > Can later be extended to support sync with the cloud
> >
> > Both Ubuntu.Components Settings (based on U1Db) and
> > Qt.labs.settings (exchangeable backends) can feasibly be updated to
> > support sync in the next iteration - based on the technical
> > evaluation.
> >
> > Qt.labs.settings is officially experimental API and not supported
> > by Qt. But it would make apps work more easily with other Qt
> > platforms which is an obvious advantage. So that's the kind of
> > compromise choosing Qt.labs.settings would mean.
> >
> > This nice document was prepared by Florian with examples at the
> > bottom comparing side-by-side the different APIs
> >
> > Please everyone interested have a look
> >
> >
> https://docs.google.com/a/canonical.com/document/d/1ZC4whqRT1Hf1xg7czvElUWSJ6JzkKMdWamt56Vhl1eU/edit#heading=h.132afdtxso0j
> >
> > Question to all reviewers
> >
> > - Which API do you prefer given the examples and features for use
> > in all of your apps - Please point out any benefits and drawbacks
> > you see with either API and reply to this thread
> >
> > Regards, Christian
> >
> >
> >
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1
> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>
> iQIcBAEBCAAGBQJT2ob4AAoJEInUYcGJgfVy4qgQAKQ91BOclb9tf+2NDN1sbss9
> rM7y1mFvbwP2xSN+33QY7ZUlz7UXm/BbalizqUfQB5nymch4IUXk8otFzKaSafQq
> Cfn3e0sESrvbgx3gfg8HaigVnskK+sEHbcrnGmIARffEZcIQ5em0NveNxRftCrDR
> QlTxJk7no6rB4Jhm2aB6HAPadc69WnnHvEnsS3mLaa/zGCA8LW1dhyMFwXiGYpoT
> O3pHiv7vTfkUzt2/tby/m8KsXNYU4cn9Vwc0d+2AVDNjjOM0vcc9Pezi0NmxJfjW
> jNQK2RdWx0NwZZEwyj1TkyBq5Zzz5zbVEKdDGJa5oEsds0rf7AxyuuqXxql5BgX2
> qcJZRsPzGGCdATgHiEtAOJ0eKG3ePhkBa9VbraMGtkF7vTNH7O/8RLTklmnvnYoF
> d1M1LGGcb6svi+yUxr3xev9KkpHZH4Uzl2+xsZqyo8gcFjD4gYidJysFmY6Mhwcd
> fNNAJw3+ZpWcq+Qf+8e7lopAFdeEUvJxc5QSGx4Tj337D6qECIJljVyxpZBNUYMc
> G6jNWliFpDgsgUPwBoZvUyY+cbLdFhHlyt6dEEmK4LDPabOorGxI1peexMkLn8Pt
> yWCivHTTbDc7G0XnQBi/waCwiMJZC80xCX0dqY2nCSHJoFnhEE0r5dEk+Or/tz2T
> drUaeV1EVFS7tKISqTEB
> =SD2o
> -----END PGP SIGNATURE-----
>
> --
> Mailing list: https://launchpad.net/~ubuntu-phone
> Post to : ubuntu-phone@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~ubuntu-phone
> More help : https://help.launchpad.net/ListHelp
>
--
Software Engineer
Professional and Engineering Services
Canonical Ltd.
Ubuntu - Linux for human beings | www.ubuntu.com
References