Commit Graph

60218 Commits

Author SHA1 Message Date
Pavel Kirpichenkov e9941f8c12 [NI] Implement algorithm for completion mode selection
Current selection of completion mode for call is not always correct in case of full mode,
and sometimes too conservative in case of partial mode. Updated algorithm checks constraints
wrt position of type variables in return type and in other related constraints.
Full completion happens if proper constraint requirements are satisfied for variables.
2019-12-25 14:59:05 +03:00
Pavel Kirpichenkov a9391c8dfb [NI] Remove Nothing result type restriction in most cases
Make Nothing as result type not suitable only for if, when, try and ?: special functions.
2019-12-25 14:59:05 +03:00
Mikhail Zarechenskiy ae1630f376 [NI] Don't discriminate Nothing-type from resulting ones
^KT-32106 Fixed
2019-12-25 14:59:04 +03:00
Dmitry Petrov a8e9a6a1d0 Properly reference type parameter descriptors
'descriptor -> descriptor.original' relation is often inconsistent
wrt 'containingDeclaration', parameters, and type parameters,
we have to introduce some workarounds here.
2019-12-25 14:20:47 +03:00
Igor Chevdar f8fd5092c6 [native-gradle-plugin] Disabled cache building for iOS devices 2019-12-25 16:16:55 +05:00
Nikolay Krasko 70ff3d36d0 Fix running tests in compiler plugins 2019-12-25 14:05:16 +03:00
Nikolay Krasko 5583b57ed7 Regenerate spec tests to activate muting framework for them 2019-12-25 14:05:15 +03:00
Nikolay Krasko 7a94b1d88b Mute SpringReferenceNavigationTestGenerated test 2019-12-25 14:05:15 +03:00
Nikolay Krasko 2f129ea435 Allow resolve during fixing AddSpringBeanQualifierFix action
Fix SpringQuickFixTestGenerated test
2019-12-25 14:05:15 +03:00
Nikolay Krasko bf79b660c4 Fix HighlightingWithDependentLibrariesTest in 193 by using relative path 2019-12-25 14:05:14 +03:00
Nikolay Krasko 1b9bae0cca Mute more flaky tests
JavaAgainstKotlinSourceCheckerWithoutUltraLightTestGenerated.JavaAgainstKotlin
ConfigureKotlinInTempDirTest
MavenMigrateTest
2019-12-25 14:05:14 +03:00
Nikolay Krasko d575df56e9 Minor: show method key in parse error 2019-12-25 14:05:14 +03:00
Nikolay Krasko 143cfc7030 Minor: put first actual item to the new line in tests 2019-12-25 14:05:13 +03:00
Nikolay Krasko 9b68008208 Mute JvmSmartCompletionTestGenerated (KT-32919) 2019-12-25 14:05:13 +03:00
Nikolay Krasko c372dc7f0a Fix AmbiguousCalls in >= 192 2019-12-25 14:05:13 +03:00
Nikolay Krasko 0884681662 Mute flaky stub builder tests 2019-12-25 14:05:12 +03:00
Nikolay Krasko 1e14c48742 Mute KotlinMavenInspectionTestGenerated 2019-12-25 14:05:12 +03:00
Nikolay Krasko 9206f1cfb2 Remove compatibility hack with reflection usage 2019-12-25 14:05:12 +03:00
Nikolay Krasko 1682ace428 Mute MultiPlatformHighlightingTestGenerated 2019-12-25 14:05:11 +03:00
Nikolay Krasko 3210e1d44c Fix testHighlightingWithDependentLibraries 2019-12-25 14:05:11 +03:00
Nikolay Krasko 03bd80b1ba Mute CreateActual.testWithTestDummy 2019-12-25 14:05:11 +03:00
Nikolay Krasko d2909814c2 Mute DeprecatedSymbolUsageFixSpecialTest 2019-12-25 14:05:10 +03:00
Nikolay Krasko d80fdf307f Fix testNoSynthesizedParameterNames in 192 and 193 2019-12-25 14:05:10 +03:00
Nikolay Krasko dca5ff10c7 Mute testKotlin_moveTopLevelDeclarations_moveFunctionToPackage_MoveFunctionToPackage in 193 2019-12-25 14:05:10 +03:00
Nikolay Krasko 6613b73657 Mute highlighting tests 2019-12-25 14:05:09 +03:00
Nikolay Krasko 1e3736ec1e Mute SerializationIrBytecodeListingTestGenerated 2019-12-25 14:05:09 +03:00
Nikolay Krasko 1058f04c53 Mute ShortenRefsTestGenerated 2019-12-25 14:05:09 +03:00
Nikolay Krasko 84604b91bf Mute StringInterpolationInjectionTest 2019-12-25 14:05:08 +03:00
Nikolay Krasko c11f36cf1d Mute IncrementalJvmJpsTestGenerated tests 2019-12-25 14:05:08 +03:00
Nikolay Krasko 18b1d64adc Update FindUsagesTestGenerated$Kotlin$Conventions.testSet test data 2019-12-25 14:05:07 +03:00
Nikolay Krasko 3520d5b81d Mute JavaAgainstKotlinBinariesCheckerTestGenerated tests in 192 and 193 2019-12-25 14:05:07 +03:00
Nikolay Krasko 5f25242cbf Mute QuickFixTestGenerated.Libraries tests 2019-12-25 14:05:07 +03:00
Nikolay Krasko 712517a02e Mute testWithJava9ModuleInfo tests 2019-12-25 14:05:07 +03:00
Nikolay Krasko f41b588f70 Mute gradle.NewMultiplatformProjectImportingTest tests
Stable failure on windows.
2019-12-25 14:05:06 +03:00
Nikolay Krasko 08ade450ff Mute gradle.ImportAndCheckHighlighting (KT-35631) 2019-12-25 14:05:06 +03:00
Nikolay Krasko c848212ae9 Mute GradleBuildFileHighlightingTest test 2019-12-25 14:05:06 +03:00
Nikolay Krasko c935078f05 Mute JavaToKotlinConverterSingleFileTestGenerated tests 2019-12-25 14:05:05 +03:00
Nikolay Krasko c5d4213a5c Mute CoroutineDumpTestGenerated, stable failure on windows 2019-12-25 14:05:05 +03:00
Nikolay Krasko 9d54d1ec40 Mute GradleFacetImportTest tests in 192 and 193 2019-12-25 14:05:05 +03:00
Nikolay Krasko 482cb07420 Mute GradleConfiguratorTest tests 2019-12-25 14:05:04 +03:00
Nikolay Krasko 8014a6509e Allow to mute JUnit 4 tests with parameters 2019-12-25 14:05:04 +03:00
Svyatoslav Kuzmich d74721716a [JS IR] Use short klib names instead of absolute paths 2019-12-25 13:44:57 +03:00
Svyatoslav Kuzmich 31c84e9ac4 [JS IR] Build stdlib using compiler from repo
Previously JS IR versions of stdlib and kotlin-test were build
by default using compiler previously built on a buildserver.

