Skip to content

Commit df30ff9

Browse files
committed
Added importlib.metadata for version check
1 parent 1c7412b commit df30ff9

File tree

1 file changed

+14
-6
lines changed

1 file changed

+14
-6
lines changed

arango/request.py

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,13 @@
33
from typing import Any, MutableMapping, Optional
44

55
from arango.typings import DriverFlags, Fields, Headers, Params
6+
from importlib.metadata import version
67

78

89
def normalize_headers(
910
headers: Optional[Headers], driver_flags: Optional[DriverFlags] = None
1011
) -> Headers:
11-
flags = ""
12-
if driver_flags is not None:
13-
for flag in driver_flags:
14-
flags = flags + flag + ";"
15-
driver_version = "7.5.3"
16-
driver_header = "python-arango/" + driver_version + " (" + flags + ")"
12+
driver_header = generate_driver_header(driver_flags)
1713
normalized_headers: Headers = {
1814
"charset": "utf-8",
1915
"content-type": "application/json",
@@ -26,6 +22,18 @@ def normalize_headers(
2622
return normalized_headers
2723

2824

25+
def generate_driver_header(driver_flags: Optional[DriverFlags] = None) -> str:
26+
flags: str = ""
27+
if driver_flags is not None:
28+
for flag in driver_flags:
29+
flags = flags + flag + ";"
30+
name: str = "python-arango"
31+
driver_version: str = version(name)
32+
driver_header: str = name + "/" + driver_version + " (" + flags + ")"
33+
34+
return driver_header
35+
36+
2937
def normalize_params(params: Optional[Params]) -> MutableMapping[str, str]:
3038
normalized_params: MutableMapping[str, str] = {}
3139

0 commit comments

Comments
 (0)