Pkg3 problems, trying to clean up

I don’t understand the following: I had a package in a project in dev mode and now I wanted to change that out to an official release. Doing an rm and then an add simply did not work as Julia somehow memoized that I am using the dev version and always pointed to the .julia/dev folder. I did resolve a few times and whatever but it didn’t solve it.

Anyways, I deleted both Project.toml and Manifest.toml and started with an empty Project.toml:

name = "PhD"
uuid = "cf4698d0-a95a-11e9-1fa8-a11f59b05846"
authors = ["Tamas Gal <tgal@km3net.de>"]
version = "0.1.0"

I am wondering where the 0.1.0 comes from, however more interesting is that everything is somehow still there:

(v1.1) pkg> activate .

(PhD) pkg> st
Project PhD v0.1.0
    Status `~/Dev/PhD/Project.toml`
  [5d742f6a] - CSVFiles v0.15.0
  [634d3b9d] - DrWatson v0.6.0 [`~/.julia/dev/DrWatson`]
  [f67ccb44] - HDF5 v0.12.0
  [8314cec4] - PGFPlotsX v1.0.0
  [92933f4c] - ProgressMeter v1.0.0
    Status `~/Dev/PhD/Manifest.toml`
  [5d742f6a] - CSVFiles v0.15.0
  [634d3b9d] - DrWatson v0.6.0 [`~/.julia/dev/DrWatson`]
  [f67ccb44] - HDF5 v0.12.0
  [8314cec4] - PGFPlotsX v1.0.0
  [92933f4c] - ProgressMeter v1.0.0

I even wiped my ~/.julia folder except config, conda, dev, logs and prefs but it still shows the same.

What is going on? Where is this information stored?

Well, the activate means that you are using the PhD project so wiping .julia doesn’t really matter. The information is stored inside the Manifest.toml in the directory you did activate.

You should be able to use free:

(v1.1) pkg> ?free
  free pkg[=uuid] ...

  Free a pinned package pkg, which allows it to be upgraded or downgraded again. If the package is checked out (see help develop) then this command makes the package no longer being checked out.
1 Like

But I deleted the Manifest.toml, I only have a Project.toml
I also never pinned any package…

This is how my directory looks like:

░ tgal@staticbox:PhD  master x●● py-3.7.3 
░ 15:02:29 > ls *.toml
Project.toml

░ tgal@staticbox:PhD  master x●● py-3.7.3 
░ 15:06:36 > cat Project.toml 
name = "PhD"
uuid = "cf4698d0-a95a-11e9-1fa8-a11f59b05846"
authors = ["Tamas Gal <tgal@km3net.de>"]
version = "0.1.0"

░ tgal@staticbox:PhD  master x●● py-3.7.3 
░ 15:06:39 > julia
No OhMyREPL installed.
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.1 (2019-05-16)
 _/ |\__'_|_|_|\__'_|  |  
|__/                   |

No Revise installed.
(v1.1) pkg> activate .

(PhD) pkg> st
Project PhD v0.1.0
    Status `~/Dev/PhD/Project.toml`
  [5d742f6a] - CSVFiles v0.15.0
  [634d3b9d] - DrWatson v0.6.0 [`~/.julia/dev/DrWatson`]
  [f67ccb44] - HDF5 v0.12.0
  [8314cec4] - PGFPlotsX v1.0.0
  [92933f4c] - ProgressMeter v1.0.0
    Status `~/Dev/PhD/Manifest.toml`
  [5d742f6a] - CSVFiles v0.15.0
  [634d3b9d] - DrWatson v0.6.0 [`~/.julia/dev/DrWatson`]
  [f67ccb44] - HDF5 v0.12.0
  [8314cec4] - PGFPlotsX v1.0.0
  [92933f4c] - ProgressMeter v1.0.0

Oh, it is showing the diff vs the previous commit. It does that automatically in git repositories but it will be changed in 1.2 to only show that if you give the -diff flag to st.

1 Like

Aaaaw… OK? So how should I clean that up? :see_no_evil:

What do you mean with clean it up? If you want you can just make a commit at the current state.

The help also said:

If the package is checked out (see help develop) then this command makes the package no longer being checked out.
2 Likes

OK I guess I got it. It just shows the diff but there is no actual reference…

1 Like