-
Notifications
You must be signed in to change notification settings - Fork 3
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
Update Kotlin Native targets #65
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! I didn't know this one
watchosSimulatorArm64() | ||
watchosX64() | ||
watchosX86() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should just do a hard removal targets like this 🤔
I can see on sonatype that we get very little downloads for watchosX86
, but we're getting some... These targets are getting < 500 downloads every month, so arguably its all toy projects.
I think there are 3 options:
- Follow same deprecation - removal process as Kotlin itself
- Remove in 2.x.x, regardless of what Kotlin is doing
- Hard remove in 1.2.0
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably watchosX86
projects are not using that target; they are just targeting all targets that exist as coroutines library does (and other JetBrains libraries).
And that is the real problem, when we remove those targets all of those libraries will break. I would keep this PR as a draft and merge it in the future following Kotlin (and probably coroutines) practices.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What do you think about not removing any target, but adding the new ones? They won’t be removed until 1.9 at least.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@JavierSegoviaCordoba I think we should merge (and release a new version of this library) now, so we can start targeting those targets in 1.8.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Up to you :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we're not removing anything then it's definitely not an issue. We need to make sure to update the CI workflow of Arrow when we update.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Follow same deprecation - removal process as Kotlin itself
Remove in 2.x.x, regardless of what Kotlin is doing
Then we can follow either of these two strategies, whichever comes first.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Statistics from sona for remove targets for 1.1.0, 1.1.2 and 1.1.3
iosArm32Main
: < 200 in DecemberwatchosX86
: < 200 in December
@serras can you confirm these are the only removed targets? I am approving this PR, so we can hard remove the targets in 1.2.0.
I've put the targets back, it doesn't hurt to keep them a bit longer. Whenever this is merged I'll produce a PR for the main Arrow repo. |
@JavierSegoviaCordoba @nomisRev should I create a new tag to start publication in Maven Central? |
@serras I released 0.12.0-rc1. So we can test it on a PR, I’ll show you tomorrow how we trigger releases. (It works through triggering the generate-tag workflow with the desired parameters). Thank you this PR 🙏 Great work 🥳 |
According to the recently updated Kotlin Native support, these are the targets we should support as a library.