Commit Graph

38257 Commits

Author SHA1 Message Date
Pavel V. Talanov 32d3a1b4c9 Light classes: generate ACC_STATIC for DefaultImpls classes
To provide consistency between light classes and their delegates

IdeLightClass#testExtendingInterfaceWithDefaultImpls still failing since
    we do not generate implementations delegating to DefaultImpls of superinterfaces
2017-04-09 15:09:13 +03:00
Pavel V. Talanov 5e351061e8 Light classes: test consistency for inner classes 2017-04-09 15:09:10 +03:00
Pavel V. Talanov 4f701285b1 Light class builder: do not generate methods delegating to DefaultImpls in kotlin classes
Class APIs from java point of view stays the same so we can avoid generating those methods
Otherwise we have to calculate all supertypes when getMethods() is called,
    which imposes severe performance penalties
We have to pretend these methods are not 'abstract' (also we consider them 'default' for safety)
    so java highlighting does not report "class should be abstract" for all inheritors
We have to manually report "class should be abstract" on some of the java inheritors,
    specifically those that are implementing interfaces directly
	    as opposed to extending kotlin classes implementing those interfaces
2017-04-09 15:09:01 +03:00
Pavel V. Talanov db294da24d Minor, refactor: Move hasBody() to KtProperty 2017-04-09 15:07:50 +03:00
Pavel V. Talanov 922fde9986 LazyLightClassDataHolder: minor, improve diagnostics 2017-04-09 15:07:48 +03:00
Pavel V. Talanov 8fbd75ce27 AbstractIdeLightClassTest: minor, refactor 2017-04-09 15:07:45 +03:00
Alexey Tsvetkov 0a42a1c104 Minor: fix maven IC tests with custom local repository 2017-04-08 21:14:49 +03:00
Ilya Gorbunov e7dc7ec005 Rebuild sources for kotlin-daemon-client and compiler-client-embeddable in maven build
Do not build these sources in ant.
Do not require them as artifact dependencies.
2017-04-08 19:07:54 +03:00
Ilya Gorbunov 5aabcb6ea3 Update build instructions in ReadMe to include gradle build step.
Also update links and overall readme structure.
2017-04-08 08:37:12 +03:00
Ilya Gorbunov f5647fb27f Delete temporary proguard configuration for gradle, change the primary one. 2017-04-08 08:32:05 +03:00
Ilya Gorbunov 5aff64078c Drop helper functions and use ones from stdlib instead. 2017-04-08 08:32:03 +03:00
Ilya Gorbunov e8e8bec342 Drop unneeded steps from updateDependencies
Do not download closure compiler for ant,
do not rebuild markdown anymore,
do not build protobuf-lite.
2017-04-08 08:31:07 +03:00
Ilya Gorbunov 6e961be1a1 No need to fork ant under jdk8 to build annotation-processing 2017-04-08 08:31:03 +03:00
Ilya Gorbunov eef835f6c1 Remove ant targets that are superseded by gradle build. 2017-04-08 08:31:01 +03:00
Ilya Gorbunov 337fd4e180 Drop poms that are no longer required. Drop separate unit test modules for stdlib js. 2017-04-08 08:28:50 +03:00
Anton Bannykh 93f11a6da3 Update HtmlUnit driver to version 2.24; run tests using JDK 1.8
The old version had very limited TypedArray support, which lead to
browser-example crashes.
The new version of HtmlUnit needs JDK 1.8 to run.
2017-04-07 18:52:56 +03:00
Mikhail Glukhikh 767db68daf Cleanup: when possible, do analyzeFully -> analyze 2017-04-07 15:36:02 +03:00
Mikhail Glukhikh ba04dac4b7 Cleanup: when possible, do analyzeFullyAndGetResult -> analyzeFully
Also, when possible, do analyzeAndGetResult -> analyze
2017-04-07 15:36:00 +03:00
Mikhail Glukhikh ceff19ee74 Cleanup: leaking this inspection 2017-04-07 15:35:59 +03:00
Mikhail Glukhikh aed98a745e Do not use KtClassInitializer as analyzable parent
Fixes analyzeFully() semantics making it closer to compiler
Fixes two flaky tests for "leaking this" quick-fixes
2017-04-07 15:35:58 +03:00
Mikhail Glukhikh 55d304a9a5 Minor refactoring: anonymous initializers 2017-04-07 15:35:57 +03:00
Vyacheslav Gerasimov 6b9242075a Fix MovePropertyToConstructorIntention applicability and type rendering
#KT-17238 Fixed

(cherry picked from commit 7f9d88a)
2017-04-07 14:32:06 +03:00
Nikolay Krasko d65b7a5b4b Better indent in else-if editing (KT-14601)
#KT-14601 Fixed

