Commit Graph

87184 Commits

Author SHA1 Message Date
Ilya Gorbunov 11314a5c4e Rename enabling old behavior property and make it cached in a field
Mention the property name in the note about conversion to set.

#KT-45438
2021-09-02 06:06:39 +03:00
Abduqodiri Qurbonzoda 94b371af5b Remove brittle ‘contains’ optimization in minus/removeAll/retainAll #KT-45438 2021-09-02 05:58:19 +03:00
Ilya Gorbunov fbc43cbebe Duration.toComponents: change the highest component type to Long 2021-09-02 02:44:16 +00:00
Abduqodiri Qurbonzoda d306c0e9ac Change JS CharSequence.isBlank() via checking all chars with isWhitespace 2021-09-02 01:38:04 +00:00
Abduqodiri Qurbonzoda 0faa83bacb Deprecate JS Array/PrimitiveArray.sort(comparison) functions 2021-09-02 01:38:03 +00:00
Abduqodiri Qurbonzoda a3eaa3e0f9 Change JS AbstractMutableCollection.toJSON() visibility modifier from open to protected 2021-09-02 01:38:03 +00:00
Abduqodiri Qurbonzoda a90117faa2 Change JS HashSet.createEntrySet() visibility modifier from protected to internal 2021-09-02 01:38:03 +00:00
Abduqodiri Qurbonzoda 921af8e98c Deprecate JS String match, matches and concat functions 2021-09-02 01:38:02 +00:00
Abduqodiri Qurbonzoda 3fefed5131 Remove deprecated JS Regex_0 and Regex_1 constructor functions 2021-09-02 01:38:02 +00:00
Abduqodiri Qurbonzoda 1008a88b43 Remove equals and hashCode implementation of JS AbstractMutableMap.values 2021-09-02 01:38:02 +00:00
Abduqodiri Qurbonzoda 407feb656e Make JS Regex.replace not inline #KT-27738 2021-09-02 01:38:01 +00:00
Abduqodiri Qurbonzoda 91aa956f34 Introduce JVM readln() and readlnOrNull() top-level functions #KT-48456 2021-09-02 01:00:34 +00:00
Ilya Gorbunov 0d58bb14b2 Duration: minor doc clarifications 2021-09-01 16:30:03 +00:00
Denis.Zharkov c9a93eb1b5 Get rid of hard referencing to LanguageLevel entries
It should make easier to use different intellij-core versions
Some of them doesn't have JDK_15_PREVIEW while the other don't have
JDK_17, while we're ok with both of them since they support records and
sealed interfaces
2021-09-01 18:39:00 +03:00
Sergey Igushkin 8b37b5f259 Fix localToProject=public not set for K/N configurations, KT-48370 2021-09-01 14:44:33 +00:00
Alexander Udalov 0213c25c9b Remove obsolete check for language version and IR backends 2021-09-01 16:30:41 +02:00
Alexander Udalov a6336ec134 Report deprecation warning when -Xuse-old-backend is specified
#KT-48532
2021-09-01 16:30:19 +02:00
Georgy Bronnikov 778b04ae34 JVM_IR: rename -Xparallel-backend-threads to -Xbackend-threads 2021-09-01 17:28:23 +03:00
Georgy Bronnikov 22a6dc0320 JVM_IR: lock IrLazySymbolTable ops 2021-09-01 17:28:21 +03:00
Georgy Bronnikov a4cebeea36 JVM_IR: use IrBuiltIns instead of descriptor in IrTypeMapper 2021-09-01 17:28:18 +03:00
Georgy Bronnikov 2f697e9195 JVM_IR: avoid recursive constructor calls in ClassCodegen 2021-09-01 17:28:15 +03:00
Georgy Bronnikov 570e20696c IR: use synchronized access when creating initial signature stub 2021-09-01 17:28:11 +03:00
Mikhael Bogdanov cb7a59ea0e Small optimization 2021-09-01 14:03:57 +00:00
Mikhael Bogdanov f9b5414453 Calculate string encoding size more precisely 2021-09-01 14:03:56 +00:00
Mikhael Bogdanov 19474ee30f Support large strings in indy-with-constants concatenation
#KT-47917 Fixed
2021-09-01 14:03:56 +00:00
Mikhael Bogdanov d2d3708827 Refactor a bit StringConcatGenerator class 2021-09-01 14:03:55 +00:00
Ilya Goncharov ecefda58fb [JS IR] Add separate key to enable extensions in external interfaces 2021-09-01 13:47:12 +00:00
Svyatoslav Scherbina 751914ca4d [Gradle, Native] Make useEmbeddableCompilerJar input of compile tasks
to make the tasks not up-to-date when switching the flag
2021-09-01 13:43:29 +00:00
Svyatoslav Scherbina e65f2e465e [Gradle] Fix switching in-process to Native embeddable compiler jar
Compiler runner used incorrect cache key for isolated classloader:
it didn't take the actually used compiler jar into account,
only the K/N home dir.

