Alexey Sedunov
591910a216
Kotlin Facet: Import compiler arguments from Gradle project
...
#KT-15819 Fixed
#KT-15929 Fixed
2017-01-26 18:06:14 +03:00
Ilya Chernikov
ec7e8873f4
Update daemon client with wrappers for basic compiler API
...
Other changes to extract results for compiler, tests.
2017-01-25 15:29:15 +01:00
Alexander Udalov
76fc3b40d5
Do not consider Kotlin compiler as library in runtime versions checker
...
Otherwise because there's no Kotlin-Version in its manifest, it's regarded as a
1.0 runtime library which conflicts with 1.1 libraries
2017-01-23 11:30:53 +03:00
Alexander Udalov
139d37cfd0
Support "Main" component in JVM runtime version consistency checker
...
The point here is to disable the "checkNotNewerThanCompiler" check because it
breaks a real life use case of compiling with an old compiler against the new
runtime library (that may come implicitly as a transitive dependency of another
library). However, to keep the possibility of restoring this check in the
future without backporting the needed changes into the old branches, we now
only perform this check for the "Core" runtime components, and all other checks
-- for "Core" and "Main" runtime components. In the follow-up commit, we change
the runtime component of our libraries to "Main". If we decide we need the
"checkNotNewerThanCompiler" behavior in the future, we can change the runtime
component to "Core", effectively restoring this check in the old compilers
2017-01-21 12:57:14 +03:00
Alexander Udalov
7b4e826650
Enable JVM runtime version consistency checker in 1.1
2017-01-21 12:57:14 +03:00
Mikhael Bogdanov
62514e126d
Enable jvm 1.8 platform in cli
2017-01-13 13:52:54 +01:00
Alexey Tsvetkov
bdae0b5efb
Fix the build
2017-01-13 15:08:12 +03:00
Alexey Tsvetkov
2ec9773e15
Minor: fix CompilerMessageSeverity order
2017-01-13 15:08:12 +03:00
Alexey Tsvetkov
16352ff2e5
Refactor messages sending
2017-01-13 15:08:12 +03:00
Alexey Tsvetkov
99c72b6dff
Refactor JPS daemon client
2017-01-13 15:08:12 +03:00
Alexey Tsvetkov
d80c1ad10d
Add integer value to compiler message severity
2017-01-13 15:08:12 +03:00
Alexey Tsvetkov
1fcd7d07e2
Make compiler arguments serializable
2017-01-13 15:08:12 +03:00
Alexander Udalov
2ba18beb89
Report JVM runtime version inconsistency as errors instead of warnings
...
(cherry picked from commit f8fc7e94ac07d80f332149529b34297b7f0db82e)
2017-01-13 11:53:52 +03:00
Alexander Udalov
edb4fd1dfd
Do not emit pre-release flag if -Xskip-metadata-version-check is used
...
The -Xskip-metadata-version-check command line argument is supposed to be used
to avoid getting errors only; the side effect that it also caused compiler to
write the pre-release flag to binaries was a mistake and is fixed now
2017-01-11 19:28:52 +03:00
Alexander Udalov
7b5c90ebaf
Correctly load multifile package parts from binaries
...
JvmPackagePartProvider should not just blindly load all multifile parts from
all libraries on the classpath, but only those from multifile classes which
shadow (come earlier on the classpath) other classes with the same name.
Otherwise if you have different versions of the same library (which uses
multifile classes) on the classpath, the compiler will see parts from both
versions. If some declaration have moved from one part to another, it's
possible to observe an overload resolution ambiguity error
#KT-15287 Fixed
2017-01-11 13:15:58 +03:00
Alexander Udalov
db3fa8eaca
Refactor JvmPackagePartProvider
...
Make code more imperative than functional, preserve the information about the
original root where the module mapping was discovered
2017-01-11 13:15:56 +03:00
Alexander Udalov
164c72e877
Prefer package with class files to class with the same name
...
See comments in JvmDependenciesIndexImpl and in the test
#KT-15464 Fixed
2017-01-10 12:23:25 +03:00
Ilya Gorbunov
405a79549a
Migrate 1.1 reflection API usages
2016-12-29 06:51:00 +03:00
Yan Zhulanow
fdb568f86d
Kapt3: Generate incremental compilation metadata (light classes with Kotlin metadata)
2016-12-28 22:28:33 +03:00
Alexander Udalov
510295475b
Batch script: allow to pass JAVA_OPTS from outside
...
Similarly to the Bash version
#KT-14917 Fixed
2016-12-23 22:31:11 +03:00
Alexey Sedunov
12f2c04a0b
Misc: Fix argument copying
2016-12-22 02:47:34 +03:00
Alexey Tsvetkov
fb869277d9
Set property "idea.plugins.compatible.build" every time production environment is created
...
Gradle can wipe system properties between the build.
If this property is not set, "idea.properties is not found exception"
can be thrown when creating KotlinCoreEnvironment.
2016-12-19 22:55:22 +03:00
Alexey Tsvetkov
4fdca24db4
Remove source annotations removing (not needed with KAPT3)
2016-12-19 22:46:12 +03:00
Dmitry Jemerov
bc22b67995
Index and locate .kotlin_metadata files in IDE
2016-12-19 17:40:13 +01:00
Alexander Udalov
f57bbeed58
Disable runtime versions consistency checker temporarily
...
It should be enabled back as soon as Kotlin-Version attribute is written to
manifests of runtime jars in the Maven build
2016-12-17 20:57:05 +03:00
Mikhail Zarechenskiy
d1a3c4c48b
Fix description of -Xcoroutines key
2016-12-15 23:58:11 +03:00
Mikhail Zarechenskiy
091756b221
Adapt facet, map coroutine settings on three keys
2016-12-15 23:58:09 +03:00
Alexey Sedunov
9460426d26
Kotlin Facet: Add coroutine support setting
2016-12-15 23:58:08 +03:00
Mikhail Zarechenskiy
664485f4bb
Introduce keys to control applicability of coroutines
...
By default now we produce warnings on coroutines
2016-12-15 23:58:07 +03:00
Ilya Chernikov
d78fc50e90
Fix after review
2016-12-15 07:26:08 +01:00
Ilya Chernikov
f036422ee9
Refactor eval code to avoid compiler (codegen) hangings on various loops inside RW locks
2016-12-15 07:26:08 +01:00
Ilya Chernikov
fc416476a8
Move invokable parts to JSR223 only, remove unneeded code
2016-12-15 07:26:08 +01:00
Ilya Chernikov
b1cd98f2d5
Refactor and fix script annotation processing
2016-12-15 07:26:07 +01:00
Ilya Chernikov
1cc85df78e
Refactor REPL infrastructure for passing evaluation/invoke wrapper to every eval/invoke function
2016-12-15 07:26:07 +01:00
Ilya Chernikov
cb7f22ffec
Refactor JSR223 to support Compilable interface, drop daemon eval engine and sample, simplify
2016-12-15 07:26:07 +01:00
Ilya Chernikov
eb3d8a1a4a
Fix classpah update moment on script dependencies calculations
2016-12-15 07:26:06 +01:00
Ilya Chernikov
c82e91eafe
Implement Invocable on base evaluator and locally-evaluating JSR223 sample engines
...
fixes #KT-14707
2016-12-15 07:26:06 +01:00
Ilya Chernikov
fbd4c6eb61
Implement invokable/invoker interface on the generic repl evaluator, refactor reflection utils on the way
2016-12-15 07:26:06 +01:00
Ilya Chernikov
7a79fff9d6
Put lines history into all data structures returned by repl, refactor storage and passing of the history for that
2016-12-15 07:26:06 +01:00
Ilya Chernikov
125cc6ebfb
Fix compiled line class loading in repl, fixes #KT-14706
2016-12-15 07:26:06 +01:00
Alexander Udalov
d0fa9bac75
Introduce '-Xskip-runtime-version-check' command line option
2016-12-13 21:09:00 +03:00
Alexander Udalov
6aaf2c7c4d
Decrease number of reported runtime version diagnostics
...
If there's at least one runtime newer than the compiler, do not report that
it's inconsistent with the correct runtime
2016-12-13 21:09:00 +03:00
Alexander Udalov
2c527d89ab
Improve diagnostics for runtime versions consistency checker
...
- report the diagnostic on the actual problematic file
- output the list of all runtime jars if min version != max version
2016-12-13 21:09:00 +03:00
Alexander Udalov
d3e5580ab9
Use MavenComparableVersion in runtime version consistency checker
...
LanguageVersion is an enum consisting of the current and all previous versions
only, so with it we won't be able to detect the language version of a future
runtime
2016-12-13 21:08:59 +03:00
Dmitry Petrov
1866a33781
Check classpath version consistency.
...
Add 'Kotlin-version' attribute to kotlin-runtime and kotlin-reflect JARs.
2016-12-13 21:08:59 +03:00
Mikhael Bogdanov
dc5c3a478c
Always use default 1.6 build target unless of 'jvm-target' option
2016-12-13 14:51:27 +01:00
Roman Elizarov
8affb2726f
Pluggable Synthetic Objects
2016-12-12 18:43:26 +03:00
Sergey Mashkov
f59377011c
Initial Kotlin plugin support in Maven
2016-12-09 20:01:00 +03:00
Yan Zhulanow
f57df272ac
Allopen: Handle allopen annotations on classes (KT-12149)
2016-12-09 20:00:56 +03:00
Alexander Udalov
513ebb9729
Suggest to use "-Xskip-metadata-version-check" on incompatible classes in classpath
2016-12-09 01:59:36 +03:00