JuliaLang / Pkg.jl

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

Pkg.pin resolves #2451

Open fredrikekre opened 3 years ago

fredrikekre commented 3 years ago
pkg> st
Status `/tmp/Project.toml`
  [713c75ef] Franklin v0.6.12
  [16fef848] LiveServer v0.3.6

pkg> pin Franklin
  Resolving package versions...
Updating `/tmp/Project.toml`
  [713c75ef] ↓ Franklin v0.6.12 ⇒ v0.6.12 ⚲
Updating `~/dev/TME061/build-tools/Manifest.toml`
  [713c75ef] ↓ Franklin v0.6.12 ⇒ v0.6.12 ⚲
  [c8ffd9c3] ↑ MbedTLS_jll v2.16.0+1 ⇒ v2.16.0+2
Project.toml ```toml [deps] Franklin = "713c75ef-9fc9-4b05-94a9-213340da978e" LiveServer = "16fef848-5104-11e9-1b77-fb7a48bbb589" [compat] Franklin = "=0.6.12" ```
Manifest.toml ```toml # This file is machine-generated - editing it directly is not advised [[Base64]] uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" [[Crayons]] git-tree-sha1 = "cb7a62895da739fe5bb43f1a26d4292baf4b3dc0" uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f" version = "4.0.1" [[Dates]] deps = ["Printf"] uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" [[DelimitedFiles]] deps = ["Mmap"] uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab" [[Distributed]] deps = ["Random", "Serialization", "Sockets"] uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" [[DocStringExtensions]] deps = ["LibGit2", "Markdown", "Pkg", "Test"] git-tree-sha1 = "88bb0edb352b16608036faadcc071adda068582a" uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" version = "0.8.1" [[Documenter]] deps = ["Base64", "Dates", "DocStringExtensions", "InteractiveUtils", "JSON", "LibGit2", "Logging", "Markdown", "REPL", "Test", "Unicode"] git-tree-sha1 = "bc99c157ff2957c058a1067061d16c2c83d1ec42" uuid = "e30172f5-a6a5-5a46-863b-614d45cd2de4" version = "0.24.9" [[FileWatching]] uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" [[Franklin]] deps = ["Dates", "DelimitedFiles", "DocStringExtensions", "FranklinTemplates", "HTTP", "Literate", "LiveServer", "Logging", "Markdown", "NodeJS", "OrderedCollections", "Pkg", "Random"] git-tree-sha1 = "066688cff2bb17e3db1388fd8366dcece65e0c3b" uuid = "713c75ef-9fc9-4b05-94a9-213340da978e" version = "0.6.12" [[FranklinTemplates]] git-tree-sha1 = "cda889ef006e9419823c70ebaefbc57812a8addf" uuid = "3a985190-f512-4703-8d38-2a7944ed5916" version = "0.5.7" [[HTTP]] deps = ["Base64", "Dates", "IniFile", "MbedTLS", "Sockets"] git-tree-sha1 = "fe31f4ff144392ad8176f5c7c03cca6ba320271c" uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3" version = "0.8.14" [[IniFile]] deps = ["Test"] git-tree-sha1 = "098e4d2c533924c921f9f9847274f2ad89e018b8" uuid = "83e8ac13-25f8-5344-8a64-a9f2b223428f" version = "0.5.0" [[InteractiveUtils]] deps = ["Markdown"] uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" [[JSON]] deps = ["Dates", "Mmap", "Parsers", "Unicode"] git-tree-sha1 = "b34d7cef7b337321e97d22242c3c2b91f476748e" uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" version = "0.21.0" [[LibGit2]] deps = ["Printf"] uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" [[Libdl]] uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" [[Literate]] deps = ["Base64", "JSON", "REPL"] git-tree-sha1 = "ac48e6b189a3e993788e1776485625bcbed3504d" uuid = "98b081ad-f1c9-55d3-8b20-4c87d4299306" version = "2.3.1" [[LiveServer]] deps = ["Crayons", "Documenter", "FileWatching", "HTTP", "Pkg", "Sockets", "Test"] git-tree-sha1 = "9b78352e4b8fca8ad5233b1e6bcfb99720ee488f" uuid = "16fef848-5104-11e9-1b77-fb7a48bbb589" version = "0.3.6" [[Logging]] uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" [[Markdown]] deps = ["Base64"] uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" [[MbedTLS]] deps = ["Dates", "MbedTLS_jll", "Random", "Sockets"] git-tree-sha1 = "426a6978b03a97ceb7ead77775a1da066343ec6e" uuid = "739be429-bea8-5141-9913-cc70e7f3736d" version = "1.0.2" [[MbedTLS_jll]] deps = ["Libdl", "Pkg"] git-tree-sha1 = "066a4467008745eed36dad973ceb66405785a621" uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" version = "2.16.0+1" [[Mmap]] uuid = "a63ad114-7e13-5084-954f-fe012c677804" [[NodeJS]] deps = ["Pkg"] git-tree-sha1 = "350ac618f41958e6e0f6b0d2005ae4547eb1b503" uuid = "2bd173c7-0d6d-553b-b6af-13a54713934c" version = "1.1.1" [[OrderedCollections]] deps = ["Random", "Serialization", "Test"] git-tree-sha1 = "c4c13474d23c60d20a67b217f1d7f22a40edf8f1" uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" version = "1.1.0" [[Parsers]] deps = ["Dates", "Test"] git-tree-sha1 = "75d07cb840c300084634b4991761886d0d762724" uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" version = "1.0.1" [[Pkg]] deps = ["Dates", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "UUIDs"] uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" [[Printf]] deps = ["Unicode"] uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" [[REPL]] deps = ["InteractiveUtils", "Markdown", "Sockets"] uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" [[Random]] deps = ["Serialization"] uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" [[SHA]] uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" [[Serialization]] uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" [[Sockets]] uuid = "6462fe0b-24de-5631-8697-dd941f90decc" [[Test]] deps = ["Distributed", "InteractiveUtils", "Logging", "Random"] uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [[UUIDs]] deps = ["Random", "SHA"] uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" [[Unicode]] uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" ```
KristofferC commented 3 years ago
  [c8ffd9c3] ↑ MbedTLS_jll v2.16.0+1 ⇒ v2.16.0+2

I think the reason for this is that jlls uses build number and Pkg can't see that there is a difference between v2.16.0+1 and v2.16.0+2 so even with the tiered resolver, the first tier (which is supposed to try to keep every version the same) it updates it.

This is a side point regarding if a resolve is needed or not.

fredrikekre commented 3 years ago

Right, it happens for regular versions too.

Seelengrab commented 2 years ago

screenshot_2022-10-08_08-40-16_809820432

Since JLLs are kind of prevalent, it seems bad that we run any updating code at all for what should be a totally local operation, no? Does ]pin need to try to instantiate/resolve itself?

State after the `]pin` ``` (@v1.9) pkg> st Status `~/.julia/environments/v1.9/Project.toml` [6e4b80f9] BenchmarkTools v1.3.1 [f68482b8] Cthulhu v2.7.3 [31a5f54b] Debugger v0.7.6 ⌃ [c3a54625] JET v0.6.5 ⚲ [70703baa] JuliaSyntax v0.2.0 [2b0e0bc5] LanguageServer v4.3.1 [b4c46c6c] LinuxPerf v0.3.3 [16fef848] LiveServer v1.0.3 ⌃ [e4faabce] PProf v2.2.0 [14b8a8f1] PkgTemplates v0.7.29 [c46f51b8] ProfileView v1.5.2 [295af30f] Revise v3.4.0 ⌃ [90137ffa] StaticArrays v1.5.8 Info Packages marked with ⌃ have new versions available and may be upgradable. ```