On Friday, October 16, 2015 01:07:49 PM David Smith wrote: > I'm also wondering how to replace 'require' without modifying the > LOAD_PATH. I can't expect my users to know how to make any path changes.
You can do this: thisdir = splitdir(@__FILE__)[1] if !any(LOAD_PATH .== thisdir) push!(LOAD_PATH, thisdir) end Whatever file has this code snippet in it will cause its enclosing folder to be added to the LOAD_PATH. You may also be running up against https://github.com/JuliaLang/julia/issues/9245. Better (but more awkward) than @everywhere using DCEMRI would be for p in workers() remotecall_fetch(p, eval, :(using DCEMRI)) end On julia 0.3, that has to be remotecall_fetch(p, eval, Expr(:using, :DCEMRI)) --Tim > > 'using' and 'import' doesn't work for my parallel processes even though I'm > loading a registered package ("DCEMRI"). I get this error. > > WARNING: Module DCEMRI not defined on process 2 > fatal error on 2: ERROR: UndefVarError: DCEMRI not defined > > > I have just a small bit of code in a separate file in the DCEMRI package > directory that I need each worker to load. What is the preferred way to > enable this in 0.4? > > > On Thursday, September 17, 2015 at 7:18:54 AM UTC-5, Christopher Fisher > > wrote: > > I am using .4.0-rc1 and have encountered a similar situation and have > > fairly basic questions about the way .4 loads files. I normally use > > require > > to load a file of functions from my working directory in to Julia on a > > local computer or a cluster of computers. I was hoping someone would be > > willing to answer a few related questions. > > > > First, where can I find the .juliarc.jl file? > > > > Second, is there an easier way to load a .jl file from my working > > directory into Julia onto a local computer or cluster of computers that > > does not require editing the .juliarc.fil file? (Editing this file for > > every project seems a little inconvenient). > > > > Third, will the code loaded from a .jl always be precompiled in .4? If > > not, how do I choose whether it is precompiled or not? > > > > Thanks in advance (and my apologies for the basic questions;I'm not a > > programmer per se) > > > > Chris > > > > On Friday, July 31, 2015 at 7:30:44 AM UTC-4, Tim Holy wrote: > >> If MyModule.jl is on your LOAD_PATH, > >> > >> @everywhere import MyModule > >> > >> should work. You can add > >> > >> push!(LOAD_PATH,"/my/code/repository") > >> > >> to your .juliarc.jl file. > >> > >> This has been deprecated because of precompilation; it was felt that the > >> string version left it too ambiguous about whether you wanted to load the > >> raw > >> file or the cached version. > >> > >> Best, > >> --Tim > >> > >> On Thursday, July 23, 2015 11:58:58 AM Eduardo Lenz wrote: > >> > Hi > >> > I just downloaded the last nightly build and I am receiving a new > >> > deprecation message: > >> > > >> > Warning, "require" is deprecated, use "using" or "import" instead. > >> > > >> > My question is: I am using "require" due to the need to automatically > >> > import these functions for all workers in a cluster. As long as I know, > >> > >> to > >> > >> > accomplish this task I have to use "require" and also provide the > >> > >> correct > >> > >> > path of the corresponding .jl files. How can I do this same thing using > >> > "using" or "import" ? I tried to use it as I was using "require" and it > >> > >> is > >> > >> > not working as expected. > >> > > >> > Thanks for your help and sorry for the dumb question.