I can see three mitigations or solutions that we could consider here:
Make the "deprecated banner" into a "download the new version banner", which shows with a green download button, and takes them to the correct version (they'd have to click Download again though on the new page). Then hide the downloads for the deprecated version, and make them accessible only by clicking a subtle link which does a javascript unhide of the content. I understand that we don't really need users to be able to access this version, but this is a generalised solution to deprecation that does work for all scenarios. Time to create solution: 1 hour. [done]
Add deletion infrastructure to the keyboards repository, such that we can add redirects for legacy, deleted keyboards, to their replacements. Ideally, there would be some sort of messaging on the final landing page that indicates why the user ended up at a keyboard that doesn't match what they clicked on. This requires changes to the keyboards repository, the website, and the api site, in order to work completely. Time to create solution: 1 week. [done]
Implement the automatic upgrade of deprecated keyboards in Keyman apps (all platforms). Time to create solution: 1 month.
I can see three mitigations or solutions that we could consider here:
Make the "deprecated banner" into a "download the new version banner", which shows with a green download button, and takes them to the correct version (they'd have to click Download again though on the new page). Then hide the downloads for the deprecated version, and make them accessible only by clicking a subtle link which does a javascript unhide of the content. I understand that we don't really need users to be able to access this version, but this is a generalised solution to deprecation that does work for all scenarios. Time to create solution: 1 hour. [done]
Add deletion infrastructure to the keyboards repository, such that we can add redirects for legacy, deleted keyboards, to their replacements. Ideally, there would be some sort of messaging on the final landing page that indicates why the user ended up at a keyboard that doesn't match what they clicked on. This requires changes to the keyboards repository, the website, and the api site, in order to work completely. Time to create solution: 1 week. [done]
Implement the automatic upgrade of deprecated keyboards in Keyman apps (all platforms). Time to create solution: 1 month.
Originally posted by @mcdurdin in https://github.com/keymanapp/keyboards/issues/650#issuecomment-478404149