Ilya Goncharov
b157a8eae5
[Wasm] Add wasm target to Klib manifest
...
^KT-66327 fixed
2024-03-06 10:57:50 +00:00
Sergej Jaskiewicz
f39335b3f7
[klib] Don't pass around metadata serialization closure
...
Pass the metadata serializer instance instead. This allows to further
reduce code duplication by introducing the common interface
`KlibSingleFileMetadataSerializer` for abstracting away K1 and K2
representation of a source file, as well as reusing
`Fir2KlibMetadataSerializer` across different backends.
KT-64392
2024-01-29 21:07:43 +00:00
Alexander Korepanov
ac30911497
[JS tests] Split FIR and IR output test dirs
2024-01-10 19:02:15 +00:00
Alexander Korepanov
4a04a2fc4b
[JS FIR] Enable invalidation with PL test for FIR
...
^KT-64446 Fixed
2023-12-20 19:04:31 +00:00
Marco Pennekamp
3497809ebd
[Test] Add missing disposal for test root disposables
...
^KT-64099
2023-12-19 11:12:23 +00:00
Marco Pennekamp
32fe29b8cc
[Test] Add debug names to unnamed test disposables
...
- This helps to track down disposables which are never disposed, and
reduces confusion when printing disposables in general (the names will
now be meaningful, instead of endless lists of "newDisposable" and
"TestDisposable").
^KT-64099
2023-12-19 11:12:23 +00:00
Artem Kobzar
2530cba82a
[K/JS] Compile Kotlin coroutines as JS generator ^KT-63038 Fixed
2023-12-18 17:13:07 +00:00
Artem Kobzar
ff50d40b32
[K/JS] Rework kotlin tests compilation to make it works with per-file granularity ^KT-61525 Fixed
2023-11-16 19:02:04 +00:00
Alexander Korepanov
ec71fe20e2
[JS IR] Fix file name clashes during JS BE invalidation
2023-10-30 09:14:16 +00:00
Alexander Korepanov
bf80d55fc3
[JS IR test] Use relative paths for klib building in invalidation tests
2023-10-30 09:14:15 +00:00
Alexander Korepanov
27b458c222
[JS IR test] Support multiplatform for invalidation tests
2023-10-30 09:14:15 +00:00
Artem Kobzar
eef57f216c
[K/JS] Rework main function call to support it in per-file
2023-10-04 12:13:20 +00:00
Alexander Korepanov
522952db1f
[JS IR] Run diagnostics by IR before the klib serialization
...
Implement an infrastructure for checking IR before JS klib serialization.
Implement the EXPORTING_JS_NAME_CLASH and EXPORTING_JS_NAME_CLASH_ES checks.
^KT-61710 Fixed
2023-09-23 19:49:17 +02:00
Artem Kobzar
2578bfefd5
[K/JS] Add useEsClasses to list of compiler arguments that invalidate IC cache ^KT-61795 Fixed
2023-09-13 09:50:24 +00:00
Dmitriy Dolovov
033bb385b9
[IR] Drop expectDescriptorToSymbol completely
...
^KT-61136
2023-08-16 19:17:17 +00:00
Anton Bannykh
962bfaca9c
[JS] Support multimodule IC tests with K2
...
Includes supporting klib file generation.
2023-08-11 15:46:51 +00:00
Ilya Gorbunov
69a87efdd9
js.tests: change paths to kotlin-stdlib-js.klib
...
Change the expected klib name of stdlib
KT-56106
2023-08-03 14:47:20 +00:00
Artem Kobzar
12715c062d
[K/JS] Reexport exported declarations in a proxy module file with per-file compilation
2023-08-01 09:42:33 +00:00
Svyatoslav Kuzmich
75142230b6
[Wasm] Support Wasm K2 frontend in CLI (KT-57230)
2023-07-27 10:05:22 +00:00
Artem Kobzar
044c0adae7
[K/JS] Implement an incremental compilation for the per-file granularity
2023-07-19 15:57:56 +00:00
Artem Kobzar
966a342bf1
[K/JS] Migrate invalidation tests to ES modules
2023-06-30 16:13:35 +00:00
Artem Kobzar
64158a8a2f
[K/JS] Add file-to-file compilation ^KT-6168 Fixed
2023-06-22 18:23:45 +00:00
Alexander Korepanov
82a1242f22
[JS IR] Add tests for JS IR IC + PL
...
^KT-57347 related
2023-06-06 09:27:57 +00:00
Alexander Korepanov
e4d7897071
[JS IR] Check fir compilation errors after checking IC next round
2023-05-23 10:13:26 +00:00
Nikolay Lunyak
d72a50b3f5
[FIR] KT-58065: Support LT in K2JsIrCompiler
2023-05-16 12:11:46 +00:00
Alexander Korepanov
2aea5822b2
[JS IR] Unmute all fir invalidation tests
2023-05-01 12:56:12 +00:00
Anton Bannykh
c839fdca3e
[JS IR] initial support for KLIB incremental compilation with K2
2023-04-23 14:47:48 +02:00
Alexander Korepanov
980d83eccd
[JS IR IC] Drop incremental cache after updating a klib set
...
Enabled Partial Linkage may replace entire IR expressions with a stub
during klib linking and loading. This may break the incremental cache
dependency graph. Dropping incremental cache files after updating klibs
(e.g. update klib version) covers almost all cases which
could not be tracked due to a broken dependency graph.
This patch could be reverted after fixing KT-57347
2023-04-18 09:06:07 +00:00
Artem Kobzar
5dc6da2b33
[K/JS] Add serialization/deserialization for JsImport/JsExport nodes
2023-04-13 12:58:46 +00:00
Artem Kobzar
96a25b7b7d
[K/JS TESTS] Migrate generating and running of invalidation tests to JUnit 5
2023-04-11 07:25:56 +00:00
Ivan Kochurkin
ee73e4774b
[K2, MPP] Remove redundant expect declarations from klib metadata
...
^KT-57250 Fixed
Introduce flat Fir2IrActualizedResult
It contains output from Fir2Ir and IrActualizer
2023-03-24 14:48:26 +00:00
Dmitriy Dolovov
dc05683f59
[PL][tests] Fix: Properly count test steps in KLIB ABI compatibility tests
2023-03-23 10:24:26 +00:00
Ilya Chernikov
59b88f33b2
[K2, MPP] implement IR errors reporting and test infrastructure
...
Fix test data
^KT-56344 Fixed
2023-03-22 01:28:16 +00:00
Alexander Korepanov
2cad26f4cc
[JS IR] Use cacheable ZIP file system accessor in JS IR BE
...
Related to KT-51712
2023-03-10 09:38:52 +00:00
Alexander Korepanov
9d352694af
[JS IR Tests] FIR invalidation tests re-generation
2023-03-08 19:08:42 +01:00
Alexander Korepanov
bd3eb81aee
[JS FIR] Use FIR in JS IR invalidation tests
...
Related to KT-56740
2023-03-08 13:18:15 +00:00
Alexander Korepanov
3c9d653595
[JS IR] Ignore unbound symbols in IC infrastructure
...
The IR linker is responsible for detecting unbound symbols,
if it skips them for some reason, IC infrastructure must not fail
with unbound symbols exceptions. Anyway, the IR validator
verifies later if there are unbound symbols in
reachable IR and generates the corresponding error.
^KT-56602 Fixed
2023-02-21 14:46:44 +00:00
Alexander Korepanov
c82b4f6fe5
[JS IR] Append source mapping URL every time on writing JS code
...
Source mapping URL is not saved in JS module cache anymore,
because it was a wrong url pointed to the source map from the cache.
Instead, the URL is appended every time on writing the output JS code.
^KT-56469 Fixed
2023-02-08 11:04:43 +00:00
Alexander Korepanov
0785b45426
[JS IR] Write JS files before verification of dirty JS in IC tests
2023-01-24 09:35:16 +00:00
Alexander Korepanov
1ec88ff560
[JS IR] Enable IR dump for IC invalidation tests
...
Support 'fd.kotlin.js.debugMode' property in IC invalidation tests.
2023-01-24 09:35:15 +00:00
Ilya Goncharov
7ae85ed68e
[JS IR] Module descriptors depends on each other
2023-01-23 16:16:48 +00:00
Artem Kobzar
71486a321c
[K/JS] Add support of compilation with ES-classes
2023-01-17 18:14:17 +00:00
Alexander Korepanov
a4192c38f2
[JS IR IC] Remove JS files of the deleted modules from the out directory
2023-01-17 15:48:37 +00:00
Alexander Korepanov
75931fb9c8
[JS IR IC] Do not read non modified JS into memory
...
Optimizaion: instead of reading all non modified JS files
from the cache into the memory at once, the patch allows
copying non-modified JS files from disk one by one
during the compilation output writing routine.
2023-01-17 15:48:36 +00:00
Alexander Korepanov
48daf0befe
[JS IR] Take into account file annotations for calculating symbol hashes
...
^KT-55367 Fixed
2022-12-20 16:04:14 +00:00
Dmitriy Novozhilov
5d6cb2b691
[Test] Use IrPluginContext for searching declarations for DUMP_EXTERNAL_CLASS check
2022-12-09 12:02:07 +00:00
Alexander Korepanov
9edaebf235
[JS IR] Enable DTS generation in IC
...
^KT-54398 Fixed
2022-12-07 18:05:53 +00:00
Alexander Korepanov
c31705240a
[JS IR] Support a module friendship in IC infrastructure
...
^KT-55097 Fixed
2022-12-02 13:50:36 +00:00
Alexander Korepanov
693258ae91
[JS IR] Invalidate all klib dependencies after removing it
...
Without the invalidation, broken JS code
(with broken cross-module references) may appear.
^KT-54911 Fixed
2022-11-28 20:46:40 +00:00
Alexander Korepanov
ca19d71a00
[JS IR] Commit cache header after lowering
...
Commiting cache header before lowering may
break caches in case of lowering errors.
^KT-54912 Fixed
2022-11-28 20:46:40 +00:00