Skip to content

Empty directories remain after jpm uninstall #83

Description

@sogaiu

For the following two repositories / projects, performing jpm uninstall here after an installation, leaves behind empty directories in the package cache under syspath:

Sample session:

$ git clone https://github.com/ianthehenry/jimmy && cd jimmy
Cloning into 'jimmy'...
remote: Enumerating objects: 125, done.
remote: Counting objects: 100% (125/125), done.
remote: Compressing objects: 100% (76/76), done.
remote: Total 125 (delta 63), reused 103 (delta 41), pack-reused 0
Receiving objects: 100% (125/125), 32.63 KiB | 32.63 MiB/s, done.
Resolving deltas: 100% (63/63), done.

$ jpm install
generating /home/user/.local/lib/janet/.manifests/jimmy.jdn...
Installed as 'jimmy'.
copying build/jimmy/native.so to /home/user/.local/lib/janet/jimmy...
copying build/jimmy/native.meta.janet to /home/user/.local/lib/janet/jimmy...
copying build/jimmy/native.a to /home/user/.local/lib/janet/jimmy...
copying src/set.janet to /home/user/.local/lib/janet/jimmy...
copying src/map.janet to /home/user/.local/lib/janet/jimmy...
copying src/vec.janet to /home/user/.local/lib/janet/jimmy...
copying src/util.janet to /home/user/.local/lib/janet/jimmy...
copying src/init.janet to /home/user/.local/lib/janet/jimmy...

$ ls -a ~/.local/lib/janet/jimmy/
.   init.janet  native.a           native.so  util.janet
..  map.janet   native.meta.janet  set.janet  vec.janet

$ jpm uninstall
removing /home/user/.local/lib/janet/jimmy/native.so
removing /home/user/.local/lib/janet/jimmy/native.meta.janet
removing /home/user/.local/lib/janet/jimmy/native.a
removing /home/user/.local/lib/janet/jimmy/set.janet
removing /home/user/.local/lib/janet/jimmy/map.janet
removing /home/user/.local/lib/janet/jimmy/vec.janet
removing /home/user/.local/lib/janet/jimmy/util.janet
removing /home/user/.local/lib/janet/jimmy/init.janet
removing manifest /home/user/.local/lib/janet/.manifests/jimmy.jdn
Uninstalled.

$ ls -a ~/.local/lib/janet/jimmy/
.  ..

Perhaps it has something to do with the use of :prefix in declare-source?

Lines from project.janet from jimmy:

(declare-source
  :source [
    "src/set.janet"
    "src/map.janet"
    "src/vec.janet"
    "src/util.janet"
    "src/init.janet"
  ]
  :prefix "jimmy")

Lines from project.janet from stx:

(declare-source
 :source ["src/init.janet"]
 :prefix "stx")

Janet: 1.30.0-2ac36a05
JPM: 65e218e
OS: Ubuntu Linux 22.0.x

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions