JuliaLang / Pkg.jl

Pkg - Package manager for the Julia programming language
https://pkgdocs.julialang.org
Other
616 stars 258 forks source link

add `add --weak/extra Foo` to add to [weakdeps] or [extras] #3708

Closed IanButterworth closed 8 months ago

IanButterworth commented 9 months ago
KristofferC commented 8 months ago

Is there even a need to resolve or do anything when adding a weak dependency?

IanButterworth commented 8 months ago

Yeah. Makes sense to skip a bunch of that.

But I'm realizing this probably means Pkg.status, specifically the diff mode, needs to be taught to show weakdeps

(jl_QaDfcG) pkg> add --weak CSV
  No Changes to `/private/var/folders/1z/jf841bdj73bdj3vk7kc7f_3w0000gn/T/jl_QaDfcG/Project.toml`
  No Changes to `/private/var/folders/1z/jf841bdj73bdj3vk7kc7f_3w0000gn/T/jl_QaDfcG/Manifest.toml`
  No Changes to `/private/var/folders/1z/jf841bdj73bdj3vk7kc7f_3w0000gn/T/jl_QaDfcG/Project.toml`
  No Changes to `/private/var/folders/1z/jf841bdj73bdj3vk7kc7f_3w0000gn/T/jl_QaDfcG/Manifest.toml`

(jl_QaDfcG) pkg> 

(not sure why it's showing twice here..)

IanButterworth commented 8 months ago

I've generalized this so it can be used for [weakdeps] and [extras]

(jl_oftKv1) pkg> add --weak CSV
       Added CSV to [weakdeps]

(jl_oftKv1) pkg> add --extra CSV
       Added CSV to [extras]

(jl_oftKv1) pkg> add CSV
   Resolving package versions...
    Updating `/private/var/folders/1z/jf841bdj73bdj3vk7kc7f_3w0000gn/T/jl_oftKv1/Project.toml`
  [336ed68f] + CSV v0.10.11
    Updating `/private/var/folders/1z/jf841bdj73bdj3vk7kc7f_3w0000gn/T/jl_oftKv1/Manifest.toml`
  [336ed68f] + CSV v0.10.11
...

(jl_oftKv1) pkg> st
Status `/private/var/folders/1z/jf841bdj73bdj3vk7kc7f_3w0000gn/T/jl_oftKv1/Project.toml` (empty project)

~The only remaining thing is figuring out why the project hash is outdated..~