As has been mentioned above, if a theme depends on Classy or Stable, then the uninstall for those will not appear, by design.
To find out if you have an unexpected dependency, run the drush uninstall command:
drush theme-uninstall classy
drush theme-uninstall stable
For me, those told me I had a dependency in my main site theme that needed to be looked at.
daveban → created an issue.
#4 worked for me.
For people getting npm errors like "Could not find a matching version of package npm-asset/fonticonpicker--fonticonpicker", you might need to tell your composer file where to look for npm packages, and where to install them.
If so, first you need the oomphinc/composer-installers-extender plugin for composer, this allows any package to be installed to a directory other than the default vendor.
composer require -W --ignore-platform-reqs oomphinc/composer-installers-extender
Now we have to make some changes to composer.json to tell it where to look for these packages and what to do with them.
Under the 'repositories' section near the top, we add packagist.org as a code repo
{
"type": "composer",
"url": "https://asset-packagist.org"
},
In your "extra' section of composer, you need to allow npm packages:
"extra": {.....other configs
"installer-types": [
"npm-asset"
]
}
Also in the 'extra' section, you need to tell composer where to install the npm packages, in this case in the libraries folder, by adding npm-asset as a type and vendor to the "web/libraries/{$name}" block
"web/libraries/{$name}": [
"type:drupal-library",
"type:npm-asset",
"vendor:npm-asset"
],
Finally running
composer require npm-asset/fonticonpicker--fonticonpicker
should add the library to your composer files. On my site this created a 'fonticonpicker--fonticonpicker' folder in the libraries directory, and the site error about missing library went away
#4 worked for me.
For people getting npm errors like "Could not find a matching version of package npm-asset/fonticonpicker--fonticonpicker", you might need to tell your composer file where to look for npm packages, and where to install them.
If so, first you need the oomphinc/composer-installers-extender plugin for composer, this allows any package to be installed to a directory other than the default vendor.
composer require -W --ignore-platform-reqs oomphinc/composer-installers-extender
Now we have to make some changes to composer.json to tell it where to look for these packages and what to do with them.
Under the 'repositories' section near the top, we add packagist.org as a code repo
{
"type": "composer",
"url": "https://asset-packagist.org"
},
In your "extra' section of composer, you need to allow npm packages:
"extra": {.....other configs
"installer-types": [
"npm-asset"
]
}
Also in the 'extra' section, you need to tell composer where to install the npm packages, in this case in the libraries folder, by adding npm-asset as a type and vendor to the "web/libraries/{$name}" block
"web/libraries/{$name}": [
"type:drupal-library",
"type:npm-asset",
"vendor:npm-asset"
],
Finally running
composer require npm-asset/fonticonpicker--fonticonpicker
should add the library to your composer files. On my site this created a 'fonticonpicker--fonticonpicker' folder in the libraries directory, and the site error about missing library went away