The new 0.7.0-alpha manual section on the package manager introduces the concepts of “project” and “application”-- I presume that these are meant for ordinary users trying to develop their own code? In this case, I have a few questions about how these are supposed to work.
-
If I use the “]” operation in the REPL and then ask the package manager to
generatea project, it creates the folder hierarchy in the current directory. However, by default, the current directory is not searched by theimportoperation. What is the recommended workflow-- append “.” to theLOAD_PATH? To the DEPOT path? Or somehow instruct thegeneratecommand to use a different folder? -
If there is a file called
runtests.jlthat lives in PROJ/test/ of a package, then this file is executed by thePkg.test("PROJ")command. But what about “projects” and “applications” that aren’t packages-- what is the standard way to reach thisruntests.jlfile? So far I have reached it byimport Test.@test,import Test.@testset, etc., and finallyinclude("PROJ/test/runtests.jl"). UPDATE (a few minutes later): I just discovered that thepkgcommand prompt supports atestcommand. However, I couldn’t figure out how to use it. f I execute it in the current working directory, it doesn’t know which package to test, and if I execute it in the top-level directory of the project, it tells me that the name of the project is undefined (UndefVarError). -
If I change one of the .jl files in the
srcdirectory of a project, how do I tell the package manager to reload the source, i.e., what is the typical development workflow? I tried theupdatecommand from inside the package manager, but it did not have the desired effect. So far, the only means I know to load changes in the source files of the project is to exit and restart the REPL.