Commit Graph

87629 Commits

Author SHA1 Message Date
Ivan Kylchik 83d2d2cfcf [JS TESTS] Disable node js runner for IR 2021-11-22 21:06:42 +03:00
Ivan Kylchik 3aa88a6ebe [JS TESTS] Allow saving artifacts into build directory on teamcity
This is required to properly run node js tests.
2021-11-22 21:06:40 +03:00
Dmitriy Novozhilov 9c7058c3c5 [FIR] Support fields as part of graph of class initialization
^KT-49747 Fixed
2021-11-22 20:22:22 +03:00
Dmitriy Novozhilov 5778cb440f [FIR] Add FirControlFloGraph owner supertype to FirField
FirField, just like FirProperty, can have control flow graph of it's
  intializer
2021-11-22 20:22:19 +03:00
Roman Artemev 3bef04cf5e Fix test and unmute it for JVM 2021-11-22 19:00:43 +03:00
Victor Petukhov d48557ed53 [FE 1.0] Fix containing KtFile check in NewResolutionOldInference.kt 2021-11-22 17:01:49 +03:00
Dmitriy Novozhilov 9807c67ae4 [FIR] Properly collect overriddens for method enhancement
If some java class has multiple supertypes then we need to collect
  overriddens from all those types directly, even if superTypeScope
  (which is FirTypeIntersectionScope in this case) returns only
  one symbol from one of this types (not intersection one)

This is needed to proper enhancement in cases when some type occurs
  multiple times in supertypes graph with different nullability
  of arguments:

class ConcurrentHashMap<K, V> : AbstractMap<K!, V!>, MutableMap<K, V>

If we try to find method `get(key: K): V` supertype scope returns
  `AbstractMap.get(key: K!): V!` (because it actually overrides
  `MutableMap(key: K): V?`), but we need to get both symbols to
  properly enhance types for `ConcurrentHashMap.remove`
2021-11-22 17:01:17 +03:00
Dmitriy Novozhilov 01c0cf80d0 [FIR] Support @kotlin.jvm.PurelyImplements annotation 2021-11-22 17:01:17 +03:00
Dmitriy Novozhilov 339c69fef0 [FIR] Collect all supertypes with same type constructor in corresponding supertypes cache
This is needed to fir behavior of cache with algorithm in
  abstract type checker
2021-11-22 17:01:17 +03:00
Dmitriy Novozhilov d72fcc92fe [FIR] Add utility function for collecting overridden tree for debug purposes 2021-11-22 17:01:16 +03:00
Dmitriy Novozhilov 6edf191b7f [FIR] Save classId in declared and use site scopes
This is needed for debug purposes, because without classId or reference
  to class it's very hard to understand which scope you are observing
  in debugger
2021-11-22 17:01:16 +03:00
Viacheslav Kormushkin a695d9bf59 KT-49771 - podInstall task is not executed after adding a pod dependency to the shared module
#KT-49771
2021-11-22 13:19:03 +00:00
Ilya Goncharov f48436b35e rra/ilgonmic/eager-like-native
[JS IR] Leave JsEagerInitialization until bootstrap update

[JS IR] Fix js stdlib api

[JS IR] Change annotation on eager initialization in sources

[JS IR] Make eager initialization consistent with native

Merge-request: KT-MR-5030
2021-11-22 12:45:37 +00:00
Ilya Goncharov 24bc1fe1b4 [JS IR] Add test with extending exported interface 2021-11-22 12:40:28 +00:00
Ilya Goncharov 6f3985be47 [JS IR] Add test on frontend check with enum exportness
^KT-49754 fixed
2021-11-22 12:40:28 +00:00
Ilya Goncharov a46c4cf0a5 [JS IR] Fix exportable super types for enum
^KT-49754 fixed
2021-11-22 12:40:27 +00:00
Sergej Jaskiewicz 756b58d5ce [JS IR] Don't assume a single constructor in the Char class 2021-11-22 11:22:45 +00:00
Victor Petukhov a6fd14d4e6 [FE 1.0] Eliminate resolution ambiguity on inherited SAM-interfaces
^KT-17765 Fixed
2021-11-22 14:18:30 +03:00
Victor Petukhov a5c6d370dd [FE 1.0] Eliminate resolution ambiguity with external type parameters
^KT-10926 Fixed
2021-11-22 14:18:29 +03:00
Victor Petukhov 31668ed40d [FE 1.0] Fix containing KtFile check in PSICallResolver.kt 2021-11-22 14:00:13 +03:00
sebastian.sellmair d5a081bf03 [MPP] [Android] KotlinAndroidTarget: filter AgpVersionAttr attribute
Ensure that the attribute com.android.build.api.attributes.AgpVersionAttr
is not published when creating the android usage contexts.

^KT-49798 Verification Pending
2021-11-22 10:48:43 +00:00
sebastian.sellmair 95018a9de0 [MPP] [Android] implement testAndroidMultiplatformPublicationAGPCompatibility
This test publishes a Multiplatform/Android library locally with
a given AGP version (7.1-*+) and tests the compatibility with older
AGP consumer versions.

Two projects will be tested:

multiplatformAndroidConsumer:
kotlin("multiplatform") + android target depending on
the previous publication as 'commonMainImplementation' dependency

