31c84e9ac4
Previously JS IR versions of stdlib and kotlin-test were build
by default using compiler previously built on a buildserver.
It had some issues:
- This required us to advance bootstrap every time we made any
incompatible IR changes. This happens often since IR ABI is
not quite stable yet.
- We never tested the exact combination of compiler and stdlib we publish
We tested:
- new compiler with new stdlib build by new compiler (in box tests)
- old compiler with new stdlib build by old compiler (in stdlib tests)
We published:
- new compiler with new stdlib build by old compiler
After this change JS IR compiler tests, builds and publishes
single configuration:
new compiler with new stdlib build by new compiler
JS IR stdlib and kotlin-test are now built using JavaExec of CLI instead
of Gradle plugin to avoid troubles of loading a freshly built plugin.
This also allows to have a granular dependencies: we don't rebuild klib
if we changed a lowering in a compiler backend, but we do rebuild it if
we changed IR serialization algorithm.
Kotlin Standard Library for JS
This module produces a kotlin-stdlib-js jar which contains all the Kotlin standard kotlin library code compiled to JavaScript.
The tests of this module can be run and debugged inside any browser by opening the web/index.html file in this directory to run the test cases using Mocha.
You should execute installMocha gradle task before running these tests to fetch the required Mocha dependency and testClasses task to compile test code.
These tests are also run during CI build with Node.js plugin.