Ilya Gorbunov
18d4b91b2d
Minor: improve message from future for use and useLines
...
Annotate RequireKotlin and apiVersionIsAtLeast with SinceKotlin
2017-10-15 21:40:17 +03:00
Ilya Gorbunov
20b122c1dd
Use kotlin.test.Test instead of org.junit.Test in common stdlib tests
...
(and in jvm-only and js-only tests also)
2017-10-15 17:40:53 +03:00
Ilya Gorbunov
f002493218
Multiplatform test annotations
...
Actual annotations are provided in kotlin-test-junit on JVM side
and in kotlin-test-js on JS side.
#KT-19696
2017-10-15 17:40:53 +03:00
Anton Bannykh
7076fda542
JS: added back integration test for @BeforeTest and @AfterTest annotations
...
The test was removed in e5cfd198c7 in order
to prevent gradle tests from crashing when running with the old compiler.
2017-10-14 02:16:22 +03:00
Ilya Gorbunov
863727955f
Annotate inline use and useLines with RequireKotlin
...
Compiler version 1.2 is required to use 'use' and inline functions from stdlib that call it.
2017-10-13 18:56:05 +03:00
Ilya Gorbunov
cc150ca832
Make Closeable.use call addSuppressed
...
Call addSuppressed when it's provided by the supplementary artifact for jdk7, and only when targeting apiVersion > 1.1
#KT-18961 Fixed
2017-10-13 18:56:05 +03:00
Ilya Gorbunov
3ab7946c4d
Introduce apiVersionIsAtLeast function to branch in inlines
...
#KT-16028
2017-10-13 18:56:05 +03:00
Ilya Gorbunov
485ca10b84
Improve failed assertSame/NotSame messages, correct tests
2017-10-13 18:53:52 +03:00
Jake Wharton
e611b9a9ba
Add assertSame and assertNotSame methods.
2017-10-13 18:53:52 +03:00
Dmitry Savvinov
edd3f76e7b
Add contract for takeUnless
2017-10-13 18:43:39 +03:00
Dmitry Savvinov
0b88e7cfd0
Annotate contract DSL with @SinceKotlin
2017-10-13 18:43:39 +03:00
Dmitry Petrov
08b7578e61
Add -Xnormalize-constructor-calls=enable to stdlib submodules
2017-10-13 10:17:13 +03:00
Anton Bannykh
b839ba5015
JS: correct imports in kotlin.test-js integration test
2017-10-12 15:41:54 +03:00
Sergey Igushkin
260244fa09
(minor) Fix bad file content replacement in a test.
2017-10-12 15:14:07 +03:00
Anton Bannykh
e5cfd198c7
JS: temporarily remove @BeforeTest and @AfterTest checks from integration test until bootstrap compiler supports the annotations.
2017-10-12 14:24:59 +03:00
Anton Bannykh
c57b0b4cbc
JS: rename @Before to @BeforeTest and @After to @AfterTest for better JUnit compatibility
2017-10-12 14:24:59 +03:00
Sergey Igushkin
bd75a47a07
Update Android license string for Gradle tests
...
(cherry picked from commit 2697445)
2017-10-12 14:23:32 +03:00
Dmitry Savvinov
fb03656e99
Effects: annotate functions in stdlib with contracts
...
build.xml was also changed to incorporate contracts in
mock-runtime-for-tests.jar, because it is using Standard.kt, which, in
turn, has contract-annotated functions.
==========
Introduction of EffectSystem: 17/18
2017-10-12 11:55:26 +03:00
Dmitry Petrov
75ad20f823
Build compiler, plugin & stdlib with constructor call normalization
...
Required as a workaround for Proguard bug
https://sourceforge.net/p/proguard/bugs/664/
When processing bytecode generated by Kotlin compiler for constructor
call with stack spilling during arguments evaluation, ProGuard performs
an equivalent transformation for the bytecode, but emits invalid stack
frame information.
In JVM 1.6, such invalid stack frames are ignored and re-evaluated by
JVM during bytecode verification.
In JVM 1.8, such invalid stack frames cause VerifyError.
2017-10-12 10:59:57 +03:00
Leonid Stashevsky
13880b18ea
Rename android-annotations -> kotlin-annotations-android
...
also rewrite it's buildscript in kts and add to compiler tests dependencies
2017-10-12 09:11:33 +03:00
Ilya Gorbunov
781ca6d2b5
Inline swap function, do not use deprecated floor.
2017-10-12 06:06:26 +03:00
Pap Lorinc
e640867238
Provide java.util.Collections#shuffle as extensions for collections in JS
...
#KT-2460
2017-10-12 06:06:26 +03:00
Ilya Gorbunov
6fc87c532e
Restore dependency to build kotlin-runtime before BCV tests
2017-10-12 06:06:12 +03:00
Ilya Gorbunov
aab604d154
Improve math docs
...
Add links from log to ln, log2, log10.
Format lists in docs so that they are pretty in quick doc window.
2017-10-12 05:58:04 +03:00
Sergey Igushkin
873994545c
Clear Java srcDirs in JS and multiplatform projects.
...
Issue #KT-20217 Fixed
(cherry picked from commit a4f8a5e)
2017-10-11 20:32:59 +03:00
Sergey Igushkin
dff15a3d59
Fix multiplatform projects communication broken if the plugin is loaded
...
more than once in different class loaders.
Issue #KT-20634 Fixed
(cherry picked from commit c65f210)
2017-10-11 20:32:11 +03:00
Sergey Igushkin
f211985332
Re-generate Gradle options to have allWarningsAsErrors updated.
...
Issue #KT-20553 Fixed
2017-10-11 20:31:23 +03:00
Ilya Gorbunov
71e97e32e0
Regenerate gradle options to include warningsAsErrors
2017-10-11 19:23:57 +03:00
Anton Bannykh
ac508a510e
JS: Support isInitialized intrisic for lateinit properties
2017-10-11 19:23:49 +03:00
Alexander Udalov
5cbcbe4a9c
Support -Werror CLI argument to treat warnings as errors
...
The option is named "warningsAsErrors" in the Gradle plugin
#KT-10563 Fixed
2017-10-11 19:23:46 +03:00
Alexander Udalov
d41c1d572b
Remove deprecated API from package kotlin.reflect
...
This is needed to avoid the split package problem on Java 9 (KT-19258):
both kotlin-stdlib.jar and kotlin-reflect.jar export the package
kotlin.reflect
2017-10-11 19:23:40 +03:00
Alexander Udalov
2a8be2cdb4
Move internal declarations in kotlin-stdlib-jdk7/8 to other packages
...
- in kotlin-stdlib-jdk7, package kotlin.internal -> kotlin.internal.jdk7
- in kotlin-stdlib-jdk8, package kotlin.internal -> kotlin.internal.jdk8
2017-10-11 19:23:32 +03:00
Alexander Udalov
537a0ce315
Restore kotlin-stdlib-jre7/8 libraries
2017-10-11 19:23:30 +03:00
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
Alexander Udalov
2fc3f4d07b
Update copyrights in kotlin-stdlib-jre7/8 sources
2017-10-11 19:20:24 +03:00
Alexander Udalov
00be512532
Revert "Temporarily remove isInitialized and tests, but keep the implementation"
...
This reverts commit 234148518e .
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
0454bd9e28
Detect endianness when reinterpreting Float64 as two Int32
...
#KT-18264
Use Int32Array instead of Uint32Array since ints are required to be singed.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
aa3bfc55c3
Implement in JS nextUp(), nextDown(), nextTowards() and ulp extensions
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
480d4a0093
Make withSign(NaN) behave as in JVM
...
#KT-4900
Where only the sign of the result is undefined, but the absolute value is unchanged.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
132f2f88c2
Provide Double and Float bit conversion functions as extensions in JS and Common
...
Instance extension: Double/Float.toBits/toRawBits
Companion extension: Double/Float.Companion.fromBits
#KT-18264 Fixed
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
044ccf1532
Introduce inverse hyperbolic functions
...
#KT-4900
Improve accuracy of JS polyfills of hyperbolic functions and expm1/log1p
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
5bfa9b248e
Minor fixes in logarithm functions docs
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
57f5791e70
Annotate new API with SinceKotlin, provide common headers
...
#KT-4900
Also update binary API dump.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
86b23ffe49
Integer math functions and tests for them
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
a832db48f6
Float Math API
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
f3ea499d2c
JVM-specific math functions and tests
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
7e48f8b180
Provide Double and Float bit conversion functions as extensions
...
Instance extension: Double/Float.toBits/toRawBits
Companion extension: Double/Float.Companion.fromBits
#KT-18264 Fixed
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
6373ac7ef0
Rename log to ln, log1p to ln1p, keep pow only as extension
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
805d1c90b7
Rename sgn to sign, add docs and tests
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
d0b12e3872
Use HALF_EVEN rounding mode for round()
...
Add docs and tests for rounding.
#KT-4900
2017-10-11 19:20:24 +03:00