There are a few scenarios where we could take advantage of the newly published caching package:
- To download volta itself (though this should already be cached)
- To download a tool based on the provided explicit node/yarn version
- When using this action without manually specifying
node-version or yarn-version. We should be able to cache based on the volta key in package.json, and avoid having to download node/volta/etc if nothing has changed.
- When using a SemVer range matcher like
node-version: 12.x. This is a bit trickier than the prior scenario since it is not obvious how to comprise the cache key so that you do get a newer versions within your allowed range "periodically". Ideally we do not need to duplicate the logic in Volta itself for determining the node versions.
There are a few scenarios where we could take advantage of the newly published caching package:
node-versionoryarn-version. We should be able to cache based on thevoltakey inpackage.json, and avoid having to download node/volta/etc if nothing has changed.node-version: 12.x. This is a bit trickier than the prior scenario since it is not obvious how to comprise the cache key so that you do get a newer versions within your allowed range "periodically". Ideally we do not need to duplicate the logic in Volta itself for determining the node versions.