zef icon indicating copy to clipboard operation
zef copied to clipboard

Zef skips installation of deps with `--deps-only` on an installed module

Open patrickbkr opened this issue 1 year ago • 0 comments

$ zef --version
0.22.2

$ raku --version
Welcome to Rakudo™ v2024.08-61-g54e538c06.
Implementing the Raku® Programming Language v6.d.
Built on MoarVM version 2024.08-9-g570db2612.

$ cat META6.json
{
  "name": "Terminal::LineEditor",
  "version": "0.0.16",
  "auth": "zef:japhb",
  "depends": [
    "Terminal::MakeRaw:ver<1.0.0+>"
  ]
}

$ zef info Terminal::LineEditor
===> Searching for: Terminal::LineEditor
- Info for: Terminal::LineEditor
- Identity: Terminal::LineEditor:ver<0.0.16>:auth<zef:japhb>
- Recommended By: Zef::Repository::Ecosystems<fez>
- Installed: Yes
Description:     Generalized terminal line editing
License:         Artistic-2.0
Source-url:      https://github.com/japhb/Terminal-LineEditor.git
Provides: 6 modules
Depends: 4 items

$ zef depends .
Terminal-MakeRaw:ver<1.0.0>:auth<zef:patrickb>

$ zef info 'Terminal-MakeRaw:ver<1.0.0>:auth<zef:patrickb>'
===> Searching for: Terminal-MakeRaw:ver<1.0.0>:auth<zef:patrickb>
- Info for: Terminal-MakeRaw:ver<1.0.0>:auth<zef:patrickb>
- Identity: Terminal-MakeRaw:ver<1.0.0>:auth<zef:patrickb>
- Recommended By: Zef::Repository::Ecosystems<fez>
- Installed: No
Description:     Switch a terminal to and from raw mode
License:         Artistic-2.0
Source-url:      https://sr.ht/~patrickb/Terminal-MakeRaw/
Provides: 1 modules
Support:
#   source:     https://git.sr.ht/~patrickb/Terminal-MakeRaw
#   bugtracker: https://todo.sr.ht/~patrickb/Terminal-MakeRaw
#   mailinglist:        https://lists.sr.ht/~patrickb/Terminal-MakeRaw-devel
Depends: 0 items

$ zef install --deps-only --/test .
All candidates are currently installed

Context

It seems that if a module is installed, trying to zef install --deps-only . with a META6.json file that matches that module but has different dependencies, those dependencies are ignored.

My guess is that zef filters out the module itself as it should had I not passed --deps-only and then does nothing. I'm undecided if this is more of a bug or a feature. I can say that I have been bitten by this behavior repeatedly.

patrickbkr avatar Oct 04 '24 21:10 patrickbkr