Hi, assistance please
After installing and enabling the AT Tools and AT theme generator modules this warning persists:

The following module is missing from the file system: THEMENAME bootstrap.inc:233                                                                                            [warning]
Unknown path for THEMENAME module.

running: AT 8.x-1.0-rc2, AT tools 8.x-1.0-rc2, Drupal 8.1.6

Comments

PatrickMichael created an issue. See original summary.

Jeff Burnz’s picture

Have you generated any themes yet? Or made any modifications to the module, e.g. copy pasted the starterkit and placed it somewhere and modified it?

I'm not sure how to replicate the issue (scratching head), it seems to indicate something is called drupal_get_filename() on a module called THEMENAME, or drupal_get_path().

THEMENAME is the placeholder in the starterkit we used to search and replace on when generating a new theme.

patrickmichael’s picture

Hi Jeff, all i did was install and enable the modules. I did not generate any new themes or modify the module. The existing sub theme is in place and is the default theme, however that was generated some months back, prior to these modules being installed.
I installed the modules in response to the message:

Please install the AT Tools module for Drupal 8. Your theme may not operate correctly without this module installed.

I had been using AT for 3 months without the modules.

Jeff Burnz’s picture

Can you try clearing the Drupal cache. I am wondering if there is something left over from the programmatic uninstall of the old generator theme (something in the database), if the clear cache does not work is it possible to do a full text search on the database on that string "THEMENAME"

Also look in themes/adaptivetheme/ are there any directories other than /at_core/ ?

patrickmichael’s picture

only at_core in themes/adaptivetheme

running drush cr and then drush pm-updatestatus shows the warning persists

string search reveals:
1 match in cache_bootstrap
2 matches in key_value -> system.theme.data and system.theme.files

in all three instances the values in the tables are BLOB

abaier’s picture

I am also getting this message since the update from rc1/dev to rc2. Same tables.

Jeff Burnz’s picture

Oh you're kidding. That has to be a Drupal core bug, THEMENAME is a real theme but hidden and never enabled, ever, but Drupal is storing it as a "required by" at_core, but not removing this when the theme is removed from the file system. The bootstrap cache you can clear, but I think it will come back because its in key_value, I need to study the theme installer for Drupal and figure out how to work around this.

EDIT: now I have looked more I'm not sure this is a bug... not sure.

Jeff Burnz’s picture