(cherry picked from commit 25d6d61)
2017-04-07 14:21:45 +03:00
Dmitry Jemerov da9af682d9 Don't show Kotlin in "Add framework support" for Maven/Gradle modules
#KT-16392 Fixed
2017-04-07 13:09:58 +02:00
Dmitry Jemerov f1e96709a8 JSFrameworkSupportProvider: J2K 2017-04-07 13:09:58 +02:00
Dmitry Jemerov ee5ebb8ab7 JSFrameworkSupportProvider: rename to .kt 2017-04-07 13:09:58 +02:00
Dmitry Jemerov 372ab57b65 JavaFrameworkSupportProvider: J2K 2017-04-07 13:09:58 +02:00
Dmitry Jemerov 25830be3a2 JavaFrameworkSupportProvider: rename to .kt 2017-04-07 13:09:58 +02:00
Dmitry Jemerov 5ef2b39804 Don't create multiple copies of KotlinJavaRuntime for multiple modules
#KT-17259 Fixed
2017-04-07 13:09:58 +02:00
Dmitry Jemerov 1488b21143 More consistent configurator names
#KT-17138 Fixed
2017-04-07 13:09:58 +02:00
Dmitry Jemerov 7159550a8f Show selected configurator in title of "Configure Kotlin" dialog
#KT-17251 Fixed
2017-04-07 13:09:58 +02:00
Dmitry Jemerov 2e33850981 Hide "Configure Kotlin" notification after Kotlin has been configured
#KT-17289 Fixed
2017-04-07 13:09:58 +02:00
Dmitry Jemerov 29eafcbc97 Don't show "Choose Configurator" popup for one available configurator
#KT-17287 Fixed
2017-04-07 13:09:58 +02:00
Dmitry Jemerov 02af278766 Hide "Configure Kotlin (JavaScript)" in Android Studio
#KT-17288 Fixed
2017-04-07 13:09:58 +02:00
Alexander Udalov 2be8a4f184 Minor, delete obsolete test data 2017-04-07 13:44:02 +03:00
Anton Bannykh 7287645937 JS: fix AMD module integration tests 2017-04-06 21:35:03 +03:00
Ilya Gorbunov 324445fa7d Create staging sonatype repository manually and change deploy-url parameter.
This is required to ensure that both gradle and maven build publish their artifacts
to the same sonatype staging repository.

Override deployment repository url for publishing snapshots to sonatype.
2017-04-06 20:32:37 +03:00
Ilya Gorbunov c5e52b124b Prepare for publishing to bintray and maven central. 2017-04-06 20:32:37 +03:00
Ilya Gorbunov 4bc85f9c0e .gitignore fine tuning for gradle. Limit existing patterns. 2017-04-06 20:32:37 +03:00
Ilya Gorbunov 02293dab9e Add public api dumps for kotlin-reflect and kotlin-stdlib-jre7/8 2017-04-06 20:32:37 +03:00
Ilya Gorbunov 88e6f2160a Build and verify runnable samples with gradle. 2017-04-06 20:32:37 +03:00
Ilya Gorbunov 97d1ffb036 Do not build modules with maven which are built with gradle.
kotlin-maven-plugin-test:
Remove dependency on kotlin-test-parent that is no longer published and required.
Add dependency on kotlin-runtime as it's no longer coming transitively from kotlin-script-runtime.
Change kotlin version test to reflect manifest implementation title changes.
2017-04-06 20:32:37 +03:00
Ilya Gorbunov 356f8dd0d1 Killswitch: do not build runtime with ant, switch to gradle artifacts. 2017-04-06 20:32:37 +03:00
Ilya Gorbunov df44f3bfe6 Launch kotlin runtime gradle build from ant.
Fork ant to build compiler as it requires a lot of memory.
Pass build.number to gradle build.
2017-04-06 20:32:37 +03:00
Ilya Gorbunov 3db1613167 Setup dist task to assemble libs for compiler distribution.
Produce special stdlib artifact with annotations for dist.
Put js outputs to dist, they're required for JS backend tests.

Use kotlin-compiler for maven, which has all required dependencies bundled.
Clean local directory repository on clean.

Change paths in tests to compiled artifacts.
2017-04-06 20:32:37 +03:00
Ilya Gorbunov 0b2cadc638 Provide a method for common publishing configuration. 2017-04-06 20:32:37 +03:00
Ilya Gorbunov 92ef26606b Refactor build to make manifest specification less error-prone.
Use legacy implementation title in manifest of JS stdlib for now.

Change the way common jvm project configurations is applied.
Add missing artifacts to common libraries.
2017-04-06 20:32:37 +03:00
Ilya Gorbunov 325ebfbd5f Use karma plugin to run kotlin-stdlib-js tests.
Also create html page to run tests interactively in browser.

Use karma-teamcity-reporter 0.1.2 to workaround https://github.com/karma-runner/karma-teamcity-reporter/issues/38
2017-04-06 20:32:37 +03:00
Ilya Gorbunov dedf9fe898 kotlin-stdlib-js: copy sources in order to prevent duplicate source root in IDEA 2017-04-06 20:32:37 +03:00
Ilya Gorbunov 026a76e98c Assemble protobuf-lite with gradle, and use it in kotlin-reflect. 2017-04-06 20:32:37 +03:00