JuliaLang / JuliaLang/Distributed.jl
Allow @everywhere include(...) to override default path behavior
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 55
- Forks
- 19
- PR merge metrics
- No merged PRs in 30d
Description
According to tests and the documentation string:
Similar to calling remotecall_eval(Main, procs, expr), but with two extra
features:
- `using` and `import` statements run on the calling process first, to ensure
packages are precompiled.
- The current source file path used by `include` is propagated to other processes.
This last "feature" overrides the path even if that isn't desired behavior. I discovered this when doing
@everywhere include("./utilities.jl")
and I expected it to read from the "current directory" that the remote julia process started in, but in fact it tried to read from my home directory (same directory as on my machine where the whole process was initiated) however that path doesn't exist remotely and isn't the desired behavior. It would be nice to have an option to not have @everywhere include(...) override the path.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the @everywhere implementation, its tests, and the documentation string describing include path propagation. Review how the current source path reaches remote processes and define an option that preserves the remote process's current-directory behavior. Done means the requested include form can avoid local path propagation while existing behavior remains covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- distributed-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100