python.flask.maintainability.deprecated.deprecated-apis.flask-deprecated-apis

Author
7,173
Download Count*
License
deprecated Flask API
Run Locally
Run in CI
Defintion
rules:
- id: flask-deprecated-apis
message: deprecated Flask API
languages:
- python
severity: WARNING
pattern-either:
- pattern: |
$F = Flask(...)
...
$F.open_session(...)
- pattern: |
$F = Flask(...)
...
$F.save_session(...)
- pattern: |
$F = Flask(...)
...
$F.make_null_session(...)
- pattern: |
$F = Flask(...)
...
$F.init_jinja_globals(...)
- pattern: |
$F = Flask(...)
...
$F.request_globals_class(...)
- pattern: |
$F = Flask(...)
...
$F.static_path(...)
- pattern: app.open_session(...)
- pattern: app.save_session(...)
- pattern: app.make_null_session(...)
- pattern: app.init_jinja_globals(...)
- pattern: app.request_globals_class(...)
- pattern: app.static_path(...)
- pattern: app.config.from_json(...)
- pattern: flask.json_available
- pattern: flask.request.module
- pattern: flask.testing.make_test_environ_builder(...)
metadata:
category: maintainability
technology:
- flask
license: Commons Clause License Condition v1.0[LGPL-2.1-only]
Examples
deprecated-apis.py
from flask import Flask, json_available, request, testing
# ruleid: flask-deprecated-apis
app = Flask(__name__)
# ruleid: flask-deprecated-apis
if json_available:
pass
# ruleid: flask-deprecated-apis
blueprint = request.module
# ruleid: flask-deprecated-apis
builder = testing.make_test_environ_builder(app)
# ruleid: flask-deprecated-apis
app.open_session(...)
# ruleid: flask-deprecated-apis
app.save_session(...)
# ruleid: flask-deprecated-apis
app.make_null_session(...)
# ruleid: flask-deprecated-apis
app.init_jinja_globals(...)
# ruleid: flask-deprecated-apis
app.request_globals_class(...)
# ruleid: flask-deprecated-apis
app.static_path(...)
# ruleid: flask-deprecated-apis
app.config.from_json(...)
@app.route("/foo")
def foo():
pass
if request.method == "POST":
pass
app.config["BAR"] = "BAZ"
app.register_blueprint(blueprint=object())
Short Link: https://sg.run/rdLR