The problem I am having is that I cannot actually reproduce the issue, I can see the data but I just never get any warnings (and I'm running pretty much the same thing as you, upgraded modules/themes etc for at least 3 themes I use as tests).

I have a possible workaround, however if you do this you will not successfully generate new standard themes (clones should work) until such time as I release a new version of AT Tools module.

Open this file: modules/at_tools/at_theme_generator/starterkits/starterkit/THEMENAME.info.yml

Remove the line: "base theme: at_core"

Save and clear the Drupal cache. Let see if that removes the warning for you.

If this still doesn't work for you then I need to know what the contents of a row in the database:

table: key_value
row: system.theme.file

abaier’s picture

Removing base theme: at_core from the starterkit did not remove the warning for me.

Here's the db-content of system.theme.files (including additional line-breaks …)

a:43:{s:19:"big_pipe_test_theme";
s:83:"core/modules/big_pipe/tests/themes/big_pipe_test_theme/big_pipe_test_theme.info.yml";
s:29:"block_test_specialchars_theme";
s:119:"core/modules/block/tests/modules/block_test/themes/block_test_specialchars_theme/block_test_specialchars_theme.info.yml";
s:16:"block_test_theme";
s:93:"core/modules/block/tests/modules/block_test/themes/block_test_theme/block_test_theme.info.yml";
s:21:"breakpoint_theme_test";
s:89:"core/modules/breakpoint/tests/themes/breakpoint_theme_test/breakpoint_theme_test.info.yml";
s:16:"color_test_theme";
s:93:"core/modules/color/tests/modules/color_test/themes/color_test_theme/color_test_theme.info.yml";
s:23:"config_clash_test_theme";
s:82:"core/modules/config/tests/config_clash_test_theme/config_clash_test_theme.info.yml";
s:29:"config_translation_test_theme";
s:113:"core/modules/config_translation/tests/themes/config_translation_test_theme/config_translation_test_theme.info.yml";
s:24:"statistics_test_attached";
s:95:"core/modules/statistics/tests/themes/statistics_test_attached/statistics_test_attached.info.yml";
s:14:"test_basetheme";
s:71:"core/modules/system/tests/themes/test_basetheme/test_basetheme.info.yml";
s:34:"test_ckeditor_stylesheets_external";
s:111:"core/modules/system/tests/themes/test_ckeditor_stylesheets_external/test_ckeditor_stylesheets_external.info.yml";
s:43:"test_ckeditor_stylesheets_protocol_relative";
s:129:"core/modules/system/tests/themes/test_ckeditor_stylesheets_protocol_relative/test_ckeditor_stylesheets_protocol_relative.info.yml";
s:34:"test_ckeditor_stylesheets_relative";
s:111:"core/modules/system/tests/themes/test_ckeditor_stylesheets_relative/test_ckeditor_stylesheets_relative.info.yml";
s:22:"test_invalid_basetheme";
s:87:"core/modules/system/tests/themes/test_invalid_basetheme/test_invalid_basetheme.info.yml";
s:26:"test_invalid_basetheme_sub";
s:95:"core/modules/system/tests/themes/test_invalid_basetheme_sub/test_invalid_basetheme_sub.info.yml";
s:17:"test_invalid_core";
s:77:"core/modules/system/tests/themes/test_invalid_core/test_invalid_core.info.yml";
s:19:"test_invalid_engine";
s:81:"core/modules/system/tests/themes/test_invalid_engine/test_invalid_engine.info.yml";
s:19:"test_invalid_region";
s:81:"core/modules/system/tests/themes/test_invalid_region/test_invalid_region.info.yml";
s:11:"test_stable";
s:65:"core/modules/system/tests/themes/test_stable/test_stable.info.yml";
s:16:"test_subsubtheme";
s:75:"core/modules/system/tests/themes/test_subsubtheme/test_subsubtheme.info.yml";
s:13:"test_subtheme";
s:69:"core/modules/system/tests/themes/test_subtheme/test_subtheme.info.yml";
s:10:"test_theme";
s:63:"core/modules/system/tests/themes/test_theme/test_theme.info.yml";
s:51:"test_theme_having_veery_long_name_which_is_too_long";
s:145:"core/modules/system/tests/themes/test_theme_having_veery_long_name_which_is_too_long/test_theme_having_veery_long_name_which_is_too_long.info.yml";
s:27:"test_theme_libraries_extend";
s:97:"core/modules/system/tests/themes/test_theme_libraries_extend/test_theme_libraries_extend.info.yml";
s:50:"test_theme_libraries_override_with_drupal_settings";
s:143:"core/modules/system/tests/themes/test_theme_libraries_override_with_drupal_settings/test_theme_libraries_override_with_drupal_settings.info.yml";
s:48:"test_theme_libraries_override_with_invalid_asset";
s:139:"core/modules/system/tests/themes/test_theme_libraries_override_with_invalid_asset/test_theme_libraries_override_with_invalid_asset.info.yml";
s:26:"test_theme_nyan_cat_engine";
s:95:"core/modules/system/tests/themes/test_theme_nyan_cat_engine/test_theme_nyan_cat_engine.info.yml";
s:31:"test_theme_twig_registry_loader";
s:105:"core/modules/system/tests/themes/test_theme_twig_registry_loader/test_theme_twig_registry_loader.info.yml";
s:40:"test_theme_twig_registry_loader_subtheme";
s:123:"core/modules/system/tests/themes/test_theme_twig_registry_loader_subtheme/test_theme_twig_registry_loader_subtheme.info.yml";
s:37:"test_theme_twig_registry_loader_theme";
s:117:"core/modules/system/tests/themes/test_theme_twig_registry_loader_theme/test_theme_twig_registry_loader_theme.info.yml";
s:14:"test_wild_west";
s:71:"core/modules/system/tests/themes/test_wild_west/test_wild_west.info.yml";
s:21:"update_test_basetheme";
s:85:"core/modules/update/tests/themes/update_test_basetheme/update_test_basetheme.info.yml";
s:20:"update_test_subtheme";
s:83:"core/modules/update/tests/themes/update_test_subtheme/update_test_subtheme.info.yml";
s:15:"user_test_theme";
s:71:"core/modules/user/tests/themes/user_test_theme/user_test_theme.info.yml";
s:16:"views_test_theme";
s:74:"core/modules/views/tests/themes/views_test_theme/views_test_theme.info.yml";
s:6:"bartik";
s:34:"core/themes/bartik/bartik.info.yml";
s:6:"classy";
s:34:"core/themes/classy/classy.info.yml";
s:5:"seven";
s:32:"core/themes/seven/seven.info.yml";
s:6:"stable";
s:34:"core/themes/stable/stable.info.yml";
s:5:"stark";
s:32:"core/themes/stark/stark.info.yml";
s:9:"THEMENAME";
s:77:"modules/at_tools/at_theme_generator/starterkits/starterkit/THEMENAME.info.yml";
s:6:"portfolio";
s:29:"themes/portfolio/portfolio.info.yml";
s:7:"at_core";
s:45:"themes/adaptivetheme/at_core/at_core.info.yml";
s:5:"donor";
s:27:"themes/donor/donor.info.yml";
}
abaier’s picture

I don't know what is happening behind the scenes while updating a theme, but maybe the fact that at_theme_generator was moved to modules/at_tools left some traces behind …?

I followed this order:
· working on adaptivetheme dev (rc1 state)
· subtheme was generated with rc1 before updating to dev
· installed and enabled at_tools
· replaced adaptivetheme folder with the one from rc2
· followed the update suggestions (rc1 to rc2)

Jeff Burnz’s picture

Have you enabled the Theme Generator module?

If you could attach a text file with the contents of system.theme.data that would be great.

What tests have you run to get all those test themes in system.theme.files?

I can see this entry is correct:

s:9:"THEMENAME";
s:77:"modules/at_tools/at_theme_generator/starterkits/starterkit/THEMENAME.info.yml";

Thats all I have also, and that path is correct so the warning from drupal_get_filename() really has me scratching my head. I need to run more debugging on this, so hard when I can't reproduce it, very frustrating!!

patrickmichael’s picture

#8 did not remove warning for me

abaier’s picture

StatusFileSize
new28.67 KB

Yes, theme generator is enabled, because I needed this to do the file updates from the "donor" subtheme, like you described.

I actually did not run any tests, but this functionality was activated in settings.local.php … set this to false now.

Herwith also the content of system.theme.data as text file. Hope the structure is ok.

Jeff Burnz’s picture

OK, this is where I'm at, I've basically run out of debugging options and I haven't been able to replicate the issue - my only recourse at this stage is to ask you guys to start debugging drupal_get_filename() yourself and see where the warning is coming from, or if one of you can give me a copy of your site (all files, database etc) so I can install and debug it locally. I'd really like to get to the bottom of this.

patrickmichael’s picture

Debugging at this level is beyond my skill, although i would love to learn how! I can make a copy of my site available for you via ftp. Perhaps we continue on irc or skype to arrange?

Jeff Burnz’s picture

Status: Active » Closed (cannot reproduce)

I debugged Patricks site and found the issue is when drush dl or pm-update is run, debugging drush is not something I know a whole lot about, I've picked through the code and can potentially see where the issue lies, however drush is fairly complex and not something I feel confident dealing with or giving advice about.

I'm going to close this as cannot reproduce this, since no as yet as said Drupal is returning this error when used in a normal way - drush is not normal, at all, it has all sorts of functions for extension discovery and the bug could be in one of those, since all things being equal I am yet to see this bug in a Drupal watchdog log or even on screen, other than in a cli with drush on one site (does not happen on any of my development sites).

If you can give me a rock solid way to reproduce this in Drupal front end, I'm all ears. I can't debug something I can't reliably reproduce.

abaier’s picture

Nevermind and thanks for your effort. I don't see this warning in watchdog neither, only in drush.

Because I previously had this "missing module" warning using another module as well (this time in watchdog and frontend warnings), I found a post, that could maybe be interesting for you, as I saw AT is using drupal_get_path() instead of the "newer" drupal_get_filename function. But as I would expect, you already know that ;) … See here: https://www.drupal.org/node/2581445

