Commit Graph

99053 Commits

Author SHA1 Message Date
Dmitriy Novozhilov cbc8b74e89 [FE 1.0] Don't check star projections in PrivateInlineFunctionsReturningAnonymousObjectsChecker
^KT-56692 Fixed
2023-02-28 09:17:39 +00:00
Dmitriy Novozhilov 2a022ca9e0 [FIR] Properly propagate deadness from try main block throw finally block
^KT-56476 Fixed
2023-02-28 09:17:39 +00:00
Ilya Chernikov cecf22e035 Fix application environment keepalive handling
The previous changes to the disposer registration changes introduced a
weird problem exposed in the Gradle (test?) environment, that caused
a performance regression - it seems that keep alive system property
in that setting was cleared at the time the disposer was called, causing
app env disposal when keeping it alive was expected.
This fix captures property value at the moment of disposer registration,
making it similar in that respect to the previous variant and avoiding
the performance degradation.
#KT-56992 fixed
2023-02-28 08:08:09 +00:00
Alexander.Likhachev 1af19e6903 [Gradle] Configure process resources task names from Java source sets
#KT-56645 Fixed
2023-02-27 22:46:28 +00:00
Alexander.Likhachev 11049c1ab6 [Gradle] Add test for KT-56645 2023-02-27 22:46:28 +00:00
Ilya Gorbunov d2dc23d8bb Introduce Path.createParentDirectories function #KT-53263 2023-02-27 20:36:21 +00:00
Artem Kobzar cf10bb8871 [K/JS] Fix problem with deployment of artifacts (temporary solution before the KT-MR-9000 will be merged and bootstrapped) 2023-02-27 19:52:17 +00:00
Artem Daugel-Dauge 5b841a3af6 [Gradle] Fix Gradle Native IT on x86 macos
This includes a workaround for a cocoapods bug which was triggered by deprecation
of AFNetworking and a fix of asserting on OS-specific command invocation.
2023-02-27 16:40:42 +00:00
Nikolay Lunyak 72823657c9 [FIR] Assume SafeCallsAreAlwaysNullable is always on 2023-02-27 15:00:30 +00:00
Nikolay Lunyak be5850112a [FIR] KT-56723: Ensure safe access over non-expressions is always Unit
^KT-56723 Fixed
2023-02-27 15:00:30 +00:00
Florian Kistner a8370ea994 Update backend-native-for-ide.pro
* Fix `BinaryOptionWithValue` missing from backend-native-for-ide
2023-02-27 14:34:41 +00:00
wrongwrong b039f2e574 Fix ArrayStoreException from InlineClassAwareCaller.call
#KT-56650 Fixed
2023-02-27 14:29:51 +01:00
Ilya Muradyan 10e9ef349f Scripts: fix NPE on creating KtFileScriptSource from PSI copy 2023-02-27 13:27:48 +00:00
Mikhail Glukhikh f7036aa79c FIR2IR: don't generate default parameters for delegated members
#KT-55465 Fixed
2023-02-27 12:58:27 +00:00
Mikhail Glukhikh b68a26865a FIR2IR: add test for KT-55465 2023-02-27 12:58:26 +00:00
Alexander Korepanov 4cda89db9e [JS IR] Fix klib fingerprint format
^KT-56961 Fixed
2023-02-27 12:42:23 +00:00
Pavel Punegov e82efa6a7c [K/N][perf] Update gradle wrapper to 7.6 in Performance projects 2023-02-27 10:48:28 +00:00
Pavel Punegov 79b9070c33 [K/N][build] Set name to the build-tools 2023-02-27 10:48:28 +00:00
Pavel Punegov 7eb552bb93 [K/N][test] Fix Xcode test in kotlin-native-shared 2023-02-27 10:48:28 +00:00
Pavel Punegov b09d2f248a [K/N][build] Add gradle settings to build-tools 2023-02-27 10:48:27 +00:00
Pavel Punegov c49128aa99 [K/N][perf] Performance project build
* Add build-tools plugin
* Cleanup code
* Add missing methods after the move
2023-02-27 10:48:27 +00:00
Pavel Punegov 71eaa43d95 [K/N][build] Move Native plugin to build-tools
This is K/N only plugin that shouldn't be
in the buildSrc of the whole Kotlin project
2023-02-27 10:48:27 +00:00
Pavel Punegov 8938d5cc79 [K/N][build] Make kotlin-native shared be included subproject 2023-02-27 10:48:26 +00:00
Pavel Punegov 395e3e0f81 [K/N][build] Composite build with build.tools-conventions plugin
Adds convention plugin instead of sources inclusion
inside the buildSrc, effectively reducing the amount
of the code to be compiled in buildSrc.

Merge-request: KT-MR-8898
2023-02-27 10:48:26 +00:00
Pavel Punegov 45637c1b94 [K/N][build] Make build-tools to be able to build as a project
* Replace and fix project dependencies in build-tools
* Add Gradle annotations for tasks
2023-02-27 10:48:26 +00:00
Pavel Punegov dcc5c7e435 [K/N][build] Fix shared project to use projects directly 2023-02-27 10:48:25 +00:00
Pavel Punegov 931f7192a0 [K/N][build] Build scripts cleanup
* Removes unused dependencies
* Cleanup code
* Remove benchmark related sources
2023-02-27 10:48:25 +00:00
Pavel Punegov 71f2c3cf9b [K/N][perf] Move benchmarks related code to performance subdir 2023-02-27 10:48:25 +00:00
Ilya Kirillov 0089517b25 [Analysis API FIR] optimize KtFirCompletionCandidateChecker.checkExtensionFitsCandidate
We do not need running IMPLICIT_TYPES_BODY_RESOLVE to check candidate applicability.

Additional resolve to IMPLICIT_TYPES_BODY_RESOLVE takes about 5% of completion time

