-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
use_relative_output_paths #608
Conversation
Pull Request Test Coverage Report for Build 3384144984
💛 - Coveralls |
I did a test. Unfortunately, when using the call_cache it outputs everything in the same directory, without keeping the directory structure. This was not the case before the refactor. |
rel_link = os.path.relpath(target, run_dir) | ||
p = rel_link.find("/out/") | ||
rel_link = rel_link[p + 5 :] if p > 0 else None | ||
# if neither of the above cases applies, then fall back to just the target basename |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A case is missing for call cached entries. These also have an outdir. I wonder if it is possible to "know" that the code is taking a path from the cache.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rhpvorderman Good catch, I'll look into this
@rhpvorderman updated, please give this a try? I think the logic is now very similar to your original, just with a few added heuristics to make it harder (but not impossible) to confuse it with other subdirectories named |
@mlin, this works great! I tested it with call caching and output hardlinks, and both seem to work fine. Thanks! |
@mlin, thanks again for your efforts! |
#604 #606
@rhpvorderman Here's a refactor based on my earlier comments, WDYT? (Opened a new PR because I didn't have permission to push to your branch, but keeping the commit history will ensure your co-authorship when we merge)