Commit Graph

257 Commits

Author SHA1 Message Date
Ilya Gorbunov fcfc79aa35 assertContains for OpenEndRange argument
#KT-52932
2022-06-28 05:45:47 +00:00
Ilya Gorbunov 5e32f04249 Minor: cleanup redundant opt-ins 2022-06-28 05:45:47 +00:00
Ilya Gorbunov cd9b36b4c3 Introduce OpenEndRange and make primitive ranges implement it
#KT-52932
2022-06-28 00:08:03 +00:00
Igor Yakovlev 4943d5d683 [WASM] Support wasm backend DSL for d8 2022-06-07 20:59:02 +00:00
Igor Yakovlev dec2426a54 [WASM] Add OptIn to declaration with JsExport 2022-06-07 20:59:01 +00:00
Yahor Berdnikau af6f17c243 Unify kotlinCompilerClasspath for all projects
This will prevent spawning second Kotlin daemon during compilation
except 'buildSrc' compilation. Original change was introduced in
2e515f3945 commit.
2022-05-24 07:58:38 +00:00
Igor Yakovlev 7f0535ded9 [WASM] Fix test adapter reporting 2022-05-20 16:33:58 +02:00
Igor Yakovlev 9519d7998b [WASM] Run all std tests with d8 2022-05-20 12:22:43 +03:00
Ilya Goncharov f95d1d89f1 Update qunit dependency for tests
Update qunit call

Update qunit dependency for tests

Merge-request: KT-MR-6169
Merged-by: Ilya Goncharov <Ilya.Goncharov@jetbrains.com>
2022-04-27 10:32:28 +00:00
Zalim Bashorov 90c867ae1d [JS] Define Node.js version in one place and use a single version everywhere
Consequently, it fixes the inability to run some JS related tests on Apple devices with ARM.
2022-04-23 17:58:42 +02:00
Alexander Likhachev feccc5785f [Build] Revert workaround introduced in 2f39a656 2022-04-20 14:27:18 +00:00
Alexander Udalov 2e515f3945 Prohibit JVM target 1.6
But still compile stdlib, reflect, kotlin.test and scripting runtimes
with JVM target 1.6 to simplify migration from Kotlin 1.6 to 1.7.

 #KT-45165 Fixed
2022-04-19 22:54:40 +02:00
Alexander Likhachev 899964ba30 [Build] Update gradle-node-plugin to 3.2.1
#KT-44611 In Progress
2022-04-19 00:39:21 +03:00
Alexander Likhachev 2f39a65679 [Build] Add workarounds for https://github.com/gradle/gradle/issues/17936
#KT-44611 In Progress
2022-04-19 00:33:36 +03:00
Alexander Likhachev f4b17ff78f [Build] kotlin-test: cross-project task dependencies -> artifacts sharing for combinedSourcesJar
It's recommended way to work with such setups, and the former way itn't work properly with Gradle configuration cache
#KT-44611 In Progress
2022-04-19 00:33:33 +03:00
Ilya Goncharov d62b01ef41 [JS] Update lock files
Merge-request: KT-MR-6073
Merged-by: Ilya Goncharov <Ilya.Goncharov@jetbrains.com>
2022-04-12 15:02:21 +00:00
Nikolay Krasko 405e90abee Apply -Xklib-relative-path-base to all KotlinCompile tasks
As absolute paths were also revealed in
   atomicfu.jar
   kotlin-stdlib-wasm
   kotlin-test-wasm

Use solution from Alexander Likhachev (avoid accessing
buildDir, projectDir in doFirst()) to prevent breaking the configuration
cache.

Should be removed after fixing KT-50876

KTI-729
2022-04-07 19:17:20 +00:00
Yahor Berdnikau 4aa6d984fc Restore "Drop tasks inheritance from 'AbstractCompile' and 'SourceTask'"
This reverts commit 2c5d817633.
2022-03-24 19:02:54 +01:00
Yahor Berdnikau 2c5d817633 Revert "Drop tasks inheritance from 'AbstractCompile' and 'SourceTask'"
This reverts commit e9498c8978.
2022-03-23 19:03:32 +01:00
Yahor Berdnikau e9498c8978 Drop tasks inheritance from 'AbstractCompile' and 'SourceTask'
'AbstractCompile' task has inputs that are related only to Java
compilation and should not used for Kotlin compile tasks.

