Skip to content

Commit bb740d2

Browse files
authored
fix: Use importlib for polars version (#2952)
1 parent 94bfa1c commit bb740d2

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

narwhals/_utils.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -655,7 +655,11 @@ def backend_version(implementation: Implementation, /) -> tuple[int, ...]:
655655
impl = implementation
656656
module_name = _IMPLEMENTATION_TO_MODULE_NAME.get(impl, impl.value)
657657
native_namespace = _import_native_namespace(module_name)
658-
if impl.is_sqlframe():
658+
if impl.is_polars():
659+
from importlib import metadata
660+
661+
into_version = metadata.version("polars")
662+
elif impl.is_sqlframe():
659663
import sqlframe._version
660664

661665
into_version = sqlframe._version

tests/utils.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525

2626
def get_module_version_as_tuple(module_name: str) -> tuple[int, ...]:
2727
try:
28+
if module_name == "polars":
29+
return Implementation.POLARS._backend_version()
2830
return parse_version(__import__(module_name).__version__)
2931
except ImportError:
3032
return (0, 0, 0)

0 commit comments

Comments
 (0)