Commit Graph

39419 Commits

Author SHA1 Message Date
Alexander Udalov a67382fdec Daemon: do not exit with internal error on invalid arguments
Invalid compiler arguments should lead to a compilation error, not
internal error. This has been fixed by splitting the
"parseArguments(...)" call (which does parsing + validation) in
CompileServiceImpl into two calls of parseCommandLineArguments +
validateArguments, and returning with a compilation error if the latter
did not succeed

 #KT-16057 Fixed
 #KT-14848 In Progress
2017-06-06 19:52:02 +03:00
Sergey Igushkin 2cad64881d (minor) Improve exception message in case no Android plugin was found 2017-06-06 17:21:20 +03:00
Sergey Igushkin 21b88995ab Add tests for the introduced fixes
Add a test for applying kotlin-android plugin with com.android.feature

Add a test for Databinding (not passing yet with 3.0.0+, until
3.0.0-alpha4 is released, which contains the fix from the Android side).

Add missing test project android-databinding.

Refactor and improve the tests

* Remove redundant files from test project 'android-databinding'
* Refactoring and minor improvements in the tests
2017-06-06 17:21:20 +03:00
Sergey Igushkin 483218e491 Fix for the Databinding issue where the kapt task started to early, not
letting the Databinding pre-process the project.
2017-06-06 17:21:20 +03:00
Sergey Igushkin f053d79994 Add support for com.android.feature plugin. 2017-06-06 17:21:20 +03:00
Pavel V. Talanov bdf76f23c4 Jvm Codegen: do not throw on malformed delegation to a type parameter
Fix exception on light class building

See KT-15931
2017-06-06 17:11:19 +03:00
Pavel V. Talanov 19db4304bd Use clsDelegate to calculate hasModifierProperty("final") for light psi
AllOpen plugin can make some changes and we don't have the tools to make
    correct decision based on psi

 #KT-17857 Fixed
2017-06-06 17:11:18 +03:00
Pavel V. Talanov f3f2379e5a KtLightMemberModifierList:hasExplicitModifier("default") returns false
#KT-18070 Fixed
2017-06-06 17:11:17 +03:00
Mikhail Glukhikh f54267eab4 Revert 'configureSilently' removal 2017-06-06 16:14:50 +03:00
Nikolay Krasko 0980446836 Fix running Android tests locally on windows 2017-06-06 14:56:22 +03:00
Nikolay Krasko 45958e630d Refactoring: move method 2017-06-06 14:56:21 +03:00
Nikolay Krasko cb4c840d3b Remote old tasks for fetching continuous branches 2017-06-06 14:56:21 +03:00
Alexander Udalov 6a4c1b138f Remove dependency of module 'cli' on 'builtins-serializer'
This breaks the circular dependency between them
2017-06-06 14:29:27 +03:00
Alexander Udalov 7febd846e8 Export 'intellij-core' in module 'frontend'
Remove intellij-core from dependencies of modules which already depend
on frontend or any module that exports frontend (such as frontend.java)
2017-06-06 14:29:26 +03:00
Alexander Udalov 2ed027219c Remove dependency of module 'frontend' on 'plugin-api'
This breaks the circular dependency between them
2017-06-06 14:29:25 +03:00
Alexander Udalov cc2f607be3 Remove dependency of module 'frontend.java' on 'javac-wrapper'
This breaks the circular dependency between them
2017-06-06 14:29:24 +03:00
Alexander Udalov 1df13e0bc9 Move TopDownAnalyzerFacadeForJVM to module 'cli'
It's only used in the command line compiler and in tests
2017-06-06 14:29:23 +03:00
Alexander Udalov f6c263b54d Remove dependency of module 'javac-wrapper' on 'cli' and 'cli-common'
This breaks the circular dependency between them
2017-06-06 14:29:22 +03:00
Alexander Udalov 1273ac9647 Remove dependency of module 'descriptors' on 'deserialization' 2017-06-06 14:29:21 +03:00
Alexander Udalov 751ff48301 Extract logic of builtins package fragment provider creation
This allows to drop the compile dependency of module 'descriptors' on
'deserialization', breaking the circular dependency between them
2017-06-06 14:29:20 +03:00
Alexander Udalov 1728b77b2c Minor, refactor createBuiltInsPackageFragmentProvider 2017-06-06 14:29:19 +03:00
Alexander Udalov cbaa676c3d Move some declarations between 'descriptors' and 'deserialization'
- Move the following from 'deserialization' to 'descriptors':
  NotFoundClasses.kt
  AdditionalClassPartsProvider.kt
  ClassDescriptorFactory.kt
  PlatformDependentDeclarationFilter.kt
  findClassInModule.kt
- Move the following form 'descriptors' to 'deserialization':
  BuiltInSerializerProtocol.kt
  builtInsPackageFragmentProvider.kt
- Extract a marker interface from BuiltInsPackageFragment and move its
  implementation to 'deserialization'
- Change the type of parameters in PlatformDependentDeclarationFilter
  and AdditionalClassPartsProvider to ClassDescriptor

This will help in getting rid of the circular dependency of
'descriptors' <-> 'deserialization'
2017-06-06 14:29:18 +03:00
Alexander Udalov a4931568ba Relocate service definition files for kotlin-reflect
See
http://imperceptiblethoughts.com/shadow/#merging_service_descriptor_files

 #KT-16810 Fixed