^KTIJ-24640
2023-02-27 09:40:41 +00:00
Egor Kulikov 163017fcaf [FIR] Do not dereference delegate in lazy mode
Tenth step for ^KT-52615
2023-02-24 19:42:11 +00:00
Jiaxiang Chen 7ce2f64c18 AA: apply java type enhancement to declaredMemberScope.
* added getDeclaredMemberScope to JavaScopeProvider.
2023-02-24 19:57:10 +01:00
Nikita Bobko f620eb920f Drop redundant suppress
Review: https://jetbrains.team/p/kt/reviews/8933

The suppress was needed in https://jetbrains.team/p/kt/reviews/8308

But it's not needed anymore
2023-02-24 17:05:33 +00:00
Ilya Kirillov ce3305300b [FIR] temporary mute blackbox test which fails on runtime
It was failing before, but it was hidden as the actual test was not run due to the bug in the test pipeline.

In the case of any WrappedException.FromHandler were thrown, no blackbox tests were run.

Tracking issue: ^KT-56861
2023-02-24 16:11:45 +01:00
Ilya Kirillov dec9bdefb6 [FIR] continue executing the test pipeline in a case of FirLazyResolveContractViolationException is thrown
Previously in the black-box test, no actual tests were run in a case FirLazyResolveContractViolationException were thrown
2023-02-24 16:10:58 +01:00
Ilya Kirillov d2f3dce8c9 [FIR] do not resolve to status inside FirNamedFunctionSymbol.isLocal
1. this optimizes the isLocal call
2. this allows to check isLocal without resolving the status from the `FirNamedFunctionSymbol.canBeDeprecated`
2023-02-24 16:10:58 +01:00
Ilya Kirillov c366a7a9b0 [FIR] optimize FirSymbol.resolvedContextReceivers 2023-02-24 16:10:58 +01:00
Ilya Kirillov 69c024a5ce [FIR] optimize deprecation calculation for symbols
All symbols except member callables can be deprecated if they have non-empty annotation list

^KT-56800 fixed
2023-02-24 16:10:57 +01:00
Dmitriy Novozhilov 0bbc61f459 [FIR] Unwrap flexible types in when exhaustiveness checker
^KT-56942 Fixed
2023-02-24 14:58:18 +00:00
Ilmir Usmanov 01c670194a FIR2IR: Do not add fake override if the member is overridden
#KT-56398
2023-02-24 14:24:12 +00:00
Alexander Udalov 5f4a560899 Fix binary compatibility with AS 222/223 in PhaseConfig
(cherry picked from commit a419120cbd6050417945a0e9f411213debd15b77)
2023-02-24 14:23:52 +00:00
Svyatoslav Kuzmich 4be2f53b47 [Wasm] Add @JsFun diagnostics (KT-56944)
JsFun target should be top-level external function
2023-02-24 11:35:16 +00:00
Svyatoslav Kuzmich 1da96213ca [Wasm] Add @WasmImport diagnostics (KT-56943)
WasmImport annotated functions:
* Restricted to top-level external functions
* Only supports primitive numbers, booleans and Unit
  (as return type only) in its signature
* Can't have default parameter values
* Can't have vararg parameters
2023-02-24 11:35:16 +00:00
Svyatoslav Kuzmich f79607d32d [Wasm] Add @JsExport diagnostics test
@JsExport is only allowed on top-level functions in K/Wasm

Restrictions for nested function are handled by reusing K/JS diagnostics
Restrictions for classes and properties are handled by specifying
 annotation target in stdlib
2023-02-24 11:35:16 +00:00
Svyatoslav Kuzmich b4fcfd6719 [Wasm] Add external declaration diagnostics (KT-56940)
Prohibit:
- external enum class
- external tailrec fun
- external suspend fun
- external lateinit var

Add tests for other external diagnostics inherited from K/JS
2023-02-24 11:35:15 +00:00
Svyatoslav Kuzmich 83ba1ac0f7 [Wasm] Diagnostic test: dynamic type is unsupported
Validates the fix for KT-56711
2023-02-24 11:35:15 +00:00
Svyatoslav Kuzmich c9e71985da [Wasm] Stop dumping declarations in diagnostic tests
These tests are meant to check diagnostics, but
having to update .txt dumps adds some friction to development process.
2023-02-24 11:35:14 +00:00
Dmitriy Novozhilov 8ff330079e [Assign plugin] Remove experimentality warning
The plugin is still experimental, see
  https://kotlinlang.org/docs/components-stability.html

^KT-56925 Fixed
2023-02-24 11:19:45 +00:00
Dmitriy Novozhilov da581f38e1 [Test] Require specifying parser for FIR test. Unify names for FIR tests
Now all tests with `Fir` in name are named accordingly to parser which
  is used in them -- `FirPsi` or `FirLightTree`. This is needed to keep
  consistency between different types of tests, because there is no
  single default in parser mode between different scenarios of using FIR
2023-02-24 11:15:26 +00:00
Dmitrii Gridin 7e36a88b82 [LL FIR] FirDesignation: add workaround for LLFirLibraryOrLibrarySourceResolvableModuleSession
^KTIJ-24326
2023-02-24 11:09:43 +00:00
Yahor Berdnikau 473a2dc87c Fix KaptGenerateStubsTask freeCompilerArgs duplication
Now this task uses configured freeCompilerArgs both from itself and from
 linked KotlinCompile task. When these tasks are configured with the
 same value this leads to freeCompilerArgs duplication.

Added workaround is to use linked KotlinCompile freeCompilerArgs as
convention value for KaptGenerateStubsTask. Proper fix will be done via
KT-54468.

^KT-55452 Fixed
^KT-55565 Fixed
2023-02-24 09:20:23 +00:00