Commit Graph

648 Commits

Author SHA1 Message Date
Yan Zhulanow 2a7b5501f4 Do not generate annotations.txt file if kapt is not used in project 2015-05-27 16:11:08 +03:00
Yan Zhulanow 42ba2860a6 Gradle: Do not save javaTask extract property 2015-05-27 16:11:07 +03:00
Yan Zhulanow b254825427 kapt: fix several annotation processors in AP wrapper 2015-05-27 16:11:06 +03:00
Yan Zhulanow c2dd7d197e APT: Use task qualifiers in annotation file names 2015-05-27 16:11:05 +03:00
Yan Zhulanow cbe435ccef APT: Remove stub Java file after Java compile step 2015-05-27 16:11:04 +03:00
Yan Zhulanow 0a450c1739 Fix compatibility issues with Android Gradle plugin 1.2 2015-05-27 16:11:03 +03:00
Natalia Ukhorskaya 0fbcfddf4a Gradle: debug message prefix added 2015-05-27 10:20:09 +03:00
Ilya Gorbunov 45c82f2844 map(): Take into account size of collection being transformed when allocating ArrayList.
#KT-7832 Fixed.
2015-05-26 23:23:36 +03:00
Ilya Gorbunov 01a0348685 Remove deprecated size property usage from generated code. 2015-05-26 23:23:32 +03:00
Alexander Udalov 49004a8b8e Conform functions to extension functions and vice versa
#KT-5989 Fixed
2015-05-26 15:04:56 +03:00
Alexander Udalov 45c28abfee Keep built-in metadata for reflection interfaces
Reflection interfaces (interfaces in kotlin.reflect.* in core/builtins/) are
now fully considered as built-ins and can be accessed via KotlinBuiltIns. This
increases runtime size by ~20kb, but only because KotlinBuiltIns is static and
is therefore constructed only via resource loading from the compiler classpath
at the moment. As soon as it's possible to inject KotlinBuiltIns to the
particular resolution process, the metadata on JVM will be loaded via standard
annotation mechanism (kotlin.jvm.internal.KotlinClass/KotlinPackage) and wasted
runtime space will be reclaimed
2015-05-26 14:27:38 +03:00
Sergey Mashkov fe26bd22f0 JS stubs: add URL specification 2015-05-25 14:55:47 +03:00
Sergey Mashkov 07a3233569 JS stubs: add CSSOM view specification and GEOMETRY spec 2015-05-25 12:36:42 +03:00
Ilya Gorbunov 33f5158170 Fix deprecated replaceAll and replaceFirst usages in stdlib tests and tools. 2015-05-22 16:13:55 +03:00
Ilya Gorbunov 36fb5b3c49 Use platform independent way to split output to lines. 2015-05-22 16:12:07 +03:00
Yan Zhulanow 89d3a4b623 Move AnnotationProcessingManager to main kotlin-gradle-plugin 2015-05-21 15:48:30 +03:00
Yan Zhulanow 6de79f46e4 More kotlin-annotation-processing parsing tests 2015-05-21 15:48:29 +03:00
Yan Zhulanow 07214c4f35 Platform-agnostic text compare in kotlin-annotation-processing 2015-05-21 15:48:27 +03:00
Yan Zhulanow 692e396ffd Support constructors in kapt wrapper 2015-05-21 15:48:26 +03:00
Yan Zhulanow 62a1f8edf3 Rename kotlinApt/ directories to kapt/ 2015-05-21 15:48:25 +03:00
Yan Zhulanow c414c598ca Minor: fixes in KotlinAnnotationProvider (APT wrapper) 2015-05-21 15:48:24 +03:00
Yan Zhulanow d2e256f470 Output annotation processor fqName if the processor can't be initialized 2015-05-21 15:48:24 +03:00
Yan Zhulanow 0363b6b911 Warn if the generated source destination (for APT) was modified 2015-05-21 15:48:23 +03:00
Yan Zhulanow 7a2f3bf1ea Replace all dollar signs in class name with . (temporary workaround) 2015-05-21 15:48:22 +03:00
Yan Zhulanow 01a097dae7 Annotations file name change: annotations.txt -> annotations.kotlin.txt 2015-05-21 15:48:20 +03:00
Yan Zhulanow fdc183e3af Apt working dir is now outside the Kotlin classes directory 2015-05-21 15:48:19 +03:00
Yan Zhulanow d93508f4d3 APT: Support non-Android Java projects in Gradle 2015-05-21 15:48:18 +03:00
Yan Zhulanow 80762f99bb Catch UnknownPropertyException properly 2015-05-21 15:48:17 +03:00
Yan Zhulanow 297f2d0669 Add annotation file parse tests in AP wrapper 2015-05-21 15:48:16 +03:00
Yan Zhulanow 803bfd6097 Add kotlin-annotation-processing dependency automatically in kotlinApt configurations 2015-05-21 15:48:15 +03:00
Yan Zhulanow 964e57a8f8 Add annotation processor wrapper as a Maven artifact 2015-05-21 15:48:14 +03:00
Yan Zhulanow c6e11949b8 Support Android source sets in annotation processing 2015-05-21 15:48:11 +03:00
Yan Zhulanow 905eb01044 Annotation processor wrapper fqName changed 2015-05-21 15:48:10 +03:00
Yan Zhulanow 3e5b24f2a2 Add output dir for generated sources 2015-05-21 15:48:09 +03:00
Yan Zhulanow ee8f2bbd75 Generate custom annotation class file 2015-05-21 15:48:09 +03:00
Yan Zhulanow 1dd96a3f23 Move APT-related functions to AnnotationProcessingManager 2015-05-21 15:48:08 +03:00
Yan Zhulanow f12531dd6d Initial annotation processing support in Gradle 2015-05-21 15:48:07 +03:00
Michael Nedzelsky d629271510 JS: make -meta-info cli option boolean 2015-05-21 02:30:54 +03:00
Ilya Gorbunov 6a3cb0eff8 Provide distinctBy(keySelector) method for collections and sequences.
Implement distinct() and toMutableSet() for sequences.
Breaking change: distinct() now returns List instead of Set.

