proto v0.8 - Version detection and installation improvements
In this release, we're dropping some quality of life workflow improvements.
Built-in detection for proto use
The proto use
command is extremely useful for bootstrapping your
development environment with all necessary tooling, but it had a hard requirement on the
.prototools
configuration file. But what if you're already using non-proto
version files, like .nvmrc
or .dvmrc
? Or maybe manifest settings, like packageManager
or
engines
in package.json
?
Great questions, and we agree! As such, we've updated proto use
to also detect a version from
the environment for the current working directory. We suggest using .prototools
, but feel free to
configure your environments as you so choose!
# Install all the things!
$ proto use
Smarter version detection
One of proto's best features is its contextual version detection, but it
did have 1 shortcoming. When we detected a partial version, like 1.2
, we'd resolve to a fully
qualified version with the latest patch version (e.g. 1.2.3
). While this worked in most cases,
everytime a new patch was released upstream (e.g. 1.2.4
), proto would error and require a manual
install of this new version. This was pretty annoying as 1.2.3
and 1.2.4
are likely to be
compatible, and both satisfy the 1.2
version constraint.
To mitigate this scenario, we've updated the version detection to scan the locally installed
versions first when encountering a partial version. This solves the problem above by allowing
1.2.3
to satisfy the requirement, instead of forcing an install of 1.2.4
.
Other changes
View the official release for a full list of changes.