Jeff Burnz’s picture

You would only call drupal_get_filename directly to set the param to FALSE if you're checking if a file actually exists - AT doesn't really need or want to do that, we only call files that should/do exist (not maybe or lets check if they etc), if they don't we get a warning, which is good, because your site is not going to work as expected if any of those files are actually missing.

In this case it's Drush calling drupal_get_path(), e.g. in pm-update it calls it, and I suspect that is where the issue is - this is what is really weird, the last check that drupal_get_filename does before the warning is to check the state, and in Particks site the path to THEMENAME is right there in the database, the exact info it's asking for, which works fine on every other site I have running for dev and testing etc:

    // If still unknown, retrieve the file list prepared in state by
    // system_rebuild_module_data() and
    // \Drupal\Core\Extension\ThemeHandlerInterface::rebuildThemeData().
    if (!isset($files[$type][$name]) && \Drupal::hasService('state')) {
      $files[$type] += \Drupal::state()->get('system.' . $type . '.files', array());
    }

this is why I asked about state system.theme.files, this is from Patricks site (nothing security wise here):

a:8:{s:6:"bartik";s:34:"core/themes/bartik/bartik.info.yml";s:6:"classy";s:34:"core/themes/classy/classy.info.yml";s:5:"seven";s:32:"core/themes/seven/seven.info.yml";s:6:"stable";s:34:"core/themes/stable/stable.info.yml";s:5:"stark";s:32:"core/themes/stark/stark.info.yml";s:9:"THEMENAME";s:77:"modules/at_tools/at_theme_generator/starterkits/starterkit/THEMENAME.info.yml";s:7:"at_core";s:45:"themes/adaptivetheme/at_core/at_core.info.yml";s:11:"at_ds_eight";s:39:"themes/at_ds_eight/at_ds_eight.info.yml";}

