Ilya Gorbunov
36f154882c
Provide JvmSynthetic annotation in stdlib-common as optional
...
#KT-24478
2018-08-31 04:17:42 +03:00
Ilya Gorbunov
0c89996e34
Introduce platform specific annotations as optional in common stdlib
...
#KT-24478
2018-08-31 04:17:42 +03:00
Ilya Gorbunov
ea37a65178
copyInto: copying elements between two arrays
...
#KT-25874 Fixed
2018-08-30 16:21:20 +03:00
Dmitry Savvinov
accbd07b2e
Publish ContractsDsl
...
- Mark @ContractsDsl as @Experimental
- Move Contracts DSL out from 'internal' package
- Change visibility of ContractsDsl from 'internal' to 'public'
^KT-25274 Fixed
^KT-25495 Fixed
2018-08-30 16:19:51 +03:00
Ilya Gorbunov
c8becbd335
Stop distributing and publishing obsolete artifacts
...
Keep stdlib-jreN dist for tests only.
#KT-23799
2018-08-30 14:57:52 +03:00
Ilmir Usmanov
e93683621a
Implement callSuspend and callSuspendBy functions as KCallable's
...
extension methods.
Also make isSuspend a member of KCallable.
#KT-21972: Fixed
2018-08-30 14:57:48 +03:00
Ilya Gorbunov
357c5be4fb
Make sure index and count do not overflow for long sequences
...
Throw an exception immediately before an overflow becomes observable.
Place check to prevent negative index from indexOf, indexOfFirst.
Do not insert overflow checks for arrays, lists, maps and char sequences.
#KT-16097
2018-08-30 14:57:05 +03:00
Ilya Gorbunov
c44f62a3d4
Allow dropping and taking a lot of elements in very long sequences
...
For example allow dropping and taking Int.MAX_VALUE elements from
a sequence that is a result of another Int.MAX_VALUE dropping.
2018-08-30 14:57:03 +03:00
Ilya Gorbunov
eaa0902ea5
Add a class for long-running sequence/iterable tests
...
These tests will not run neither locally nor on CI unless the explicit
"kotlin.stdlib.test.long.sequences" parameter is specified.
2018-08-30 14:57:01 +03:00
Ilya Gorbunov
2df78fc81a
Introduce common ArithmeticException
...
Make divisionByZero test still fail in JS after introducing ArithmeticException
2018-08-30 14:56:59 +03:00
Ilya Gorbunov
5412227380
Unify Regex.split behavior in JVM, JS regarding empty match delimiters
...
Rewrite split implementation for JVM
#KT-21049
2018-08-30 14:56:31 +03:00
Ilya Gorbunov
85af1f5d38
Improve argument validation in copyOfRange
...
Make copyOfRange implementation non-inline in order not to expose
copyOfRangeToIndexCheck implementation detail.
It will be possible to make the function non-inline itself later without
that JvmName trick, when apiVersion 1.2 support is discontinued.
#KT-19489
2018-08-30 14:56:29 +03:00
Ilya Gorbunov
17e04b2665
Deprecate readBytes with estimatedSize parameter, add overload without parameters
...
Add a test for readBytes.
#KT-19305 Fixed
2018-08-30 14:56:23 +03:00
Alexander Udalov
cbc92bc9a1
Add KClass.sealedSubclasses to get direct subclasses of sealed class
...
#KT-14657 Fixed
2018-08-30 14:56:21 +03:00
Ilya Gorbunov
f010231ff7
Change range iteration tests so they are runnable on all platforms
...
Remove JS and Native backend exclusions
2018-08-30 14:56:13 +03:00
Ilya Gorbunov
b412143fce
Aggregate coroutines tests under 'check' task instead of 'test'
...
Otherwise --tests "pattern" gradle option has problem as it's applied
to both 'test' and `coroutinesTest` tasks and fails to match tests in one of them
2018-08-30 14:56:08 +03:00
Ilya Gorbunov
5f3a7f0147
Use Char.MIN_VALUE and MAX_VALUE in tests
2018-08-30 14:55:45 +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
db7f4bb402
Deprecate js Math.random and provide replacement with Random.nextDouble
...
#KT-23564 Fixed
2018-08-30 14:52:47 +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
0c50014e7a
Introduce SIZE_BYTES and SIZE_BITS constants for all integral types
...
#KT-8247 Fixed
2018-08-30 14:51:10 +03:00
Kerooker
af5f78076c
KT-7922 Added Boolean Companion Object
2018-08-30 14:51:04 +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
fa33b1b5a9
Random docs and API refinement
...
KT-17261
2018-08-30 14:50:40 +03:00
Ilya Gorbunov
cc031e3a40
Provide common Random API
...
#KT-17261
2018-08-30 14:50:36 +03:00
Ilya Gorbunov
bbee18b84d
Introduce StringBuilder.clear() extension
...
#KT-18910 Fixed
2018-08-30 14:50:29 +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
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
Ilya Gorbunov
76e581fe4f
Temporarily turn off ReleaseCoroutines feature
2018-08-30 14:50:16 +03:00
Denis Zharkov
83a431fca3
Introduce redundant enum CoroutineSingletons in experimental.intrinsics
2018-08-24 10:55:12 +03:00
Ilya Gorbunov
ed53983e1e
Add support for CASE_INSENSITIVE_ORDER in JS and common
...
#KT-18067
2018-08-15 21:28:54 +03:00
Ilya Gorbunov
27dde5f730
String.compareTo: SinceKotlin in JS and common, restore default parameter value in JVM
...
Default parameter is required to generate docs with Dokka for now.
#KT-18067
2018-08-15 21:28:47 +03:00
Toshiaki Kameyama
f05a19aafb
JS stdlib: implement String.compareTo with ignoreCase
...
#KT-18067 Fixed
2018-08-15 21:28:44 +03:00
Dmitry Savvinov
a8e1a6a2a1
Add contract for 'synchronized'
...
^KT-25962 Fixed
2018-08-08 12:53:09 +03:00
Bloder
f89803fe8f
Create samples for String.toLowerCase/toUpperCase
...
* Create toLowerCase method sample
* Create toUpperCase method sample
* Create toUpperCase sample reference in StringsJVM
* Create sample ref and doc of js impl toUpperCase
* Create sample ref and docs of js toLowerCase
* Add sample ref in toLowerCase expect fun
* Add sample ref in toUpperCase expect fun
2018-08-06 15:34:57 +03:00
Artem Zinnatullin
58becffb1f
Add documentation for @JvmSynthetic
2018-08-02 08:53:47 +03:00
Roman Elizarov
d33d21907d
SuccessOrFailure test on JVM added
2018-07-17 12:15:01 +03:00
Mikhael Bogdanov
1d283d243e
Support @JvmField on interface properties
...
#KT-15807 Fixed
2018-07-16 16:13:15 +02:00
Ilya Gorbunov
b7d3382f13
Report more diagnostics when JDK8PlatformImplementations can't be cast to base type
...
#EA-120914 - CCE: PlatformImplementationsKt.<clinit>
2018-07-09 22:13:57 +03:00
Ilya Gorbunov
be8cb94105
Add failing tests for overflow in empty progressions KT-24204
2018-07-09 22:08:01 +03:00
Roman Elizarov
8bbd78ca9a
Draft Kotlin Coroutines 1.3 ABI & API:
...
* SuccessOrFailure inline class is introduced
* Continuation.resumeWith(SuccessOrFailure)
* createCoroutineUnintercepted
* [Restricted]ContinuationImpl as named suspending function base
* [Restricted]SuspendLambda as suspending lambda base
* SuspendFunction[01] interfaces for efficient createCoroutine
* Serializable coroutine classes
2018-07-09 15:27:19 +03:00
Ilya Gorbunov
b5fabf3f72
Make unsigned types experimental (with warning if not opted-in)
2018-07-04 19:12:11 +03:00
Ilya Gorbunov
cbc3480d9e
Split common builtin companion tests from JVM-only tests
...
Remove duplicated tests from NumbersJVMTest.
2018-07-03 19:58:53 +03:00
Ilya Gorbunov
615f57f2fc
Compile unsigned types sourceset with 1.3 and annotate them with SinceKotlin("1.3")
2018-07-03 03:52:18 +03:00
Alexander Udalov
8d124eb77f
Minor, use array literal syntax in kotlin.Metadata
2018-06-27 12:20:03 +02:00
Ilya Gorbunov
6d027bbbfc
Remove state from parts of multifile classes
...
Split COROUTINE_SUSPENDED marker to expect and actual because Kotlin/JS backend
expects it to be property without getter.
Update EXPECTED_REACHABLE_NODES in JS test data.
#KT-24986 Fixed
2018-06-22 11:35:05 +03:00