Commit Graph

92062 Commits

Author SHA1 Message Date
konstantin.tskhovrebov c82b1d3e33 KT-51884 Skip XCFramework and FatFramework tasks on non-mac machines. 2022-04-12 06:52:46 +00:00
Nikolay Krasko 8bc29a3011 Apply reproducible-build-maven-plugin to fix ordering in resulting jars
Plugin https://github.com/Zlika/reproducible-build-maven-plugin has
an Apache 2-0 licence.

There's an explicit mentioning that ZIP and
JAR entries ordering `depends on file system order` at
https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=74682318

kotlin-annotation-processing-maven-{version}-sources.jar
kotlin-archetype-js-{version}-sources.jar
kotlin-archetype-jvm-{version}-sources.jar
kotlin-maven-allopen-{version}-sources.jar and other jars were affected.

KTI-729
2022-04-11 21:38:04 +00:00
pyos d61e7db937 JVM_IR: add a test for when(enum) binary compatibility 2022-04-11 22:50:07 +02:00
pyos 518a6dec8c JVM_IR: ignore NoSuchFieldError when constructing enum mappings
^KT-30473 Fixed
^KT-38637 Fixed
2022-04-11 22:50:07 +02:00
Artem Kobzar fc4c745cc4 chore: remove usage of globalscope declaration. 2022-04-11 20:33:20 +00:00
Artem Kobzar f142599243 feat: add limited support of comments inside js call. 2022-04-11 17:03:28 +00:00
Mads Ager bfe8c3b263 Use method entry line number for synthetic code in suspend fun.
If no line number is emitted, the line number of the last line
in the suspend function is used. That combined with the IntelliJ
debuggers handling of breakpoint setting and the D8 dexers
reordering of blocks can lead to cases where breakpoints on
the last line of a suspend function are never hit.

See https://youtrack.jetbrains.com/issue/KT-51936 for details.

^Fixed KT-51936
2022-04-11 17:00:40 +00:00
pyos a07e21d913 JVM: streamline handling of tail-call suspend functions
Just see if every suspend call is followed only by safe instructions or
returns, then insert a suspension point check if there isn't a direct
return.

The first part of this is equivalent to the old implementation, just
refactored. The second part generates strictly more checks; see, for
example, the fixed test, in which the previous implementation failed to
insert a check before a CHECKCAST.

^KT-51818 Fixed
2022-04-11 17:00:26 +00:00
Artem Kobzar 97fc97e63d chore: add miss internal modifier to internal annotation. 2022-04-11 14:25:49 +00:00
Artem Kobzar 7d7490eaa7 chore: fixe rest of comments tests. 2022-04-11 14:25:49 +00:00
Artem Kobzar f5e7b9886c fix: directive and line test. 2022-04-11 14:25:48 +00:00
Artem Kobzar e68ee4053e fix: add semicolon to pattern for parsing directive arguments. 2022-04-11 14:25:48 +00:00
Artem Kobzar 4e8082ad3a fix: arguments pattern for assertion directives. 2022-04-11 14:25:48 +00:00
Artem Kobzar 86df391cab fix: function body comments. 2022-04-11 14:25:47 +00:00
Artem Kobzar 672561b847 chore: remove unused import. 2022-04-11 14:25:47 +00:00
Artem Kobzar 45e3c94a8b feat: add limited support of comments inside js call. 2022-04-11 14:25:46 +00:00
Ilmir Usmanov 6e30ce2763 FE: Make synchronized suspend functions and lambdas error in 1.8
#KT-27333 Fixed
2022-04-11 12:02:30 +00:00
Ilmir Usmanov f473998e8b FIR: Make 'suspend fun', where 'suspend' is not builtin error in 1.8
#KT-49264
2022-04-11 12:02:29 +00:00
Ilmir Usmanov f75a8109d2 FE 1.0: Make 'suspend fun', where 'suspend' is not builtin error in 1.8
#KT-49264 Fixed
2022-04-11 12:02:28 +00:00
Ilya Goncharov 1c2604a95e rra/ilgonmic/dry-run-wo-output
[Gradle, JS] Use assertOutputDoesNotContain

[Gradle, JS] Add test on no output for dry run in gradle tests

[Gradle, JS] No output for dry run in gradle tests

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

