JuliaLang / JuliaLang/Juleps

Pkg3: Environment manipulation in the language instead of with command line arguments

Open
#5 3 comments 0 reactions 0 assignees View on GitHub
Pkg3
Dominant language
No language data
Stars
75
Forks
23
PR merge metrics
No merged PRs in 30d

Description

If environment manipulation gets moved to a command-line invocation, people are probably going to want to run it most often from shell mode or via `run()`, which isn't any better than what we have now. Otherwise many Windows users aren't going to find it at all because the usual workflow there is often not via the command line. (IDE features can help, but shouldn't be required for this to be usable.)

As a thought, what if we make this tie into https://github.com/JuliaLang/julia/issues/17997 instead? Instead of loading packages into `Main`, load them into an environment-specific namespace. Enter and leave environments via `Pkg3.enterenv("newenv")`, `Pkg3.leaveenv()` etc. Make `Pkg3.add`, `Pkg3.rm`, and `Pkg3.update` take an environment argument. If the user attempts to update or remove a loaded package from an environment, that environment needs to be reset via something similar to `workspace()`.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.