Ivan Kylchik
f3252334b2
Move most of ir utils from backend.common to ir.tree
2022-05-18 21:20:03 +03:00
Ivan Kylchik
51ccc32a3f
Update test data after introducing IntrinsicConstEvaluation annotation
2022-05-18 21:19:57 +03:00
Ilya Muradyan
00819c421f
[REPL] Report script codegen errors in advance
2022-05-18 10:02:58 +03:00
Vladimir Dolzhenko
efd5beb49b
IJ file type optimizations based on extension
...
#KTIJ-21668
Merge-request: KT-MR-6288
Merged-by: Vladimir Dolzhenko <Vladimir.Dolzhenko@jetbrains.com >
2022-05-17 14:46:00 +00:00
Vyacheslav Gerasimov
6bb36bc5e1
Fix flaky android robolectric tests
...
#KTI-842
2022-05-10 23:42:55 +04:00
Vyacheslav Gerasimov
7157a54155
Fix unnecessary usages of Locale.getDefault()
2022-05-06 22:08:25 +00:00
Simon Ogorodnik
0b88748623
KT-52284 Kapt. Report error for kapt run with K2
2022-05-06 15:25:41 +00:00
Vyacheslav Gerasimov
dcd17e41a4
Fix capitalization related deprecation warnings
2022-05-04 19:15:01 +00:00
Yahor Berdnikau
e38ca74927
Fix compilation warnings in 'pill-importer' project
...
These warnings have fail compilation with bootstrap.
2022-05-03 11:47:30 +00:00
Ilya Chernikov
49902bb851
IR Scripting: allow to specify nullable types for provided props...
...
but only explicitly. This does not fix a breaking change described in
#KT-52120, because it seems the correct behavior, but it allows
to "workaround" the problem by specifying nullability explicitly.
Also improve handling of nullable bindings in JSR-223.
#KT-49173 fixed
#KT-51213 fixed
2022-04-29 11:03:11 +00:00
Simon Ogorodnik
58885a1b07
KT-52217 Rename 'use-fir' to 'use-k2', update message
2022-04-28 15:42:42 +00:00
Simon Ogorodnik
1c90d8a960
KT-52038 Kapt. Disable FIR for kapt run automatically
2022-04-28 15:42:41 +00:00
Victor Petukhov
8e834fc7bb
[FIR] Move subtyping helpers into TypeUtils.kt
2022-04-27 19:50:17 +00:00
Zalim Bashorov
64bcd8c91e
[JS, atomicfu] Stop applying unused node plugin
2022-04-23 14:06:24 +02:00
Ilya Chernikov
af933b9d3d
Switch to FastJarFS for scripting
...
#KT-51731 fixed
2022-04-20 19:15:12 +00:00
Vyacheslav Gerasimov
c8f2872a07
Fix flaky FIR tests
...
failing with 'Jar with annotations does not exist. Please run
:plugins:fir-plugin-prototype:plugin-annotations:jar'
2022-04-20 12:54:08 +03:00
Alexander Udalov
45f87bc71a
Advance JVM target to 1.8 for kapt, AE, parcelize runtimes
2022-04-19 22:54:40 +02:00
Aleksei.Cherepanov
3d8f140d6b
[JPS] Fix incremental build after changing Java enum used in Kotlin when
...
EnumWhenTracker implemented for tracking changed java enum class items, that used in kotlin when expression.
#KT-47824 Fixed
2022-04-19 18:39:41 +00:00
Vyacheslav Gerasimov
d9e8f0c180
Build: Rework test workers calculation with respect to available memory
...
#KTI-787
2022-04-19 11:45:23 +00:00
Alexander Likhachev
eda759ba31
[Build] Avoid buildscript root capture into task action
...
#KT-44611 In Progress
2022-04-19 00:39:24 +03: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
Ivan Kochurkin
8c7fad9a5e
[FIR] Support of type arguments in annotations ^KT-48444 Fixed
2022-04-18 15:36:19 +00:00
Dmitriy Novozhilov
afad6a564a
[Test] Pass CompilerConfiguration to AbstractEnvironmentConfigurator.registerCompilerExtensions
...
This is needed to provide ability to configure extensions depending on
configuration of specific test
2022-04-08 09:42:00 +00:00
Ilya Chernikov
35f80c04ca
IR Scripting: update capturing logic for the REPL, imported scripts,
...
as well as all other implicit receivers.
2022-04-04 14:55:53 +00:00
Ilya Chernikov
5d6e2b57a7
Sort sealed class inheritors to ensure reproducible builds with IC
...
without this sorting the inheritors field in the metadata may depend on
whether some inheritors are compiled in the IC round or not.
2022-03-30 08:35:30 +00:00
Ilya Chernikov
2044754628
Backend: remove psi files from generation state
...
pass them explicitly to all destinations. This is a step in attempt to
abstract dependencies on PSI in the GenerationState and related places.
2022-03-30 08:33:59 +00:00
Ilya Chernikov
da41fddabb
Backend: remove codegen factory from generation state
...
use it explicitly. This is a step in attempt to abstract dependencies
on PSI in the GenerationState and related places.
2022-03-30 08:33:51 +00:00
Ilya Chernikov
f89765eb33
Make JDK classpath roots configuration explicit...
...
instead of relying on the "configuration files" parameter.
(in the process of migration from KotlinCoreEnvironment).
2022-03-30 08:32:56 +00:00
Ilya Chernikov
9d2cadc908
[minor] scripting fixes in obsolete and test code...
...
relax acceptedAnnotations extraction rules for obsolete script template
handling code - the previous variant was failing on the typealias
comparison
also reduce warnings and possible exceptions on some test execution
paths
2022-03-30 08:32:48 +00:00
Rustam
6117eace9d
Remove redundant MetaSerializable test ( #4772 )
...
This test is a leftover from the original implementation of #4583 which was updated. This test is redundant now.
2022-03-27 15:32:25 +03:00
Udi Cohen
c9d2f40b95
Rename params show/dumpProcessorTimings to show/dumpProcessorStats
...
^KT-51132 Fixed
2022-03-25 18:54:02 +00:00
Udi Cohen
eb3b9f148d
Support dumping stats for number of generated sources by annotation processors
...
^KT-51132 In Progress
2022-03-25 18:54:02 +00:00
Rustam
e09f30f442
kotlinx.serialization: Support @MetaSerializable ( #4583 )
2022-03-25 19:07:42 +03:00
770grappenmaker
64f0240d9f
kotlinx.serialization: Fix interface delegation when delegate is initialized in a function ( #4727 )
...
Fixes https://github.com/Kotlin/kotlinx.serialization/issues/241
2022-03-24 16:11:36 +03:00
Evgeniy.Zhelenskiy
b6f2513dd2
[FIR] Introduce valueClassRepresentation to FIR
...
#KT-1179
2022-03-24 11:38:44 +00:00
Evgeniy.Zhelenskiy
28bf83ceac
[IR] Unite inline class and multi-field value class representation
...
#KT-1179
2022-03-24 11:38:43 +00:00
Victor Petukhov
b5933c70e2
[FE 1.0] Refactor error utils: split error entities and introduce error type and error scope kinds
2022-03-23 21:13:33 +00:00
Mikhael Bogdanov
093b1bebb0
KAPT+IR: Generate LVT in kapt mode
2022-03-22 09:50:08 +00:00
Mikhael Bogdanov
41a54241bb
Update testdata
2022-03-15 11:38:04 +01:00
Mikhael Bogdanov
15c3dd527c
KAPT+IR: Support data classes
2022-03-15 11:38:04 +01:00
Mikhael Bogdanov
ceedad40f3
KAPT+IR: Support secondary constructors
2022-03-15 11:38:03 +01:00
Yan Zhulanow
736c6c4d29
Pill: Import Java toolchain configuration correctly
...
Before, all project modules used 'inheritedJdk'. However, some Kotlin
modules now require JDK 8, while others depend on new API in JDK 11.
2022-03-14 17:53:54 +09:00
Roman Golyshev
ffcbc583d0
FIR: Split EnvironmentConfigurator to an interface and abstract class
...
It is needed to make it easier to write wrappers for configurators
2022-02-25 23:08:26 +03:00
Roman Golyshev
62f0487efa
FIR: Set resolve phase to BODY_RESOLVE for the generated declarations
...
In the future it should be checked that plugins can return only
`BODY_RESOLVE`d declarations
2022-02-25 23:08:25 +03:00
Dmitriy Novozhilov
faba9c4272
[CLI] Don't register classpath roots twice
...
There are two ways how content roots are registered in compiler configuration
in JVM CLI compiler:
1. Directly from arguments
2. From Module, which build from arguments
And there was a problem that both ways used at the same time in some
circumstances (regular compilation without .xml module file) which
caused duplication of all content roots.
Ideal solution for this problem is removal of Module usages at all,
because it looks like redundant abstraction which just complicate
things, but it's too scary to remove it, because it hove some none
trivial usages inside compiler. So to fix problem with duplicated
roots this commit just removes registration of roots from arguments
if Module is used
2022-02-23 19:33:51 +03:00
Ivan Gavrilovic
72532f6f03
KT-41456: Incremental KAPT - optimize .class file counting
...
When counting .class files, stop once the required number is reached.
Also, implement simple counting logic directly, it is 25% faster than
using File.walk(). The way this information is used is a heuristic, so
reducing computation cost makes sense.
^KT-41456 Fixed
2022-02-21 18:10:03 +03:00
Ivan Gavrilovic
0074e0209c
KT-41456: Incremental KAPT - check compiled sources before running incrementally
...
Because incremental KAPT tries to reuse .class files produced by kotlinc
and javac, it should check for their existence before starting
an incremental run. Otherwise, annotation processors that perform type
validation will fail to run.
Current check counts the number of declared types in processed .java
sources, and it makes sure the total number of .class files in compiled
sources dirs is equal or higher. Otherwise, KAPT runs non-incrementally.
Tests: KaptIncrementalWithIsolatingApt.testMissingKotlinOutputForcesNonIncrementalRun
^KT-41456 In Progress
2022-02-21 18:10:00 +03:00
Ivan Gavrilovic
c7e73ce88d
KT-41456: Incremental KAPT - represent source and class file structure differently
...
When storing source information needed for type analysis, store
.java file and .class file information separately. This is because
for class files only declared typed is needed.
Tests: updating existing ones
^KT-41456 In Progress
2022-02-21 18:09:58 +03:00
Dmitriy Novozhilov
d4d22b0dcf
[FIR] Add plugin prototype for testing extension for injection receivers
2022-02-18 17:52:34 +03:00
Dmitriy Novozhilov
b47cc86c57
[FIR] Fix incorrect context usages with withSuppressedDiagnostics call
2022-02-18 17:44:40 +03:00