Commit Graph

38146 Commits

Author SHA1 Message Date
mglukhikh d9e1e82948 Destructure is available even without usages #KT-14435 Fixed 2017-04-05 15:07:15 +03:00
mglukhikh feb9dd4d83 Don't suggest destructuring if at least half components not used
So #KT-16828 Fixed
2017-04-05 14:45:48 +03:00
Mikhail Glukhikh 318314f1a4 Fix "must not be null" in KotlinInlineFunctionDialog #KT-17233 Fixed 2017-04-04 19:22:46 +03:00
mglukhikh 8fb818fc74 Don't report 'protected in final' for implicitly protected
So #KT-16339 Fixed
2017-04-04 19:22:39 +03:00
mglukhikh f13997750f Make destructure intention work on library data classes
So #KT-16468 Fixed
So #KT-14402 Fixed
2017-04-04 19:22:31 +03:00
mglukhikh 8a02ce3dc2 KT-16828: use _ when appropriate in destructure intention 2017-04-04 19:22:24 +03:00
Ilya Chernikov 32d0d7a4d5 Remove xerces from compiler uberjar, pack compiler with explicit jar names
xercesImpl was unnecessarily added to the compiler uberjar during migration
to the idea platform 171. This caused NCDFE about classes from org.w3c
package.
And to simplify application of this commit and to ensure that only required
jars are packed into the uberjar, the build.xml was altered to use
explicit list of the jars from the ideaSdk/core directory, rather than
a mask.

Fixes #KT-17143 and #KT-17157

(cherry picked from commit 5595bea)
2017-04-04 15:14:46 +02:00
mglukhikh 1b2edf6a0c KT-15870: run getTargetDirectory() in write action 2017-04-04 15:55:57 +03:00
mglukhikh ee239d59aa Set startInWrite... in intention-based quick fix as in intention
So #KT-15870 Fixed
2017-04-04 15:55:55 +03:00
Simon Ogorodnik 57c1d8eda4 Fix conversion of assignment as expression in J2K
Blockless if's and so with assignment as expression inside
should turn into blockful
 #KT-16816 fixed
2017-04-04 14:38:25 +03:00
Simon Ogorodnik 86137e1f65 Fix deadlock in J2K
#KT-17230 fixed
2017-04-04 14:38:25 +03:00
Alexey Sedunov 6bf23d5e02 Kotlin Facet: Convert paths to OS-independent form
#KT-17223 Fixed
2017-04-04 14:35:12 +03:00
Alexey Sedunov 7e0bb089e2 Kotlin Facet: Suppress selection on plugin options tab
#KT-17046 Fixed
2017-04-04 14:35:11 +03:00
Alexey Sedunov 746ec48176 Move: Fix internal reference processing on moving multiple files
#KT-17211 Fixed
2017-04-04 14:35:10 +03:00
Alexey Sedunov a8a9c3bbf4 Kotlin Facet: Fix platform detection in android-gradle projects
Sort candidate library names by descending length.
Suppress common library if platform-specific one is also present

 #KT-16827 Fixed
2017-04-04 14:35:08 +03:00
Mikhail Glukhikh 7a53b2f4c8 Introduce UNUSED_ANONYMOUS_PARAMETER for anonymous functions
It is not reported for 1.0 language version because
renaming to _ is not possible. It has weak warning severity

