mina
mina copied to clipboard
Use mina version wisely
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
- [x] Does this close issues? None