Commit Graph

97030 Commits

Author SHA1 Message Date
Nikolay Krasko 74dd31d00a Call additional publishToMavenLocal in maven build scripts and enable info
'publish' do not publish all artifacts to maven local and maven
fails because of it as it can't find dependencies.

KTI-729
2022-12-19 14:40:52 +00:00
Mads Ager d87ed38cbf [Kotlin/Native] Avoid jni overhead when optimizing bitcode.
The phase to eliminate redundant function prologue safepoints
was written in Kotlin which meant that it was performing a lot
of jni calls. Moving the simple optimization to C code speeds
things up dramatically.

On a large project this reduces the time for this phase from
11.8 seconds to 1.4 seconds.
2022-12-19 11:13:24 +00:00
Evgeniy.Zhelenskiy 53b98503ed [IR] Support MFVC properties without backing fields
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com>

#KT-1179
2022-12-18 22:11:23 +00:00
Sergey.Shanshin 5e01669e23 Added saving SerialInfo annotations to the enum class
Resolves Kotlin/kotlinx.serialization#2121

Merge-request: KT-MR-8019
Merged-by: Sergey Shanshin <Sergey.Shanshin@jetbrains.com>
2022-12-18 19:22:16 +00:00
Ilya Chernikov 88d140527f Scripting: optimize check for allowed scripts on init 2022-12-18 16:49:41 +00:00
Vyacheslav Gerasimov 9ca24b6965 Build: Remove parcelize tests from compilerPluginTest root task 2022-12-18 13:51:23 +01:00
Vyacheslav Gerasimov bfbeb2763f Build: Run only js tests with jsCompilerTest root task 2022-12-18 13:51:23 +01:00
Mikhail Glukhikh af96c735bb K2: use PUBLICATION mode for lazy members in KtSourceElement
This commit removes performance problems during these members access
2022-12-17 21:44:58 +00:00
Igor Chevdar 0e4e53786c [K/N] Fixed a problem with built coroutine visibility
#KT-55494 Fixed
2022-12-16 18:32:43 +00:00
Igor Chevdar 0f2ebeea15 [tests] Added a test for KT-55494 2022-12-16 18:32:42 +00:00
Artem Vasilev 1e1f96f73e [LL FIR] fix more possible NPEs at lock access
Depending on the execution, some accesses to lock could cause NPE.
The best solution we've found so far is to make lock volatile, so that
reads between lock and value are consistent between threads.
It requires further work to determine if we can have one volatile field.
2022-12-16 17:56:49 +00:00
Artem Vasilev 04924dbfed [LL FIR] replace guard with ReentrantLock.holdCount
Previously, there was a guard variable that prevented recursive
locks. It can be replaced with lock.holdCount check.
2022-12-16 17:56:49 +00:00
Artem Vasilev 879f6c3432 [LL FIR] restructure lock assertion to prevent NPEs
When the other thread has already computed the value and cleared the
lock, the other thread could still enter the computeValueWithoutLock()
and see lock == null
2022-12-16 17:56:49 +00:00
Yahor Berdnikau 11bc3dbd82 Undeprecate missed kotlinOptions deprecation
^KT-54580 Fixed
2022-12-16 17:25:50 +00:00
Yahor Berdnikau 860d3fda95 Undeprecate 'kotlinOptions' DSL
'@ReplaceWith' is not that flexible in this case and proper IDE support
required for smooth migration. After such migration in IDE will be added
 - deprecation should be restored.

 ^KT-54399 Fixed