So #KT-8813 Fixed
So #KT-16875 Fixed
2017-04-04 14:23:30 +03:00
Nikolay Krasko 110fc103de Run tests with JDK 1.8 and remove hack with downloading libraries from previous ide 2017-04-04 13:22:43 +03:00
Dmitry Jemerov fe8e02f4cf Use LibraryJarDescriptor for refreshing jars on plugin update 2017-04-04 11:21:06 +02:00
Dmitry Jemerov 78844dd4aa Use new path for stdlib sources jar 2017-04-04 11:21:06 +02:00
Dmitry Jemerov 38abc0ca8e Get rid of RuntimeLibraryFiles and its remaining uses 2017-04-04 11:21:06 +02:00
Dmitry Jemerov 09fbbb369a Use LibraryJarDescriptor in CustomLibraryDescriptorWithDeferredConfig 2017-04-04 11:21:06 +02:00
Dmitry Jemerov 2bb1b670f7 CustomLibraryDescriptorWithDeferredConfig: J2K 2017-04-04 11:21:06 +02:00
Dmitry Jemerov ff985314cf CustomLibraryDescriptorWithDeferredConfig: rename to .kt 2017-04-04 11:21:06 +02:00
Dmitry Jemerov f9aff3be13 Rewrite configureModuleWithLibrary() based on LibraryJarDescriptor
Also remove duplicated logic for identifying Kotlin libraries.
2017-04-04 11:21:06 +02:00
Dmitry Jemerov 06e8f8e5be Remove obsolete logic for updating source root URL 2017-04-04 11:21:06 +02:00
Dmitry Jemerov 291e888802 Encapsulate library search in LibraryJarDescriptor 2017-04-04 11:21:06 +02:00
Dmitry Jemerov f9495aa0d7 Introduce and use KotlinPaths.getStdlibPath()
Also support renaming .jar file when updating an existing library
2017-04-04 11:21:06 +02:00
Dmitry Jemerov 344f372327 KotlinJavaModuleConfigurator: J2K 2017-04-04 11:21:06 +02:00
Dmitry Jemerov 16c2dec60a KotlinJavaModuleConfigurator: rename to .kt 2017-04-04 11:21:06 +02:00
Dmitry Jemerov 00d3141ba2 KotlinWithLibraryConfigurator: J2K 2017-04-04 11:21:06 +02:00
Dmitry Jemerov 2059a052c9 KotlinWithLibraryConfigurator: rename to .kt 2017-04-04 11:21:06 +02:00
Dmitry Jemerov 296fe698b8 KotlinAnnotatedElementsSearcher optimization
When possible, try to resolve references in types using only the PSI
without building the full resolve session.
2017-04-04 11:14:09 +02:00
Pavel V. Talanov b9809566e6 Workaround for KotlinJpsBuiltTest js tests
Caused by problems with classloading (having two copies of DefaultImplementation class)
2017-04-03 21:44:43 +03:00
Mikhael Bogdanov 16d95d803f Use jdk 1.8 to run android tests 2017-04-03 19:20:52 +02:00
Nikolay Krasko d9c57728e2 Try to avoid null exception in getCommandProvider() in debugger tests 2017-04-03 19:05:22 +03:00
Nikolay Krasko b4ebd6074c Restore quick doc for it parameter and this of extension function 2017-04-03 19:05:22 +03:00
Nikolay Krasko eb4e6e6c1a Ad hoc solution to avoid resolution in language injection by receiver (KT-16995)
#KT-16995 Fixed
2017-04-03 19:05:22 +03:00
Yoshinori Isogai f16736285a Update JAVA_HOME path to JDK8 (#1043) 2017-04-03 17:52:51 +02:00
Alexander Udalov b5ea6d3e25 Upgrade maven-shade-plugin to 3.0.0
A critical bug related to Java 8 bytecode (default/static methods in
interfaces) was fixed in maven-shade-plugin in 3.0.0, which reproduces
for kotlin-compiler-embeddable on Java 9 because the verifier in Java 9
started to check consistency of constant pool references to methods in
interfaces

 #KT-17112 Fixed
2017-04-03 18:37:22 +03:00
Alexander Udalov dc4c8c40bf Fix Java6BuiltInsWithJDKMembersTest on Linux
PathUtil.getJdkClassesRoots() takes the path to the JRE. On macOS, this
is the same as the path to the JDK (for Java 6), so the test worked
there. However for OpenJDK on Linux, there's a separate directory named
"jre" in the JDK root. See JavaSdkUtil.getJdkClassesRoots for more
information on how the JDK roots are found
2017-04-03 18:30:59 +03:00
Alexander Udalov b368da8456 Do not warn on non-JAR files in classpath
#KT-17140 Fixed
2017-04-03 18:18:40 +03:00
Alexander Udalov 64dfa6d33d Do not add current directory to "kotlin" classpath
As "java" does, do not include the current directory to the classpath if
the explicit classpath is specified. This is more stable than always
adding the current directory, and users can easily add the ".:" to the
beginning of the explicit classpath themselves

 #KT-17100 Fixed
2017-04-03 18:17:27 +03:00
Alexander Udalov 3b8110f51c Minor, use "use" to automatically close JarFile
JarFile extends Closeable on JDK 8, so we can use "use" here now
2017-04-03 18:05:04 +03:00
Alexander Udalov cbc893ed17 Minor, drop useless class in cli-runner
Use a simple List<URL> instead of Classpath
2017-04-03 18:05:04 +03:00
Alexander Udalov 93d5f6e635 Fix NPE on equals/hashCode of local function references
Anonymous classes for local function references implement their
getOwner() as "return null" currently (KT-14291). To avoid NPE in this
case, we now consider two local functions the same if their name and
signature are equal. This is incorrect in general, but unlikely to cause
major problems and is going to be fixed by KT-14291 eventually anyway

 #KT-17055
2017-04-03 18:05:04 +03:00
Alexander Udalov 8dc4fa62ac Minor, drop unused directive and test
The directive was only used in this test and it had no effect on the
behavior of the test. The test is removed because it's equivalent to
simple.kt in the same directory
2017-04-03 18:05:04 +03:00
Mikhail Zarechenskiy bff9ebc0d5 Fix check for instance for types with compatible upper bounds
#KT-5246 Fixed
2017-04-03 16:25:32 +03:00
Mikhail Zarechenskiy 1e56815b3b Do not show warning about useless elvis for error function types
#KT-17214 Fixed
 #KT-12112 Fixed
2017-04-03 16:25:32 +03:00
Mikhail Zarechenskiy 3cdf6c898a Warn for unnecessary (!!) assertion after method with generics
#KT-12276 Fixed
2017-04-03 16:25:32 +03:00
Mikhail Zarechenskiy 4aa808b250 Fix warning about useless elvis when generics are involved
#KT-13648 Fixed
2017-04-03 16:25:32 +03:00