aragon.js icon indicating copy to clipboard operation
aragon.js copied to clipboard

App frontends should upgrade automatically to latest minor/patch, not major

Open kernelwhisperer opened this issue 6 years ago • 3 comments

If I have an app with the following versions:

 ✔ 2.3.0: 0x230bBCF5688552572B6117a99b7D6E97BF805d8c ipfs:QmaQXfJ6QaA5QiEsY3DqkpKAKKws4NeVDuyEcTL7cdmNX6
 ✔ 2.4.0: 0x230bBCF5688552572B6117a99b7D6E97BF805d8c ipfs:QmaZ2bgYZPuRHkMC8u4bQ5cHx3TLG9beGYpwbnrnL9cbmA
 ✔ 3.0.0: 0x230bBCF5688552572B6117a99b7D6E97BF805d8c ipfs:QmaZ2bgYZPuRHkMC8u4bQ5cHx3TLG9beGYpwbnrnL9cbmA

And I have installed the 2.3.0 version of this app in my DAO, the dapp will be fetching the UI for 3.0.0 because in aragon.js we call getLatestVersionForContract. Besides being counter-intuitive, couldn't this be dangerous?

kernelwhisperer avatar Dec 07 '18 07:12 kernelwhisperer

Besides being counter-intuitive, couldn't this be dangerous?

Yes, it was a choice we made to be pragmatic (to automatically opt users into frontend upgrades) at this point. In the future, aragon/aragon (and hence aragon.js) will provide a way for users to "pin" the frontend version their apps resolve to.

That being said, we may want to adjust this behaviour to only resolve different minor and patch versions based on a major version (e.g. similar to ^ in semver).

sohkai avatar Dec 10 '18 12:12 sohkai

Totally agree, and this is a feature we should introduce in the client, so people can just click a button to upgrade to the next version, but it should be an opt-in feature

luisivan avatar Dec 10 '18 15:12 luisivan

For the organization as a whole, this is blocked by it being able to hold onto a data blob, but for individual users we could cache some local settings if they want the client to stick to a particular major version of an app's frontend.

sohkai avatar May 18 '19 22:05 sohkai