Fix this by using the entire classpath as a key.
2021-09-01 13:43:28 +00:00
Svyatoslav Scherbina 1c052ad448 [Gradle, Native] When running tool in-process, log the actual classpath
When running tool in-process, log the actual classpath extracted from
the classloader, not the one that was intended.
This helps to detect the cases when these two don't match.
2021-09-01 13:43:28 +00:00
Svyatoslav Scherbina 71af22dba0 [Gradle] Support Native embeddable compiler jar in subplugins
Apply generic (backend-agnostic) compiler plugin artifact instead of
Native-specific one when Native embeddable compiler jar is used
(with `kotlin.native.useEmbeddableCompilerJar=true` project property).
2021-09-01 13:43:28 +00:00
Svyatoslav Scherbina 0b4dfd58fc [Gradle] Don't apply scripting gradle subplugin to Native compilations
It doesn't support Native anyway, but applying it blocks using
the generic compiler plugin artifact for Native.
2021-09-01 13:43:27 +00:00
Svyatoslav Scherbina 7c52077e40 [Gradle] Rename kotlin.native.[shaded -> useEmbeddableCompilerJar]
Also move it to PropertiesProvider.
2021-09-01 13:43:27 +00:00
Svyatoslav Scherbina f049c4a630 [Gradle, Native, IT] Allow checking compiler classpath 2021-09-01 13:43:26 +00:00
Svyatoslav Scherbina 0fd4884149 [Gradle] Partially revert "enable to work with embedded k/n compiler"
This partially reverts commit 2baf344f5f,
removing support for K/N embeddable compiler jar from subplugins.
More migration-friendly implementation is to be added instead.
2021-09-01 13:43:26 +00:00
Dmitriy Novozhilov e766339c81 Add config for compiler test helper plugin
This config stores list of directories with testdata, so test plugin
  helper will work for .kt files in them
2021-09-01 16:14:22 +03:00
sebastian.sellmair 0553f0f8de Bump Kotlin/Native version to 1.6.20-dev-320
Bump done to anticipate new 'kotlinx.cinterop.UnsafeNumber' annotation
2021-09-01 12:40:30 +00:00
Alexander Udalov 473ed2e410 Fix JVM target and language version info in CLI and Gradle 2021-09-01 14:32:53 +02:00
Leonid Startsev 1932546a90 Support instantiation of annotations in JS
#KT-47700 Fixed
2021-09-01 11:13:55 +00:00
Hung Nguyen a342c81a9f KT-45777: Take snapshots and compute changes for Java classes
Create `JavaClassDescriptor`s for Java classes
Ignore anonymous and synthetic classes
as they can't impact recompilation.
Clean up handling of local and anonymous classes

Bug: KT-45777
Test: New JavaClassDescriptorCreatorTest
2021-09-01 13:29:17 +03:00
Pavel Kunyavskiy 98e4d67900 [K/N] Add opt-in flag to use debug info from native libs
Unfortunately, llvm removes full debug info from module on any error.
Different version debug info in bitcode is not always compatible, also
it adds this debug info additional requirements on generated debug info.

So this feature is quite unstable and shouldn't be enabled by default,
although it has almost no downsides when worked correctly.
2021-09-01 08:35:21 +00:00
Pavel Kunyavskiy 18f1610442 [K/N] Enable debug info in runtime build 2021-09-01 08:35:20 +00:00
Pavel Kunyavskiy 9f6df5f54b [K/N] Disable debug info for old-style global initializers 2021-09-01 08:35:20 +00:00
Pavel Kunyavskiy 5529713ebe [K/N] Fix debug info in lazy initializers 2021-09-01 08:35:20 +00:00
Pavel Kunyavskiy 7f988bd442 [K/N] Refactor function generation to make it more debug-info friendly 2021-09-01 08:35:19 +00:00
Dmitriy Dolovov b506704a2b [Native][tests] Fix failing 'runtime_basic_init' test
This test should have it's own test data file.

Previously it used 'hello3.kt' test data file shared with 'hello3' test which uses golden data. This caused a conflict.
2021-09-01 10:14:17 +03:00
Dmitriy Dolovov ab5314059d [Native][tests] Fix conditions for @InputFile properties 2021-09-01 10:14:12 +03:00
Dmitriy Dolovov bf82db5ee2 [Native][tests] Move input data outside of Gradle build file 2021-09-01 10:14:06 +03:00
Dmitriy Dolovov 1a863106e6 [Native][tests] Move golden data outside of Gradle build file 2021-09-01 10:14:01 +03:00
Dmitriy Dolovov c2e2d3a43e [Native][tests] workers5 - remove redundant test annotations 2021-09-01 10:13:55 +03:00