Commit Graph

6021 Commits

Author SHA1 Message Date
Alexander Udalov 74ba0080b1 Improve header/impl mismatch diagnostic messages
Try to report most mismatch errors on the 'impl' declaration. Only
report a mismatch error on the 'header' declaration if no error would be
otherwise reported on any 'impl' declaration in the compilation unit.
Also render declaration kind in the message

 #KT-18447 In Progress
2017-08-25 15:35:05 +03:00
Alexander Udalov 472959aca1 Improve rendering of modifiers in DescriptorRenderer
* Use bold font to render all modifiers
* Render 'external' according to the style guide, right after modality
2017-08-25 15:35:05 +03:00
Dimach b988fb701d KT-17888 Inspection to warn about suspicious combination of == and === 2017-08-24 18:14:24 +02:00
Vyacheslav Gerasimov aedb4c0ade Android Lint: Fix constant evaluation in annotation parameter
#KT-17785 Fixed Target Versions 1.1.5
2017-08-23 13:18:56 +03:00
Vyacheslav Gerasimov e06cb1ec39 Android Lint: Use Uast to check for SuppressLint annotation
#KT-14800 Fixed Target versions 1.1.5
2017-08-23 13:18:42 +03:00
Vyacheslav Gerasimov f941186f75 UAST: Properly handle annotations on local variables 2017-08-21 15:02:01 +03:00
Pavel V. Talanov 6424b6760f Remove StorageComponentContainerContributor::onContainerComposed
Rename addDeclarations -> registerModuleComponents
Use it to provide SamWithReceiverResolver extensions instead

Post construction on container composition can be achieved
    but manually inserting injections where it seems appropriate
    is bug prone
This fixes a bug where SamWithReceiverPlugin extension was not registered
    for some containers in IDE which led to incorrect highlighting in IDE
Add IDE test for applying SamWithReceiver plugin

 #KT-18062 Fixed
2017-08-18 19:11:25 +03:00
Toshiaki Kameyama f0f6a252a5 Offer to make INVISIBLE_MEMBER protected if referenced from subclass
So #KT-19614 Fixed
2017-08-18 15:53:41 +03:00
Toshiaki Kameyama 82fc221470 Add "flip equals" intention for String.equals extension from stdlib
So #KT-19282 Fixed
2017-08-18 14:34:14 +03:00
takahirom 806aa7d4c1 Add inspection for redundant overrides that only calls the super method
So #KT-19428 Fixed
2017-08-18 12:05:02 +03:00
Dmitry Jemerov 99a402ee30 Correctly show quick doc for lookup elements that only have descriptors
#KT-19716 Fixed
2017-08-17 16:53:54 +02:00
Dmitry Jemerov f7c17d6a64 Naming convention inspections 2017-08-16 15:45:33 +02:00
Alexey Sedunov 787bbe9a4c Safe Delete: Support header/impl declarations
#KT-18433 Fixed
2017-08-15 19:08:29 +03:00
Alexey Sedunov 1215b2864b Safe Delete: Use actual usage PSI in UsageInfo instead of declaration
#KT-19161 Fixed
2017-08-15 19:08:28 +03:00
Alexey Sedunov 2f556e1bea Refactorings: Support header/impl functions in member hierarchy transformations
#KT-18904 Fixed
 #KT-18905 Fixed
2017-08-15 19:08:28 +03:00
Alexey Sedunov 537c1fd063 Convert Function Type Parameter to Receiver: Drop redundant arrows 2017-08-15 19:08:28 +03:00
Alexey Sedunov f80fcc7146 Parameter <-> Receiver Conversion: Support header/impl declarations
#KT-18907 Fixed
2017-08-15 19:08:27 +03:00
Alexey Sedunov d3a9d122e6 Add 'operator' Intention: Support header/impl functions
#KT-18851 Fixed
2017-08-15 19:08:27 +03:00
Alexey Sedunov cd5c382179 Convert member to extension: Support members of header/impl classes
#KT-18883 Fixed
2017-08-15 19:08:27 +03:00
Alexey Sedunov 4dbde03c3b Rename: Support parameters of header/impl functions
#KT-18393 Fixed
2017-08-15 19:08:27 +03:00
Alexey Sedunov f5c7db8270 Change Signature: Support constructors of header/impl classes 2017-08-15 19:08:26 +03:00
Alexey Sedunov 8439e15c6e Change Signature: Support members of header/impl classes 2017-08-15 19:08:26 +03:00
Alexey Sedunov e4f70a3568 Rename: Support members of header/impl classes
#KT-18885 Fixed
 #KT-18898 Fixed
 #KT-18899 Fixed
