Zalim Bashorov
1a8a4fa65d
[Wasm] Don't use by lazy inside Throwable
2023-04-05 20:50:52 +02:00
Zalim Bashorov
67357fa5d4
[Wasm] Replace heavyweight stackTraceToString with "pure" JS stack
2023-04-05 20:50:52 +02:00
Zalim Bashorov
14af47bbd9
[Wasm] Introduce utilities to get package and name of class directly from metadata and use it in some places
2023-04-05 20:50:52 +02:00
Zalim Bashorov
a9b553f16e
[Wasm] Don't use by lazy to keep some JS values used by adapters
2023-04-05 20:50:52 +02:00
Zalim Bashorov
2ef47901d0
[Wasm] Introducing private identityHashCode shared between Any's hashCode and toString
...
It splits the dependency of toString from hashCode that prevents keeping hashCode when toString is used.
2023-04-05 20:50:51 +02:00
deotime
7aaba3b78a
[KT-57607] Fix performance of ArrayList.addAll methods in JS stdlib ( #5116 )
...
* Fix performance of ArrayList.addAll methods in JS stdlib: extend the backing array and copy elements manually
* Update expected reachable nodes after DCE in test data
---------
Co-authored-by: Ilya Gorbunov <ilya.gorbunov@jetbrains.com >
2023-04-05 20:18:11 +02:00
Alexander Korepanov
4813b659ab
[JS IR] Control an inheritance of non-external entity from external
...
Add a special annotation @JsExternalInheritorsOnly for marking
external interfaces and classes. The marked interface or class
can’t be a parent for non external interfaces, classes or objects.
^KT-57423 Fixed
2023-04-05 09:00:45 +00:00
Igor Yakovlev
49beec33b4
[Wasm] Replace ClassId and InterfaceId with single TypeId
2023-04-04 18:39:18 +00:00
Igor Yakovlev
5a46cb1c40
[Wasm] Fix invalid float and double sign parser for '-Infinity' value
2023-04-04 18:39:18 +00:00
Igor Yakovlev
b8f797af00
[Wasm] Support for Associated Objects feature
2023-04-04 18:39:17 +00:00
Abduqodiri Qurbonzoda
352316ba9f
[K/N] Add @SinceKotlin for ObjC annotations #KT-57197
2023-04-03 12:21:31 +00:00
Svyatoslav Kuzmich
46a6695072
[Wasm] WebIDL: Make getters and setters not inline
2023-03-29 11:08:30 +00:00
Svyatoslav Kuzmich
0c7d625123
[Wasm] Suppress warning of unused parameter in WebIDL js(code) functions
2023-03-29 11:08:30 +00:00
Svyatoslav Kuzmich
c466f926b0
[Wasm] Deprecate Dynamic in favour of JsAny
...
Remove extension methods created to compile
Kotlin/JS-like WebIDL bindings
^KT-57060 Fixed
2023-03-29 11:08:30 +00:00
Svyatoslav Kuzmich
0e54ec5ef6
[Wasm] Stop using Dynamic in WebIDL generated code
2023-03-29 11:08:29 +00:00
Svyatoslav Kuzmich
cafc27aae9
[Wasm] Add JsAny.unsafeCast
...
Replacement for Dynamic.unsafeCast, but limited to JsAny types where
it makes sense.
2023-03-29 11:08:29 +00:00
Svyatoslav Kuzmich
e32611d2f2
[Wasm] Make Promise methods generic instead of using Dynamic
...
Copy full Promise implementation from Kotlin/JS,
and specify JsAny? upper bounds
2023-03-29 11:08:29 +00:00
Svyatoslav Kuzmich
635671d623
[Wasm] Stop using Dynamic in kotlin-test
2023-03-29 11:08:28 +00:00
Artem Kobzar
c6e4858bc9
[K/JS] Remove the ability to run Legacy JS backend from the Gradle Plugin
2023-03-28 12:47:04 +00:00
Dmitriy Novozhilov
a64d8e8a31
[Stdlib] Deprecate and make open Number.toChar()
...
^KT-46465 Fixed
2023-03-27 10:46:13 +00:00
Dmitriy Novozhilov
90ec84d7b7
[Stdlib] Update copyrighting in generated stdlib sources
2023-03-27 10:46:11 +00:00
Abduqodiri Qurbonzoda
9076e5b112
[K/N] Mark BitSet usages in stdlib with @ObsoleteNativeApi
2023-03-23 14:48:23 +00:00
Ilya Gorbunov
9892a49c4b
KT-54452 Use js-ir sources for building stdlib-js sources.jar and API docs
2023-03-22 05:57:14 +00:00
Anton Bannykh
b0de442d76
JS IR: fix throwable descendants
...
^ KT-43490 fixed
2023-03-21 12:32:41 +00:00
Vyacheslav Gerasimov
76c54a8ff3
Build: Fix usages of apis deprecated in Gradle 8
2023-03-20 19:45:39 +00:00
Vsevolod Tolstopyatov
33d13474c5
Make EnumEntries implementation eager
...
* Addresses the recent design changes of the corresponding language feature
* Also rework JS/Wasm enumEntries implementation with the function that accepts array instead of fabric function
^KT-57318
Co-authored-by: Artem Kobzar <Artem.Kobzar@jetbrains.com >
Merge-request: KT-MR-9204
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com >
2023-03-20 10:18:28 +00:00
Artem Kobzar
948c511284
[K/JS] Rework ES modules part with squashed JsImport and right renaming strategy inside import/export statements
2023-03-16 10:28:39 +00:00
Svyatoslav Kuzmich
76b4498399
[Wasm] IDL bindings improvements
...
- Generated types extend JsAny
- Use JsAny instead of Dynamic
- Use JsArray instead of Array
- Use JsNumber, JsString and JsBoolean in JsAny context
- Refactor dictionary constructor functions
2023-03-16 09:12:08 +00:00
Svyatoslav Kuzmich
1208a26fc4
[Wasm] Use JsAny, JsHandle and other Js* types in stdlib and kotlin-test
2023-03-16 09:12:07 +00:00
Svyatoslav Kuzmich
d6886d69ec
[Wasm] Add internal JsPrimitive annotation
...
Before external classes could only represent JS object types and are
type-checked with `instanceof`.
@JsPrimitive allows external classes to represent primitive types with
`typeof` checks.
2023-03-16 09:12:07 +00:00
Svyatoslav Kuzmich
a99ea1d3ce
[Wasm] Support enumValues and enumValueOf functions
...
^KT-57276 Fixed
Merge-request: KT-MR-9169
Merged-by: Svyatoslav Kuzmich <svyatoslav.kuzmich@jetbrains.com >
2023-03-13 14:13:31 +00:00
Artem Kobzar
ab7b429298
[K/JS] Add ability to use is checks on external objects
2023-03-10 11:33:30 +00:00
Ilya Chernikov
1d72681e4e
K2: Fix stdlib test use of assertEquals
...
fixes test compilation according to the workaround
described in #KT-56717
2023-03-08 09:38:48 +00:00
Ilya Chernikov
8a8b204e11
K2, stdlib tests: make unsigned conversions explicit
...
Allow using K2 to compile stdlib tests
related to #KT-56379
2023-03-08 09:38:47 +00:00
Ilya Chernikov
edcde79c02
Build: use K2 for stdlib tests when enabled
...
enables testing of #KT-56379
2023-03-08 09:38:47 +00:00
Svyatoslav Kuzmich
4be359ba02
[Wasm] Add @SinceKotlin("1.9") to js(code)
2023-03-03 19:39:12 +00:00
Svyatoslav Kuzmich
3566d918d2
[Wasm] Deprecate @JsFun with warning
...
kotlin.js.js("code") should be used instead
2023-03-03 19:39:11 +00:00
Svyatoslav Kuzmich
7175b9f31c
[Wasm] Migrate usages of @JsFun to js("code")
2023-03-03 19:39:10 +00:00
Svyatoslav Kuzmich
71e6b19760
[Wasm] Support restricted version of js("code") (KT-56955)
2023-03-03 19:39:09 +00:00
Svyatoslav Kuzmich
eb8c47343a
[Wasm] Don't use js("code") in browser API
...
Use internal newJsObject to create new objects instead.
This is a preparation for restricted js("code") support (KT-56955)
2023-03-03 19:39:09 +00:00
Vyacheslav Gerasimov
34fcbb32ff
Revert "[Build] Fix compilation of kotlin-js(-ir) libraries in 1.9.0 (stdlib and test)"
...
This reverts commit d39fd9416a .
2023-03-03 15:06:23 +00:00
Nikolay Lunyak
bcfafc601e
Add EnumEntries to minimal-stdlib-for-tests
...
This change allows to revert adding `WITH_STDLIB` directive
to tests which happened at `a9343aeb`.
Co-authored-by: Alexander Udalov <Alexander.Udalov@jetbrains.com >
2023-03-02 10:23:38 +00:00
Ilya Gorbunov
d2dc23d8bb
Introduce Path.createParentDirectories function #KT-53263
2023-02-27 20:36:21 +00:00
Nikita Bobko
f620eb920f
Drop redundant suppress
...
Review: https://jetbrains.team/p/kt/reviews/8933
The suppress was needed in https://jetbrains.team/p/kt/reviews/8308
But it's not needed anymore
2023-02-24 17:05:33 +00:00
Ilya Gorbunov
2cfbbb185d
Change docs artifacts directory layout for easier publishing
...
Change module names of libraries to be consistent
2023-02-22 23:52:39 +00:00
Ilya Goncharov
229fd73b38
[Gradle, JS] Regenerate API stdlib
...
This reverts commit b4c0cab22a .
2023-02-22 11:00:11 +00:00
Ilya Goncharov
9b4821be28
[Gradle, JS] Add module dom-api-compat
...
This reverts commit ba8cc877fd .
2023-02-22 11:00:11 +00:00
Nikita Bobko
9a865e4c55
[FE 1.0] Issue a warning if expect and actual are declared in the same module
...
The commit is based on b09561c3c3
Co-authored-by: Dmitriy Novozhilov <dmitriy.novozhilov@jetbrains.com >
^KT-40904 Fixed
^KT-55177 Fixed
Review: https://jetbrains.team/p/kt/reviews/8731
True negative test already exist:
`compiler/testData/diagnostics/tests/multiplatform/hmpp/multiplatformCompositeAnalysis/intermediateWithActualAndExpect.kt`
2023-02-21 14:45:46 +01:00
Artem Kobzar
d39fd9416a
[Build] Fix compilation of kotlin-js(-ir) libraries in 1.9.0 (stdlib and test)
2023-02-18 13:26:53 +00:00
Alexander.Likhachev
18752fc1ad
Revert "[Build] Add a temporary workaround for KT-56357"
...
This reverts commit ca60a4fcf9 .
2023-02-17 15:03:53 +01:00