plainAndroidConsumer:
kotlin("android") depending on the previous publication
as 'implementation' dependency.

Both projects will test the 'assemble' umbrella task to ensure,
compatibility with the given publication.

^KT-49798 implicitly covered as well
2021-11-22 10:48:43 +00:00
sebastian.sellmair 8c5f980c16 [MPP] [Android] implement testKT49798AgpVersionAttrNotPublished
This test covers ^KT-49798 by publishing an Android library and
checking that 'AgpVersionAttr' is not mentioned in any .module files
of those publications.
2021-11-22 10:48:42 +00:00
sebastian.sellmair f864e19d95 [Android] Add Gradle integration tests for AGP 7.1
^KT-49798
2021-11-22 10:48:42 +00:00
Alexander Shabalin 48bb9ae069 fixup! Fix remote executable path 2021-11-22 10:19:39 +00:00
Elena Lepilkina 7667200ad8 fixup! Fix for linuxArm64 2021-11-22 10:19:39 +00:00
Elena Lepilkina fe2f82430f fixup! Added assert 2021-11-22 10:19:38 +00:00
Elena Lepilkina 74260bc138 [K/N][perf] Add possibility to cross compile benchmarks and run them on remote machine 2021-11-22 10:19:38 +00:00
Dmitriy Novozhilov 9ba6683472 [TEST] Increase timelimit for running separate jvm process in box tests
Timelimit is increased from 1 to 1.5 minutes because in some cases
  (in parcelize tests) on windows tests can don't fit in 1 minute
  limit, which causes flaky failures of tests
2021-11-22 13:17:00 +03:00
Ilya Matveev cb0149cdca [K/N][build] Parallelize runtime building 2021-11-22 11:47:29 +03:00
Aleksei.Cherepanov 8e21e954ad Disable functionalTest source set for JPS build
Exclude functionalTest from :kotlin-gradle-plugin module for JPS build
2021-11-22 08:15:37 +00:00
Victor Petukhov 5c3835ab39 [FE 1.0] Don't use identifier in WhenMissingCase.kt if it wasn't provided
^KT-49702 Fixed
2021-11-22 10:44:06 +03:00
Victor Petukhov 42805db989 [FE 1.0] Take into account import aliases during hidden member resolution 2021-11-22 10:43:43 +03:00
Victor Petukhov c2de8712f2 Don't store strong references on thread local cache and clean-up request caches properly
^KT-46744 Fixed
2021-11-22 10:43:22 +03:00
Kristoffer Andersen be1c0bb9c1 [EE-IR] Support mutations by evaluator fragments
- box captured variables using `Ref`s, the same mechanism that's used
  for shared variables in closures.
2021-11-21 01:34:42 +01:00
Jinseong Jeon 3ccbd25856 FIR LC: populate inner classes in interfaces 2021-11-20 21:34:48 +01:00
Dmitry Petrov e525e25518 JVM KT-47851 fix redundant checkcast elimination 2021-11-20 23:29:19 +03:00
Dmitry Petrov 8b066fd345 JVM add tests for KT-49615 2021-11-20 23:29:18 +03:00
Kristoffer Andersen 7e633cf217 [IR] Refactor JvmSymbols to allow on-demand loading of (subsets of) symbols 2021-11-20 12:40:46 +01:00
Steven Schäfer 4b4ee78e5d kotlinx-metadata: Fix parsing of inlineClassUnderlyingType 2021-11-20 12:39:15 +01:00
Dmitry Petrov 77dde26c7c JVM KT-48944 improve performance of FunctionReference#equals
'getOwner()' computes KDeclarationContainer for function references,
which can be costly. Compare other FunctionReference properties first.
2021-11-20 10:31:07 +03:00
Dmitry Petrov aa0c2ddea5 JVM_IR fix nullability of special bridge return type 2021-11-20 07:27:22 +00:00
Nikolay Krasko 987cbd58e9 Refactoring: restore empty javadoc for all publications in kotlin-test
Partially revert 4dc45a4118
2021-11-20 10:11:37 +03:00
Nikolay Krasko 6a2c607862 Return source and javadoc publication for kotlin-test-wasm
Setting packaging to klib didn't work because it was overwritten below.

^KTI-692 Fixed
2021-11-20 10:11:32 +03:00
Nikolay Krasko 18ed361f9b Narrow down suppressAllPomMetadataWarnings() in kotlin-test publication 2021-11-20 10:11:27 +03:00
Mikhail Glukhikh cf104c8433 FIR: add status line to all failing black box tests 2021-11-20 03:37:31 +03:00
Tianyu Geng d0d1c8c4b9 Analysis API: add test for getReturnExpressionTargetSymbol
Also fix FIR and FE1.0 implementations.
2021-11-19 23:29:17 +01:00
Ilya Goncharov 7aef45d5cf [JS] Implement strategy with adapterTransformer on global object to mutate adapter of kotlin-test 2021-11-19 21:39:23 +00:00
Nikolay Krasko 272081d8cf Reduce dependency on teamcity.jetbrains.com when downloading dependencies 2021-11-20 00:05:51 +03:00
wrongwrong 6ecb5a1bd3 Fix ReadMe 2021-11-19 14:48:22 +01:00