isSelfUpdatable(channel: InstallChannel): boolean
Whether this channel's updater is qunitx's to run.
True for the two that install a user-level qunitx someone asked to upgrade and nothing else
depends on: the JSR launcher's shim, and a global npm install. Running their updater is exactly
what upgrade was asked to do, and neither touches a file this process is reading — deno install rewrites the shim and caches a NEW version beside the running one.
False for the rest, and for different reasons. A project dependency is a change to someone's
repository, which is theirs to make (--write-manifest bumps the range for them). A deno-cache
run installed nothing, so there is nothing to replace. A source checkout is a git working tree,
where git pull can conflict, rebase, or land on the wrong branch.
import * as Channel from './channel.ts'; Channel.isSelfUpdatable({ kind: 'npm-global', prefix: '/usr/lib' }); // true Channel.isSelfUpdatable({ kind: 'source', entry: '/repo/cli.ts' }); // false
channel: InstallChannel