Skip to content

Version 1.8.0-RC #3965

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 62 commits into from
Dec 1, 2023
Merged

Version 1.8.0-RC #3965

merged 62 commits into from
Dec 1, 2023

Conversation

dkhalanskyjb
Copy link
Collaborator

No description provided.

qwwdfsad and others added 30 commits July 26, 2023 17:31
* Update Kotlin to 1.9.0
* Get rid of legacy JS post 1.9.0
* Stop publishing into NPM
* Stop testing on exotic JS targets
* Update DebugProbesKt.bin

Fixes #3812
This commit is required for the aggregate build that checks the change of deprecation level for native atomics (https://jetbrains.team/p/kt/reviews/10650/timeline). Usages of native atomics from kotlin.native.concurrent package are replaced with new atomics from kotlin.concurrent because old native atomics will be deprecated with error.

NOTE: this commit is not present in develop branch, because new kotlin.concurrent atomics are only available since Kotlin 1.9.0. IT SHOULD BE REMOVED after kotlinx.coroutines updates Kotlin version to 1.9.0.
After changes required for https://youtrack.jetbrains.com/issue/KT-57292/Rework-configuration-of-compiler-settings-in-MPP-Projects
consistency checks were move later in configuration phase. Now they
started also catch inconsistency between "jvmMain" and "jvmCoreMain"
source sets.
Ignore adding additional optIns also for "jvmCoreMain" source set
Add Optin for kotlinx.cinterop.UnsafeNumber due to KT-59859
Migrate from the deprecated native atomics
…on errors

Those are compilation errors introduced in Kotlin 1.9.20 in scope of
https://youtrack.jetbrains.com/issue/KT-22841
…tched-scopes

Fix expect/actual mismatched member scope for `open expect` compilati…
The compilation error appeared after KT-59665
Fix NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS compilation error
…S compilation error (#3870)

The compilation error appeared after KT-59665
This warning is introduced in Kotlin 1.9. KT-61573
If I don't mute this warning then the build fails because of `-Werror`
#3869)

* Get rid of ACTUAL_FUNCTION_WITH_DEFAULT_ARGUMENTS to reduce the tension between develop and K2 branches
* Remove obsolete workaround

Target ticket: KT-61577
…BERS_AS_NON_FINAL_EXPECT_CLASSIFIER compilation error (#3870)

The compilation error appeared after KT-22841
Kotlin 1.9.20 migration: Fix ACTUAL_CLASSIFIER_MUST_HAVE_THE_SAME_MEM…BERS_AS_NON_FINAL_EXPECT_CLASSIFIER compilation error (#3870)
…ning

Mute "expect/actual classes are experimental" warning
…tual mapping) for CancellationException. (#3850)

See KT-61168 & KT-22004 for the future solution
dkhalanskyjb and others added 20 commits November 27, 2023 11:50
K2 now runs checks more aggressively and reports name-clash without override for invisible member/invisible reference suppresses
`actual typealias` no longer works for `expect interface`
* Update Kotlin to 1.9.21
* Update atomicfu to a version released with 1.9.21 to address KT-62515
* Enable K/N atomicfu transformations
In K2, the resolution rules changed, and we relied on the specific
behavior of the K1 compiler.
K2 now detects the cases that K1 misses, and
reports warnings, just in case.
This commit attempts to fix #3800.
The first part of the fix, reverting the timeout to 60 seconds, is
successful.
The second part, allowing global configuration, is only provided
for the JVM so far.

On JVM, Native, and Node JS, it's possible to use environment
variables to communicate data to the process, and it could in
theory be the solution, but it doesn't seem to interoperate well
with Gradle.

The best attempt so far was to use this:
```kotlin
tasks.withType(AbstractTestTask::class).all {
    if (this is ProcessForkOptions) {
        environment("kotlinx.coroutines.test.default_timeout", "1ms")
    }
}
```

Unfortunately, only `jvmTest` implements `ProcessForkOptions`.

Without a clear way to configure the `runTest` timeout in Gradle
builds for all targets, we only support this via system properties
on the JVM until a better mechanism appears.
#3877)

* Create Dispatcher.Default threads with the same context classloader as the dispatcher itself

In order to properly operate in modularized on a classloader level environments with the absence of other workarounds (i.e. supplying application-specific thread factory)

* Do the same trick for DefaultExecutor

Fixes #3832
#3959)

* Fix warnings that manifested themselves as errors after multiple simultaneous merges
Also, rewrite some build logic to gradle.kts
* Simplify some code
* Unify and generalize the tests for all Main dispatchers
* Cleanup build configuration in JavaFx
* Allow using kotlin.test from tests in the core module from JavaFx

Fixes #3545
* Remove deprecated and to-be-removed property which is actual only for legacy JS compiler
Copy link
Collaborator

@qwwdfsad qwwdfsad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

@dkhalanskyjb dkhalanskyjb merged commit 69dc487 into master Dec 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.