Commit Graph

66577 Commits

Author SHA1 Message Date
Andrey Uskov e6165ed785 Improved performance of MPP projects import
#KT-39059 Fixed
2020-05-28 22:07:39 +03:00
Andrey Uskov 8eca3c8aa8 Fixed building MPP model if project root directory does not exist 2020-05-28 22:07:36 +03:00
Andrey Uskov c7a53e4435 Fix android import tests 2020-05-28 22:07:31 +03:00
Andrey Uskov 351d706e0d Fixed reporting NPM download time
#KT-39109 Fixed
2020-05-28 22:07:27 +03:00
Andrey Uskov 15ead4cbe6 Fixed representation of project structure when MPP module is involved
KT-37125
2020-05-28 22:07:22 +03:00
Andrey Uskov 2eb354f211 Fixed import of MPP modules with single artifacts
#KT-38037 Fixed
2020-05-28 22:07:16 +03:00
Zalim Bashorov a8623b9b28 Make sure that library file still exists before calling loadMetadata from JsResolverForModuleFactory since IDE model could be outdated
#EA-218905 fixed
2020-05-28 21:38:01 +03:00
Zalim Bashorov 7f41dc4828 Add more detailed message for EA-227305 and EA-226744 2020-05-28 21:38:00 +03:00
Vyacheslav Karpukhin 7b55a49ddd Dependency on IDEA replaced with AS incompatibility 2020-05-28 19:29:22 +02:00
Steven Schäfer dc0ef996b7 JVM IR: Implement the new inline class ABI 2020-05-28 18:00:35 +03:00
Nicolay Mitropolsky e60a32e8d3 Uast: UastFakeLightMethod dependent generic type SOE fix KT-39155 2020-05-28 17:53:30 +03:00
Vladimir Ilmov de790a3e3b (UnusedSymbolInspection) Added support for typing per inspection tests
relates to #KT-38653
2020-05-28 15:27:58 +02:00
Alexander Udalov 1f1790d60e Do not rely on descriptors in KParameterImpl.equals/hashCode
For the same reason as in the previous commit: descriptors are cached
via weak references in moduleByClassLoader.kt and can be
garbage-collected at any point. So different instances of KParameterImpl
representing the same parameter may store different instances of
descriptors.
2020-05-28 14:17:37 +02:00
Alexander Udalov 55f384cb04 Do not rely on descriptors in KTypeParameterImpl.equals/hashCode
Descriptors are cached via weak references in moduleByClassLoader.kt and
can be garbage-collected at any point. So relying on identity of
descriptors in KTypeParameterImpl is dangerous because the same type
parameter can be represented by different descriptors. For example, the
test equalsOnFunctionParameters.kt was flaky before this change because
of this issue, and that could be reproduced by running it a few hundred
times in the same process.

Instead, use the type parameter's container (which is either KClass or
KCallable) and name, in equals/hashCode. KClass and KCallable already
have equals/hashCode independent of descriptors, so this works in case
the descriptor is invalidated.
2020-05-28 14:17:37 +02:00
Alexander Udalov d25f9dee62 Minor, remove temporary workarounds for JPS build 2020-05-28 14:17:36 +02:00
Victor Petukhov e72f7d9a1d NI: return optimization for adding constraints in ConstraintInjector.kt 2020-05-28 14:58:15 +03:00
anastasiia.spaseeva 6c1efbe812 [Spec tests] Update spec testData 2020-05-28 14:23:11 +03:00
Mikhail Glukhikh 25b1059f74 Cleanup: ExpectDependencyGenerator 2020-05-28 14:03:01 +03:00
Mikhail Glukhikh c9f2876368 [PSI2IR] Drop unnecessary forcing of type alias RHS referencing 2020-05-28 14:03:01 +03:00
Mikhail Glukhikh cef23a284f [PSI2IR] Use returnTarget.symbol directly in generateReturnExpression 2020-05-28 14:03:00 +03:00
Mikhail Glukhikh 8e8bb9bf08 [IR] Simplify class parent fetching in PrimitiveCompanionLowering 2020-05-28 14:03:00 +03:00
Mikhail Glukhikh 487a698e49 [IR] Add IrSymbolBase.toString() implementation 2020-05-28 14:02:59 +03:00
Mikhail Glukhikh 07b1bd9d99 IrTypeUtils: take name directly from IrDeclaration 2020-05-28 14:02:59 +03:00
Mikhail Glukhikh 4b47eb359a IR linked: introduce IrElement.isExpectMember instead of descriptor use 2020-05-28 14:02:58 +03:00
Mikhail Glukhikh 7c7f87e729 [IR] Replace some usages of KotlinType to IrType 2020-05-28 14:02:58 +03:00
Mikhail Glukhikh 2d842d061e IrSourceCompilerForInline: get ownerKind without descriptor 2020-05-28 14:02:57 +03:00
Mikhail Glukhikh a631c24e8c [IR] Drop unused 'withDescriptors' dumper 2020-05-28 14:02:57 +03:00
Mikhail Glukhikh 4944fc78b2 [IR] Require bound symbols in classFqNameEquals 2020-05-28 14:02:56 +03:00
Mikhail Glukhikh cacf5f5a4a [IR] Read isExpect directly from IrDeclaration without using descriptor 2020-05-28 14:02:56 +03:00
Mikhail Glukhikh 934b040152 [IR] Read isSuspend directly from IrFunction without using descriptor 2020-05-28 14:02:55 +03:00
Mikhail Glukhikh 8a15edf5e6 [IR] Extract IrDeclaration(Access).psiElement extension 2020-05-28 14:02:55 +03:00
Mikhail Glukhikh 6b3c390fa7 [FIR2IR] Use IrSymbols directly instead of referencing via SymbolTable 2020-05-28 14:02:54 +03:00
Mikhail Glukhikh 90e6d5bea7 [FIR2IR] Read modality directly from IrFunction without using descriptor 2020-05-28 14:02:54 +03:00
Mikhail Glukhikh 724101cdd2 [IR] Get rid of minor symbol.descriptor usages 2020-05-28 14:02:53 +03:00
Mikhail Glukhikh bf66929b5b Extract IrClass.syntheticAccessorToSuperSuffix() 2020-05-28 14:02:53 +03:00
Mikhail Glukhikh 66da676b9e [IR] Extract IrCallableReference.referencedName 2020-05-28 14:02:52 +03:00
Mikhail Glukhikh 79fd24f734 IrBuilder: get typeParametersCount from IR owner, not from descriptor 2020-05-28 14:02:52 +03:00
Ilya Goncharov bf5810a349 [Gradle, JS] Fix text after proof read
#KT-35641 fixed
#KT-35611 fixed
2020-05-28 12:14:34 +03:00
Ilya Goncharov 85e5f8a736 [Gradle, JS] Deprecation of kotlin2js and kotlin-dce-js plugins
#KT-35641 fixed
#KT-35611 fixed
2020-05-28 12:13:28 +03:00
Dmitriy Dolovov 118c4b96cc [Commonizer] Leaf source sets should depend on commonized "common" libs
^KMM-241
2020-05-28 12:12:40 +07:00
Dmitriy Dolovov 45260cee1e [Commonizer] Update stats collector to report lifted up declarations 2020-05-28 12:12:40 +07:00
Dmitriy Dolovov 9f31931bb8 [Commonizer] Tests on lifting up identical const properties
^KMM-241
2020-05-28 12:12:39 +07:00
Dmitriy Dolovov 2ce1625989 [Commonizer] Lift up identical const properties
^KMM-241
2020-05-28 12:12:39 +07:00
Dmitriy Dolovov a2edb9b547 Minor. Add "commonized" to project dictionary 2020-05-28 12:12:39 +07:00
Dmitriy Dolovov 36a29ce2dd [Commonizer] Split different aspects of CIR
- Entity declaration
- Entity implementation
- Creation of new entities from descriptors
2020-05-28 12:12:29 +07:00
Dmitriy Dolovov f26a3150ba [Commonizer] Explicitly check if annotation constants are allowed 2020-05-28 12:11:11 +07:00
Dmitriy Dolovov 0827d2e8a3 [Commonizer] Fix Gradle module dependencies 2020-05-28 12:11:04 +07:00
Dmitriy Dolovov b5245e2df6 [Commonizer] Avoid N^2 during merge of KLIB manifest dependencies 2020-05-28 12:10:58 +07:00
Dmitry Gridin dbd10380ee Code style settings: fix top border in UI
#KT-39180
2020-05-28 09:28:52 +07:00
Alexander Udalov d115a1ff9c Minor, fix some warnings such as "unused main argument" in generators 2020-05-27 23:29:21 +02:00