fix(regression): removed flask_app property can break derived class (#15407)

* fix removed flask_app property can break derived class

* Update __init__.py
diff --git a/setup.cfg b/setup.cfg
index 8fd75a0..afb034b 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -30,7 +30,7 @@
 include_trailing_comma = true
 line_length = 88
 known_first_party = superset
-known_third_party =alembic,apispec,backoff,bleach,cachelib,celery,click,colorama,contextlib2,cron_descriptor,croniter,cryptography,dateutil,flask,flask_appbuilder,flask_babel,flask_caching,flask_compress,flask_jwt_extended,flask_login,flask_migrate,flask_sqlalchemy,flask_talisman,flask_testing,flask_wtf,freezegun,geohash,geopy,graphlib,holidays,humanize,isodate,jinja2,jwt,markdown,markupsafe,marshmallow,marshmallow_enum,msgpack,numpy,pandas,parameterized,parsedatetime,pathlib2,pgsanity,pkg_resources,polyline,prison,pyarrow,pyhive,pyparsing,pytest,pytz,redis,requests,retry,selenium,setuptools,simplejson,slack,sqlalchemy,sqlalchemy_utils,sqlparse,typing_extensions,werkzeug,wtforms,wtforms_json,yaml
+known_third_party =alembic,apispec,backoff,bleach,cachelib,celery,click,colorama,contextlib2,cron_descriptor,croniter,cryptography,dateutil,deprecation,flask,flask_appbuilder,flask_babel,flask_caching,flask_compress,flask_jwt_extended,flask_login,flask_migrate,flask_sqlalchemy,flask_talisman,flask_testing,flask_wtf,freezegun,geohash,geopy,graphlib,holidays,humanize,isodate,jinja2,jwt,markdown,markupsafe,marshmallow,marshmallow_enum,msgpack,numpy,pandas,parameterized,parsedatetime,pathlib2,pgsanity,pkg_resources,polyline,prison,pyarrow,pyhive,pyparsing,pytest,pytz,redis,requests,retry,selenium,setuptools,simplejson,slack,sqlalchemy,sqlalchemy_utils,sqlparse,typing_extensions,werkzeug,wtforms,wtforms_json,yaml
 multi_line_output = 3
 order_by_type = false
 
diff --git a/setup.py b/setup.py
index 676905c..878485e 100644
--- a/setup.py
+++ b/setup.py
@@ -112,6 +112,7 @@
         "wtforms-json",
         "pyparsing>=2.4.7, <3.0.0",
         "holidays==0.10.3",  # PINNED! https://github.com/dr-prodigy/python-holidays/issues/406
+        "deprecation>=2.1.0, <2.2.0",
     ],
     extras_require={
         "athena": ["pyathena>=1.10.8,<1.11"],
diff --git a/superset/initialization/__init__.py b/superset/initialization/__init__.py
index 2654590..9a2050d 100644
--- a/superset/initialization/__init__.py
+++ b/superset/initialization/__init__.py
@@ -21,6 +21,7 @@
 from typing import Any, Callable, Dict, TYPE_CHECKING
 
 import wtforms_json
+from deprecation import deprecated
 from flask import Flask, redirect
 from flask_appbuilder import expose, IndexView
 from flask_babel import gettext as __, lazy_gettext as _
@@ -64,6 +65,11 @@
         self.config = app.config
         self.manifest: Dict[Any, Any] = {}
 
+    @deprecated(details="use self.superset_app instead of self.flask_app")  # type: ignore   # pylint: disable=line-too-long
+    @property  # type: ignore
+    def flask_app(self) -> SupersetApp:
+        return self.superset_app
+
     def pre_init(self) -> None:
         """
         Called before all other init tasks are complete