A package you are developing can exist on disk yet remain unavailable in your current Julia environment. The package manager’s `dev` command adds that local package by directory path. Unlike `add`, which captures a package version, `dev` lets the environment load your latest code changes without an explicit package update. section 16.3 section 16.6
shell> pwd ~/dev/hobby shell> ls Manifest.toml Project.toml ToyGeometry (hobby) pkg> dev ./ToyGeometry Resolving package versions... Updating `~/dev/hobby/Project.toml` [bbcec4ee] + ToyGeometry v0.1.0 `ToyGeometry` Updating `~/dev/hobby/Manifest.toml` [bbcec4ee] + ToyGeometry v0.1.0 `ToyGeometry`
From the working environment, `dev ./ToyGeometry` adds the package in the neighboring directory and updates `Project.toml` and `Manifest.toml`. section 16.3
Afterward, `using ToyGeometry` can find the package. `dev` makes the package available; it does not automatically make every function callable without its module prefix. That requires the package to export those names. Revise has a separate role: monitoring changes to packages loaded after it. section 16.3 section 16.6