2017-08-15 19:08:26 +03:00
Alexey Sedunov 62ca3bab31 Move: Do not skip usages of declarations without light elements
#KT-18873 Fixed
2017-08-15 19:08:25 +03:00
Alexey Sedunov f455f06a9e Change Signature: Fix replacement of implicit Unit return type 2017-08-15 19:08:25 +03:00
Alexey Sedunov 386b1fc002 Line Marking: Fix search of overriding methods in platform modules
#KT-19212 Fixed
2017-08-15 19:08:25 +03:00
Dmitry Jemerov 1fe3f84071 Don't search twice for the same declaration 2017-08-15 11:39:40 +02:00
Nikolay Krasko 2cf4da8564 Fix test behaviour in branch 172 2017-08-10 22:05:49 +03:00
Nikolay Krasko d8c20ed9c0 Fix debugger test in 172 (KT-18848)
#KT-18848 Fixed
2017-08-10 22:05:49 +03:00
Dmitry Jemerov bdbe134b60 Recreate module descriptors for affected modules only on a change 2017-08-09 13:26:09 +02:00
Dmitry Jemerov d6a9a49968 Disable tracking of Kotlin files by Java OOCB listener 2017-08-09 13:26:09 +02:00
Valentin Kipyatkov e52c3b4c81 Rewritten KDoc-link resolve and completion to work more reasonably 2017-08-08 22:06:04 +03:00
Valentin Kipyatkov 998814b1a1 Support for import aliases in both resolve and completion in KDoc 2017-08-08 22:06:04 +03:00
Nikolay Krasko 60e330b6f3 Update configure tests after binding comments and spaces to script body 2017-08-08 15:26:16 +03:00
Mikhail Zarechenskiy 4d4c39939f Report full package FQ name in compilation errors related to visibility
#KT-18966 Fixed
2017-08-07 18:49:55 +03:00
Daniil Vodopian b24c1bf06c KT-9669: introduced JoinStatementAddSemicolonHandler; registered the handler in plugin.xml; added test coverage (#1232) 2017-08-07 16:20:40 +02:00
Dimach d624ed4aff KT-18482: "Move lambda argument to parenthesis" action generate uncompilable code fixed (#1226)
* KT-18482 fixed

* Moved code to separate method and changed code to cover few more cases.

* Code style fixes.
2017-08-07 15:43:44 +02:00
Toshiaki Kameyama 64eeb479aa Take nullability annotations into account in QF correcting override
So Java NotNull annotated is converted to `Type`
and Java Nullable annotated to `Type?` accordingly

So #KT-19299 Fixed
2017-08-07 13:52:25 +03:00
Andrius Semionovas 666c241479 KT-19126 Add convert property initializer to getter in interfaces (#1224) 2017-08-07 11:53:37 +02:00
Nikolay Krasko 8d226594ff Put comments and whitespaces under body in script files
It's more consistent to normal function body for IDE.
Doc comments in file beginning are now sticks to declarations
correctly.
Moving declarations at the end of scripts is fixed
2017-08-07 12:17:17 +03:00
Nikolay Krasko 6194bc10f8 Move statement out of top-level lambda in scripts (KT-19322)
#KT-19322 Fixed
2017-08-07 12:12:41 +03:00
Toshiaki Kameyama dbaec43e4d Make abstract both member and class while applying "Make abstract"
So #KT-12613 Fixed
2017-08-04 21:34:21 +03:00
Toshiaki Kameyama 0a9e0ddba9 Use back-ticks correctly in "Add remaining branches" action
So #KT-13985 Fixed
2017-08-04 20:58:46 +03:00
Alexey Sedunov 97a3d343f7 Create Class from Usage: Support nested classes
This covers the case when original expression doesn't contains qualifier
Also for local or inner containing classes:
  - forbid nested objects
  - add 'inner' to nested class declaration

 #KT-16404 Fixed
2017-08-04 16:48:36 +03:00
Alexey Sedunov 78117b3e7b Create from Usage: Infer expected type from base declarations
#KT-17480 Fixed
2017-08-04 16:48:35 +03:00
Kirill Rakhman 41e5840298 Implement inspection for redundant lambda arrow
Fixes #KT-11991
2017-08-03 15:37:04 +02:00
Kirill Rakhman 9ac1a0140c Add inspection for when with only else (#1206)
Fixes #KT-12523
2017-08-03 15:30:28 +02:00
Nikolay Krasko 1ef5362edc Fix breakpoints from Kotlin file placed in irrelevant class (KT-19429)
State that there're no locations in given file, if all locations for
line were filtered out because of wrong file name. Need this because
if we throw exception, other positions managers may return locations
without explicit check for file type or file name.

See PositionManagerImpl.java

 #KT-19429 Fixed
2017-08-03 13:11:06 +03:00
Dmitry Jemerov b423d58a14 Load JSR-305 annotations for libraries if it's enabled for any module
#KT-19303 Fixed
2017-08-02 15:25:34 +02:00
Alexey Sedunov 53d12e6cf7 Method Hierarchy: Refactoring
- Do not rely on light methods and Java method hierarchy
- Support val/var parameters
- Support built-in member functions

 #KT-14346 Fixed
2017-08-02 13:08:06 +03:00