2022-12-16 17:25:49 +00:00
mcpiroman a244aaf162 KT-53957 Fix indy lambdas with extension and context receivers (#5021) 2022-12-16 17:47:58 +01:00
Sebastian Sellmair b6682d1789 [Gradle] IdeaKotlinClasspath: Use Intener implementation from kotlin-tooling-core
^KT-55475 Verification Pending
2022-12-16 16:46:16 +00:00
Sebastian Sellmair 71fac797ee [kotlin-tooling-core] Implement generic Interner
^KT-55475 Verification Pending
2022-12-16 16:46:16 +00:00
Sebastian Sellmair 84fdc5e3df [Gradle] Cleanup shared run configurations
^KT-55475 Verification Pending
2022-12-16 16:46:15 +00:00
Sebastian Sellmair ca32347c91 [Gradle] Add IdeaKotlinClasspathSerializationTest.test - empty ByteArray
^KT-55475 Verification Pending
2022-12-16 16:46:15 +00:00
Sebastian Sellmair e19d5768e2 [Gradle] Add documentation on IdeaKotlinProjectArtifactDependency.artifactsClasspath
^KT-55475 Verification Pending
2022-12-16 16:46:15 +00:00
Sebastian Sellmair aed8c323e4 [Gradle] Fix IdeSourceDependencyResolutionTest after 9f810116
^KT-55475 Verification Pending
2022-12-16 16:46:14 +00:00
Sebastian Sellmair 38f310467a [Gradle] Implement IdeaKotlinClasspath interner
This very simple interner mechanism ensures that when import runs
within the IDE process, we de-duplicate existing file instances.

This might have an effect, because during GradleProjectResolution
we could have plenty source sets that refer to the same
files.

^KT-55492 Verification Pending
2022-12-16 16:46:14 +00:00
Sebastian Sellmair e32cff3b38 [Gradle] Implement IdeMultiplatformImport using new IdeaKotlinClasspath
^KT-55492 Verification Pending
2022-12-16 16:46:13 +00:00
Sebastian Sellmair 53c5444a7a [Gradle] kgp-idea: Compatibility tests: bump version to 1.8.20-dev-4242
KT-55492
2022-12-16 16:46:13 +00:00
Sebastian Sellmair 4eb5641e2a [Gradle] Implement IdeaKotlinClasspath concept
KT-55492
2022-12-16 16:46:13 +00:00
Evgeniy.Zhelenskiy f6c63c6e4f [IR, Serialization] Support kotlinx-based (de)serialization of MFVC, nullable MFVC value assignment to nonnull variable
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com>

#KT-1179
2022-12-16 17:20:51 +01:00
Ilya Kirillov 561df74419 [kotlin] fix NPE from lockWithPCECheck when action lambda returns a nullable value 2022-12-16 17:17:13 +01:00
Shahlin Ibrahim 65f71cccc9 Fix several typos in docs of K/N runtime (#5054) 2022-12-16 19:05:08 +03:00
Svyatoslav Kuzmich 62ac77ca39 [Wasm] Add comments to .wat files 2022-12-16 13:57:59 +00:00
Alexander Shabalin 41dbbd1fc8 [K/N] More idiomatic configurations usage for CompilationDatabasePlugin ^KT-53776 2022-12-16 13:48:30 +00:00
Alexander Shabalin f2835f3534 [K/N] Use Gradle configurations for CompileToBitcode modules ^KT-53776 2022-12-16 13:48:30 +00:00
Ivan Kochurkin 584280bdd4 [FIR] Use lazy PropertyInitializationInfoData in FirPropertyInitializationChecker 2022-12-16 12:21:13 +00:00
Ivan Kochurkin 6aca5e3037 [FIR] Fast check of changed in CfgTraverser 2022-12-16 12:21:13 +00:00
Mikhail Glukhikh 03afc1f2d8 K2: don't create so large arrays in each CFGNode 2022-12-16 12:06:19 +00:00
Mikhail Glukhikh 0ecd9000cd Fir2IrClassifierStorage: drop unnecessary signature manipulations 2022-12-16 11:37:03 +00:00
Mikhail Glukhikh 8580461b5b FIR2IR: remove redundant calls of preCacheBuiltinClassMembers
#KT-55421 Fixed
2022-12-16 11:37:02 +00:00
Yahor Berdnikau 189ef3425f Add test to check kaptGenerateStub and KotlinCompiler have same module-name
^KT-55334
2022-12-16 09:27:40 +00:00
Takumi Maeomote c4f83adc2a Add sample for Map.asSequence (#5055) 2022-12-15 19:58:38 +03:00
Anna Kozlova a529f8510d [LL] ensure FirConstExpression's annotations are not lost (KTIJ-23968) 2022-12-15 14:31:48 +00:00
Mikhail Glukhikh cc53671395 K2: optimize out empty maps in CFG nodes 2022-12-15 13:20:26 +00:00
Dmitriy Dolovov ab4603c9a3 [K/N] Mute LLDB tests if any other than DEBUG opt mode is used 2022-12-15 13:11:57 +00:00
Sebastian Sellmair c802fd30c0 [Gradle] IdeJvmAndAndroidDependencyResolutionTest: Add assertion on jvmAndAndroidTest
^KT-55475 Verification Pending
2022-12-15 13:01:42 +00:00
Sebastian Sellmair 9f810116d3 [Gradle] Fine-tune Jvm and Android ide dependency resolution
The binary dependency resolver shall only run for remote
artifacts. Project to project dependencies shall be handled
by the IdeJvmAndAndroidSourceDependencyResolver

^KT-55475 Verification Pending
2022-12-15 13:01:42 +00:00
Alexander Udalov 5dd1777624 IR: minor, deprecate nameForIrSerialization, use name instead 2022-12-15 12:31:11 +00:00
Dmitriy Novozhilov 34be0f05b2 [FIR] Add utility for checking if FirReference is one of error reference
Also simplify relevant code in checkers
2022-12-15 12:12:21 +00:00
Dmitriy Novozhilov 7334694fd9 [FIR] Remove some rare used utilities 2022-12-15 12:12:20 +00:00
Dmitriy Novozhilov b53c4a6353 [FIR] Introduce some typed FirReference.toResolvedXXXSymbol utilities 2022-12-15 12:12:20 +00:00
Dmitriy Novozhilov cffc32ec76 [FIR] Fir utils for FirReference in package org.jetbrains.kotlin.fir.references 2022-12-15 12:12:20 +00:00
Dmitriy Novozhilov b174bb8844 [FIR] Update testdata after introducing FirResolvedErrorReference 2022-12-15 12:12:19 +00:00