#KT-5834 Fixed
#KT-6063 Fixed
2015-05-20 19:28:47 +03:00
Ilya Gorbunov 85e637b1e7 Revert toArrayList for primitive arrays back to trivial implementation.
Use newly introduced Int.MAX_VALUE in JS.
Inline mapCapacityForValues function.
Precalculate capacity of linked hash set being created with toMutableSet function.
2015-05-20 19:28:44 +03:00
Danny Thomas 7ce0487b7e Collection performance improvements
Lists

- For arrays, use Arrays.asList, then toArrayList making the list creation an array copy
- For the same reason, use the ArrayList(Collection) constructor
- Replace duplicate code in toList, instead calling toArrayList

Maps/Sets

- Where the size of the source is known, precalculate the capacity, using the formula used by Guava's Maps class
- For toMap where we're unable to get at the private function, use HashSet's formula where the size is known
- Add a toMap that takes a selector and a transform, avoiding a separate step for transforming values
2015-05-20 19:27:44 +03:00
Sergey Mashkov 4695aed993 Replace trait with interfaces in JavaScript stubs 2015-05-20 14:01:03 +03:00
Sergey Mashkov 4ef745974e Maven: Fix build for Maven 3.0.5 2015-05-19 15:00:10 +03:00
Sergey Mashkov 72238c4d39 Maven: maven annotations is required in compile time in some cases 2015-05-18 19:59:55 +03:00
Sergey Mashkov d04ec74217 Maven: use maven-annotations in kotlin-maven-plugin 2015-05-18 19:36:19 +03:00
Sergey Mashkov 35ed682714 Maven: Introduce test-js goal
#KT-7757 Fixed Maven K2JS should be able to build tests too
2015-05-18 19:36:18 +03:00
Sergey Mashkov b25ae3d7dd JS stdlib-gen shouldn't call outdated codegen 2015-05-18 19:35:48 +03:00
Sergey Mashkov 606ea7bb70 Do not pass non-existing source roots to the compiler
#KT-3679 Fixed Maven build fails when some source directories don't exist
2015-05-18 19:27:35 +03:00
Sergey Mashkov 0578f44fd0 Maven: don't scan target directories for annotations in multimodule project
#KT-7187 Fixed Maven K2JVM compiler scanning for annotations
2015-05-18 19:27:35 +03:00
Mikhail Glukhikh fdf0ea5546 Enum warnings fixed: deprecated delimiters, short super constructors, both in project and in libraries 2015-05-18 16:08:16 +03:00