100 Commits
Author SHA1 Message Date
Ilya Gorbunov 5afb2c5e4b [stdlib] Annotated new API with SinceKotlin(2.0) where required KT-64904 2024-03-12 01:36:46 +00:00
Ilya Gorbunov ae3e770246 Update line numbers from stdlib in inlining and stepping tests 2024-03-11 18:12:27 +00:00
Ilya Gorbunov 7175680917 [stdlib] Specify EXACTLY_ONCE contract for useLines 2024-03-11 18:12:27 +00:00
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
Ilya Gorbunov dee9fdc02d [stdlib] Regenerate sources 2024-03-11 18:12:27 +00:00
Ilya Gorbunov f44ab4676f [docs] Update Gradle version and wrapper in legacy docs build 2024-03-04 11:40:28 +00:00
Ilya Gorbunov caee1a9b2b [docs] Use env variable to detect teamcity build mode
Checking property 'teamcity.version' no longer works with the way
TC passes parameters when configuration cache is enabled.
2024-03-04 11:40:28 +00:00
Ilya Gorbunov 7cc2384485 Remove kotlin-stdlib-common exclusion
It's no longer a transitive dependency of kotlin-stdlib
2024-03-04 11:40:06 +00:00
Ilya Gorbunov 35bca103eb [stdlib-mpp] Single dependency on stdlib in commonMain
In this project it's required to declare stdlib dependency explicitly,
but now it can be a single line in commonMain
2024-03-04 11:40:06 +00:00
Ilya Gorbunov 16e61f978c [stdlib-mpp] remove some kotlin-stdlib-common artifact deps 2024-03-04 11:40:06 +00:00
Ilya Gorbunov 85854a6b8d [stdlib] Make enumEntriesIntrinsic not reified/inline
It's required to simplify the corresponding backends' inliners.

KT-59712, KT-59713
2024-02-23 05:50:37 +00:00
Ilya GorbunovandAlexander Udalov 86d5e83f4b [stdlib] Remove bootstrap implementation of enumEntriesIntrinsic
It should have been already implemented as intrinsic in all backends.

Do not test enumEntries intrinsic in the old JVM BE.

KT-53154

Co-authored-by: Alexander Udalov <alexander.udalov@jetbrains.com>
2024-02-23 05:50:37 +00:00
Ilya Gorbunov 0ecbbbf1ca [stdlib] Set AV to 2.0, LV to 1.9 for main compilations, build tests with K2 2024-02-21 16:28:12 +00:00
Ilya Gorbunov c2e28149e6 [stdlib] Enable link-via-signatures to workaround KT-62798 2024-02-20 19:59:16 +00:00
Ilya Gorbunov 98f23c0fba [build] Take artifacts from maven.zip when bootstrapping on a teamcity build 2024-02-20 19:51:09 +00:00
Ilya Gorbunov 709076acc9 [stdlib] Improve documentation of Char.isWhitespace and test it behaves the same in different targets 2024-02-20 03:48:08 +00:00
Ilya Gorbunov baca742a31 [stdlib] Minor: fix various grammar in docs 2024-02-20 03:48:08 +00:00
Ilya Gorbunov 15375c0fd5 [stdlib] Use more idiomatic and performant implementation of isBlank
Also replace expect-actual with a common function because its implementation is no longer different in different platforms.

KT-65590
2024-02-20 03:48:08 +00:00
Ilya Gorbunov 905423aa17 [kotlin-test] Reconfigure JVM unit tests
- Include common annotations and assertions test source sets into each test platform test compilation in order to check how they work with that platform's annotations and asserter
- Run these tests without platform support jar to check the default asserter implementation
2024-02-06 12:58:50 +00:00
Ilya Gorbunov 309cecdefd [kotlin-test] Rename test to avoid duplication 2024-02-06 12:58:50 +00:00
Ilya Gorbunov 58c03e021b Update transitive dependencies of JVM test frameworks in kotlin-test KT-65242, KT-63397 2024-02-06 11:06:12 +00:00
Ilya Gorbunov a15e88ba1e [build] Pass/override JDK_1_8 env variable to maven exec tasks
While other JDKs can be used in the maven build,
only JDK_1_8 is required for 'install' and 'deploy' goals without tests.

Provide this path from the corresponding toolchain discovered by Gradle.
2024-01-24 15:37:29 +00:00
Ilya Gorbunov 72528056fb [kotlin-test] Migrate integration tests project from deprecated K/JS plugin 2024-01-23 17:57:48 +00:00
Ilya Gorbunov 000db0bb44 [kotlin-test] Move kotlin-test integration tests project 2024-01-23 17:57:48 +00:00
Ilya Gorbunov 5ce2a2cbee Use strongly typed task GenerateProjectStructureMetadata to tweak kpsm.json 2023-12-13 15:40:25 +00:00
Ilya Gorbunov e0bc0b81c6 [kotlin-test] Drop subprojects unneeded anymore KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 35aa17e1d0 Pack K/N stdlib sources into single zip
With the directory structure similar to one of a multiplatform library,
where each source set sources are placed into the directory
named after this source set.

Do not use legacy projects for building relative paths
2023-12-13 15:40:25 +00:00
Ilya Gorbunov fb74c18235 Fix maven plugin IT install and kotlin-bom dependencies after KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov b0bee09948 Change Gradle test expectations after KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 653fc03cbc Replace kotlin-test project dependencies in dist
KT-61969
2023-12-13 15:40:25 +00:00
Ilya Gorbunov c40de28775 Replace kotlin-test-js project dependencies in the project
KT-61969
2023-12-13 15:40:25 +00:00
Ilya Gorbunov 4b2e1240eb Replace kotlin-test-wasm project dependencies in the project
KT-61969
2023-12-13 15:40:25 +00:00
Ilya Gorbunov d2aae67e03 Replace kotlin-test project dependencies in the project
Use dependency helper function that chooses whether to take them
from the bootstrap repository or from a configuration of kotlin-test

KT-61969
2023-12-13 15:40:25 +00:00
Ilya Gorbunov f07bf70aa7 Switch stdlib tests to KMP kotlin-test KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 7a4335b087 [kotlin-test] Enable explicit API mode KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 6c46d11d0a [kotlin-test] Post-process capabilities in leaf framework artifacts' .module files KT-61969
Gradle copies capabilities from the variants of the root artifacts
to the variants of leaf artifacts which leads to capability conflict
when both root and leaf artifacts are present in a configuration during
variant-based dependency resolution
2023-12-13 15:40:25 +00:00
Ilya Gorbunov b91e4e24c4 [kotlin-test] Custom publishing layout KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov ffe54d3fc4 [kotlin-test] Alignment constraints for legacy artifacts KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 446cd1eec9 [kotlin-test] kpsm.json patching KT-61969
Adds source set relationships for additional variants
and also slightly stretches common source sets included into jvm variant
2023-12-13 15:40:25 +00:00
Ilya Gorbunov 5c4f0a70e0 [kotlin-test] Unit tests for additional compilations KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 2db2b18910 [kotlin-test] Additional framework jars and outgoing configurations KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 008a961913 [kotlin-test] Add module-info compilations KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 977da5c9b1 Support multiple java9 compilations in a project
Required for KT-61969
2023-12-13 15:40:25 +00:00
Ilya Gorbunov 1d1645fd2d [kotlin-test] Setup KMP project for kotlin-test, targets and source sets KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov f3240757ed Extract custom publishing dsl to buildsrc-compat
It will be used also in kotlin-test KT-61969
2023-12-13 15:40:25 +00:00
Ilya Gorbunov 38ed3216fd [kotlin-test] Exclude kotlin-test project from GE test splitting
Not supported for kotlin-multiplatform tests

KT-61969
2023-12-13 15:40:25 +00:00
Ilya Gorbunov 6d62119659 Introduce expects in common wasm sources actualized in wasmJs and wasmWasi 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 943c11d239 [Gradle] Support multiple variants of a module resolved when determining visible common source sets
With capabilities in variants it is possible to depend on multiple variants of
an artifact in the same target compilation. These variants can implement
different common source sets which all should be visible from that target.