It had some issues:
 - This required us to advance bootstrap every time we made any
   incompatible IR changes. This happens often since IR ABI is
   not quite stable yet.

 - We never tested the exact combination of compiler and stdlib we publish

   We tested:
    - new compiler with new stdlib build by new compiler (in box tests)
    - old compiler with new stdlib build by old compiler (in stdlib tests)

   We published:
    - new compiler with new stdlib build by old compiler

After this change JS IR compiler tests, builds and publishes
single configuration:

    new compiler with new stdlib build by new compiler

JS IR stdlib and kotlin-test are now built using JavaExec of CLI instead
of Gradle plugin to avoid troubles of loading a freshly built plugin.

This also allows to have a granular dependencies: we don't rebuild klib
if we changed a lowering in a compiler backend, but we do rebuild it if
we changed IR serialization algorithm.
2019-12-25 13:44:57 +03:00
Pavel Punegov 70111f8db1 Ignore test in Native backend 2019-12-25 13:40:38 +03:00
victor.petukhov be8ae24713 Temporary mute some spec tests through apply changes after 45e881f03f 2019-12-25 12:44:54 +03:00
Sergey Igushkin 1129b2d3eb Support serializing a module's own descriptors without dependencies
The KlibMetadataSerializer used to serialize all package fragments that a module
could provide, including those coming from the module's dependencies. In order
to produce a klib from a module that is analyzed by the K2MetadataCompiler, the
serializer needs to take just the own package fragments of the module, excluding
those of the dependencies.
2019-12-25 12:09:08 +03:00
Sergey Igushkin ed6034e449 Support generating a klib from common code with K2MetadataCompiler 2019-12-25 12:09:08 +03:00
Sergey Igushkin 28e0089259 Allow not providing IR to serialize a klib with just the frontend metadata 2019-12-25 12:09:07 +03:00
Georgy Bronnikov cea0f08049 Regenerate compiler tests 2019-12-25 12:04:04 +03:00
Dmitriy Dolovov 45d894ee6e K/N: remove unused code 2019-12-25 11:42:29 +07:00