Problem: Module mina_version uses mina_version.normal as the default
implementation which causes recompilation of most of the project on
every commit.
Solution:
use mina_version.dummy as the default implementation
rename mina_version_normal to mina_version_compiled
use mina_version_compiled in all archive, rosetta and archive
executables
This PR also makes mina_version_compiled a separate package (not part of
mina_version). While this is unnecessary for the purpose of PR, it eases
dependency analysis on package level vs. library level. This is useful
for some work that will be introduced in follow-up PRs.
Explain how you tested your changes:
Mina compiles
Compiled executables show correct commit id when mina version is called
Checklist:
[x] Dependency versions are unchanged
Notify Velocity team if dependencies must change in CI
[x] Modified the current draft of release notes with details on what is completed or incomplete within this project
[x] Document code purpose, how to use it
Mention expected invariants, implicit constraints
[x] Tests were added for the new behavior
Document test purpose, significance of failures
Test names should reflect their purpose
[x] All tests pass (CI will check this if you didn't)
[x] Serialized types are in stable-versioned modules
Problem: Module mina_version uses mina_version.normal as the default implementation which causes recompilation of most of the project on every commit.
Solution:
This PR also makes mina_version_compiled a separate package (not part of mina_version). While this is unnecessary for the purpose of PR, it eases dependency analysis on package level vs. library level. This is useful for some work that will be introduced in follow-up PRs.
Explain how you tested your changes:
mina version
is calledChecklist: