Commit Graph

48354 Commits

Author SHA1 Message Date
Alexander Udalov 877dfd8ff4 Fix generic signature of FunctionN type visible from Java 2018-08-30 14:55:56 +03:00
Vyacheslav Gerasimov 348ce6733d Update build range for AS 3.2 plugin to match next AS 3.2 releases 2018-08-30 14:55:54 +03:00
Vyacheslav Gerasimov d5009e4fb4 as33c4: Remove registration of AndroidGradleOrderEnumerationHandler from gradle-java.xml 2018-08-30 14:55:52 +03:00
Ilmir Usmanov cf1f194f8b Add warning on -Xcoroutines flag use
The only case when warning is not reported is -Xcoroutines=default.
But this is OK until the flag is removed completely.
2018-08-30 14:55:50 +03:00
Ilya Gorbunov 8f6d2b70a9 Add stdlib test for Boolean companion 2018-08-30 14:55:48 +03:00
Ilya Gorbunov 5f3a7f0147 Use Char.MIN_VALUE and MAX_VALUE in tests 2018-08-30 14:55:45 +03:00
Ilya Gorbunov 92e149fa40 Add tests for SIZE_BYTES and SIZE_BITS constants
#KT-8247 Fixed
2018-08-30 14:55:43 +03:00
Ilya Gorbunov fa2f1311d7 Add tests for UInt, ULong
Opt-in to use unsigned types in tests
2018-08-30 14:55:41 +03:00
Ilya Gorbunov fb62507e51 Switch bootstrap to 1.3 branch, build 1.3-M1-eap-77 2018-08-30 14:55:39 +03:00
Ilya Gorbunov 26b258af6a Unignore passing tests with unsigned literals in JS 2018-08-30 14:55:37 +03:00
Mikhail Zarechenskiy d94b47bcd3 Support other kinds of translation for unsigned literals 2018-08-30 14:55:34 +03:00
Roman Artemev d1df5f5783 Fix unsigned constants translation (Int to UInt) 2018-08-30 14:54:30 +03:00
Mikhail Zarechenskiy 61efbea9a8 Initial support of unsigned literals translation in JS 2018-08-30 14:54:27 +03:00
Ilya Gorbunov 1792a77a47 Generate hashCode and equals for unsigned types 2018-08-30 14:52:51 +03:00
Ilya Gorbunov e2310343d4 Opt-in to use unsigned types in various internal utils 2018-08-30 14:52:49 +03:00
Ilya Gorbunov db7f4bb402 Deprecate js Math.random and provide replacement with Random.nextDouble
#KT-23564 Fixed
2018-08-30 14:52:47 +03:00
Dmitry Savvinov 402f8880a9 Disable contracts in 1.3-M1
^KT-25538 Fixed
2018-08-30 14:52:45 +03:00
Ilya Gorbunov e4d7efcf06 Update expected reachable node count in JS tests
Caused by new coroutine API an its js support
2018-08-30 14:52:43 +03:00
Ilya Gorbunov 516ea04d18 Update expected reachable node count in JS tests
Caused by introduction of new random API
2018-08-30 14:52:40 +03:00
Alexander Udalov c369e67e9f Revert "Ignore tests on big function types until master is 1.3"
This reverts commit f03dc62173.
2018-08-30 14:52:38 +03:00
Alexander Udalov 082da82f3e Introduce kotlin.jvm.functions.FunctionN
#KT-13764
2018-08-30 14:52:36 +03:00
Alexander Udalov 51979b9ffa Convert FunctionBase to Kotlin, add type parameter to Lambda
This will make it possible to avoid raw types when inheriting from both
FunctionBase and Function<R>. This change adds a generic type parameter
to FunctionBase and Lambda which is not source-breaking under our policy
because both FunctionBase and Lambda are internal classes (located in
package kotlin.jvm.internal)
2018-08-30 14:52:33 +03:00
Alexander Udalov e35ebff4e1 Move superinterface to the only subclass of FunctionBase 2018-08-30 14:51:17 +03:00
Ilya Gorbunov 07a0cb91d4 Introduce Char.MIN_VALUE and MAX_VALUE constants (KT-21763)
Add Char.MIN_VALUE and Char.MAX_VALUE implementations in primitive companion objects.
Update builtins test data and public API.

Co-authored-by: Oskar Drozda <themppsplx@gmail.com>
2018-08-30 14:51:14 +03:00
Ilya Gorbunov 5ee3cc59b3 Split summary from description in Char docs 2018-08-30 14:51:12 +03:00
Ilya Gorbunov 0c50014e7a Introduce SIZE_BYTES and SIZE_BITS constants for all integral types
#KT-8247 Fixed
2018-08-30 14:51:10 +03:00
Ilya Gorbunov 31d7aae98d Annotate companion object declaration with SinceKotlin
Move it to the end of the class declaration.
Update builtins testdata
2018-08-30 14:51:08 +03:00
Kerooker be2ba61f13 Removed Boolean from ClassMapperLite to avoid compiler confusion 2018-08-30 14:51:06 +03:00
Kerooker af5f78076c KT-7922 Added Boolean Companion Object 2018-08-30 14:51:04 +03:00
Ilya Gorbunov cd0906a357 Improve isNullOrEmpty() extensions
- Annotate with SinceKotlin("1.3") and InlineOnly
- Add contract linking the receiver and the returned value
- Unify wording in docs
- Add sample for Map.isNullOrEmpty

#KT-23279
2018-08-30 14:51:02 +03:00
Mon_chi d0788148e2 Add isNullOrEmpty() to Array, Collection, and Map. Fixes KT-23279 2018-08-30 14:51:00 +03:00
Jeff Wright 292f69936b Add Collections.isNullOrEmpty #KT-23279 2018-08-30 14:50:58 +03:00
Toshiaki Kameyama 6a140fb9ed "Useless call on collection type" inspection: Apply to 'kotlin.sequences.orEmpty' 2018-08-30 14:50:56 +03:00
Toshiaki Kameyama c4b785de36 Add Sequence.orEmpty #KT-16552 Fixed 2018-08-30 14:50:54 +03:00
Ilya Gorbunov 2ce0bca34e Make bound check helpers top-level so they are compiled as static on JVM
Improve empty range exception text in nextInt/nextLong(range)
2018-08-30 14:50:52 +03:00
Ilya Gorbunov 35c927214d More efficient double generation in JS 2018-08-30 14:50:50 +03:00
Ilya Gorbunov b96803248f Write random contract tests and fix implementations to pass them 2018-08-30 14:50:48 +03:00
Ilya Gorbunov ed1f869354 Add xorwow random implementation test and fix implementation 2018-08-30 14:50:46 +03:00
Ilya Gorbunov 042a8ff6a2 Provide ThreadLocalRandom wrapper only on JDK8 as it is buggy in JDK7 2018-08-30 14:50:44 +03:00
Ilya Gorbunov 870f5e3448 Remove lazy initialization of default platform random 2018-08-30 14:50:42 +03:00
Ilya Gorbunov fa33b1b5a9 Random docs and API refinement
KT-17261
2018-08-30 14:50:40 +03:00
Ilya Gorbunov 7e4528e217 Common shuffle/shuffled with the specified random source
KT-17261, KT-9010
2018-08-30 14:50:38 +03:00
Ilya Gorbunov cc031e3a40 Provide common Random API
#KT-17261
2018-08-30 14:50:36 +03:00
Ilmir Usmanov 9df411481c Do not coerce function literals to suspend.
The design is to use `suspend fun` instead of coercion, just as suspend
lambdas.
However, this syntax is not supported in the parser. But this is not a
problem, since the coercion lead to internal compiler error.
As a workaround everybody uses suspend lambdas.
 #KT-24860: Fixed
2018-08-30 14:50:33 +03:00
Ilya Gorbunov d57e1bb68b Migrate stepping and evaluation tests to the new coroutine API 2018-08-30 14:50:31 +03:00
Ilya Gorbunov bbee18b84d Introduce StringBuilder.clear() extension
#KT-18910 Fixed
2018-08-30 14:50:29 +03:00
Ilya Gorbunov c667340261 Allow pre-release compiler reading pre-release binaries in tests
Pre-release compiler should be able to read pre-release binaries in tests
even if a stable language version is used, otherwise no stdlib API can be read.
2018-08-30 14:50:27 +03:00
Alexander Udalov f423403167 Make kotlin.Metadata public
Prohibit explicit usage of `@Metadata` to prevent possible
AnnotationFormatError at runtime

 #KT-23602 Fixed
2018-08-30 14:50:25 +03:00
Ilya Gorbunov 8102e512d3 For bootstrapping on 1.3-M1: compile parts that can be used in .gradle.kts scripts with 1.2 language version 2018-08-30 14:50:23 +03:00
Ilya Gorbunov b160561795 Include new coroutines and unsigned classes into stdlib
Fix clashing module name in common coroutines sourceset
2018-08-30 14:50:21 +03:00