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
With the recent upgrades to Spin, js2wasm, and templates, I feel the upgrade experience for all the different components have become complex to manage.
As an example I wanted to test new JS SDK features in 0.8.0, and I had to run three upgrade commands to get the tools:
Upgrade Spin using the install script. It's the same as a fresh install.
Upgrade templates. Running one command to upgrade templates from the JS SDK repo.
Upgrade the required plugin. In this case it was 'js2wasm'.
With more plugins coming (#1118 and #1129 as examples) and templates moving to more disperse places #1046, this will not be less complex going forward.
I don't have a good proposal for how to fix this, but I'd like to propose a few ideas, that Spin could benefit from to make this better:
All things versioned (Enables the user to see what's on my machine. Enables an tutorial / demo author to note and what's required to complete this - e.g., Spin vXYZ, Template XYZ vXYZ and plugin XYZ in vXYZ). Record template install version for flagging upgrades #1126 Is referring to this for templates.
Introduce a single command to get latest. E.g., Latest Spin, installed templates and installed plugins. For anyone trying out, or returning after a while, this would make it easier if wanting to test new features.
Single command to get versions of what's installed. Today I have to run three commands to see versions of what's installed (spin -Vspin plugins list and spin templates list). All of these commands are inconsistent in how they tell you about versions. First one show the installed version, second shows no version and third shows all versions available (not only installed).
There might be more scenarios or considerations to simplify this end-to-end. Hope to get good comments and ideas.
The text was updated successfully, but these errors were encountered:
I definitely agree with the goal here but I want to highlight that not being monolithic is intentional - we want to see an ecosystem of components, plugins, and templates, and we cannot control their release cadence. That is of course no excuse for inconsistency or for lacking a centralised view of "what do I have and is it up to date." But it needs to work with the assumption that everything is moving at different times and at different paces.
(That is not inconsistent with having an "upgrade the world" command - just that the "upgrade the world" command needs to presume that the world is heterogeneous.)
$ spin doctorChecking for a new Spin release...*** You're on the latest Spin release!Checking for plugin updates...!!! Plugin 'js2wasm' has an update available (0.1 -> 0.2).!!! Plugin 'fermyon-cloud' has an update available (1.0 -> 2.0).Would you like to upgrade these plugin(s) now? [y/N] NoOK; you can update plugins at any time with `spin plugins upgrade`.Checking for template updates......
And maybe a way to declare the plugins and templates you want with your Spin install, and make that the base for an "upgrade my world" / "install/restore my world" experience. There must be good and bad examples out there for how other eco-systems does this :-)
With the recent upgrades to Spin, js2wasm, and templates, I feel the upgrade experience for all the different components have become complex to manage.
As an example I wanted to test new JS SDK features in 0.8.0, and I had to run three upgrade commands to get the tools:
With more plugins coming (#1118 and #1129 as examples) and templates moving to more disperse places #1046, this will not be less complex going forward.
I don't have a good proposal for how to fix this, but I'd like to propose a few ideas, that Spin could benefit from to make this better:
spin -V
spin plugins list
andspin templates list
). All of these commands are inconsistent in how they tell you about versions. First one show the installed version, second shows no version and third shows all versions available (not only installed).There might be more scenarios or considerations to simplify this end-to-end. Hope to get good comments and ideas.
The text was updated successfully, but these errors were encountered: