Skip to content

Respect local includes in remote files #42

@deldrid1

Description

@deldrid1

Say I have 3 files in the same repo, src.nut, lib/lib.nut, and lib/libDependency.nut

In src.nut

...
@include once "lib/lib.nut"
...

and in lib.nut

...
@include once "./libDependency.nut"
...

If I use builder for this example, life is good and everything works as expected. However, if I want to include lib from another repo, things begin to fall apart:

 ‘@include once "github:someOwner/someUser/lib/lib.nut@develop"

fails with an ‘Error: Local file "lib/libDependency.nut" not found (otherRepo.nut:LineNumber)’.

My proposed approach would be a modification to the way that remote file @include’s are handled. I’m not intimately familiar with how builder is architected, but basically, each time a remote file or github file was included, that remote path or github path/branch would need to be stored in memory along with the source code. Any time a local include is found inside of these remote files, it would prepend the remote path and include the locally referenced file at the remote path.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions