Commit Graph

702 Commits

Author SHA1 Message Date
Ilya Gorbunov ed8c71442b [stdlib] Use more idiomatic index range check in getOrElse/Null 2024-03-11 18:12:27 +00:00
Ilya Gorbunov fc13ae7b4d [stdlib] Specify AT_MOST_ONCE contract for default-value-like functional parameters KT-54879 2024-03-11 18:12:27 +00:00
cristiangarcia 5a1fb78fcd Declare generated SourceSets correctly
Allow Gradle to keep the track of the task generating the sources
KTI-1502 Fixed
2023-12-24 00:01:59 +00:00
Alexander.Likhachev f5bcdb85a5 [Build] Migrate kotlin-stdlib-gen to Gradle Kotlin DSL 2023-12-07 18:31:07 +00:00
Alexander.Likhachev 9a0cf9c9f9 [Build] Rename kotlin-stdlib-gen/build.gradle -> build.gradle.kts 2023-12-07 18:31:06 +00:00
Ilya Gorbunov 9ccce52915 Clean up WasExperimental annotation from declarations with SinceKotlin<=1.4
Since it is not possible to use -api-version < 1.4, this annotation has no effect
2023-11-10 12:20:52 +00:00
Ilya Gorbunov 3622ea2e33 [stdlib-gen] Minor refactoring: use enum entries instead of values 2023-10-19 03:11:54 +00:00
Ilya Gorbunov ff2254db69 [stdlib] Remove generator templates for js legacy 2023-10-19 03:11:53 +00:00
Ilya Gorbunov 1d232c69d6 [stdlib] Move location of generated sources for js-IR compilation 2023-10-19 03:11:53 +00:00
Dmitriy Novozhilov a35f2eb90e Build: switch language level for compilation to 2.0
KT-61951
2023-10-18 07:59:26 +00:00
Alexander Shabalin 9ab6a5ff56 [K/N] Migrate all stdlib_external tests to new testing infra ^KT-61259
- Move backend.native/tests/stdlib_external to runtime/test This mirrors
  tests location (in relation to sources) on other backends.
- Remove all backend.native/tests tasks using stdlib_external.
  Additionally remove now unused KonanGTest.
- Include complete native-wasm/test and runtime/test in
  native/native.test
- In runtime/test/numbers/MathTest.kt leave only native-specific part.
2023-09-04 18:51:10 +00:00
Alex Kuznetsov 35b3a9ec82 [Docs] Samples for 'step' function 2023-08-25 19:34:39 +00:00
Roman Efremov 12eb6d97bf [Stdlib] Remove @InlineOnly from expect declarations of minOf(), maxOf()
to satisfy MPP annotation checker.
It has reporting because @InlineOnly is absent on declarations with
Long parameter (removed in 233376eef0).

^KT-58551
2023-07-24 09:48:49 +00:00
Artem Kobzar 039b5fca7a [K/JS] Use declared upper-bound types for parameters inside inlined functions body, instead of the provided types 2023-06-20 12:01:28 +00:00
Abduqodiri Qurbonzoda 4ae19b2b44 [K/N] Deprecate SharedImmutable annotation #KT-57837
As a part of efforts to stabilize Native stdlib.
2023-06-19 11:35:32 +00:00
cristiangarcia 46d113605b Adopt configuration-avoidance where possible
Before this change `./gradlew help` (with native enabled)
Created immediately: 1322
Created during configuration: 1541

after this change:
Created immediately: 596
Created during configuration: 1509

To know more about configuration avoidance: https://docs.gradle.org/current/userguide/task_configuration_avoidance.html
2023-06-06 14:27:42 +00:00
Ilya Gorbunov b35b727d73 KT-53778 Remove experimental annotations from open ranges 2023-04-28 17:12:15 +00:00
Ilya Gorbunov 448e9fc5e7 Drop functions hidden since 1.4 (inline-only or experimental in JVM)
Since it's no longer possible to use API version less than 1.4,
these functions can be no longer called at all.
2023-04-26 10:31:03 +00:00
Abduqodiri Qurbonzoda b25f3be81b [K/N] Experimental Char code point constants and functions
Internalize WASM Char code point functions.

As a part of efforts to stabilize Native stdlib.
2023-04-19 20:33:33 +00:00
Filipp Zhinkin 368f21461c KT-55091 Optimize Sequence::toSet/toList implementation
Sequence::toSet and Sequence::toList both create a
collection, fill it with elements, and then try to optimize a result
by returning empty, singleton, or the allocated collection depending on
the elements count.
Instead of allocating the collection and then trying to return
an optimized instance it is worth checking the sequence's size
beforehand and return empty/singleton collection when possible.

Proposed change optimize performance of aforementioned functions and
also reduce allocation rate when a sequence consists of 0 or 1 elements.

^KT-55091 fixed
2023-04-17 08:58:20 +00:00
Takumi Maeomote c4f83adc2a Add sample for Map.asSequence (#5055) 2022-12-15 19:58:38 +03:00
Ilya Gorbunov 0d0cc9250b Note about all() result on empty collections KT-54835 2022-11-25 14:09:09 +00:00
Abduqodiri Qurbonzoda 7060811c8b Remove the brittle contains optimization code #KT-47707 2022-09-11 10:54:37 +00:00
Ilya Gorbunov 38099e11c3 Remove rangeUntil extensions that are now shadowed by members #KT-52933 2022-08-25 19:24:11 +00:00
Ilya Gorbunov 64a11c555f Suppress extension shadowing member for rangeUntil extensions #KT-52933
Until the next bootstrap where they can be removed entirely
2022-08-24 22:22:53 +00:00
Igor Yakovlev a0a66ffb96 [WASM] Refactoring wasm array copy functions 2022-07-08 16:29:45 +00:00
Igor Yakovlev 0ea7e8b70a [WASM] Add array copy intrinsic 2022-07-06 19:07:56 +00:00
Ilya Gorbunov 8584fe2725 Add contains extension for mixed types for open ranges and open-closed range specializations
#KT-52932
2022-06-28 00:08:05 +00:00
Ilya Gorbunov 9574040f85 Add rangeUntil for primitives as an extension
#KT-52932
2022-06-28 00:08:05 +00:00
Ilya Gorbunov 71336df50a Support open ranges in stdlib-gen
#KT-52932
2022-06-28 00:08:04 +00:00
Jerome Prinet 6aec88446a Fix JavaExec.main deprecation 2022-04-14 14:21:31 +03:00
Ilya Gorbunov 1845e326d1 Hide deprecated Double/FloatArray.contains/indexOf/lastIndexOf 2022-04-12 15:03:40 +00:00
Ilya Gorbunov 4c461d7864 Add min/max test generator and generated tests
Temporarily exclude these tests from kotlin-stdlib-wasm testing due to KT-51647
2022-04-04 22:33:25 +00:00
Ilya Gorbunov 60fbb0d171 Reintroduce min/max operations for non-empty collections KT-50146 2022-04-04 22:33:24 +00:00
Ilya Gorbunov 4709e2c274 stdlib-gen: simpify copyright notice reading 2022-04-04 22:33:23 +00:00
Abduqodiri Qurbonzoda 42c9a27b8a Specialize Progression first/last/OrNull functions #KT-42178 2022-04-04 22:27:49 +00:00
Artem Kobzar 804eb61bf0 feat: add polyfills insertion for ES Next used features 2022-02-16 10:49:11 +00:00
Abduqodiri Qurbonzoda 0d46d0d69b [WASM] Sync stdlib-gen template with actual source code 2022-02-10 10:23:22 +00:00
Igor Yakovlev e58d4163ad [WASM] Add std methods for collections 2022-01-05 13:12:32 +01:00
Igor Yakovlev c9a92d71ae [WASM] Add kotlin.math tests 2022-01-05 13:12:32 +01:00
Igor Yakovlev 9408499da9 [WASM] Add std text implementations 2021-12-07 21:32:59 +03:00
Igor Laevsky 7943298240 [Wasm] Add sorting function to the stdlib 2021-10-14 17:24:04 +03:00
Vyacheslav Gerasimov ab146bd6d4 Build: Fix deprecated Gradle configurations usages
for migration to Gradle 7+ #KTI-559
2021-09-26 18:28:44 +03:00
Abduqodiri Qurbonzoda bde055fe5c Advance deprecation level of Float/DoubleArray contains, indexOf, lastIndexOf to ERROR #KT-28753 2021-09-16 19:38:40 +03:00
Abduqodiri Qurbonzoda 7e1cd757fb Advance max/min(By/With) deprecation level to HIDDEN #KT-38854 2021-09-16 19:38:35 +03:00
Abduqodiri Qurbonzoda f1befc0108 Format Other_Uppercase/Other_Lowercase property as an identifier in docs 2021-09-15 17:31:52 +03:00
Ilya Gorbunov 11314a5c4e Rename enabling old behavior property and make it cached in a field
Mention the property name in the note about conversion to set.

#KT-45438
2021-09-02 06:06:39 +03:00
Abduqodiri Qurbonzoda 94b371af5b Remove brittle ‘contains’ optimization in minus/removeAll/retainAll #KT-45438 2021-09-02 05:58:19 +03:00
Abduqodiri Qurbonzoda 0faa83bacb Deprecate JS Array/PrimitiveArray.sort(comparison) functions 2021-09-02 01:38:03 +00:00
Alexander Udalov 0d1380c232 Fix warnings in generator modules 2021-08-10 17:57:50 +02:00