Problem/Motivation

Installing Educare on a plain Drupal CMS base fails. Educare is cloned from Varbase Starter and inherits both of its blockers. Diagnosed and fixed in Varbase Starter #3617241; this issue applies the same fix here.

Blocker 1 — missing node.search_index view mode. drupal_cms_search imports core.entity_view_mode.node.search_index from the node module and then clones every default node view display into that mode. On Drupal 11.4 that view mode moved to the new search_node module, so the import silently no-ops (strict: false) and the clone targets a view mode that does not exist:

  • Error: Call to a member function getConfigDependencyName() on null in Drupal\Core\Entity\EntityDisplayBase->calculateDependencies() (line 302)

Educare cannot fix this in its own config/, because recipe dependencies are applied before the template's own config. The view mode has to come from a recipe that runs earlier.

Blocker 2 — the Canvas patch is discarded on Drupal CMS.

  • PHP Fatal error: Class Drupal\canvas_override\Storage\CanvasOverrideComponentTreeLoader cannot extend final class Drupal\canvas\Storage\ComponentTreeLoader

drupal/canvas 1.10.1 marks ComponentTreeLoader as final; drupal/canvas_override (via varbase_content_base) extends it. Varbase Patches ships the re-roll that removes final, which is why the same package versions install fine on a Varbase base. Here scripts/assets/drupal-cms.composer.json sets ignore-dependency-patches: ["drupal/*", "drupal/ai_context"], and the drupal/* wildcard discards every curated Varbase patch for every drupal/* package.

Steps to reproduce

  1. Build a Drupal CMS 2.1.3 project on Drupal 11.4.5.
  2. Run the wiring script and require this recipe.
  3. Install, from the browser installer or with drush site:install drupal_cms_installer installer_site_template_form.add_ons=educare.
  4. The install fatals on blocker 1; clearing that, it fatals on blocker 2.

Proposed resolution

  1. Depend on Varbase Search Base and list it before Drupal CMS Search in recipe.yml. The view mode itself is added in #3617240.
  2. Narrow ignore-dependency-patches in scripts/assets/drupal-cms.composer.json to just ["drupal/ai_context"], which is the only entry that genuinely cannot resolve — it declares a patch path relative to the project root.

Verified with the equivalent change on Varbase Starter, on Drupal CMS 2.1.3 / Drupal 11.4.5: Installation complete, default theme applied, front page HTTP 200 anonymously, zero errors logged.

Remaining tasks

  • ✅ Order Varbase Search Base before Drupal CMS Search
  • ✅ Narrow the ignored dependency patches so the Canvas patch applies
  • ❌ Verify a complete Educare install on a plain Drupal CMS base
  • ❌ Code review by maintainers
  • ✅ Release educare-1.0.0-alpha2

User interface changes

Educare can be picked in the Drupal CMS installer and completes successfully.

API changes

None.

Data model changes

Adds a dependency on the Varbase Search Base recipe.

Release notes snippet

Fixed installing Educare on a plain Drupal CMS base: ordered Varbase Search Base before Drupal CMS Search so the node search index view mode exists, and stopped discarding the curated Varbase Canvas patches.

Issue fork educare-3617242

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

rajab natshah created an issue. See original summary.

rajab natshah’s picture

Title: Educare cannot install on a plain Drupal CMS base: missing search_index view mode and discarded Canvas patch » Add the search index view modes and displays for the content types and taxonomy terms

  • rajab natshah committed dee9c2da on 1.0.x
    fix: #3617242 Add the search index view modes and displays for the...
rajab natshah’s picture

Assigned: Unassigned » josebc
Issue summary: View changes
Status: Active » Needs review
Issue tags: +educare-1.0.0-alpha2
rajab natshah’s picture

Assigned: josebc » mohammed j. razem
rajab natshah’s picture

Assigned: mohammed j. razem » Unassigned
Status: Needs review » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.