and there it is, the path to the info file, so why is drush bumming out? You tell me.

abaier’s picture

Really weird, indeed. I am sorry I can't help on this, because it's way out of my skills.

Carlos Miranda Levy’s picture

Status: Closed (cannot reproduce) » Active

Uninstalling both at_tools and at_theme_generator modules and deleting the at_tools from the modules folder solved this for me.
Nothing else would.

The message was being displayed on any drush update command on any sites of a multisite installation, including those were the AT modules had not being activated.

Jeff Burnz’s picture

Status: Active » Closed (cannot reproduce)

Please see #16 if you can satisfy those requirements please re-open, i.e.:

If you can give me a rock solid way to reproduce this in Drupal front end, I'm all ears. I can't debug something I can't reliably reproduce.

ret5’s picture

Version: 8.x-1.x-dev » 8.x-3.x-dev
Status: Closed (cannot reproduce) » Active
StatusFileSize
new188.55 KB

I know this thread was closed a year ago but I keep running into this same issue. There is definitely a relationship between the AT Tools module and it throwing the error when Drush performs future actions such as drush up or drush dl. Tried on several sites and replicated each time. So I've documented in a screen grab.

Started a new test D8 site. No themes, no modules installed.

1. Downloaded Bootstrap (for sake of comparison). Followed with Drush Up. No errors.
2. Downloaded Adaptive Theme. Followed with Drush Up. No Errors.
3. Downloaded AT Tools. Followed with Drush Up. Throws the following errors:
The following module is missing from the file system: STARTERKIT bootstrap.inc:250 [warning]
Unknown path for STARTERKIT module. [warning]
The following module is missing from the file system: SKIN bootstrap.inc:250 [warning]
Unknown path for SKIN module.

Note that i have not enabled any of these modules or themes. Only downloaded.
Even after removing themes, drush continues to throw error on drush dl or drush up.

Am I missing anything obvious? Any ideas? Thanks!

[screenshot attached]

Jeff Burnz’s picture

Category: Support request » Task

Weel I could guess that's an issue where drush is looking for info.yml files and not checking if they're modules or themes, which is kind of reasonable given they're themes in the module directory.

I could solve this by changing the info.yml files to txt files and then renaming them during theme generation.

ret5’s picture

Thanks for the quick reply. I'm not much of a coder so that would be great if you could put together a patch. Would be happy to test.\

Thanks!

ret5’s picture

Just a quick mention.. i created another d8 test site, this time manually adding the at_tools module... No drush was involved. Got the same error. Just thought I'd mention as it sounds like maybe something in the module info file. Also, apologies, I'm guessing this thread would make more sense on the at_tools issue page.

dries arnolds’s picture

I still get the SKIN and STARTERKIT missing module errors on 8.x-3.1.

thuthuka’s picture

I am also getting a "Unknown path for STARTERKIT / SKIN module".

I dont want to cross post but I only found this thread after I posted
this here

But I am not so sure it is Adaptive Theme as I am getting other Drush errors.
EG:
count(): Parameter must be an array or an object that implements
Countable Table.php:789 [warning]

So I am looking for other "missing module errors" or "Unknown path for ???? module."
with Drush that might have a solution.

I am going to try option #8 and look into #18 to see if any of it helps me. :-)

wxman’s picture

I'm running Drupal 8.6.1 and the same thing just happened to me. It was the first time I've tried to run updates through drush and I got the same fail:
The following module is missing from the file system: STARTERKIT bootstrap.inc:276 [warning]
Unknown path for STARTERKIT module. [warning]
The following module is missing from the file system: SKIN bootstrap.inc:276 [warning]
Unknown path for SKIN module. [warning]

Drush version is 8.0.0