Hi Andrey, That is a great change in process. Well done on pushing that through the pipe as I imagine it was quite a lot of interconnected work (certainly looks that way based on how many comments are in the issues!)
Jonah ~~~ Jonah Graham (he/him) Kichwa Coders www.kichwacoders.com On Thu, 13 Jul 2023 at 11:33, Andrey Loskutov via jdt-dev < jdt-...@eclipse.org> wrote: > Hi all, > > with [1] we have now immediate feedback loop on ecj compiler changes (in > org.eclipse.jdt.core.compiler.batch [2]). > Before changes in [1] we only (manually) updated compiler after every > milestone/release build. > > What does it mean now: on any compiler code change the ecj compiler is > re-built from sources and used as compiler for the rest of the build. > > This has following immediate consequences: > > 1) If we push PR to jdt.core github repo, we build ecj in Jenkins from PR > commit first and use that ecj to build the rest of JDT code for this PR. If > we break compiler (without noticing that in tests), Jenkins may fail > immediately just by compiling JDT code. > 2) If we merge commits to master branch of jdt.core github repo, following > platform aggregator builds in Jenkins & next nightly platform SDK build > will use JDT head commit to build ecj and use that ecj to build the rest of > the platform SDK code. > 3) If we change the way how ecj generates bytecode (like in [3]), next SDK > build might be declared "unstable" (because build would produce different > binaries for bundles with no changes in source code). In such case the > affected bundles source code need to be "touched" to get "stable" SDK build > (assuming ecj produces correct code). Should it be the worst case and ecj > would produce wrong bytecode, we have either to fix compiler for the next > SDK build or just revert offending compiler commit. I hope this shouldn't > happen often, but it is better *we* detect bad change and not downstream > consumers. > > With the points above we hope to get faster feedback on ecj compiler > changes. > > [1] > https://github.com/eclipse-platform/eclipse.platform.releng.aggregator/issues/1203 > [2] > https://github.com/eclipse-jdt/eclipse.jdt.core/tree/master/org.eclipse.jdt.core.compiler.batch > [3] https://github.com/eclipse-jdt/eclipse.jdt.core/pull/1139 > > -- > Kind regards, > Andrey Loskutov > > Спасение утопающих - дело рук самих утопающих > > https://www.eclipse.org/user/aloskutov > _______________________________________________ > jdt-dev mailing list > jdt-...@eclipse.org > To unsubscribe from this list, visit > https://www.eclipse.org/mailman/listinfo/jdt-dev >
_______________________________________________ platform-dev mailing list platform-dev@eclipse.org To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/platform-dev