Commit Graph

35 Commits

Author SHA1 Message Date
Alexander Udalov e253acd5fd Introduce kotlin-stdlib-jdk7/8 libraries, deprecate kotlin-stdlib-jre7/8
The idea is to keep all declarations in the same packages from Kotlin's
point of view, but use JvmPackageName annotation to move them to another
JVM package, to avoid the split package problem which is otherwise
unsolvable when using module path on Java 9 (KT-19258).

In this commit, kotlin-stdlib-jre7/8 are moved to kotlin-stdlib-jdk7/8
and in the subsequent commit, -jre7/8 are restored. This is done in
order to make Git recognize this as a file move to preserve history.

Include new stdlib-jdkN artifacts in manifest version tests.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov de004337a2 Pass arguments to bcv tests with system properties rather than env 2017-10-11 19:20:24 +03:00
Ilya Chernikov 95035b3d72 Fix various tests 2017-09-20 11:51:23 +02:00
Ilya Gorbunov 180233b78e binary-compatibility-validator: use project version to disambiguate artifacts 2017-05-05 18:01:02 +03:00
Ilya Gorbunov 723642c9d4 binary-compatibility-validator: depend on required artifacts to ensure they are built.
Read dumped declarations lazily in order not to fail on class initialization.
2017-04-17 15:17:02 +03:00
Ilya Gorbunov 94895c4e4d Clean warnings in binary-compatibility-validator cases 2017-04-17 14:50:07 +03:00
Ilya Gorbunov 02293dab9e Add public api dumps for kotlin-reflect and kotlin-stdlib-jre7/8 2017-04-06 20:32:37 +03:00
Ilya Gorbunov e090a44b71 Migrate binary-compatibility-validator tests to gradle. 2017-04-06 20:32:37 +03:00
Ilya Gorbunov d4d647ab00 Remove public synthetic annotation holder methods from public API dump. 2017-02-07 14:41:56 +03:00
Ilya Gorbunov 970490e097 Revert "Update rendered public API". This reverts commit a10c6f00f9.
Revert "Update stdlib reference and binary compatibility test data". This reverts commit 2d02e5106f.
2017-02-07 14:41:31 +03:00
Alexander Udalov 2d02e5106f Update stdlib reference and binary compatibility test data
After 0db60bf and 5cffb38
2017-02-06 19:39:15 +03:00
Ilya Gorbunov 070f9d9d17 Binary compatibility validation: dump public API of merged stdlib to another file 2017-01-24 22:04:46 +03:00
Mikhael Bogdanov 1f26c3098f Binary compatibility validator tests update according to new @PublishedApi annotation 2016-12-12 10:25:05 +01:00
Mikhael Bogdanov 58263c46cc Compatibility validator update 2016-12-09 11:55:15 +01:00
Mikhael Bogdanov 95a47e56f7 InlineExposed usages are changed to PublishedApi 2016-12-09 11:55:14 +01:00
Ilya Gorbunov 78a89ef30a Add a hint how to regenerate API dump 2016-11-27 13:50:14 +03:00
Ilya Gorbunov b7b320e4ce @JvmOverloads-generated overloads of final methods are also final: update public API tests. 2016-11-18 19:53:24 +03:00
Ilya Gorbunov b6460e6280 binary-compatibility-validator, minor: refactor annotation utilities. 2016-10-14 18:53:54 +03:00
Ilya Gorbunov 0b3fb41eeb Do not include $DefaultImpls inner classes in public API when they do not contain any public members (i.e. used only as a container to hold synthetic methods with annotations for properties or typealiases) 2016-10-13 09:52:42 +03:00
Ilya Gorbunov 6ba98f7fe6 Binary compatibility validator: filter out empty facades *after* members are flattened from non-public part superclasses.
Use stable member sort order for members flattened from non-public superclasses, rewrite test to make order matter.
2016-03-30 20:44:44 +03:00
Ilya Gorbunov 4c113ad882 Prettify dump output format: indent members and enclose them in { }, space before : in supertypes. 2016-03-29 13:50:02 +03:00
Ilya Gorbunov ff0a24a750 Move test output files closer to test data.
Move reference dump out of test directory.
2016-03-29 13:50:01 +03:00
Ilya Gorbunov 2e87a08c8d Ignore kotlin visibilities for classes in effectively public package kotlin.jvm.internal 2016-03-29 13:49:59 +03:00
Ilya Gorbunov ce4b161df4 Find single jar file with binaries in target folders without knowning its version in advance. 2016-03-29 13:49:57 +03:00
Ilya Gorbunov a75093650c Add JvmField and const tests for exposed fields visibility 2016-03-29 13:49:55 +03:00
Ilya Gorbunov 0d12d60e8a Infer lateinit-exposed field effective visibility from its setter visibility. 2016-03-29 13:49:53 +03:00
Ilya Gorbunov f2cb5edf1a Do not consider protected members in final class as public API 2016-03-29 13:49:51 +03:00
Ilya Gorbunov 4e250e4dd1 Refactor data structures 2016-03-29 13:49:49 +03:00
Ilya Gorbunov 10792de4c1 Treat inline-exposed internal API as effectively public.
Comment out unsupported cases.
2016-03-29 13:49:48 +03:00
Ilya Gorbunov 0aaf0ba60f Take into account field kotlin visibility 2016-03-29 13:49:46 +03:00
Ilya Gorbunov bd8c83bee2 Merge public static API of non-public base supertypes into public subtype 2016-03-29 13:49:44 +03:00
Ilya Gorbunov 472b386101 Tests for public API dump tool. 2016-03-29 13:49:43 +03:00
Ilya Gorbunov da032e371a Minor: refactoring 2016-03-29 13:49:41 +03:00
Ilya Gorbunov 88a038a0df Filter out nested classes in non-public outer classes. 2016-03-29 13:49:39 +03:00
Ilya Gorbunov a9fd1de263 Tool to dump binary API signatures from compiled JAR.
Incorporate declaration mappings output from the compiler to take into account kotlin visibilities.
2016-03-29 13:49:38 +03:00