feat: rebuild only necessary canisters#3710
feat: rebuild only necessary canisters#3710vporton wants to merge 388 commits intodfinity:masterfrom
Conversation
|
|
|
The last commit ( Also note that unlike the original ( The code needs refactoring and more serious testing. |
|
Testing shows a bug: When specifying a dependency to build: |
4be4fa8 to
030f9af
Compare
|
The latest version commit You may try to use it for your home projects, but don't try it for mission-critical tasks or if you fear to be lost in wrong recompilations, because errors are still possible. |
|
Fixed crash on |
|
This MR has been "battle-tested" a little. It worked as expected in developing https://github.com/vporton/zondirectory2 and in testing of https://github.com/vporton/joining-proxy-rust without any visible errors. |
|
There has been found yet a bug: Compiling vporton/zondirectory2@b145a4c it was output:
|
|
I've removed "that's weird" from my comment, because it has been written by me in error. |
|
Note that the above error was caused by |
I run |
|
I've fixed a serious bug. |
|
Found bugs, while attempting deploying a real app to
|
|
closed due for age and inactivity |
Description
DFX doesn't compile canisters for which all dependencies are elder than the
.wasmfile. This results in big compilation speedups.The PR also adds tracing and comments intended for future improvement of compilation speed.
This PR is a WIP. There is potential for further speedup and there is missing logging. More testing is necessary.
How Has This Been Tested?
I run it before the
.wasmfile has been created and after it with a significant speedup. Alsodfx build -vvcorrectly does not output anymoccompilation logs, when invokingdfx buildfor the second time.Later I did
bats make_like.bash,add_dependency.bash,broken_canister_dep.bash, anddotenv.bashautomated testing.Checklist: