Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error: Class 'FeedsConfigurable' not found #95

Closed
openskeptic opened this issue Aug 3, 2021 · 4 comments · Fixed by #140
Closed

Error: Class 'FeedsConfigurable' not found #95

openskeptic opened this issue Aug 3, 2021 · 4 comments · Fixed by #140

Comments

@openskeptic
Copy link

When trying to enable Feeds module I get this error "Class 'FeedsConfigurable' not found" after clicking on the "Save Configuration" button. This fatal error means the module is not enabled.

@laryn
Copy link
Member

laryn commented Mar 24, 2022

I ran into this as well on a sandbox copy site and couldn't figure out why. I had installed it without an issue, then uninstalled (or refreshed from live) and got this error. I ended up having to do a complete refresh, deleting the filesystem and recopying everything from the live site, emptying config and refreshing from live, dropping the database and refreshing from live, then I could install and use Feeds again...

@argiepiano
Copy link
Contributor

I'm finding this issue on a site that had Feeds, then got fully uninstalled, and installed again. What a hassle.

@argiepiano
Copy link
Contributor

Ok this is happening because there is a call to feeds_importer_load_all() in file feeds.install (in feeds_requirements().

The problem is that that function ends up calling a static method of class FeedsConfigurable. In D7, the file that contains that class was always loaded through files[] in the info file. In Backdrop, in normal operation, that file is loaded through hook_autoload_info(). Except that THAT autoload hook is never invoked before running feeds_requiremens(). Result: the class is never found, and fatal error.

Solution: include inculdes/FeedsConfigurable.inc inside feeds_requirements().

@argiepiano
Copy link
Contributor

Additional info: this error happens in very specific conditions that are pretty unusual:

  1. You have created a feeds importer
  2. You disable and uninstall Feeds
  3. For some reason that config file with the feed importer was either not removed (b/c of error), or moved manually (by moving the file) to the config folder

So, this sequence is actually not "normal", so I'm not sure if this fix is necessary. I submitted a PR anyway.

I see there is a test failure, but don't have time to check it.

Incidentally, even though I'm part of the Bug squad, I've lost the ability to review and/or merge PRs here. (Not that I was intending to use that here!).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants