Commit Graph

553 Commits

Author SHA1 Message Date
Alexander Udalov 97b4d89f0b Use internal names in multifile class metadata
To reuse the strings already existing in the constant pool of the class file

Original commit: bdd69d9e46
2015-10-03 00:59:34 +03:00
Alexander Udalov bdd8b3825b Write JVM signatures to new protobuf messages
Original commit: 8c0a86617a
2015-10-03 00:59:33 +03:00
Alexander Udalov ba87e98243 Split ProtoBuf.Callable to three messages: constructor, function, property
Serialize both at the moment, will drop the old one after bootstrap

Original commit: ad735cd788
2015-10-03 00:59:30 +03:00
Alexander Udalov 72b39ee233 Deprecate and don't write KotlinClass$Kind, to be removed later
Original commit: 041af28166
2015-10-03 00:59:30 +03:00
Alexander Udalov feabc81e3a Deprecate and don't write KotlinSyntheticClass$Kind, to be removed later
Original commit: 056bb3f833
2015-10-03 00:59:28 +03:00
Alexander Udalov 8550ed6cec Cleanup descriptors.proto, regenerate
- move enums and messages nested in Callable to top level, since they're likely
  to be reused in other messages soon
- delete obsolete comments: some did not any value, some became obsolete with
  custom options ("id in StringTable" -> name_id_in_table)

Original commit: e4090d3f30
2015-10-02 20:30:55 +03:00
Pavel V. Talanov 962d233e1a 'descriptors' module exports 'deserialization', not the other way around
Also remove some of redundantly specified dependencies

Original commit: 0ae842a05d
2015-10-01 17:53:13 +03:00
Michael Nedzelsky e654254c9f add tests for incremental compilation: package members
Original commit: 0de9e8295a
2015-10-01 15:16:30 +03:00
Michael Nedzelsky d3d256e709 incremental compilation: do not recompile on changes in private static final values.
Original commit: 8557e540fc
2015-10-01 15:16:26 +03:00
Michael Nedzelsky ac20dbf780 add tests for comparison of package members
Original commit: bc6746b9e6
2015-10-01 15:16:22 +03:00
Michael Nedzelsky bacc14b4c4 fix KT-8977 Ignore non-public API changes for packages in incremental compilation
#KT-8977 Fixed

Original commit: c7b52bfdc1
2015-10-01 15:16:18 +03:00
Zalim Bashorov eb1f04c29d Move visibility check for toplevel private declarations to Visibilities.PRIVATE and fix it.
Original commit: a36e4abf4d
2015-10-01 14:57:26 +03:00
Dmitry Petrov 44f754521a Migrate to new storage API.
Remove IncrementalPackageFragment::getMultifileFacade.

Original commit: 9a41ee41d7
2015-09-30 09:56:05 +03:00
Dmitry Petrov aef8470196 Incremental compilation support for multifile classes.
Original commit: 3dfe9951ef
2015-09-30 09:56:05 +03:00
Denis Zharkov db78429e2d Change INTERFACE_IMPL_CLASS_NAME: $TImpl -> DefaultImpls
Original commit: a101fffd9a
2015-09-30 08:19:51 +03:00
Zalim Bashorov 05f074ac4c KotlinBuilder: improve logging
Original commit: 0eac238f9b
2015-09-29 19:42:29 +03:00
Alexander Udalov 68e17044fe Introduce new string table optimized for JVM class files
This format of the string table allows to reduce the size of the Kotlin
metadata in JVM class files by reusing constants already present in the
constant pool. Currently the string table produced by JvmStringTable is not
fully optimized in serialization (in particular, the 'substring' operation
which will be used to extract type names out of generic signature, is not used
at all), but the format and its complete support in the deserialization
(JvmNameResolver) allows future improvement without changing the binary version

Original commit: 1036506b25
2015-09-29 16:26:28 +03:00
Alexander Udalov 46f1add2f3 Introduce infrastructure to separate string table from metadata on JVM
Nothing especially helpful happens here, this is only a big refactoring
introducing a separate string array for the string table, which is currently
always empty, but will contain actual strings soon

Original commit: 6a8d0fbd75
2015-09-29 16:26:27 +03:00
Alexander Udalov 1e2cb13c07 Remove NameResolver#getFqName, replace with getClassId
Original commit: 89fe54c951
2015-09-29 16:26:26 +03:00
Alexander Udalov 7e24eb8d91 Simplify storage of JVM signatures in binary metadata
Store the whole method & field descriptor strings. Moving these strings to
separate annotation arguments later will allow to reuse them with the ones in
the constant pool, presumably allowing to save lots of space (up to 10%)

Original commit: 7d5bd3cf50
2015-09-29 16:26:25 +03:00
Alexander Udalov 99bf0fd03f Delete deprecated Type.Constructor message, advance ABI version
Original commit: e749bc262d
2015-09-29 16:26:24 +03:00
Stanislav Erokhin 7de15ca7d1 Minor. Fix testdata.
Original commit: 5a61871d4b
2015-09-29 13:33:57 +03:00
Michael Nedzelsky 4755cab740 fix check for internal from another module in imports and file level annotations
Original commit: 0035bbba7c
2015-09-27 20:37:41 +03:00
Michael Nedzelsky 8c8a3e549c remove incremental test: accessPrivateMembers
Original commit: 2f9151ec18
2015-09-25 21:16:03 +03:00
Alexey Tsvetkov ae9c86ddd1 Remove tests on turning incremental on/off temporary
Original commit: 743c59331d
2015-09-25 20:11:58 +03:00
Alexey Tsvetkov 81d59de601 Update cache version
Original commit: 1002d233cb
2015-09-25 20:11:58 +03:00
Alexey Tsvetkov 8e27d32a7b Clean only kotlin caches when incremental compilation is off
Original commit: ba33020140
2015-09-25 20:11:58 +03:00
Alexey Tsvetkov 4e7cc0b637 Minor: rename test cases
Original commit: 1298d115bd
2015-09-25 20:11:57 +03:00
Alexey Tsvetkov 5b4101ee0d Fix recompilation of dependent modules on cache/abi version change
New cache version was written to dependent targets,
when they have not been compiled yet

 #KT-9190 Fixed

Original commit: c7f66a1585
2015-09-25 20:11:57 +03:00
Alexey Tsvetkov aa029d2113 Clean all storages if incremental compilation is off
Original commit: 7ef23da289
2015-09-25 20:11:57 +03:00
Alexey Tsvetkov 5fae296bea Test caches creation with turning incremental on/off
Original commit: 2bed8d0557
2015-09-25 20:11:57 +03:00
Alexey Tsvetkov d591e31eee Enable disabling incremental compilation for tests
Original commit: 68437175f6
2015-09-25 20:11:57 +03:00
Alexey Tsvetkov 20d6f01919 Write cache version only if incremental compilation is enabled
Original commit: b6bbc4015b
2015-09-25 20:11:57 +03:00
Alexey Tsvetkov 86e80e4a58 Test that Kotlin incremental caches are created lazily
Original commit: a3f2ccf72d
2015-09-25 20:11:57 +03:00
Alexey Tsvetkov 3823a0f986 Access cache version file in tests using CacheVersionFormat
Original commit: 4b880f324a
2015-09-25 20:11:56 +03:00
Alexey Tsvetkov dace403875 Move incremental compilation enabled check from CacheFormatVersion to KotlinBuilder
Original commit: 92d5b93cc7
2015-09-25 20:11:56 +03:00
Alexey Tsvetkov 44293a581f Move CacheFormatVersion to separate file
Original commit: 0904b4bae8
2015-09-25 20:11:56 +03:00
Alexey Tsvetkov 37c861100d Create map so it will always be added to maps
Original commit: 5c9b962567
2015-09-25 20:11:56 +03:00
Alexey Tsvetkov 71e3aef808 Minor: remove unused function
Original commit: a611dd9d25
2015-09-25 20:11:56 +03:00
Alexey Tsvetkov 10ee4858d0 Minor: remove unused ClassToSources map
Original commit: b8388ae7ed
2015-09-25 20:11:56 +03:00
Alexey Tsvetkov eabfd142f3 Create Kotlin incremental caches only on write
Original commit: fe390a04c5
2015-09-25 20:11:56 +03:00
Alexey Tsvetkov e810c6f007 Revert removing testDoNotCreateUselessKotlinIncrementalCaches
Removed by mistake in 46233cb721

Original commit: c0b208275e
2015-09-25 20:11:56 +03:00
Alexey Tsvetkov 6a1fc0c563 Flush dataManager in KotlinJpsBuildTest
Original commit: 8c7053552b
2015-09-25 20:11:55 +03:00
Stanislav Erokhin c5e44eca7b Minor. Fix testdata.
Original commit: 8ab4114291
2015-09-25 19:10:03 +03:00
Natalia Ukhorskaya e1266bb28f Minor. Fix file path for windows
Original commit: 40554996f8
2015-09-25 19:10:02 +03:00
Michael Nedzelsky 5852d10a1a add tests in KotlinJpsTest for check access to internal elements from another module
Original commit: 0b49195a03
2015-09-25 14:02:26 +03:00
Michael Nedzelsky 6b3ab6ec56 add tests for incremental compilation with changed internal class
Original commit: ad274c5137
2015-09-25 14:02:21 +03:00
Zalim Bashorov 08f5093adb Add tests for cases when add and remove custom accessors for val with smartcasted usage
Original commit: 79ac436b9f
2015-09-24 22:50:48 +03:00
Ilya Chernikov 1efdfbe6db Refactoring parts related to passing services to compiler in daemon, adding uniform support for cancellation check and lookup tracking
Original commit: 4b1601974f
2015-09-24 10:44:44 +02:00
Ilya Chernikov 23dc79b418 Converting KotlinCompilerRunner.java to kotlin - phase 3 - refactoring to more kotlin style
Original commit: 3c16b2de87
2015-09-24 10:42:54 +02:00