|
|
|
|
|
by andrewwebber
1982 days ago
|
|
After 8 years of writing Golang microservices one observation is comparing the compile times when optimizing for production. A typical Golang CI/CD pipeline should
- compile without CGO enabled and with go build -tags netgo -a -v so that the binary can run on in a minimal docker image like alpine or scratch
- should be compiled and tested using the race detector
- should be linted using golanglint-ci All of these flags and linters considerably increase the build time for deployment to production The rust compiler effectively gives me the same outcome using the type system and the compiler advancements when targeting release musl. I have seen many Golang projects where the race detector was skipped because the code base was to large or it was flaky. One the other hand I do miss the code coverage tools. Code coverage for rust seems to only work on Linux |
|