This repository has been archived by the owner on Jun 10, 2019. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I like having my paths relative.
I've noticed that wherever a plugin wanted to allow relative paths, yet some tool used by that plugin required an absolute path, the path was converted from relative to absolute somewhere close to the place where the absolute path was required.
At first, I tried to do the same. I started patching all places that used the workspace path, and that would fail at runtime with just a relative path. But it turns out there's quite a lot of places that fail; my somewhat minimalistic test case already required 7 changes.
Then I realized it would be better to have the path relative to the manifest file, not just the current directory—just like the "vbox: Make guest additions path relative to manifest" patch. So, I'd essentially need to patch all the places.
So, I decided to just modify the manifest itself during the "parsing" step. I've noticed that the current code carefully avoids modifying the manifest data structure, probably for a good reason… but this just feels the right approach to me here. Though, maybe there is a better way?