Problem/Motivation

As part of refactoring and improving Drupal's harmony with semver, it's been discovered that ModuleHandler::parseDependency() expects dev versions to end with a number.

For instance, views_ui(8.x-1.1-alpha12) can be parsed, but views_ui(8.x-1.1-beta) can not.

That's because the regex looks like this: $p_minor = '(?<minor>(?:\d+|x)(?:-[A-Za-z]+\d+)?)';

You can see this reflected in the test data: https://cgit.drupalcode.org/drupal/tree/core/tests/Drupal/Tests/Core/Ext...

Proposed resolution

Figure out if this matters.

Change it.

Remaining tasks

User interface changes

API changes

Data model changes

Comments

Mile23 created an issue. See original summary.

andypost’s picture

Not sure we should fix it because https://www.drupal.org/node/1015226 states

All release tags must end with a number. The numbers are just to distinguish releases of the same class. The first is numbered "1" (as in "alpha1"), the next "2", and so on.

mile23’s picture

Maybe we should handle that case in a way that helps people find those docs.

andypost’s picture

Good idea, btw in #2677532-83: Move drupal_check_incompatibility() functionality to a new Dependency class and Version component I asked maybe we can repurpose it to more stricter & notification somewhere could be nice addition

Version: 8.7.x-dev » 8.8.x-dev

Drupal 8.7.0-alpha1 will be released the week of March 11, 2019, which means new developments and disruptive changes should now be targeted against the 8.8.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

tedbow’s picture