Alexander Dudinsky
84d24e5b76
Migrate MultiplatformAnalysisTest to new test runner
2020-10-27 12:23:50 +03:00
Alexander Dudinsky
ac98bc9853
New highlighting/line markers/diagnostics test infrastructure
...
The current test framework has a number of shortcomings, such as
different markups for different kinds, those formats can not be
mixed in one test file, lacks composability, re-use of it is complicated
This commit contains the first version of the new test runner
to which tests will be migrated in the future.
2020-10-27 12:23:50 +03:00
Yan Zhulanow
994cb6f28e
Update deprecation message for the Android Extensions plugin
2020-10-27 18:08:39 +09:00
Toshiaki Kameyama
5e9333773c
Remove explicit type arguments: don't report when type argument has annotations
...
#KT-40985 Fixed
2020-10-27 15:44:44 +07:00
nataliya.valtman
e1a380ec95
KT-34862 use relative path for incremental build cache
2020-10-27 10:45:06 +03:00
Mikhail Glukhikh
09043fb98d
[FIR] JvmMappedScope: add mutable methods or not depending on a class
2020-10-27 10:27:06 +03:00
Mikhail Glukhikh
5c3269f489
[FIR] JvmMappedScope: don't add Java methods if Kotlin ones are here
2020-10-27 10:26:55 +03:00
Toshiaki Kameyama
ce407471ec
Convert to secondary constructor: suggest on class name
...
#KT-40861 Fixed
2020-10-27 14:05:28 +07:00
Ivan Gavrilovic
2c5c15f503
Clean-up outputs on non-incremental run
...
Always clean all outputs on non-incremental run of the
Kotlin compile task.
#KT-38692 Fixed
2020-10-27 09:44:06 +03:00
Abduqodiri Qurbonzoda
2fd7d64db0
Promote CancellationException to stable #KT-41837
2020-10-27 05:06:50 +03:00
Mikhail Glukhikh
caafe21e84
[FIR] Add CheckLowPriorityStage to callable reference resolve
2020-10-26 20:07:37 +03:00
Ilmir Usmanov
a775fa195b
Unbox inline class parameter of lambda if underlying type is Any or Any?
...
The inline class is boxed when we pass it as lambda argument, now we
unbox it. If the underlying type is not Any or Any?, bridge method does
the unboxing.
#KT-32450 Fixed
#KT-39923 Fixed
#KT-32228 Fixed
#KT-40282 Fixed
2020-10-26 17:34:37 +01:00
Toshiaki Kameyama
752f6d8f72
Elvis -> if intention: don't introduce new variable when RHS type is Nothing
2020-10-26 20:57:16 +07:00
Toshiaki Kameyama
f9f8fd055b
Convert receiver to parameter: place value argument list after type argument list
...
#KT-41499 Fixed
2020-10-26 20:47:35 +07:00
Dmitry Petrov
b1629cc5f4
JVM KT-22465 don't generate accessor to private setter in other class
2020-10-26 14:56:07 +03:00
Roman Artemev
4d63ecd83c
[JS IR] Do not copy prototype references of FO from super class
...
Reduce bundle size from issue from 4.9M to 3.4M
- fix KT-41227
- add simple test
2020-10-26 14:30:54 +03:00
Matthew Gharrity
99a6bdeec7
Fix KotlinCoreEnvironment projectCount disposable
...
The disposable which decrements ourProjectCount was a non-capturing
lambda, meaning it had a single identity and could only be registered
in the Disposer tree once. Therefore the application environment
would never be disposed if ourProjectCount ever went above 1.
2020-10-26 12:23:10 +01:00
Mikhail Glukhikh
e9b51b42f9
[FIR] Add test for both KT-10240 and KT-19446
2020-10-26 14:09:36 +03:00
Alexander Udalov
382a0bd298
JVM IR: clear BindingContext after psi2ir
...
This helps to reduce peak memory in lowerings/codegen by a lot.
A more robust approach would be to have a separate BindingContext for
each file, and clear each of them after running psi2ir on it. This would
also lower peak memory usage in psi2ir.
Provide a fallback workaround compiler argument
-Xir-do-not-clear-binding-context just in case BindingContext is in fact
used somewhere and it's not caught by tests.
2020-10-26 10:34:43 +01:00
Alexander Udalov
bc76f1fec3
Refactor test utilties to reuse GenerationState construction
2020-10-26 10:34:43 +01:00
Alexander Udalov
dd813777b9
Refactor Main-Class computation in CLI for JVM with .jar outputs
...
Compute FQ name of the main class right after running the analysis and
before invoking codegen. This is needed because MainFunctionDetector
depends on BindingContext, and JVM IR needs to clear BindingContext as
soon as it's not necessary to reduce peak memory usage, thus breaking
any usages of data from it after the codegen.
Also refactor and use the extracted, but not properly reused previously,
copy of findMainClass in findMainClass.kt.
Note that this replaces NPE in KT-42868 with an UOE.
2020-10-26 10:34:43 +01:00
Vladimir Dolzhenko
0a18be62e5
Add prefix for inner test classes in ide perf tests to avoid metric name clashes
2020-10-25 22:49:30 +01:00
Alexander Udalov
08b8939b80
IR: make IrSymbol.isPublicApi an extension
2020-10-23 20:56:08 +02:00
Alexander Udalov
4bd08e5e0c
IR: clear callToSubstitutedDescriptorMap for each file to avoid leaking memory
...
This map is populated during psi2ir and is only used in
insertImplicitCasts, after which it makes sense to clear it, otherwise
it strongly references a lot of descriptors for calls in other files
which would never be used.
2020-10-23 20:50:08 +02:00
Alexander Udalov
7ac981d4d3
Psi2ir: refactor ModuleGenerator.generateModuleFragment
...
Move `postprocess` into `generateSingleFile` and do those steps on each
file instead. This will allow to create
`GeneratorContext.callToSubstitutedDescriptorMap` for each file and
clear it after its only call site (InsertImplicitCasts) has used it.
Also simplify code a bit.
2020-10-23 20:50:08 +02:00
Victor Petukhov
7b53d668ab
Fix test after 4f06162446
2020-10-23 18:33:23 +03:00
Yan Zhulanow
c07f25fa44
Revert "FoldInitializerAndIfToElvisInspection: don't add explicit type if var is used as non-nullable"
...
This reverts commit bb7d4c22
2020-10-24 00:22:41 +09:00
Yan Zhulanow
87574dddd9
Revert "ReplaceWith: suggest for "invoke" extension"
...
This reverts commit be194c34
2020-10-24 00:22:41 +09:00
Yan Zhulanow
04457e92d0
Revert ""Put/Join arguments/parameters" intention: don't suggest on nested argument list"
...
This reverts commit 4a328981
2020-10-24 00:22:41 +09:00
Yan Zhulanow
3321ce6325
Revert ""Code Cleanup": don't remove deprecated imports when file has @file:Suppress("DEPRECATION") annotation"
...
This reverts commit cf5a6274
2020-10-24 00:22:41 +09:00
Yan Zhulanow
839c30d04b
Revert "Additional minor fixes for KT-33594: avoid using hard-coded annotation name, simplify hasAnnotationToSuppressDeprecation()"
...
This reverts commit 2a841550
2020-10-24 00:22:40 +09:00
Yan Zhulanow
9320637efe
Revert "Redundant companion reference: do not report 'values/valueOf' function in enum"
...
This reverts commit 55d55446
2020-10-24 00:22:40 +09:00
Yan Zhulanow
383190f25e
Revert "Replace with ordinary assignment: do not suggest when operator is augmented assignment operator function"
...
This reverts commit 73e319ca
2020-10-24 00:22:40 +09:00
Yan Zhulanow
7fccd0153b
Revert "Refactoring: Remove hard-coded augmented assignment check with a Name check"
...
This reverts commit 016e78e4
2020-10-24 00:22:40 +09:00
Yan Zhulanow
0ae21a157f
Revert ""Change to return with label" quick fix: apply for type mismatch"
...
This reverts commit f76e9886
2020-10-24 00:22:39 +09:00
Yan Zhulanow
601198634d
Revert "Minor: Extract lambda return expression handling"
...
This reverts commit 55038e19
2020-10-24 00:22:39 +09:00
Yan Zhulanow
b18de1e3ff
Revert "Provide quickfix for specifying type of variable initialized with null"
...
This reverts commit cdf7f46c
2020-10-24 00:22:39 +09:00
Yan Zhulanow
4327bc4ac3
Revert "KT-23394: Add a test with a property"
...
This reverts commit f2dc132d
2020-10-24 00:22:38 +09:00
Yan Zhulanow
fe64fcf8a3
Revert "Minor: update order in IntentionTestGenerated"
...
This reverts commit 6515d53b
2020-10-24 00:22:38 +09:00
Yan Zhulanow
c4a48598c0
Revert ""Add parameter to function" for TYPE_MISMATCH: fix it works correctly for extension function"
...
This reverts commit 03e725d5
2020-10-24 00:22:38 +09:00
Yan Zhulanow
16dbf7ba74
Revert "Convert to range check: don't report it if recursive call will be created"
...
This reverts commit 73184884
2020-10-24 00:22:38 +09:00
Yan Zhulanow
d735637f1e
Revert "RemoveBracesIntention: add new line for long expression"
...
This reverts commit f4b9c477
2020-10-24 00:22:37 +09:00
Yan Zhulanow
f615ed2f26
Revert ""Use destructuring declaration": fix it works correctly if variable name is shadowed"
...
This reverts commit d61158a1
2020-10-24 00:22:37 +09:00
Yan Zhulanow
ab70cc35ea
Revert "Add quick fix for 'JAVA_CLASS_ON_COMPANION'"
...
This reverts commit 15a615d6
2020-10-24 00:22:37 +09:00
Yan Zhulanow
6cc4d70b07
Revert "Minor: Remove hard-coded 'Companion' name"
...
This reverts commit 871ad2b9
2020-10-24 00:22:37 +09:00
Yan Zhulanow
19f518c037
Revert "IfThenToSafeAccessInspection: fix it works correctly for variable/operator call"
...
This reverts commit 5095caee
2020-10-24 00:22:36 +09:00
Yan Zhulanow
19896f9616
Revert "Minor: Use second pattern argument instead of explicit callee.text"
...
This reverts commit 55e36fa1
2020-10-24 00:22:36 +09:00
Yan Zhulanow
519f92599c
Revert "Minor: Import DebuggerUtils"
...
This reverts commit 58f606e1
2020-10-24 00:22:36 +09:00
Igor Chevdar
9b2aa0951b
[box-tests] Turned on tests on typeof for K/N
2020-10-23 18:27:10 +05:00
Igor Chevdar
9d1cb6a2c0
Turned off TypeOfChecker for K/N
2020-10-23 18:27:10 +05:00