Instead of intersecting single variant source sets visible from different
targets, first union source sets from all target variant dependencies
and only then intersect these union results from different targets.
2023-12-13 15:40:25 +00:00
Ilya Gorbunov 28c1049518 [stdlib] KT-55619 provide samples and extend documentation for String.format 2023-11-27 15:04:51 +00:00
Ilya Gorbunov 88bbe8d92d [stdlib] Enable explicit API mode 2023-11-24 01:45:45 +00:00
Ilya Gorbunov d8ee74222f [builtins-gen] Explicit visibility for companion objects and secondary constructors 2023-11-22 18:04:34 +00:00
Ilya Gorbunov ab7c2f2196 [stdlib] Explicit visibility and return types: builtins 2023-11-22 18:04:34 +00:00
Ilya Gorbunov df190b1265 [stdlib] Explicit visibility and return types: JVM internal 2023-11-22 18:04:34 +00:00
Ilya Gorbunov 2e030f213b [stdlib] Explicit visibility and return types: JVM 2023-11-22 18:04:34 +00:00
Ilya Gorbunov c77930c1ea [stdlib] Explicit visibility and return types: Native 2023-11-22 17:57:40 +00:00
Ilya Gorbunov 4d8cf4903c [stdlib] Explicit visibility and return types: DOM API 2023-11-21 18:14:09 +00:00
Ilya Gorbunov ce427b96b3 [stdlib] Suppress explicit api errors in DOM declarations generated by dukat
Suppressions should be removed once dukat supports generating
explicit public visibility and return types
2023-11-21 18:14:09 +00:00
Ilya Gorbunov cfa8a1dc0f [stdlib] Explicit visibility and return types: Wasm 2023-11-21 18:14:09 +00:00
Ilya Gorbunov 381a8fd55f [stdlib] Explicit visibility and return types: JS
Stepping test line number changes are due to changes in coroutineInternalJS.kt
2023-11-21 18:14:09 +00:00
Ilya Gorbunov 62700c3ec3 [stdlib] K/N ArrayList: restore constructor docs, correct modifier order 2023-11-20 02:24:40 +00:00
Ilya Gorbunov aa4419b7e3 [stdlib] Explicit visibility and return types: Collections 2023-11-20 02:24:40 +00:00
Ilya Gorbunov 0dd61c9f81 [stdlib] Explicit visibility and return types: Duration 2023-11-20 02:24:40 +00:00
Ilya Gorbunov da1d3be7f2 [stdlib] Explicit visibility and return types: StringBuilder 2023-11-20 02:24:40 +00:00
Ilya Gorbunov 92b3131c12 [stdlib] Explicit visibility and return types: HexFormat 2023-11-20 02:24:40 +00:00
Ilya Gorbunov 02e933b3ff [stdlib] Explicit visibility and return types: common 2023-11-20 02:24:39 +00:00
Ilya Gorbunov 23e0e40acc Create a copy of shared code for building JVM part of native interop runtime
This is required because IDEA cannot import the same directory in multiple modules.
2023-11-17 17:30:58 +00:00
Ilya Gorbunov 66639d37ec [kotlin-test] Explicit public visibility and return types 2023-11-17 17:20:51 +00:00
Ilya Gorbunov 3a5276f4d3 [stdlib] Fix compilation warnings in js-ir-minimal 2023-11-17 17:19:05 +00:00
Ilya Gorbunov 26183237ab Make :core:builtins:serialize more remote build cache friendly
On CI when populating build cache, the build runs
with --info logging level causing an additional jvm argument
provided to the task.
This argument is usually not provided in local builds.
The argument only affects task printout and not its outputs.
2023-11-15 10:32:09 +00:00
Ilya Gorbunov fc64e30829 [stdlib-js] Move jsTypeOf to a documentable source root and restore its kdoc 2023-11-13 20:06:27 +00:00
Ilya Gorbunov 27ed611e70 [stdlib] Minor cleanup of JS stdlib build
- Remove unused jsIrTarget variable
- Rename the directory with copied builtin sources
2023-11-13 19:21:08 +00:00
Ilya Gorbunov 5e61cb5098 [stdlib-docs] Fix JS stdlib source paths in API docs builds 2023-11-13 19:21:08 +00:00
Ilya Gorbunov c69f36a8be [stdlib-js] Move public API out of runtime helpers directory 2023-11-13 19:21:08 +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 48ce45e22f [stdlib] Fix outdated documentation in Kotlin-Java Duration conversions
Add tests for documentation statements
2023-11-07 16:25:06 +00:00
Ilya Gorbunov e18a124cbb [stdlib] Import kotlin-test-common sources as a part of native stdlib 2023-11-02 03:12:56 +00:00
Ilya Gorbunov 1ea0c2aa44 [stdlib] Import native sources in IDE 2023-11-02 03:12:56 +00:00
Ilya Gorbunov bd6607c860 Drop kotlin-stdlib-wasm project
Its tasks are no longer used as build entry points
2023-10-20 16:27:30 +00:00
Ilya Gorbunov 892719171b Disable wasm-wasi stdlib tests execution unless kotlin.stdlib.wasi.tests property is specified
Reason: unstable on CI
KT-62694
2023-10-20 16:27:30 +00:00
Ilya Gorbunov aedc704e77 [stdlib] Further merge js-ir specific sources 2023-10-19 03:11:54 +00:00
Ilya Gorbunov 911fa3bbbb [stdlib] Merge js-ir specific sources into common js sources 2023-10-19 03:11:54 +00:00
Ilya Gorbunov f00d4022c4 [stdlib] Use common js sources in js-ir compilation without copying 2023-10-19 03:11:54 +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
Ilya Gorbunov 5f0a930ea3 [stdlib] Delete js-v1 sources 2023-10-19 03:11:53 +00:00
Ilya Gorbunov 406d1eaf89 YarnAndNpmSuppressor: allowed test task names for wasm tests 2023-10-17 16:30:41 +00:00
Ilya Gorbunov 469ca237db Remove the previous approach to build wasm stdlib variants 2023-10-17 16:30:41 +00:00
Ilya Gorbunov d4b245615a Build wasm stdlib artifacts in kotlin-stdlib project 2023-10-17 16:30:41 +00:00
Ilya Gorbunov 53681a33d9 Add required opt-ins in wasm stdlib sources 2023-10-17 16:30:41 +00:00
Ilya Gorbunov 735a97245d Remove forgotten ExperimentalStdlibApi in wasm sources 2023-10-17 16:30:41 +00:00
Ilya Gorbunov db6dfe99a0 Update Dokka to 1.9.10 2023-10-17 15:43:59 +00:00
Ilya Gorbunov 7bdcaff89a KT-61126 Change test expectations
Also improve failure diagnostics in test
2023-10-06 00:46:08 +00:00
Ilya Gorbunov 785d6858ea KT-62004 Drop legacy JS build of kotlin-stdlib
- preserve kotlin-stdlib-js.jar in dist and maven
- change packaging to klib in .pom
- fix manifest attributes of kotlin-stdlib-js
2023-10-06 00:46:08 +00:00
Ilya Gorbunov 6d5b1f84f9 KT-62004 Publish kotlin-dom-api-compat only for JS IR consumers 2023-10-06 00:46:08 +00:00
Ilya Gorbunov 2590e7f48b KT-62004 Add kotlin-test maven artifacts to BOM integration test 2023-10-06 00:46:08 +00:00
Ilya Gorbunov eb813b7837 KT-62004 Drop legacy JS build of kotlin-test 2023-10-06 00:46:08 +00:00
Ilya Gorbunov 93b107000a [stdlib-mpp] Remove stdlib projects no longer included in build 2023-09-20 01:07:59 +00:00
Ilya Gorbunov 222f996d45 [stdlib-mpp] Cleanup kotlin.stdlib.mpp build flag (always true) 2023-09-20 01:07:59 +00:00