Basically, if it try to import and initialize with import "@base/bar/baz/bar.pkl" in derive/tmp.pkl
where base/bar/baz/bar.pkl imports base/foo.pkl with triple dot syntax (extends ".../foo.pkl")
it gives following error
–– Pkl Error ––
I/O error loading module `projectpackage://github.com/pkl@0.1.0#/bar/foo.pkl`.
NoSuchFileException: /home/jwyang/test_pkl/derive/../base/bar/foo.pkl
3 | foo = new bar{}
^^^
at tmp#foo (file:///home/jwyang/test_pkl/derive/tmp.pkl, line 3)
106 | text = renderer.renderDocument(value)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
at pkl.base#Module.output.text (https://github.com/apple/pkl/blob/0.25.2/stdlib/base.pkl#L106)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @jw-y on GitHub (Mar 15, 2024).
Not sure if I am doing something wrong, but here it goes.
Here is the file structure
Summary
Basically, if it try to import and initialize with
import "@base/bar/baz/bar.pkl"inderive/tmp.pklwhere
base/bar/baz/bar.pklimportsbase/foo.pklwith triple dot syntax (extends ".../foo.pkl")it gives following error
Files
base/PklProjectbase/foo.pklbase/bar/baz/bar.pklderive/PklProjectderive/tmp.pklCommands
Resulting
PklProject.deps.jsonIf I replace triple dot syntax in
base/bar/baz/bar.pklwithextends "../../foo.pkl"error doesn't show anymore
@bioball commented on GitHub (Mar 16, 2024):
Thanks! Looks like a bug.
@juhagman commented on GitHub (Apr 29, 2025):
I cannot reproduce. Latest Pkl, latest macOS.