Skip to content

Commit b78747b

Browse files
committed
flask: avoid warnings reading recent flask versions
1 parent cd22114 commit b78747b

2 files changed

Lines changed: 6 additions & 1 deletion

File tree

elasticapm/contrib/flask/__init__.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,11 @@ def init_app(self, app, **defaults) -> None:
123123

124124
if "framework_name" not in defaults:
125125
defaults["framework_name"] = "flask"
126-
defaults["framework_version"] = getattr(flask, "__version__", "<0.7")
126+
try:
127+
flask_version = __import__("importlib.metadata").metadata.version("flask")
128+
except ImportError:
129+
flask_version = getattr(flask, "__version__", "<0.7")
130+
defaults["framework_version"] = flask_version
127131

128132
self.client = self.client_cls(config, **defaults)
129133

tests/contrib/flask/flask_tests.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,7 @@ def test_framework_name(flask_app):
266266
assert apm.client.config.framework_name == "flask"
267267
app_info = apm.client.get_service_info()
268268
assert app_info["framework"]["name"] == "flask"
269+
assert app_info["framework"]["version"]
269270
apm.client.close()
270271

271272
# Cleanup -- we don't use the flask_apm_client fixture here because it uses

0 commit comments

Comments
 (0)