Kotlin / kotlinx.coroutines

Library support for Kotlin coroutines
Apache License 2.0
13.07k stars 1.85k forks source link

Correct artifact naming for native-mt version #2482

Closed ln-12 closed 3 years ago

ln-12 commented 3 years ago

A always get the hint to update to a new version when using the native-mt variant. As described here adding native-mt after the actual version number seems to be the wrong way of defining a different variant. YouTrack issue: https://youtrack.jetbrains.com/issue/KT-42845

image

DDoSolitary commented 3 years ago

+1 for this. I would suggest releasing it with a different artifact name.

qwwdfsad commented 3 years ago

Hi, unfortunately, we are not going to change it.

This naming scheme is already conventional, properly documented in all the tutorials and well-known for MPP/KMM users and changing it again will introduce unnecessary hassle without that much benefit.

In the long term, as soon as the new Native memory model is here, we'll switch back to normal versioning and abandon native-mt branch.

ln-12 commented 3 years ago

Fixed in Android Studio for now: https://issuetracker.google.com/issues/171369798

gnarea commented 3 years ago

will introduce unnecessary hassle without that much benefit

"hassle" and "benefit" are both relative: This issue makes it a real pain in the neck to use this library with Dependabot.

We have a bunch of apps and libraries using coroutines, and every single time there's a new release, I have to manually check out the branch, remove the -native-mt suffix and push. But the fun doesn't end there: Once the fixed PR is merged, Dependabot will create a brand new PR with the -native-mt suffix, so I have to close it and delete the branch. And no, I can't get Dependabot to ignore *-native-mt versions because it only supports Semantic Release versions. 😭

Is it Dependabot's problem? Absolutely not, it's just using Gradle. Is it Gradle's problem? I don't think Gradle should special-case one library -- though I do appreciate Google special casing it in Android Studio.

jnorthrup commented 3 years ago

Java SE 6 (December 11, 2006) Its codename was Mustang. After the release of this version, Java replaced the name J2SE to Java SE and dropped the .0 from the version number. [...] Java SE 7 (July 28, 2011) Its codename was Dolphin. It was launched on 7, July 2011 but was made available for developers on July 28, 2011.