When I try to use Flask extensions, my application is raising ModuleNotFound errors on lines like from flask.ext.sqlalchemy import SQLAlchemy or from flask.exthook import ExtDeprecationWarning. I have Flask and the extension installed. Why do I get this error?
Something in your code, or in code you're using, is trying to import flask.ext or flask.exthook, which no longer exists in Flask 1.0. They were completely removed after being visibly deprecated for at least a year, and implicitly deprecated for many years before that. Anything that still depends on it must be upgraded.
Any use of from flask.ext import ... should be replaced with a direct import of the extension. For example flask.ext.sqlalchemy becomes flask_sqlalchemy.
The only reason to import from flask.exthook import ExtDeprecationWarning is to silence the previous deprecation warnings. Since it no longer exists, there is no warning to silence, and that code can be removed.
Importing flask.ext raises ModuleNotFoundError