When I attempt to go to /admin/help/ah I am receiving a white screen with the following error:

Drupal\Core\Extension\Exception\UnknownExtensionException: The module bartik does not exist. in Drupal\Core\Extension\ExtensionList->get() (line 257 of /vol0/acxsc-v3/web/core/lib/Drupal/Core/Extension/ExtensionList.php).

My site is using a subtheme of the Bootstrap theme, so I just try uninstalling the Bartik theme to try and fix but am now and getting this:

Drupal\Core\Extension\Exception\UnknownExtensionException: The module classy does not exist. in Drupal\Core\Extension\ExtensionList->get() (line 257 of /vol0/acxsc-v3/web/core/lib/Drupal/Core/Extension/ExtensionList.php).

Comments

jaydee1818 created an issue. See original summary.

gnuget’s picture

I think this error has been fixed on the dev version of the module.

I will check again and if that is the case I Wil create a new release.

Thanks!

gnuget’s picture

Status: Active » Postponed (maintainer needs more info)

I just installed the alpha1 version and I wasn't able to reproduce the error.

Can you provide a list of steps to replicate this problem?

Thanks!

adambernstein’s picture

Having the same issue. Error from dblog:
Drupal\Core\Extension\Exception\UnknownExtensionException: The module bartik does not exist. in Drupal\Core\Extension\ExtensionList->get() (line 257 of ...\docroot\core\lib\Drupal\Core\Extension\ExtensionList.php)

Bartik is installed, but not set as default. Like the original poster I am also using a Bootstrap subtheme (for certain pages anyway).

Using advanced_help:8.x-1.x-dev branch

My complete uneducated guess is that it's tripping out on AdvancedHelpManager.php:48:

    foreach ($modules + $themes  as $name => $data) {
      $result[$name] = $this->module_handler->getName($name);
    }
    return $result;
  }

Maybe because getName() only applies to module names, not theme names?

gnuget’s picture

Status: Postponed (maintainer needs more info) » Active

Hi!

I was able to reproduce the problem, the method ModuleHandler::getName() was rewritten on Drupal 8.6.

It used to return the parameter if there wasn't a module with that name, now it throws an exception.

And... the docblock is still wrong and needs to be fixed.

/**
   * Gets the human readable name of a given module.
   *
   * @param string $module
   *   The machine name of the module which title should be shown.
   *
   * @return string
   *   Returns the human readable name of the module or the machine name passed
   *   in if no matching module is found.
   */

I'm going to create a new issue to fix this as well.

  • gnuget committed c7314c3 on 8.x-1.x
    Issue #2999548 by gnuget, jaydee1818, AdamBernstein: Module does not...
gnuget’s picture

I just created #3012962: ModuleExtensionList::getName() is not compatible with ModuleHandler::getName() so the docblock can be fixed.

And I just fixed the bug at Advanced Help.

Thanks!

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.