2017-06-06 14:29:17 +03:00
Alexander Udalov 2b878f863c CLI: report error if kotlinc is invoked on Java 6 or 7
#KT-17297 Fixed
2017-06-06 14:17:28 +03:00
Alexander Udalov ea9194e1fb CLI: compile preloader against JDK 1.6
To be able to detect the Java runtime version at startup to report an
error if it's < 1.8
2017-06-06 14:17:27 +03:00
Alexander Udalov a236400785 CLI: drop CommonCompilerArguments.createDefaultInstance
Move the corresponding default value initializers to the field
declarations
2017-06-06 14:17:26 +03:00
Alexander Udalov 26e3d2cf5d Use TopLevelDeclarations analysis mode in REPL
#KT-12564 Fixed
2017-06-06 14:00:45 +03:00
Alexey Andreev b6d12fe7f3 Fix bug in re-importing modules from inline declarations in JS
Fix another case in KT-18201
2017-06-06 13:36:19 +03:00
Alexey Andreev 67f9474e2e Update changelog for 1.1.3 2017-06-06 11:40:36 +03:00
Dmitry Petrov fd1866b838 Do not check argumentMapping.isError()
Argument matching status can be considered an "error" in resolve,
even though it is not a compilation error and doesn't prevent code
from being generated.
Actually, we should only check if the argument matching status is
ArgumentMatch.

 #KT-18294 Fixed
2017-06-06 10:19:18 +03:00
Dmitry Neverov e2aa3518df Property accessor isn't recursive when called on another object
So #KT-18120 Fixed
2017-06-05 19:42:44 +03:00
Mikhail Glukhikh ecfc2236a6 Fix script properties kind in modifier checker #KT-18234 Fixed 2017-06-05 17:22:11 +03:00
Mikhail Glukhikh 29f25ebeb9 Fix of JUnitMembersSearcherTest.testJunit3 2017-06-05 16:57:10 +03:00
Alexey Andreev ee18c0f4e7 Fix name of JS DCE tool 2017-06-05 11:22:37 +03:00
Alexey Andreev 3180ea24d1 Fix assertion in test for reimporting declarations in JS 2017-06-05 11:21:41 +03:00
Alexander Udalov e67e0440bb Rename LexicalScope.Empty -> Base
"Empty" is slightly confusing because although the scope has no declared
symbols, it is not empty: it has a parent scope which can contain
symbols and can have parents as well
2017-06-05 10:27:38 +03:00
Alexey Andreev 1df6f2f9a0 JS BE: expose imported modules via $$importsForInline$$ property
... and use it as prefix to FQN in inline functions. This allows
to properly inline function declared in module A to module B,
when this function calls another function in module C.

See KT-18201
2017-06-02 14:18:42 +03:00
Dmitry Petrov 978661c53d Do not generate default parameter values for synthetic functions
This causes a subtle issue with 'copy' function for data class,
which has parameters with source elements corresponding to
the data class primary constructor parameters: default value expression
for such parameters is generated second time (to be overwritten later),
which creates duplicate bindings if such expression included any
(possibly anonymous) declarations, such as lambdas or anonymous objects.

 #KT-18208 Fixed
2017-06-02 10:57:45 +03:00
Alexander Udalov eb3e728e63 Merge pull request #1111 from mithunsasidharan/patch-1
Fixed a typo in a comment
2017-06-02 10:47:18 +03:00
Alexander Udalov 45053c1de6 Merge pull request #1112 from mithunsasidharan/master
Minor corrections in spec-docs
2017-06-02 10:46:34 +03:00
Dmitry Petrov 4a632857d7 Fix internal compiler error in DefaultParameterValueSubstitutor
Most likely a typo in the original code.
2017-06-02 10:14:33 +03:00
Mithun Sasidharan 15716a7a3c Minor corrections to spec-docs 2017-06-02 10:59:59 +05:30
Mithun Sasidharan 21849fe466 Fixed a minor spelling mistake in a comment
Fixed a minor spelling mistake in a comment
2017-06-02 08:57:00 +05:30
Vyacheslav Gerasimov 24476fc581 Fix MoveProperty intention: better property placement
Property is placed now before first property, or at the beginning of class body if no properties found.

#KT-18044 Fixed
2017-06-01 20:35:20 +03:00
Vyacheslav Gerasimov ca124d1e36 Remove Android api diagnostic error on Kotlin interface default methods
They don't require java 8 or any other special support to work on Android

#KT-18059 Fixed
2017-06-01 20:35:08 +03:00
Dmitry Jemerov 286f82a5c5 Don't set java.awt.headless if it was set externally 2017-05-31 16:02:26 +02:00
Alexey Tsvetkov 5a22917f82 Run Gradle Android tests with other Gradle tests 2017-05-31 16:59:03 +03:00
Alexey Tsvetkov aa9a40b61b Add tests with new Android Gradle Plugin 2017-05-31 16:59:03 +03:00
Sergey Igushkin dce6a4f869 Fix UnsupportedOperationException caused by mutation of FileCollection 2017-05-31 16:59:03 +03:00
Sergey Igushkin a68f7d79f5 Migration to AGP 2.3.0 2017-05-31 16:59:03 +03:00