Commit Graph

32344 Commits

Author SHA1 Message Date
Ilya Chernikov 8a06eafaf1 Rename-refactor interfaces and methods of the script dependencies resolving 2016-06-25 22:24:39 +03:00
Ilya Chernikov 5fd013ef42 minor: rename a field in ScriptTemplateProvider interface 2016-06-25 22:24:37 +03:00
Ilya Chernikov 5bea5bcc37 Add script files changes monitoring, logic for initialization during index rebuilding 2016-06-25 22:24:36 +03:00
Ilya Chernikov 8dac72f465 Add support for script classfiles caching 2016-06-25 22:24:34 +03:00
Ilya Chernikov 3157421189 Fix File Manager tests after classpath/index initialization became lazy 2016-06-25 22:24:32 +03:00
Ilya Chernikov 64bb47ed37 Switch to File instead of String for classpaths in script dependencies 2016-06-25 22:24:30 +03:00
Ilya Chernikov 5e3ba36cc1 Simplify GetScriptDependencies interface 2016-06-25 22:24:28 +03:00
Ilya Chernikov a60e1ab807 Fix implementation of gradle ScriptTemplateProvider extension
WARNING: adds dependency to idea's gradle-and-groovy-plugin to idea-core
2016-06-25 22:24:27 +03:00
Ilya Chernikov 834372a3b3 Implement extension point for providing script templates 2016-06-25 22:24:25 +03:00
Ilya Chernikov 082290f8e3 Refactor script dependencies management 2016-06-25 22:24:23 +03:00
Ilya Chernikov c244414f3c Convert ScriptNameUtil to Kotlin: phase 3 - refactor 2016-06-25 22:24:21 +03:00
Ilya Chernikov 590f09ee58 Convert ScriptNameUtil to Kotlin: phase 2 - convert 2016-06-25 22:24:19 +03:00
Ilya Chernikov f96517a54a Convert ScriptNameUtil to Kotlin: phase 1 - rename file 2016-06-25 22:24:17 +03:00
Ilya Chernikov d212d369b0 Implement support for extra imports 2016-06-25 22:24:16 +03:00
Ilya Chernikov 402e8c1e3e Add dependency from annotation extraction mechanisms to the prototype, with tests 2016-06-25 22:24:14 +03:00
Ilya Chernikov 3f5a2c2781 Add initial prototype of script def based on annotated base class, with simple tests 2016-06-25 22:24:12 +03:00
Ilya Gorbunov 1e66147e91 Update changelog for 1.0.3: section about new compiler options 2016-06-25 09:17:11 +03:00
Mikhael Bogdanov a090133581 Inline properties support in incremental compilation 2016-06-24 17:05:53 +03:00
Mikhael Bogdanov 93a770fcc8 Code clean 2016-06-24 17:05:53 +03:00
Mikhael Bogdanov 853c4d4453 Added language feature check for inline properties 2016-06-24 17:05:52 +03:00
Mikhael Bogdanov 321e97a329 AnalyzerExtension refactoring, added support for inline properties 2016-06-24 17:05:52 +03:00
Mikhael Bogdanov 7baf70e8fa Support reified extension properties 2016-06-24 17:05:51 +03:00
Mikhael Bogdanov 7c67a3315a Temporary throw exception on unsupported increment and augment assignment on local delegated properties and inline properties 2016-06-24 17:05:50 +03:00
Mikhael Bogdanov 5a2e00d2ad Base support of StackValue.Property inlining 2016-06-24 17:05:50 +03:00
Mikhael Bogdanov d524a34fc7 Support property accessor in inline checks 2016-06-24 17:05:49 +03:00
Mikhael Bogdanov 2cc177255f Don't report inapplicable target for 'inline' keyword on property and its accessors 2016-06-24 17:05:49 +03:00
Mikhael Bogdanov db5d9940df Added 'isInline' implementation to property accessor descriptors 2016-06-24 17:05:48 +03:00
Mikhael Bogdanov 679f53b449 Inline get/setValues for local delegated properties 2016-06-24 17:05:48 +03:00
Mikhael Bogdanov 6f761d4e7d Construct delegates in expression codegen, not in LocalLookup 2016-06-24 17:05:47 +03:00
Denis Zharkov 2578fc3344 Do not generate mutable collection stub methods in interfaces
#KT-12359 Fixed
2016-06-24 16:37:19 +03:00
Denis Zharkov 1780f57265 Fix mutable collection stub methods generation for corner case
The problem is that
`override fun remove(element: E): CollectionWithRemove<E>`
seems to be illegal from Java's point of view, while it's OK for JVM

