Nikolay Lunyak
56285bb2d6
[FIR JS] Report CALL_TO_DEFINED_EXTERNALLY_FROM_NON_EXTERNAL_DECLARATION
2023-01-09 08:57:11 +00:00
Nikolay Lunyak
f422a3a4e8
[FIR JS] Report WRONG_JS_QUALIFIER for the argument of JsQualifier
2023-01-09 08:57:08 +00:00
Nikolay Lunyak
5ae9444745
[FIR JS] Add a test runner for FIR JS with old diagnostic tests
2023-01-09 08:57:07 +00:00
Abduqodiri Qurbonzoda
4af0f110c7
Fix 'Test: stdlib-js public kotlin api test' IDEA run configuration
...
Moving tests to another package made the IDEA run configuration obsolete.
To prevent this problem in the future a separate task (jsStdlibApiTest)
was introduced. The task is run in TC and will fail if the tests are missing.
Merge-request: KT-MR-8128
Merged-by: Abduqodiri Qurbonzoda <abduqodiri.qurbonzoda@jetbrains.com >
2023-01-07 12:30:52 +00:00
Artem Kobzar
7d881842b4
[K/JS] Include protected member declarations into checked by JsExportDeclarationChecker declarations ^Fixed KT-55786
2023-01-05 16:30:23 +00:00
Igor Yakovlev
f7940a2d46
[Wasm] Fix invalid cast generation for inline classes
2023-01-04 17:16:04 +00:00
Artem Kobzar
97be632c9a
[K/JS] Add @ts-ignore for the case when there is a class with a private primary constructor (or excluded from export) which has an exported subclass ^Fixed KT-52563
2023-01-04 15:21:40 +00:00
Vladimir Dolzhenko
4542b3947b
Clean up: rename Jet* to Kt*
2023-01-03 16:36:53 +01:00
Alexander Udalov
3c4b5529af
Update year to 2023 in COPYRIGHT_HEADER.txt
...
This commit is the result of changing the year to 2023 in
COPYRIGHT_HEADER.txt and running all `generate*` tasks in
`generators/build.gradle.kts`.
2023-01-02 22:52:15 +01:00
Svyatoslav Kuzmich
9bc6b420a9
[Wasm][Stdlib] Add public APIs for linear memory access
...
Needed for interop with APIs that use linear memory.
2022-12-29 19:25:23 +00:00
Igor Yakovlev
71afbb36f5
[Wasm] Introduce Xwasm-generate-wat compiler flag (disabled by default)
2022-12-29 11:57:48 +00:00
Igor Yakovlev
fc80104d55
[Wasm] Fix external functions import clashing
2022-12-29 11:57:47 +00:00
Igor Yakovlev
3be3ae4895
[Wasm] Fix invalid boxing for non-primitive typed vararg
2022-12-29 11:57:46 +00:00
Svyatoslav Kuzmich
dd53998c2d
[Wasm] Add uninstantiated MJS wrapper
...
It allows
* Custom imports
* Ability to skip initializer
2022-12-28 12:13:52 +01:00
Svyatoslav Kuzmich
3bbd8c291a
[Wasm] Add @WasmImport annotation
...
Imports top-level function from given module
2022-12-28 12:13:18 +01:00
Vyacheslav Gerasimov
719cdce609
Build: Make mochaTest a VerificationTask to allow skipping it with flag
...
#KTI-1076
2022-12-22 18:45:41 +01:00
Vyacheslav Gerasimov
7348e34fd0
Build: Run only jsTests before mocha tests
...
Only js tests produce mocha tests to run
2022-12-22 18:45:40 +01:00
Svyatoslav Kuzmich
d788adcbb5
[Wasm] Move non-recursive function types out of rec group
...
This fixes linking with other wasm modules with non-rec types
2022-12-21 20:20:13 +00:00
Pavel Kunyavskiy
4928e284f6
Make LateinitIntrinsicApplicabilityChecker warning for Native and JS
...
This checker was enabled only on JVM by mistake.
It's now fixed, but we don't want to make it an error in minor release.
So it will be an warning in 1.8.20 and an error in 1.9.0
^KT-27002
2022-12-20 20:06:52 +00:00
Pavel Kunyavskiy
17e9a6a781
[klib] Fix serialization of missing annotations
...
^KT-42490
^KT-44625
2022-12-20 20:06:51 +00:00
Artem Kobzar
cd0ae20c38
[K/JS] Capture stackTrace before the init function call ^Fixed KT-55315
2022-12-20 18:15:02 +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
Alexander Korepanov
4136189114
[JS IR] Check all signatures of dependent file in IC graph
...
It is important to check all signatures, because signatures
can be simultaneously moved between files and modified.
2022-12-20 16:04:14 +00:00
Igor Chevdar
0f2ebeea15
[tests] Added a test for KT-55494
2022-12-16 18:32:42 +00:00
Steven Schäfer
6af616d3c3
FIR: make declarations marked with 'override' implicitly open
...
#KT-52236 Fixed
2022-12-14 21:46:41 +00:00
Sergej Jaskiewicz
9c6f92d697
[test] Add a test for KT-55318
2022-12-13 17:01:00 +00:00
Evgeniy.Zhelenskiy
f09fb5ed09
[IR] Enable tests for inline classes secondary constructors with body for not JVM
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-55333
2022-12-11 22:06:47 +01:00
Vyacheslav Gerasimov
ba81bd052f
Build: Include missing tests in jsTest, jsIrTest, jsFirTest tasks
...
Some tests were included only in common :js:js.tests:test task and
missing in specialized test tasks (jsTest, jsIrTest, jsFirTest)
2022-12-09 20:42:08 +01:00
Vyacheslav Gerasimov
7d0935a8c5
Build: Refactor :js:js.tests:runMocha task
...
Introduce separate mochaTest task without dependency on test task
2022-12-09 20:42:07 +01:00
Dmitriy Novozhilov
3cffb33ab7
[FE] Drop ApproximateIntegerLiteralTypesInReceiverPosition language feature
...
This feature is not needed because it is unconditionally disabled for K1
(because of not fully correct implementation) and unconditionally enabled
in K2 (K2 does not support old behavior)
^KT-38895
2022-12-09 15:10:02 +00:00
Dmitriy Novozhilov
5d6cb2b691
[Test] Use IrPluginContext for searching declarations for DUMP_EXTERNAL_CLASS check
2022-12-09 12:02:07 +00:00
Zalim Bashorov
49c3ba33f1
[Wasm] Add a basic end-to-end sourcemap generation in wasm backend
...
More constructions/instructions will be supported separately.
2022-12-08 12:44:26 +00:00
pyos
0d46dfc1ba
FIR: fix substitution of type arguments in SAM type aliases
...
^KT-54730 Fixed
2022-12-07 22:09:20 +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
d21cbfe02e
[JS IR] Take into account the declaration annotations in IC hash
...
So the annotation modifications invalidate the caller.
2022-12-07 18:05:53 +00:00
Alexander Korepanov
0a35d84193
[JS IR] DTS generation refactoring
...
Keep a DTS fragment in JsIrProgramFragment
for each file and build the module DTS from them.
2022-12-07 18:05:52 +00:00
Zalim Bashorov
54c00cc588
[Sourcemap] Add an ability to provide outputColumn to SourceMap3Builder#addMapping instead of using getCurrentOutputColumn
...
The ability will be used later by wasm backend while generating sourcemap.
2022-12-07 12:03:54 +00:00
Zalim Bashorov
fb4dcc6a6a
[Sourcemap] Introduce getCurrentColumn and stop using TextOutput directly
...
The general goal is remove dependency on TextOutput and
make it simpler to use for wasm backend.
2022-12-07 12:03:54 +00:00
Zalim Bashorov
e34d3d09bc
[Sourcemap] Extract addLink from SourceMap3Builder as a addSourceMappingURL
...
The general goal is remove dependency on TextOutput and
make it simpler to use for wasm backend.
2022-12-07 12:03:54 +00:00
Alexander Korepanov
d8ab9498ab
[JS IR] Fix inline functions call graph in IC
...
Add a dependency for inline function references,
because in some cases the references may be inlined.
^KT-55144 Fixed
2022-12-02 13:50:37 +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
Sergej Jaskiewicz
1539d7ef1a
[klib] Bring package names in sync with the directory layout
...
Basically, some package names were Native-specific, whilst the packages
themselves were not Native-specific at all. This was already reflected
in the directory layout, but not in the package names.
This is fixed here.
NFC, just an automatic rename of packages with fixes of imports.
2022-12-01 21:46:43 +00:00
Artem Kobzar
3f4a937ad6
[K/JS] Don't generate TypeScript definitions from ExportModel if the -Xgenerate-dts flag was not provided ^Fixed KT-53940
2022-12-01 15:47:08 +00:00
Artem Kobzar
0f0421ea3d
[K/JS] Generating TypeScript definitions for exceptions and rest of the types ^Fixed KT-53940
2022-12-01 15:01:24 +00:00
Artem Kobzar
67048151fb
[K/JS] Change js-call inlining strategy and + ability to referencethis safely from the js call ^Fixed KT-54134
2022-11-30 11:43:22 +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
Alexander Korepanov
8cde0a81bc
[JS IR] Use topological order for loading klibs in JS IR IC
...
Generally, the library order doesn't matter.
However, after lowering we need to post process
lowered klibs in topological order:
- commit incremental cache artifacts,
- produce JS AST.
The patch uses an ability of the Kotlin library resolver to load klibs
in topological order and drops its reimplementation from IC infrastructure.
There is one side effect:
klibs which are not reachable from the main module, will produce their JS.
This should be more correct than just ignoring them.
2022-11-28 20:46:39 +00:00
Alexander Korepanov
ec6a7094e6
[JS IR] Manage cache root dir from IC cache updater
...
- pass cache root directory instead of dir list
- manage klib cache dirs from cache updater
2022-11-28 20:46:39 +00:00
Sergej Jaskiewicz
aa1b18b0c8
[IR] Prevent infinite recursion when rendering bound symbol references
...
Refactor the renderer, make BoundSymbolReferenceRenderer a static class
to prevent calling RenderIrElementVisitor's methods from it to avoid
infinite recursion in the future.
^KT-52677 Fixed
2022-11-28 16:43:53 +00:00