Anton Bannykh
56915d1c07
JS: optimize JSON parser
2019-05-28 23:33:17 +03:00
Alexander Udalov
a3d8fdf30a
Fix compilation of kotlin-maven-plugin
...
Also remove the remaining usage (in a comment) of
JvmAbi.DEFAULT_MODULE_NAME
2019-05-27 13:21:31 +02:00
Vadim Brilyantov
ced973b707
Introduce new Kotlin Daemon without RMI abstraction
2019-05-17 15:51:51 +03:00
Dmitry Gridin
3bed360c98
Fix "Should be replaced with Kotlin function" warnings
2019-04-18 15:28:52 +07:00
Alexander Udalov
59fda8d7ce
Support JvmPackageName with JvmMultifileClass
...
This is an internal feature of our standard library needed to compile
new API for unsigned types
2019-03-06 15:34:23 +01:00
Roman Artemev
a19bdd0c18
[JS IR BE] Refactored klibs proto files
2019-03-04 23:24:16 +03:00
Roman Artemev
52baf90518
Drop DebugJsAstProtoBuf
2019-03-04 23:24:15 +03:00
Alexander Udalov
76e133014b
Minor, explain why we don't store array type arguments in ::class in proto
2019-02-26 19:09:42 +01:00
Anton Bannykh
4b39e2df12
JS: (review fix) Header -> InlineData
2019-02-14 15:14:28 +03:00
Anton Bannykh
a35fc4fa3c
JS: use string table for module names and inline function tags
2019-02-14 15:14:28 +03:00
Anton Bannykh
d7499363bc
JS: review fixes
2019-02-14 15:14:28 +03:00
Anton Bannykh
52b705e7ae
JS: Fix local aliases
...
Local aliases can be copied as-is to a different fragment now. Before this change we would have had to extract the local alias tag (if any) from the source fragment and add to the destination fragment name bindings.
2019-02-14 15:14:28 +03:00
Anton Bannykh
a30c7fbee1
JS: Support imported wrapper serialization
2019-02-14 15:14:28 +03:00
Anton Bannykh
2cbdc7ecb0
JS: store whole JsImportedModule's in the module local alias
...
Module references were stored as plain JsName's. When inlining a function
from one fragment to another, those references should be re-interpreted
in terms of the destination fragment. Storing the whole module information
makes that much easier.
2019-02-14 15:14:28 +03:00
Anton Bannykh
6d26bf9622
JS: don't load binary AST unless required by the inliner
2019-02-14 15:14:28 +03:00
Anton Bannykh
3529114913
JS: incremental translation of tests and main fun invocation
2019-02-14 15:14:28 +03:00
Alexander Udalov
38aad20231
Update konan.proto to be consistent with kotlin-native repo
...
See https://github.com/JetBrains/kotlin-native/pull/2278
2018-10-31 17:20:13 +01:00
Alexander Udalov
1ee1d15b91
Support annotations on property accessors in JS/common metadata
...
#KT-14529 Fixed
2018-10-24 18:17:12 +02:00
Sergey Rostov
4975ef7db5
JPS tests: restore MPP tests runner, support new MPP model
2018-09-13 20:30:32 +03:00
Dmitriy Dolovov
cb7009ace8
K/N: Rename "kotlin-native-serializer" to "kotlin-native-library-reader"
2018-09-08 12:16:24 +03:00
Dmitriy Dolovov
db29d12c60
[K/N lib] merge metadata & serializer, publish the result to Maven
2018-09-08 12:16:17 +03:00
Dmitriy Dolovov
fade311b92
[K/N lib] add Kotlin/Native metadata
2018-09-08 12:16:15 +03:00
Alexander Udalov
f90303315d
Support array class literals in annotation serializer/deserializer
...
Note that this change brings an incompatibility: `Array<Foo>::class`
will be seen as `Foo::class` by the old deserializer. We consider this
OK because the compiler never had any logic that relied on reading class
literal arguments correctly (otherwise it wouldn't have worked because
it could only see `Array<*>::class` before this commit), and the support
of annotations on types in JVM reflection is only available in the
upcoming 1.3 release (KT-16795)
#KT-22069 Fixed
2018-09-06 14:40:06 +03:00
Alexander Udalov
c011bf61fe
Support multiple version requirements on single element
2018-08-13 11:02:35 +02:00
Alexey Tsvetkov
11977cc1c1
Add multi-module JS IC tests with JPS
2018-07-23 15:43:17 +03:00
Alexander Udalov
715abda908
Add JvmFlags, use flags field instead of is_moved_from_interface_companion
...
To be able to add more property-related flags into the same int field
later
2018-07-18 13:24:44 +02:00
Mikhael Bogdanov
719c1882e0
Add new flag to proto for field moved out from interface companion
2018-07-16 16:13:14 +02:00
Mikhail Zarechenskiy
0c6757a8b0
Write is_unsigned flag into metadata for an annotation arguments
...
Instead of adding new kind of types, we'll use flag to disambiguate
usual types from unsigned ones, this approach has two advantages:
- less changes in the metadata format
- it allows naturally extend format for unsigned arrays,
which will be supported later
#KT-25310 Fixed
#KT-25273 Fixed
2018-07-09 20:06:05 +03:00
Sergey Rostov
5a2ed364fe
jps: checkCachesVersions for js and common (BuildMetaInfo save/check)
2018-06-08 09:46:49 +03:00
Sergey Rostov
b2f58ad9c3
jps, mpp: temporary disable mpp tests
2018-06-08 09:46:38 +03:00
Sergey Rostov
0eee2729cd
jps: support multiplatform incremental compilation for jvm and js
...
- support common modules metadata compilation under flag (it is not required since all common source roots are included transitively for now)
- introduce expect actual tracker in jps: move implementation from gradle to build-common
- support js incremental compilation: move implementation from gradle to build-common
2018-06-08 09:46:37 +03:00
Alexander Udalov
58b7643065
Render .kjsm files in incremental tests
...
Otherwise they, being binary files, are displayed as text, which is
unreadable
2018-04-23 18:42:33 +02:00
Alexey Tsvetkov
b0e8c85e88
Compare JS source maps in readable way in IC tests
2018-04-19 05:18:54 +03:00
Alexander Udalov
f7a3182982
Minor, add default value to contract expression flags
2018-03-26 17:21:07 +02:00
Alexey Tsvetkov
a3feb77193
Compare diverged .meta.js files in a human readable way
2018-03-19 18:04:33 +03:00
Alexander Udalov
407de206a3
Minor corrections in proto schemas, mostly in comments
...
Also set up code style for the protobuf plugin
2018-03-14 12:25:19 +01:00
Alexander Udalov
3f3e05a9d2
Move essential metadata-related classes to 'metadata' and 'metadata.jvm'
2018-03-14 12:25:16 +01:00
Alexander Udalov
27ad4f7d5d
Move ProtoBuf classes to package org.jetbrains.kotlin.metadata
2018-03-14 12:25:10 +01:00
Alexander Udalov
575a388b11
Move core protobuf schemas to 'metadata' and 'metadata.jvm'
2018-03-14 12:25:09 +01:00
Alexander Udalov
396a5ab352
JS: write/read module annotation FQ names to/from metadata
...
#KT-22759 In Progress
2018-02-08 17:07:23 +01:00
Alexander Udalov
ff33e0bad3
Write/read module annotation FQ names to/from metadata on JVM
...
#KT-22759 In Progress
2018-02-08 17:07:23 +01:00
Alexander Udalov
ba5cc65792
Rename JvmPackageTable -> JvmModuleProtoBuf, PackageTable -> Module
...
This protobuf message is going to contain more information about the
module than just the table of package parts
2018-02-07 17:25:43 +01:00
Alexander Udalov
12e31cedfd
Write lambdaClassOriginName for lambdas copied during inline
...
Similarly to anonymousObjectOriginName which is written for copied
anonymous objects
#KT-21320
2018-02-06 13:05:22 +01:00
Alexander Udalov
6da3f37fc3
Write anonymousObjectOriginName for classes copied during inline
...
#KT-21320
2018-02-06 13:05:22 +01:00
Alexey Tsvetkov
3914c1b0e9
Allow to edit non-JPS build logs in "Show difference" window for non-JPS IC tests
2017-12-22 16:12:20 +03:00
Denis Zharkov
c86dc0d7af
Add protobuf extensions to serialized Java descriptors
...
#KT-17621 In Progress
2017-12-12 16:17:58 +03:00
Alexey Andreev
93f8542fc4
JS: serialize location of JsCase/JsDefault
...
See KT-21699
2017-12-11 17:20:15 +03:00
Alexey Andreev
71b1591044
JS: replace suspend inline metadata after inlining
...
This fixes some issues on coroutine inlining, see tests
2017-11-27 17:01:18 +03:00
Alexander Udalov
328e906b57
Rename source set "descriptor.loader.java" -> "descriptors.jvm"
...
The new name is more convenient and precise because this module is no
longer only about loading declarations from Java, it also contains
implementation of loading Kotlin declarations from .class files, as well
as type mapping abstractions, JVM ABI specifications, etc.
2017-11-10 18:58:31 +01:00
Alexey Andreev
b781661279
JS: fix copying functions with default arguments across interfaces
...
Copy function to super interface first, then copy from interface
to class. Add interface set to JsClassModel for this purpose.
See KT-20625
2017-10-19 13:10:47 +03:00