dfinity / vessel

The original package manager for Motoko
Apache License 2.0
113 stars 19 forks source link

Force/sync updates when following a branch or version tag #55

Closed ByronBecker closed 2 years ago

ByronBecker commented 2 years ago

Motivation

Currently, vessel allows dependency tracking through a commit hash, a tag, or a branch name.

The code for both tags and branch names of a dependency can be updated remotely by the package developer. When this happens, a vessel install doesn't automatically fetch the newest version of the branch/tag code from GitHub.

See this topic issue and discussion from the developer forums

Potential Solution(s)

  1. Add a -f flag, which would force re-fetch all of dependencies of a project listed in the package-set.dhall, and overwrite any dependencies that already exist. This would be very much similar to npm install --force, as shown in the docs for npm install.

  2. An alternative solution to this would be to include a release property that could be used in place of the version in the package-set.dhall if one wanted to specifically track a branch/tag in which the underlying code is update-able, which would signify that this package should be re-fetched on every vessel install.

@ggreif @crusso