Skip to content

Commit a5abf56

Browse files
author
Rémy Noel
committed
Get varlink's interface description file using importlib.resources.files
This will prevent issues with packed packages. Available since py39 and f080d4b dropped support of older versions.
1 parent f404796 commit a5abf56

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

varlink/client.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import importlib.resources
12
import json
23
import os
34
import shutil
@@ -344,9 +345,10 @@ def __init__(self, address=None, resolve_interface=None, resolver=None):
344345
self._child_pid = 0
345346
self._str = "Client<uninitialized>"
346347

347-
with open(os.path.join(os.path.dirname(__file__), "org.varlink.service.varlink")) as f:
348-
interface = Interface(f.read())
349-
self.add_interface(interface)
348+
interface = Interface(
349+
importlib.resources.read_text("varlink", "org.varlink.service.varlink")
350+
)
351+
self.add_interface(interface)
350352

351353
if resolve_interface:
352354
self._with_interface(resolve_interface, resolver)

0 commit comments

Comments
 (0)