Ilya Muradyan
017f640f26
Allow skipping extensions resolution for implicit receivers
2020-06-19 13:03:23 +02:00
Ilya Chernikov
8fb41e4562
Process compiler plugins and options in scripting compiler
...
#KT-37766 fixed
2020-06-16 17:11:33 +02:00
Vyacheslav Gerasimov
4aa3040550
Build: Use runtimeOnly instead of deprecated runtime
...
maven-publish plugin uses `runtimeOnly` for runtime scope instead of
`runtime`
2020-06-14 20:31:26 +03:00
Nikolay Krasko
7190b3400f
202: Fix compilation in DefaultDiagnosticReporter
2020-06-10 12:39:29 +03:00
Nikita Bobko
eb67c4519d
202: Fix compilation because of CoreJarVirtualFile
...
CoreJarVirtualFile is now package private. And seems that
most of VirtualFiles return system independent path
2020-06-10 12:39:28 +03:00
simon.ogorodnik
cd9273028b
Profiling and repeat support for JVM CLI Compiler
2020-06-08 20:40:27 +03:00
Ilya Muradyan
489290263f
Add info about the end of range in scripting REPL compiler messages
2020-06-05 21:58:28 +02:00
Ilya Chernikov
5e33612238
Extract interface from CompilerMessageLocation to ease extension
...
The CompilerMessageLocation is an implicit part of the binary daemon
protocol so changing it breaks compatibility with older daemons.
This change allows to extend location for non-daemon uses without
breaking the binary protocol.
2020-06-05 21:58:27 +02:00
Vladimir Ilmov
3634cbe3cb
(LightClasses) resolve of annotations fast-path
2020-06-05 13:27:10 +02:00
Mikhail Glukhikh
9ea69b4b3c
Introduce first version of FirJvmKotlinMangler & its parts
2020-06-02 18:47:50 +03:00
Leonid Startsev
7c8c5b057f
Extensible mechanism for plugin metadata during descriptor serialization
...
A mechanism that allows kotlinx.serialization plugin to preserve the
correct (program) order of properties after serializing/deserializing
descriptors to kotlin metadata, which is needed for correct and stable
json serialization of class hierarchies in incremental/multi-module scenario.
It uses protobuf extensions.
2020-06-01 17:48:16 +03:00
Nikita Bobko
aa5a5c954f
Refactoring: change "// BUNCH: xxx" format
...
It wasn't obvious how to use this comment properly.
Now it should be clear
2020-05-29 20:31:12 +03:00
Dmitriy Novozhilov
b4ce736814
[FIR] Move registration components out of initializers of FirSession
2020-05-29 10:24:26 +03:00
Dmitriy Novozhilov
41cdb61ef3
[FIR] Move all symbol providers to separate package
2020-05-29 10:20:57 +03:00
Mikhail Glukhikh
048e7a7075
[FIR] Add forgotten FirJvmBackendClassResolver to CLI
2020-05-28 22:18:05 +03:00
Roman Artemev
e6c855111e
[KLIB] Add flag to select between per-file and monolithic layout
2020-05-26 14:41:49 +03:00
Roman Artemev
bc32688497
[PLUGIN API] Drop PureIrGenerationExtension
2020-05-26 14:38:18 +03:00
Dmitriy Novozhilov
d49c198a7f
[FIR] Correctly initialize extensions in all sessions
2020-05-24 18:04:47 +03:00
Dmitriy Novozhilov
8d686226c7
[FIR] Introduce FirResolveProcessors
2020-05-24 18:04:47 +03:00
Dmitriy Novozhilov
594a854b4e
[FIR] Reimplement FirExtensionService
...
- Get rid of old FirExtensionsService
- Implement new FirExtensionService
- Remove duplicating code in FirExtensionRegistrar
2020-05-24 18:04:45 +03:00
Dmitriy Novozhilov
0b00015424
[FIR] Deprecate FirExtensionsService
2020-05-24 18:04:44 +03:00
Kevin Most
4f26ac9a04
Fix "Koltin" typos throughout codebase ( #3383 )
...
* Fix "Koltin" typos throughout codebase
* Update K2MetadataKlibSerializer.kt
2020-05-20 15:12:32 +03:00
Dmitriy Novozhilov
24c8a659ee
[FIR] Add FirSession as parameter for FirTotalResolveTransformer
2020-05-20 10:40:55 +03:00
Ilya Matveev
839e4ecff2
Allow passing a MessageRenderer to CLITool.mainNoExit
...
Earlier a system property was used to configure a message renderer
for the K/N compiler. The fix for KT-37550 requires getting rid of
using properties when the compiler is started in a Gradle process.
This patch allows us to specify a correct message renderer at
the K/N side depending on entry point used to run the compiler.
Issue #KT-37550
2020-05-19 18:57:41 +07:00
Mikhail Glukhikh
db7a7f6cd3
[FIR2IR] Move facade classes generation to the main converter
2020-05-18 11:48:33 +03:00
Ilya Chernikov
fb6ef38370
Revert "Add info about the end of range in scripting REPL compiler messages"
...
This reverts commit af251caf , because it breaks daemon/client
compatibility, which we'd like to keep as much as possible
2020-05-15 21:15:48 +02:00
Alexander Udalov
012ffa2993
Support new scheme of compilation of OptionalExpectation annotations
...
Instead of generating these annotation classes as package-private on
JVM, serialize their metadata to the .kotlin_module file, and load it
when compiling dependent multiplatform modules.
The problem with generating them as package-private was that
kotlin-stdlib for JVM would end up declaring symbols from other
platforms, which would include some annotations from package
kotlin.native. But using that package is discouraged by some tools
because it has a Java keyword in its name. In particular, jlink refused
to work with such artifact altogether (KT-21266).
#KT-38652 Fixed
2020-05-12 19:28:57 +02:00
Igor Yakovlev
62c24c95b5
Add support for UltraLightScripts
2020-05-12 17:04:15 +03:00
Mikhail Glukhikh
1dd50ba1f2
[FIR] Use JvmGeneratorExtensions also from CLI
2020-05-08 17:57:55 +03:00
Dmitriy Novozhilov
4eb9eb0537
[FIR] Rename FirExtensionPoint to FirExtension
...
Also rename `FirExtensionPointService` to `FirExtensionsService`
2020-05-08 15:10:02 +03:00
Dmitriy Novozhilov
a1e719a127
[FIR] Register extensions in CLI
2020-05-08 15:10:01 +03:00
Dmitriy Novozhilov
cb0a7a5bf7
[FIR] Rename FirExtensionRegistrarExtension to FirExtensionRegistrar
2020-05-08 15:09:57 +03:00
Dmitriy Novozhilov
a37975ab21
[FIR] Add compiler extension for plugin registration
2020-05-08 15:09:56 +03:00
Alexander Udalov
a0400f59c2
Add -Xskip-prerelease-check compiler argument
...
#KT-38070 Fixed
2020-05-07 13:24:26 +02:00
Alexander Udalov
7a369b3a6a
Mark PureIrGenerationExtension as deprecated to prevent more usages
...
The IR plugin extension mechanism is being reworked and in the new
scheme, this new extension point won't be necessary.
2020-05-06 22:51:32 +02:00
Steven Schäfer
7cad2be329
IR: Add an extension point after IR construction
...
The existing IrGenerationExtension is in the middle of IR construction
and basically requires plugins to work with the (deprecated) descriptors.
Since there are plans to change the IR extension point it makes sense to
introduce a temporary work-around to allow pure IR plugins to be
developed now, which could be ported to a more permanent API later.
2020-05-06 22:51:12 +02:00
Mikhail Bogdanov
4f7599076c
Postpone JvmDefault deprecation. Revert "Deprecate @JvmDefault"
...
This reverts commit c11f3868
2020-05-04 10:02:16 +02:00
Alexander Udalov
94346e8a03
Add JVM target bytecode version 14
...
#KT-38413 Fixed
2020-04-28 13:00:23 +02:00
Mikhail Glukhikh
34ae35b2aa
Move FirJvmClassCodegen inside fir:fir2ir:jvm-backend #KT-38156 Fixed
...
This removes dependency of IR JVM backend from FIR
2020-04-28 07:35:13 +03:00
Sergey Igushkin
67f4b7e2b0
Add a dependency from all klib-originated modules to the main module
...
This is required, for instance, to properly resolve supertypes across
the modules.
Issue #KT-37832 Fixed
2020-04-24 12:54:36 +03:00
Ilya Matveev
e4f4b4eef0
[JS IR] Support setting custom module name (= unique name)
...
Required for #KT-36721.
2020-04-22 10:50:26 +07:00
Vladimir Dolzhenko
86a02c07f6
Fix KotlinNativeABICompatibilityChecker.getLibrariesToNotifyAbout freeze
...
Get rid of O(n^2) in copyProperties
make ModuleProductionSourceInfo.stableName lazy
add checkCanceled in loops in IdeaModelInfosCache
#KT-38318 Fixed
2020-04-18 11:36:21 +02:00
Ilya Muradyan
d2fec96f38
Add new REPL API JVM implementation
2020-04-16 21:16:08 +02:00
Ilya Muradyan
af251cafa4
Add info about the end of range in scripting REPL compiler messages
2020-04-16 21:16:08 +02:00
Ilmir Usmanov
5ab55fbb57
Support -J<jvm-param> and "-Dname=value" in windows runner script
...
Otherwise, -J-ea has no effect on windows, which breaks assert tests.
Wrap parameters with delimeters in quotes.
#KT-30211 Fixed
2020-04-16 21:11:50 +02:00
Dmitry Petrov
ac5411c32e
Command-line option disabling KotlinNothingValueException generation
2020-04-16 19:38:30 +03:00
Dmitriy Dolovov
757d77600a
HMPP: Evaluate exact TargetPlatform for each K/N KLIB library
2020-04-14 21:07:38 +07:00
Dmitriy Dolovov
fee6a752e0
HMPP: Fix serialization of TargetPlatform in Kotlin facet
2020-04-14 21:07:22 +07:00
Dmitriy Dolovov
8d2e999776
HMPP: Parameterize NativePlatform with KonanTarget
2020-04-14 21:06:48 +07:00
Ilya Chernikov
195a90d333
Cleanup warnings in scripting code
2020-04-13 13:49:34 +02:00