Problem/Motivation
The built in module/theme update feature is great as it greatly decreases the amount of work and the time a site has to be down when updating a lot of modules.
A problem though is that it doesn't take into account which version of a project you are using and can easily end up downgrading a modules, which in turn can lead to the website breaking.
When opening the Update page you get a list of all items for which there are updates available. This list seems to be based on "Recommended version" and it only lists one item per project.
Thus if your installation is using a dev version, but there is an older recommended version, then you can't use this feature because the dev version is not possible to select.
Also, the page is not showing dates, so you really need to have the Available Updates page open as well and switch back and fourth between them.
This feature needs to be smarter and realise that if the installed version is a dev version that is newer than the recommended version, then it is very likely the dev version it should update to.
For experienced users it is not a problem to make sure the correct modules are updated and then manually do the ones that would have been downgraded. Not so experienced user are bound to run into problems with this though.
Proposed resolution
In these cases there should be two options, using radio buttons, so it is easy to select which version to update to for individual projects.
When clicking the "select all" checkmark, it should also default to the newer dev version (if the installed is a dev version newer than the recommended).
These multiple choice updates should also be easily to spot in the list, either by its own colour or grouped together at the top of the list.
Then when clicking Download it should be smart enough to detect any accidental downgrades and ask me if I really want that. On the same screen I should be able to change the choice for those modules detected to be downgraded.
Remaining tasks
- Come to a consensus on the UI, proposed solutions:
- Use radios for upgrading dev versions to give the user the option of selecting between dev and stable
- Different colors or some other differentiation for dev versions OR
- Group dev versions apart from stable releases
- Write/fix patch for D7
- Write patch for D8