After the significant improvements to Drupal 7, I assume that within a couple of years, more and more people will be able to (and choose to...) maintain Drupal sites whose contributed modules are all in stable versions (or at least no -dev versions), with no customizations to the module code. Many can have this as their strategy to keep costs down, security high, and simplicity as the rule.
I hope and think that Drupal 8 will in this respect mean a new era for many existing and new Drupallers.
With this in mind, I think it would be very practical if all we needed in order to restore a fully functional version of an old Drupal installation as it was at the time the backup was made, was the database backup and not any of the system files.
A single Drush command could fetch both the right Drupal core version, each specific version of the contributed modules, and import the database so that the site would be ready. No need to have a backup of the system files (the files directory is a different matter, needs its own backup).
For this to be possible, the database would need to store the version number of each contributed module that has been installed (both enabled and subsequently disabled modules).
This would be useful for sites that are using stable versions of contributed modules, and no customizations.
PS. I am only suggesting a simple solution. Any Drupal administrator is aware that using customizations automatically demands more attention and manual preparations, so I think that this suggestion of storing the module version numbers should be kept simple and need not cater for "x-dev" versions of modules (which does not have uniquely identifying names). It should store the version of such modules as "x-dev", but leave it to the administrator to know if he can let the command fetch the latest "x-dev" version of a module, or if he need to replace that one with a special variant.
Comments
Comment #6
wylbur CreditAttribution: wylbur as a volunteer commentedDrupal 8 workflows frequently use Composer for module installations. This allows for defining specific module versions.
Marking this as outdated as this request started for 7.x. Please reopen if this is still a valid request.