Closed pavel-kirienko closed 1 year ago
Running the script as-is (source issue-setup.sh
):
Looking at where CYPHAL_PATH is imported: pycyphal/dsdl/_import_hook.py:104
def get_default_lookup_dirs() -> Sequence[str]:
return os.environ.get("CYPHAL_PATH", "").replace(os.pathsep, ";").split(";")
Now, trying to this step with the trailing :
And without the trailing :
Just need to filter out the empty entry?
Just need to filter out the empty entry?
Yes.
Reported by Charles Cross, copypasta below:
I was able to recreate the issue with this script:
From writing this, I think I figured out the underlying issue. If you don't already have a CYPHAL_PATH env var set, and if you set it with the line in the yakut readme, you end up with a trailing ":" in CYPHAL_PATH, and it appears that the empty righthand side of the delimiter gets interpreted as "cwd" by yakut/pycyphal (not sure which) when DSDL files are compiled.
If you set it without the trailing :, the CWD is not crawled.