Dmitry Savvinov
d5fbe59a3e
[Platform API] Introduce fundamental abstraction of Platform
...
This is a large commit, which introduces general API for working with
abstraction of Platform.
- Add new abstraction to 'core' - SimplePlatform - which represents
exactly one platform
- Clients are strongly prohibited to create instances of SimplePlatform
by hand, instead, corresponding *Platforms abstraction should be used
(e.g. JvmPlatforms, JsPlatforms, KonanPlatforms)
- Move TargetPlatform to 'core', it represents now a collection of
SimplePlatforms
- Clients are strongly encouraged to use TargetPlatform
(not SimplePlatform) in API, to enforce checks for multiplatform
- Provide a helper-extensions to work with TargetPlatform
(in particular, for getting a specific component platform)
- Remove MultiTargetPlatform in favour of TargetPlatform
- Notably, this commit leaves another widely used duplicated abstraction,
namely, IdePlatform. For the sake sanity, removal of IdePlatform is
extracted in the separate commit.
2019-05-28 13:08:07 +03:00
Ilya Chernikov
e7c99cd494
Fix scripting-compiler tests, add them to the global scriptingTest task
2019-05-25 10:10:34 +02:00
Ilya Chernikov
46915df56f
Implement "legacy" REPL wrappers on top of the "new" scripting infrastructure
2019-05-25 10:10:29 +02:00
Ilya Chernikov
89006f16cd
Prepare scripting infrastructure for REPL:
...
- refactor script compiler to simplify extending it for repl
- add repl snippet compilation functions to the new scripting compiler
- extract util functions into appropriate files
- extract repl part into separate class
- extract bridge definition and related definitions into separate file
2019-05-25 10:10:28 +02:00
Ilya Chernikov
a4c049d26e
Replace message collector with reporting lambda
...
to simplify usages and slightly reduce dependencies
2019-05-25 10:10:28 +02:00
Ilya Chernikov
61c1312f1a
Add another method for fetching classpath from classloader, refactor
2019-05-25 10:10:27 +02:00
Alexander Udalov
55f4c067e2
Fix compilation of uast-kotlin-idea for 182
...
Caused by 4e15b95d17
2019-05-24 18:06:57 +02:00
Alexander Udalov
0fb33b82ff
Fix compilation of uast-kotlin for 182
...
Caused by 4e15b95d17
2019-05-24 17:02:28 +02:00
Alexander Udalov
4e15b95d17
Minor, inline JvmAbi.DEFAULT_MODULE_NAME
2019-05-24 14:42:25 +02:00
Leonid Startsev
b5c4f3ecc8
Coerce property value from correct type after retrieving it
...
#KT-25497 fixed
Fixes https://github.com/Kotlin/kotlinx.serialization/issues/434
2019-05-23 14:21:09 +03:00
Leonid Startsev
9ce1f843e3
Remove non-type annotations from type serializer analysis
...
Fixes https://github.com/Kotlin/kotlinx.serialization/issues/450
2019-05-23 14:21:09 +03:00
Ivan Gavrilovic
72fdc648ff
If incremental KAPT is disabled, do not analyze classpath
...
When incremental apt mode in KAPT is disabled, do not analyze
classpath to determine the type of the annotation processors. Instead,
just mark them all as non-incremental.
2019-05-23 19:09:28 +09:00
Ivan Gavrilovic
b609fe529c
Handle return result of dir creation/deletion in kapt
...
#KT-31322
2019-05-23 19:09:27 +09:00
Ivan Gavrilovic
f60bfc34c0
Remove generated sources and classes for full KAPT build
...
When running incremental annotation processing in KAPT,
even if incremental flag is enabled, and full rebuild should
be performed (e.g. in presence of dynamic non-incremental APs),
make sure generated sources and classes are removed.
#KT-31322 fixed
2019-05-23 19:09:27 +09:00
Yan Zhulanow
a0778ad703
Revert "Kapt: Always use raw types for annotation parameter types (KT-30346)"
...
This reverts commit 66754e62
2019-05-23 19:09:27 +09:00
Vadim Brilyantov
d5be5bd96e
Fix obsolete compiler classpath in SourceSectionsTest
2019-05-20 14:23:34 +03:00
Vadim Brilyantov
01a05a5495
Move daemon jar from compiler
2019-05-17 15:51:52 +03:00
Alexander Udalov
b602c08773
Remove javaFilesDir parameter of CodegenTestCase.doMultiFileTest
...
Create TestFile instances for .java sources similarly to .kt sources,
and write them to a temporary directory via writeJavaFiles in each test
where this is needed
2019-05-15 13:25:14 +02:00
Alexander Udalov
7fdb9c990e
Reformat and cleanup most JVM codegen test classes
2019-05-15 13:25:14 +02:00
Andrey Uskov
52315106e8
Create source sets for generated by kapt sources during import
...
#KT-30739 Fixed
2019-05-13 18:43:11 +03:00
Natalia Selezneva
ba7d66eb4b
Fix 'Invalid file' Exception during script definition search (EA-125840)
...
EA-125840 - assert: FileManagerImpl.findFile
2019-05-08 15:17:12 +03:00
Mikhail Zarechenskiy
97a6b3436c
Add diagnostics from NI for SAM with receiver tests
2019-05-06 13:59:30 +03:00
Leonid Startsev
0ecf20bd62
Revert back visibility in deserialization ctor to public so inheritors can access it from other modules.
...
Fix instantiating of polymorphic serializer with generics.
Move context creation below as asked.
2019-04-30 17:53:40 +03:00
Vyacheslav Gerasimov
0ec1df89fa
Build: use configuration for dependency on android-extensions-runtime
...
`evaluationDependsOn` may lead to obscure gradle errors on project configuration
2019-04-29 16:23:16 +03:00
Nicolay Mitropolsky
0794ab9432
Uast: cleaunp warnings (but some still remains)
2019-04-28 16:36:43 +03:00
Dmitry Petrov
b78d1bb2b9
IrConstructorCall support in JVM_IR, JS_IR, and FIR2IR
2019-04-26 17:43:25 +03:00
Leonid Startsev
90bf36ea7a
Fix reference to IrField when serializing superclass' properties
2019-04-26 15:06:54 +03:00
Leonid Startsev
6bec6e6905
Add synthetic constructors to class member scope, so they won't fly 'in the air' in the backends
...
This is required mainly for Native compiler since it wont't work correctly on descriptors that are not present in the class.
2019-04-26 15:04:53 +03:00
Dmitry Gridin
37c856290f
Fix minor compile warnings
2019-04-25 19:47:39 +07:00
Dmitry Gridin
d7d9771b3c
Replace UastEmptyExpression with UastEmptyExpression(null)
2019-04-25 19:47:38 +07:00
Alexander Udalov
1c1ff3e2b2
Minor, move android-extensions-compiler tests to package org.jetbrains.kotlin
...
To fix the package name mismatch inspection
2019-04-25 14:43:47 +02:00
Nicolay Mitropolsky
f118b007f0
Uast: more cases for KotlinUSimpleReferenceExpression resolve (KT-30957, KT-27385)
2019-04-25 10:07:09 +03:00
Mikhael Bogdanov
11e0035254
Support test parallelization in uast tests
2019-04-25 08:09:27 +02:00
Mikhael Bogdanov
d1b5c76f09
Reuse KtUsefulTest case temporary files infrastructure
2019-04-25 08:09:26 +02:00
Natalia Selezneva
512a297e0a
Process property setter parameter in UAST
2019-04-24 11:39:17 +03:00
nikita.movshin
deb416484c
Update copyright. Fix 2 lines comments after rebase
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
2019-04-23 20:15:03 +03:00
nikita.movshin
a636e3d57d
Update copyright.
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
2019-04-23 20:09:23 +03:00
nikita.movshin
65244b4bea
Update copyright.
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
Update only 2 lines copyright.
2019-04-23 20:09:22 +03:00
Vyacheslav Gerasimov
210ee681a4
Cleanup bunch workarounds made for 181
2019-04-23 17:28:41 +03:00
Vyacheslav Gerasimov
2bc11cbd58
Remove as32 bunch files
2019-04-23 17:28:41 +03:00
Vyacheslav Gerasimov
952d2b6287
Remove 181 bunch files
2019-04-23 17:28:41 +03:00
Vyacheslav Gerasimov
8723ad4f46
Switch to 191 platform
2019-04-22 21:52:19 +03:00
Mikhael Bogdanov
dde28ddc52
Parallelize compiler tests
2019-04-18 13:24:58 +02:00
Dmitry Gridin
3bed360c98
Fix "Should be replaced with Kotlin function" warnings
2019-04-18 15:28:52 +07:00
Ilya Chernikov
ada3edb222
Fix after rebase - adapting to the new idea plugin handling scheme
2019-04-17 22:03:59 +02:00
Ilya Chernikov
7c4efb2772
Disable ScriptingGradleSubplugin if applied in the gradle prior to 5.0
...
Allows to avoid limiting scripting infrastructure to languageVersion 1.2,
since kotlin compiler 1.3+ is bundled with gradle only starting from 5.0
2019-04-17 22:03:59 +02:00
Ilya Chernikov
f688bc5140
Add diagnostics for plugin classpath problems
2019-04-17 22:03:59 +02:00
Ilya Chernikov
64c3bcd9ab
Drop refactored-out frontend.script module
2019-04-17 22:03:58 +02:00
Ilya Chernikov
a65dafc37d
Move scripting support classes to the scripting compiler impl module
2019-04-17 22:03:58 +02:00
Ilya Chernikov
8df829a7cd
Move scripting-compiler-impl definition to another package...
...
to continue merging with the refactoring with further scripting improvements
2019-04-17 22:03:58 +02:00