We should add a VERSION file to the top level of the artifacts.
This would contain a two-element semantic version string reflecting the current version of the project.
If we are recompiling, we can carryover the previous version (like the lockfile) and then update it based on some heuristic about what constitutes a major or minor version bump. Per prior conversation, this heuristic would be:
Minor versions are any change on recompile for which prior user config would be re-runnable
Major versions are any other change
If we are compiling (not recompiling/updating) we can optionally:
Start from a blank version (e.g. 0.0)
Use an explicit fallback version passed on the CLI
Compute a new version from a prior compilation's version and fingerprint data passed as JSON to the compiler as a CLI argument
We should add a
VERSION
file to the top level of the artifacts.This would contain a two-element semantic version string reflecting the current version of the project.
If we are recompiling, we can carryover the previous version (like the lockfile) and then update it based on some heuristic about what constitutes a major or minor version bump. Per prior conversation, this heuristic would be:
If we are compiling (not recompiling/updating) we can optionally:
0.0
)