Skip to content

Commit ee274ff

Browse files
authored
Added importlib.metadata for version check (#233)
1 parent 090d7b6 commit ee274ff

File tree

2 files changed

+15
-7
lines changed

2 files changed

+15
-7
lines changed

arango/request.py

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
__all__ = ["Request"]
22

3+
from importlib.metadata import version
34
from typing import Any, MutableMapping, Optional
45

56
from arango.typings import DriverFlags, Fields, Headers, Params
@@ -8,12 +9,7 @@
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 = ".".join(version(name).split(".")[:3]) # Only keep semver
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

arango/typings.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
__all__ = ["Fields", "Headers", "Json", "Jsons", "Params"]
1+
__all__ = ["Fields", "Headers", "Json", "Jsons", "Params", "DriverFlags"]
22

33
from typing import Any, Dict, List, MutableMapping, Sequence, Union
44

0 commit comments

Comments
 (0)