^KT-51895 fixed
2022-04-11 10:38:27 +00:00
Artem Kobzar c724ca943d test: add labels and breaks count tests. 2022-04-11 10:37:21 +00:00
Artem Kobzar 12f337f63d chore: fix meterialize argument annotation. 2022-04-11 10:37:19 +00:00
Artem Kobzar d46db2a9f3 fix: block statements rendering. 2022-04-11 10:37:18 +00:00
Artem Kobzar e405799b3b chore: use fqName instead of custom crafted name. 2022-04-11 10:37:16 +00:00
Artem Kobzar 7ef14fc11b chore: use CompositeBlock instead of GlobalBlock. 2022-04-11 10:37:14 +00:00
Artem Kobzar c6136619d2 chore: remove unreadable blocks and use comments instead. 2022-04-11 10:37:13 +00:00
Artem Kobzar fba4ac12b7 chore: remove unused break statement for inline functions. 2022-04-11 10:37:11 +00:00
Dmitriy Dolovov 24552a625c [Native][tests] Reorganize OUTPUT_DATA_FILE directive
Use it as one of [TestRunCheck]s.
2022-04-09 19:06:26 +00:00
Dmitriy Dolovov 996ff5085d [Native][tests] Introduce EXIT_CODE directive
It allows to specify the expected exit code for STANDALONE_NO_TR tests.
2022-04-09 19:06:25 +00:00
Dmitriy Dolovov 261e177b39 [Native][tests] Introduce EXPECTED_TIMEOUT_FAILURE directive
It allows to correctly handle tests that were failed by timeout where such failure is the expected behavior.
2022-04-09 19:06:24 +00:00
Dmitriy Dolovov 7cf3ca29af [Native][tests] Fix: Avoid including similar but mutually exclusive shared modules into the same compilation 2022-04-09 19:06:24 +00:00
Dmitriy Novozhilov 862b8cd9e5 Advance bootstrap to 1.7.20-dev-52 2022-04-09 09:58:34 +00:00
Ilmir Usmanov 1e3f84402d Safely check for suspend function parent
The issue here is that the function can be in unlowered file, and
thus its parent package fragment and not class.

 #KT-49317 Fixed
2022-04-08 23:31:49 +02:00
Pavel Punegov 3138b29fb2 [build] Requre common capability for gradle plugin test dependency 2022-04-08 18:06:41 +03:00
Dmitriy Dolovov b5efbac704 [Native][tests] Add stub generator tests to "run"
More details: Add ":kotlin-native:Interop:StubGenerator:check" as a dependency to ":kotlin-native:backend.native:tests:run" task. This task is already present in ":kotlin-native:backend.native:tests:sanity" and was missing in "run" just by accident.
2022-04-08 15:13:40 +03:00
Alexander Udalov 349c17786e Fix missing error on fun interface constructor reference
#KT-51843 Fixed
2022-04-08 14:02:14 +02:00
Alexander Udalov 6402c3908c Validate -Xbackend-threads CLI argument value
#KT-51846 Fixed
2022-04-08 14:01:21 +02:00
Pavel Punegov d69df1898d [build] Advance kotlin-build-gradle-plugin version to 0.0.38 in the repo
Use build Gradle plugin version property
2022-04-08 14:42:35 +03:00
Pavel Punegov 3a4d6bcb18 [build] Advance kotlin-build-gradle-plugin version to 0.0.38 2022-04-08 14:42:08 +03:00
Pavel Punegov 3d17d476e0 [K/N][build] Define meta versions order and comparing
Move isAtLeast() from compiler downloader and test
to CompilerVersion.kt
2022-04-08 14:42:08 +03:00
Pavel Punegov 4644562e7f [K/N][build] Change MetaVersion to inline class from enum
Support meta versions strings other than pre-defined. All enum entries
were left for source-level compatibility.
2022-04-08 14:42:08 +03:00
Pavel Punegov 4d388118f8 [K/N][build] Fix CompilerVersion pattern to match RC2 2022-04-08 14:42:07 +03:00
Sergej Jaskiewicz e1b0e27e62 [JS Legacy] Fix Unit materialization in overridden methods
^KT-51878 Fixed
2022-04-08 11:09:46 +00:00
Pavel Punegov cfe76343d5 [Commonizer][test] Get K/N distribution in the test instead of the build
Get distribution and home path in the test to simplify gradle build.
Using NativeCompilerDownloader in the build led to the undesired results
where test get old K/N compiler from the bootstrap, also blocking K/N
version class development.
2022-04-08 10:38:12 +00:00
Dmitriy Novozhilov 38696a41bc [Test] Add ability to override some services in AbstractKotlinCompilerTest 2022-04-08 09:42:02 +00:00
Dmitriy Novozhilov 543675d99d [Test] Don't fail generation of tests if License file not found 2022-04-08 09:42:02 +00:00
Dmitriy Novozhilov 2c6aea47b1 [Test] Introduce provider of path of standard libraries jars
Before this change all paths to all libraries were hardcoded to
  `dist/kotlinc/lib/...`, which is not suitable for usages of test
  framework outside of Kotlin project
2022-04-08 09:42:02 +00:00
Dmitriy Novozhilov 648a3667e0 [Test] Pack test generator to internal-compiler-test-framework.jar 2022-04-08 09:42:01 +00:00
Dmitriy Novozhilov 419d497929 [Test] Don't pack compiler itself to internal-compiler-test-framework.jar 2022-04-08 09:42:01 +00:00
Dmitriy Novozhilov a45cc17b1c [Test] Provide utility for registering idea properties for proper test run
In Kotlin project they are set up automatically, but outside they should
  be set manually via build system or test framework
2022-04-08 09:42:00 +00:00