'SourceTask' most probably will be deprecated in future Gradle releases
- https://github.com/gradle/gradle/issues/9040. Plus it has
old 'sources' with 'FileTree' type which is not stable
for task inputs snapshotting.

Another breaking change - 'destinationDir' task property is not longer
available. It is replaced by 'destinationDirectory' which uses Gradle
Provider API type.

^KT-32805 In Progress
2022-03-22 15:29:05 +00:00
Ilya Goncharov 8b34be9490 rra/ilgonmic/update-lock-files
[Gradle, JS] Update npm versions

[JS] Update package.json's and lock files

Merge-request: KT-MR-5852
Merged-by: Ilya Goncharov <Ilya.Goncharov@jetbrains.com>

^KT-51503 fixed
2022-03-01 10:24:56 +00:00
Nikolay Krasko da556452c9 Use project directory as a base for stdlib js build
Some sources for kotlin-stdlib-js-ir are not copied to build dir
and used directly from the project.

Modify kotlin.test/js-ir as well, while there's no evidence of the
problem so far.

Should be removed after KT-50876 fix.

^KTI-730 In Progress
2022-01-25 00:58:54 +03:00
Ilya Goncharov 443c0bf74f [Gradle, JS] Fix case with multiple artifacts in module 2022-01-21 09:17:41 +00:00
Nikolay Krasko 87bf6e010e Use relative paths in stdlib klib artifacts
Intentionally use doFirst section to trick gradle and not affect
inputs with absolute path usage.

Old behaviour can be returned by kotlin.build.use.absolute.paths.in.klib
in local.properties

Should be removed after KT-50876 fix.

^KTI-730 In Progress
2022-01-20 21:50:20 +03:00
Ilya Gorbunov 2954769296 KT-50059 Stop publishing artifacts with 'modular' classifier 2021-12-29 17:43:56 +00:00
Ilya Goncharov 4f1a10d72e [JS] Uncomment test on afterTest 2021-12-13 15:29:27 +00:00
Ilya Goncharov 0aec48876f Commit package-lock.json in kotlin-test-it 2021-12-13 12:36:57 +00:00
Ilya Goncharov 0c74376cc4 rra/ilgonmic/after-test-promise
[JS] Node downloading for js ir integration kotlin test

[JS] Fix API of Promise

[JS IR] Promise symbol as lazy2

[JS] Support legacy compiler aftertest with promises

[JS IR] Generate finally for promised tests

[JS] Setup it tests for JS IR kotlin-test

Merge-request: KT-MR-5168

^KT-49738 fixed
2021-12-08 08:22:53 +00:00
Nikolay Krasko 84a189b6cc Update transitive dependency for kotlin-test - junit 4.12 -> 4.13.2 2021-11-24 19:35:33 +03:00
Glen K. Peterson 25d962b591 Bumped Junit dependency to fix CVE-2020-15250
Junit >= 4.7 and < 4.13.1 is vulnerable to https://nvd.nist.gov/vuln/detail/CVE-2020-15250   Sorry, I didn't build or test this change.
2021-11-24 19:35:30 +03:00
Nikolay Krasko 987cbd58e9 Refactoring: restore empty javadoc for all publications in kotlin-test
Partially revert 4dc45a4118
2021-11-20 10:11:37 +03:00
Nikolay Krasko 6a2c607862 Return source and javadoc publication for kotlin-test-wasm
Setting packaging to klib didn't work because it was overwritten below.

