fix: #3620414 Install smart_date early to avoid a Drupal CMS install deadlock

Issue: https://www.drupal.org/project/varbase_admin_base/issues/3620414

smart_date previously arrived only at the very end of the chain — in Educare, recipe 23 of 24, via varbase_events_base applying events, which installs the module and imports both field.storage.node.field_when and the module's own config (smart_date: "*").

Landing that late makes it fragile. An interruption there leaves smartdate-typed config with no module:

PluginNotFoundException: Unable to determine class for field type 'smartdate'
found in the 'field.storage.node.field_when' configuration

and the module can then never be installed, because its own config already exists:

PreExistingConfigException: Configuration objects
(smart_date.smart_date_format.compact, .date_only, .default, .time_only)
provided by smart_date already exist in active configuration

Installing it here puts it at recipe 13 instead of 23.

Note varbase_events_base already lists smart_date and events installs it too — the declaration was never missing, only too late. A recipe cannot install a module before its own sub-recipes run, so moving it earlier in the chain is what makes the ordering safe.

Measured on Drupal CMS 2.x / core 11.4.5 with drupal/educare:1.0.x-dev: before, the browser install stopped at 177 tables with smart_date not enabled; after, smart_date was enabled by 174 tables and the install ran past that point. The PreExistingConfigException dead end can no longer form.

Scope, stated honestly: this removes the smart_date failure. It does not on its own make the Drupal CMS browser install complete — a separate, still-unidentified failure follows it.

AI-Generated: Yes

Checkpoints:

  • File an issue
  • Addition/Change/Update/Fix
  • Testing to ensure no regression
  • Automated unit testing coverage
  • Automated functional testing coverage
  • UX/UI designer responsibilities
  • Readability
  • Accessibility
  • Performance
  • Security
  • Developer Documentation
  • User Guide Documentation
  • Reviewed by human
  • Code review by maintainers
  • Full testing and approval
  • Credit contributors
  • Review with the product owner
  • Release notes snippet
  • Release
Edited by Rajab Natshah

Merge request reports

Loading
Loading