Skip to content

iOS actuals + Maven Central publication - #1

Merged
rinekri merged 2 commits into
masterfrom
feature/kmp-ios-publication
Nov 8, 2026
Merged

rinekri merged 2 commits into
masterfrom
feature/kmp-ios-publication

Conversation

@rinekri

@rinekri rinekri commented Nov 8, 2026

Copy link
Copy Markdown
Contributor

Summary

  • iOS targets compile now: iosMain actuals for createConcurrentMutableMap (HashMap behind an atomicfu lock, snapshot entries/keys/values) and createConcurrentMutableList (copy-on-write list, snapshot iteration like CopyOnWriteArrayList).
  • Publishing works the same way as Way: coordinates ru.kode:reactive-tasks:1.0.0, POM built from pom* keys in gradle.properties.
  • Toolchain matches Way: Kotlin 2.3.20, AGP 9.0.1 (DSL moved from androidLibrary {} to android {} / withHostTest {}), vanniktech 0.37.0, Gradle 9.4.1.
  • GitHub workflows run on macos-latest: ci.yml (PR: allTests + assemble) and release.yml (tag v*: tests, tag/version check, publishAndReleaseToMavenCentral).
  • Added CHANGELOG and an install snippet in the README.

Testing

  • jvmTest and testAndroidHostTest pass locally; all iOS targets compile and link.
  • iosSimulatorArm64Test could not run locally because no iOS simulator runtime is installed. CI on this PR runs it.
  • publishToMavenLocal: reactive-tasks, -jvm, -android, -iosarm64, -iossimulatorarm64, -iosx64 at 1.0.0, POM has no placeholders.
  • :sample:run behaves as before.

Before release

The repo needs the secrets NEXUS_USERTOKEN_NAME, NEXUS_USERTOKEN_PASSWORD, SIGNING_KEY_ID, SIGNING_PASSWORD and SIGNING_SECRET_KEY_RING_FILE_BASE64 in the release environment.

- iosMain: lock-based map and copy-on-write list (atomicfu locks)
- Publish as ru.kode:reactive-tasks 1.0.0, POM from gradle.properties
- Bump Kotlin 2.3.20, AGP 9.0.1, vanniktech 0.37.0, Gradle 9.4.1
- GitHub CI and tag-triggered release workflows on macOS
…urrent collections

Pins current behavior across jvm, Android host and iOS simulator tests.
Known quirks are asserted as-is and marked with // quirk: comments.
@rinekri
rinekri merged commit a6e6c71 into master Nov 8, 2026
2 checks passed

This branch was successfully deployed

1 active deployment
release — 9848850e Deployed Nov 8, 2026 by rinekri via publish-library #1
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.

1 participant