These declarations have the same signature (return type is isgnored)
- override fun remove(element: E): CollectionWithRemove<E>
- override fun remove(element: E): Boolean

When we meet such declaration we choose random declaration for fake override in synthetic class
that may lead to signature clash
2016-06-24 16:37:19 +03:00
Zalim Bashorov 47e1ff34f0 JS: fix that kotlin's breakpoints don't work with JavaScript debugger
#KT-12773 Fixed
2016-06-24 15:46:30 +03:00
Yan Zhulanow 6e6c9682ec Fix KT-12173 (Kotlin Lint False Positive for "Toast created but not shown" inside SAM adapter).
(cherry picked from commit 4940d3b)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 1720f8b4ff KT-12681 (Lint: run from main menu / Analyze: Kotlin inspections reports only java source)
Cause we've copied Lint diagnostics to the Kotlin project, there's no harm in making them Kotlin-only.
(cherry picked from commit 7105648)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 8f75ababde KT-12674 "Calling new methods on older versions" errors for inlined constants
Inlined constants from Java should not be detected.
(cherry picked from commit b34ee4e)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 206e439595 KT-12023 Kotlin Lint: Cast doesn't trigger minSdk error
Check Kotlin as/is types.
(cherry picked from commit c0db8e0)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 6752df189d Make infix modifier diagnostic message more informative (KT-12589)
(cherry picked from commit 2744309)
2016-06-24 15:10:19 +03:00
Yan Zhulanow a434055b55 Load Gradle subplugin artifacts from the root project buildscript classpath as well (KT-11885)
(cherry picked from commit b54b0da)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 1de05b965e KT-12015 (Kotlin Lint False Positive for Bundle.getInt())
Java approach is not sufficient here, in Kotlin receivers can be implicit.
Use Kotlin extension/dispatch receivers to figure out the receiver type for our method call.
(cherry picked from commit cdedf1d)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 530ab42de6 Android Extensions: Fix KT-10969 (NullPointerException when finding view in Fragment if getView() is null)
(cherry picked from commit 80f5852)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 2cd0e9c8d8 Fix EA-80764. Do not try to get the resource manager for the disposed module
(cherry picked from commit c3bd243)
(cherry picked from commit cddcf02)
2016-06-24 15:10:19 +03:00
Yan Zhulanow e0243fd568 Fix EA-82394. PsiType.getClassName() can return null. Return "<anonymous type>" in that case.
(cherry picked from commit 8be1335)
(cherry picked from commit 5101596)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 1a0acf3208 Fix EA-82166. NPE. loadModel() can return null, and it's a bad idea to call methods on a null pointer.
(cherry picked from commit cf033d0)
(cherry picked from commit 37dc0ae)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 001d5397c5 Fix EA-82449. Do not run Lint diagnostics if the project is already disposed
(cherry picked from commit 98b2899)
(cherry picked from commit 2179ee8)
2016-06-24 15:10:19 +03:00
Yan Zhulanow c5e0f992e5 KT-12387 Fix Performance problem with Lint in IDE
Call checkCanceled() before running Lint diagnostics (UastScanner)
(cherry picked from commit c6e328a)
(cherry picked from commit 696475e)
2016-06-24 15:10:19 +03:00
Yan Zhulanow 4ee19cce93 Fix #KT-12047 (Kotlin Lint: "Missing @JavascriptInterface on methods" does not report anything)
(cherry picked from commit 61e8e01)
(cherry picked from commit dbc54e2)
2016-06-24 15:10:19 +03:00
Yan Zhulanow d1447faf2b Fix #KT-12015 (Kotlin Lint False Positive for Bundle.getInt()).
Android firstly checks API version against the function call receiver type, so we should do the same to be consistent.
(cherry picked from commit c3d01ec)
(cherry picked from commit 5c78acc)
2016-06-24 15:10:19 +03:00
Denis Zharkov 8caee7940e Use 'Any?' instead of throwing NPE when calculating star projection type
It's a quite hacky solution, but the choice seems to be conservative, so these types can be refined later

 #KT-9597 Fixed
2016-06-24 10:23:16 +03:00
Ilya Gorbunov 71476d5d43 Minor: remove unused commonArgs 2016-06-23 22:47:47 +03:00
Ilya Gorbunov 7c5c4610e8 Rename -jdk compiler option to -jdk-home (jdkHome), add jdk path validation. 2016-06-23 22:47:45 +03:00