coroutineworker icon indicating copy to clipboard operation
coroutineworker copied to clipboard

Deprecate CoroutineWorker, enable the new Memory Model

Open C2H6O opened this issue 3 years ago • 5 comments

With the release of Kotlin 1.7.20-Beta (https://blog.jetbrains.com/kotlin/2022/08/kotlin-1-7-20-beta/) and the new Memory Model for Kotlin Native becoming the default, there's no longer a need for this library. Version 0.9.0 helps transition over to the new memory model without having to make any changes related to CoroutineWorker code. The latest version of CoroutineWorker uses the same implementation for all platforms.

C2H6O avatar Aug 03 '22 18:08 C2H6O

As we discussed elsewhere, I think the plan will be to merge this to a separate branch and create a special deprecation release that people can grab if they want to migrate away without dealing with pulling the library out immediately.

DanielRBaird avatar Aug 08 '22 19:08 DanielRBaird

IMO, we should push people to the new memory model, if it's stable.

benasher44 avatar Aug 08 '22 20:08 benasher44

IMO, we should push people to the new memory model, if it's stable.

I believe that it is stable, and generally agree. Are you just suggesting that we should make the deprecation version the primary branch?

We are currently discussing how that branching is going to work exactly. The only things we know for sure is that we want to have a separate branch for support purposes for old things, and we probably want to publish the deprecation version with a name such that people won't update to it accidentally, and will realize they aren't meant to keep it around. It will only exist to make the transition easier.

DanielRBaird avatar Aug 08 '22 20:08 DanielRBaird

I think we should publish 1.0.0, so it's clearly breaking. Upgrading requires the new memory model. If someone needs maintenance of the existing version that supports the old memory model, we can publish new versions after they make their case via a GitHub issue.

benasher44 avatar Aug 08 '22 20:08 benasher44

I think we should publish 1.0.0, so it's clearly breaking. Upgrading requires the new memory model. If someone needs maintenance of the existing version that supports the old memory model, we can publish new versions after they make their case via a GitHub issue.

Sounds reasonable to me.

DanielRBaird avatar Aug 08 '22 20:08 DanielRBaird