Drupal 8 maintenance is a terrible nightmare

Drupal8 maintenance/updating is a nightmare.

1. It is readily apparent that Drupal 8 cannot be upgraded by hand because of the giant black hole known as the /vendor directory where core keeps 3rd party libraries/components, and where contrib modules also install yet more libraries/components, all of which must be tracked by various .json files in order to fully recognized by the system.

2. The only way to update Drupal 8 is via the command line using the archaic and brittle, (even poorly named) “composer” utility. It would have been more aptly dubbed “conductor”, nor composer.

3. Using the command line utility composer requires:
– command line (CLI) access, something many Drupal users don’t have on their server environments
– the CLI php environment needs to be able to allocate about 1GB of memory for PHP in order for composer to run.
– – (see error report below)

4. Drupal is being distributed in some ways, and installed in such a way that it appears extremely difficult to fix so that the archaic and brittle composer utility can perform an update.
– – error reports below)

5. Attempting to run a Drupal8 update via the CLI and a “mere” 512MB of ram allocated to PHP yields the following error:

php composer.phar require “drupal/core ~8.2”
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)

Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 32 bytes) in ./website.net/composer.phar/src/Composer/DependencyResolver/RuleWatchGraph.php on line 52

Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on how to handle out of memory errors.

6. Attempting to maintain any Drupal8 components, core or modules, yields the following error on some installed and operating Drupal8 (but not all, and the configuration differences are difficult to ascertain)

Problem 1
– Installation request for drupal/drupal No version set (parsed as 1.0.0) -> satisfiable by drupal/drupal[No version set (parsed as 1.0.0)].
– drupal-composer/drupal-project 8.x-dev conflicts with drupal/drupal[No version set (parsed as 1.0.0)].
– Installation request for drupal-composer/drupal-project ~8.2 -> satisfiable by drupal-composer/drupal-project[8.x-dev].

(In the context just above, Drupal 8 is installed and running, but the various “assemblies” and the composer code aren’t well written enough to recognize that their .json configuration files are incorrect.)

– There have been various reports of bug above, answered by incredibly cryptic responses and even more cryptic “patches” to various .json files and vendor components that claim to fix the problem.
– – (haven’t been able to get any of the available patches to work)

7. Conclusion

Over time, it is difficult to imagine that the Drupal8 adoption rate is going to be very high, when the system is difficult to maintain, requires command line interface utilities to maintain, and which is essentially a huge black box when something is wrong with its .json configuration file (“assemblies”).

Drupal version: 

Source: https://www.drupal.org/taxonomy/term/21/feed