Ilya Goncharov
bf8681296b
[Gradle, JS] IR by default and report warnings for using legacy compiler
...
- just legacy - report warning about deprecation
- both - report warning about deprecation of legacy
- no compiler explicitly chosen - error about explicit setting compiler
warn from cli legacy compiler
nowarn flag - kotlin.js.compiler.nowarn
KT-42326
KT-53074
2022-09-16 09:48:41 +00:00
Alexander Udalov
45abea5b0a
Use platform class loader in 'kotlin' runner on JDK 9+
...
#KT-46312 Fixed
2022-08-17 22:23:10 +02:00
Dmitriy Novozhilov
f587c02d38
[FE] Move ServiceLoaderLite to :compiler:frontend.common
...
This is needed to be able to use this class inside FIR part of IDE plugin
2022-06-29 12:00:00 +00:00
Dmitriy Novozhilov
c979e1edcf
[Plugins] Deprecate ComponentRegistrar
...
^KT-52665 In Progress
2022-06-29 11:59:58 +00:00
Ilya Chernikov
6e59c2e079
Scripting: fix CLI REPL error reporting behavior
...
discrepancy after switching to the new REPL internals was
discovered also on IJ plugin tests, so added a test emulating it.
also some test infra refactoring
2022-06-28 16:21:25 +02:00
Ilya Chernikov
8bc43917ec
Scripting: switch default definition to new scheme
...
also correctly pass externaly provided configuration on compilation
and evaluation.
Fixes REPL evaluation with dependencies passed via compilation classpath.
2022-06-28 16:21:24 +02:00
Ilya Chernikov
f5950ac8f3
minor: avoid double reporting of scripting diagnostics
...
also fix arror reporting for scripts with location
2022-06-16 21:28:06 +00:00
Ilya Chernikov
855059b93c
Scripting: update scripts in source roots handling
...
#KT-52525 fixed
related to #KT-52735
2022-06-16 21:28:06 +00:00
Ilya Chernikov
92bf260057
Scripting: Implement conditional conversion for REPL result values
...
to support value types erased from runtime classes. See example
in added tests for motivation.
#KT-45065 fixed
also refactor launcher repl test and result type rendering
2022-06-16 21:28:03 +00:00
Mads Ager
c6d7c23940
Always take java source before class files.
...
Also when searching for inner classes.
^Fixes KT-51025
2022-05-05 13:21:06 +02:00
Alexander Udalov
96ba4bb201
Add test to check that KT-30172 is fixed
2022-02-21 20:31:05 +01:00
Mads Ager
e2c7290214
[JVM CLI] Prefer source over classpath.
...
If the class `A` is in a jar `previous.jar`, the following CLI
invocation will take that class instead of the `A` class
defined in `A.java`:
kotlinc -cp previous.jar A.java B.kt
This is problematic for build tools that put the jar for a
previous build on the classpath when recompiling some of the
files.
^KT-51025 Fixed.
2022-01-29 00:58:00 +01:00
Mikhail Glukhikh
ad0d0ca47f
Drop redundant Suppress("RemoveExplicitTypeArguments")
2022-01-26 12:19:55 +00:00
Alexander Udalov
2e535366f1
Speed up LauncherScriptTest
...
Do not run kotlinc in a separate process in tests which check behavior
of the `kotlin` launcher script.
Locally, the test now runs for 37s instead of 51s.
2021-11-14 18:50:48 +01:00
Xin Wang
b24c3a106e
CLI: Allow running class files with '.class' extension in 'kotlin' script
...
Catch NoClassDefFoundError and print message with cause.
#KT-11164 Fixed
#KT-46171 Fixed
2021-11-14 18:50:39 +01:00
Dmitriy Novozhilov
ce3562f0e8
Migrate all JDK 15 related tests to JDK 17
2021-09-28 13:01:45 +03:00
ov7a
5ddf0cc7b2
JVM Cli: Proper Main-class manifest attribute for JvmStatic entry point.
...
`findMainClass` could handle main entry point from object and companion
object, not just top-level function.
Fixes [KT-32376](https://youtrack.jetbrains.com/issue/KT-32376 ).
2021-08-25 23:38:51 +02:00
Alexander Udalov
a4730dd57e
Minor, set JAVA_HOME to JDK 1.8 in LauncherScriptTest
...
Otherwise the test would invoke the "java" executable from PATH, which
might not be 1.8, and that would cause some tests to fail because error
messages are slightly different in newer Java versions.
2021-08-18 21:27:55 +02:00
Ting-Yuan Huang
17ba350868
AnalysisHandlerExtensionTest: set output dir for JVM
2021-03-29 20:41:09 +03:00
Ting-Yuan Huang
0dee48781c
Tests for AnalysisHandlerExtension
...
Add two common use cases of AnalysisHandlerExtension:
1. repeated analysis with new source roots.
2. frontend only mode
2021-03-29 20:41:08 +03:00
Ilmir Usmanov
886e3e6655
Update tests, which check -X... flag in LauncherScriptTest
...
Previously, -Xallow-result-return-type was used to test, whether the
launcher parses -X... flags correctly, however, it has no effect -
returning Result is allowed anyway. So, instead, use -Xno-inline and
check runtime behavior.
2021-03-22 23:14:23 +00:00
Ilmir Usmanov
9c97f1ce35
Allow Result return type and nullability operators on Result type
...
by default
2021-03-22 14:56:16 +00:00
Ilya Chernikov
9c786a9cd9
[minor] uncomment 2 scripting tests:
...
Tests were failing before, but now fixed, most likely by switching to
default target 1.8 and some changes in scripting IR support.
#KT-44471 fixed
2021-03-11 15:50:31 +01:00
scaventz
9a7ef11043
Report a readable diagnostic on empty -J argument in CLI
2021-03-06 03:14:11 -08:00
Alexander Udalov
862a9143da
Do not report errors about bytecode version
...
#KT-41758
2021-02-23 12:45:40 +01:00
Alexander Udalov
f08733eb75
CLI: suppress warning on JDK 9+ with illegal access to ResourceBundle
...
The underlying issue is tracked in IDEA-248785.
#KT-43704 Fixed
2021-01-29 21:29:08 +01:00
Dmitriy Novozhilov
c0bc492029
Mute some script tests according to KT-44471
2021-01-28 13:19:33 +03:00
Dmitriy Novozhilov
4f8b12c96f
[Test] Fix various tests according to switching to kotlin 1.5
2021-01-28 13:19:30 +03:00
Dmitriy Novozhilov
64100eec07
[Test] Add workaround for KT-44359
2021-01-28 13:19:30 +03:00
scaventz
4374438ff1
Kotlinc: Exclude module-info.class from resulting jar when "-include-runtime" is specified
2021-01-12 14:45:06 +01:00
Ilya Chernikov
979144157f
Implement -howtorun option for kotlin runner
...
Implement -no-stdlib argument support in kotlin runner
#KT-43534 fixed
2021-01-07 10:37:22 +01:00
Ilya Chernikov
edc730f70b
Implement -no-stdlib argument support in kotlin runner
...
#KT-43294 fixed
2021-01-07 10:37:22 +01:00
Ilya Chernikov
d2ecc1e361
Implement -X arguments passing from kotlin runner to compiler
2021-01-07 10:37:22 +01:00
Victor Petukhov
9693ea19fb
Add tests for type enhancement uncluding with compiled java
2020-12-18 19:32:05 +03:00
Dmitriy Novozhilov
1fe5148f0d
[TEST] Extract compiler-specific test utils from :tests-common to new module
2020-12-16 19:52:29 +03:00
Dmitriy Novozhilov
c8f3a4802e
[TEST] Introduce test-infrastructure-utils module and extract common test utilities here
2020-12-16 19:52:22 +03:00
Dmitriy Novozhilov
1ee38286a8
[TEST] Move generated compiler tests to test-gen directory
2020-11-27 12:55:45 +03:00
Martin Petrov
68fdeaf865
Produce deterministic jar files.
...
This resets all timestamps present in jars produced by kotlinc.
This is important for build systems like bazel that rely on
deterministic outputs.
Before:
```
$ kotlinc ~/test.kt -d /tmp/a.jar
$ kotlinc ~/test.kt -d /tmp/b.jar
9ab80cd40c9293a7a66adf1154d4e6e9aa92d5b0 /tmp/a.jar
1ba022697317f796bd123fb4dc95418a18bcb51a /tmp/a.jar
6d2a2683470c24928f3fbd6768a4c57f55b0d196 /tmp/b.jar
$ unzip -l /tmp/a.jar
Archive: /tmp/a.jar
Length Date Time Name
--------- ---------- ----- ----
75 09-25-2020 16:48 META-INF/MANIFEST.MF
683 09-25-2020 16:48 TestKt.class
28 09-25-2020 16:48 META-INF/main.kotlin_module
--------- -------
786 3 files
```
After:
```
$ kotlinc ~/test.kt -d /tmp/a.jar
$ kotlinc ~/test.kt -d /tmp/b.jar
$ shasum /tmp/a.jar /tmp/b.jar
9ab80cd40c9293a7a66adf1154d4e6e9aa92d5b0 /tmp/a.jar
9ab80cd40c9293a7a66adf1154d4e6e9aa92d5b0 /tmp/b.jar
$ unzip -l /tmp/a.jar
Archive: /tmp/a.jar
Length Date Time Name
--------- ---------- ----- ----
75 12-31-1969 19:00 META-INF/MANIFEST.MF
590 12-31-1969 19:00 TestKt.class
36 12-31-1969 19:00 META-INF/main.kotlin_module
--------- -------
701 3 files
```
See https://github.com/JetBrains/kotlin/pull/3226 for a similar change.
2020-11-16 19:25:20 +01:00
Victor Petukhov
2685c7efce
Jspecify: Rename codeanalysis annotations to jspecify ones
2020-10-08 14:00:10 +03:00
Denis Zharkov
f3a490ee16
Support compiler flag -Xcodeanalysis-annotations
2020-10-08 14:00:09 +03:00
Ilya Chernikov
d7e0649d93
Automatically add -- after script/expression in kotlin runner
...
#KT-37987 fixed
2020-10-05 22:35:58 +02:00
Nick
c8f8908a01
[FIR] Add NO_THIS & INSTANCE_ACCESS_BEFORE_SUPER_CALL
2020-08-24 11:06:10 +03:00
Nick
7e1c2cfd36
[FIR] Add diagnostic INAPPLICABLE_LATEINIT_MODIFIER + some builtin types
2020-08-24 11:06:06 +03:00
Nick
091e12c093
[FIR] Add diagnostic CONFLICTING_PROJECTION
2020-08-24 11:06:04 +03:00
vldf
a26eeb6ee8
[FIR] Add CLI flag for running extended checkers
2020-08-18 21:53:07 +03:00
Mikhail Zarechenskiy
0c13a7f89a
Fix accessibility check for experimental declarations from default scope
...
#KT-40919 Fixed
2020-08-07 17:49:15 +03:00
Mikhail Glukhikh
9c3b8484b9
[FIR TEST] Add CLI test with should-be-error (not yet)
2020-08-04 22:27:18 +03:00
Mikhail Zarechenskiy
0c8b847ae6
Introduce compiler key to disable compatibility resolution mechanism
...
Enable it if one was using new inferene before 1.4
#KT-40128 Fixed
#KT-40112 Fixed
#KT-40113 Fixed
2020-07-10 14:23:45 +03:00
Mikhail Bogdanov
b5b5c8aebc
Check target for -Xjvm-default modes
...
#KT-39925 Fixed
2020-06-30 19:47:06 +02:00
Alexander Udalov
6e67e1e78d
Replace appendln with appendLine in project
2020-06-11 13:01:30 +02:00