^KTI-692 Fixed
2021-11-20 10:11:32 +03:00
Nikolay Krasko 18ed361f9b Narrow down suppressAllPomMetadataWarnings() in kotlin-test publication 2021-11-20 10:11:27 +03:00
Ilya Goncharov 7aef45d5cf [JS] Implement strategy with adapterTransformer on global object to mutate adapter of kotlin-test 2021-11-19 21:39:23 +00:00
Anton Bannykh 4e0d91d463 [JS IR] don't pack tests for kolin.test library into the klib. 2021-11-19 00:39:09 +03:00
Nikolay Krasko 4dc45a4118 Drop sources and javadoc artifacts for kotlin-test-wasm
There's a source and javadoc validation in sonatype that
once *-sources.jar or *-javadoc.jar is found expect main
jar must be present as well.

This doesn't work when instead of jar we publish klib.
2021-11-15 19:54:56 +03:00
Igor Laevsky 1bdc9edb20 [Wasm] Implement Jasmine adapter for kotlin.test 2021-11-15 18:26:44 +03:00
Igor Laevsky 5b9268a108 [Wasm] Publish kotlin-test-wasm to maven 2021-11-10 22:12:20 +03:00
Igor Laevsky cb10bd3a95 [Wasm] Port stdlib and kotlin.test build to wasm gradle plugin 2021-11-03 16:23:01 +03:00
Nikolay Krasko 3ffc8c4a82 Remove publication of kotlin-test-wasm (KTI-669) 2021-10-19 02:13:28 +03:00
Nikolay Krasko 337b55e806 Minor: remove commented code from kotlin.kotlin-test.wasm/build.gradle.kts 2021-10-19 02:13:27 +03:00
Igor Laevsky 14eee7c539 [Wasm] Add kotlin-test-wasm library 2021-10-14 17:24:02 +03:00
Vyacheslav Gerasimov ab146bd6d4 Build: Fix deprecated Gradle configurations usages
for migration to Gradle 7+ #KTI-559
2021-09-26 18:28:44 +03:00
Dmitriy Novozhilov 0923d39215 [Build] Setup useFirForLibraries flag 2021-09-20 14:18:18 +03:00
Mikhail Glukhikh ffbd574a08 Use -opt-in instead of -Xopt-in in comments and scripts 2021-09-08 23:43:55 +03:00
Mikhail Glukhikh ed035d99ab Migrate -Xopt-in to -opt-in in Gradle Kotlin scripts 2021-09-03 15:40:47 +03:00
Alexander Udalov 0925e1b497 Enable JVM IR for stdlib/reflect/test libraries
Changes in Gradle integration tests are needed because:
- in new-mpp-android, kotlin-stdlib-jdk8 is used, and JVM IR generates
  JDK 8-specific bytecode (invokedynamic). D8 needs to be configured to
  desugar it with source/target versions set to 1.8, otherwise it
  reports an error.
- in AndroidExtensionsManyVariants and AndroidIcepickProject, D8 fails
  with assertions enabled if AGP < 4.0.0 is used because of
  https://issuetracker.google.com/issues/148661132. The tests which use
  old AGP versions are probably not relevant anymore anyway.

Changes in kotlin-stdlib-runtime-merged.txt are caused by a slightly
different generation scheme of collection subclasses in JVM IR, and are
harmless.

(Previous attempt was at 15e978dbd311c2ba78ec32b394c21acde9811ccb.)
2021-08-05 12:36:35 +02:00
Alexander Udalov 0a9498f7e2 Build: suppress deprecated JVM target warning globally
There seems to be no point in configuring the compiler argument per
project. This argument will be deleted soon anyway, when we remove
support for JDK 1.6 & 1.7.

Also remove `disableDeprecatedJvmTargetWarning`. It didn't have any
effect in all modules where it was applied because these modules
reassign `freeCompilerArgs` anyway, with
`-Xsuppress-deprecated-jvm-target-warning` in it.
2021-07-27 13:35:39 +02:00
Alexander Udalov 91c39ed01c Build: remove obsolete compiler arguments
These compiler arguments enable features which are enabled by default in
the current Kotlin anyway.

The only exception is in :compiler:cli which uses an old language
version.
2021-07-27 13:35:38 +02:00
Mikhail Glukhikh 47c8bab48e Replace -Xuse-experimental with -Xopt-in in codebase 2021-07-12 21:26:17 +03:00