icerockdev / moko-parcelize

@Parcelize support for mobile (android & ios) Kotlin Multiplatform development
https://moko.icerock.dev
Apache License 2.0
59 stars 2 forks source link

Support all kotlin targets #13

Closed Alex009 closed 3 years ago

Alex009 commented 3 years ago

@Parcelize annotation required only for android target. we can just set annotation as optional expectation and compile lib for all exist kotlin targets.

nrobi144 commented 3 years ago

I'll work on this, since this step is important in bringing more targets to moko-resources

nrobi144 commented 3 years ago

@Alex009 AFAIK @OptionalExpectation is only for annotations, so we still have to give actual Parcelable interface implementations.

We can work around it probably with an otherMain sourceSet and dependsOn, to do it only once, what do you think?

Alex009 commented 3 years ago

@nrobi144 yes, good way with otherMain. but i suggest notAndroidMain :)

Alex009 commented 3 years ago

@nrobi144 also we should improve github actions code...

Some Kotlin/Native targets cannot be built on this macos_x64 machine and are disabled:
    * In project ':parcelize':
        * targets 'linuxMips32', 'linuxMipsel32' (can be built with a linux_x64 host)
        * targets 'mingwX64', 'mingwX86' (can be built with a mingw_x64 host)

maybe you already have some experience with it?

nrobi144 commented 3 years ago

I don't really have experience with github actions. But I'd look into it gladly, if I'm correct the publish.yml & compilation-check.yml should be extended to run not only on macOS, but other environments as well (maybe more steps is needed)

Could you create an issue and assign it to me? :D

Alex009 commented 3 years ago

we can't deploy this issue without fixes of CI, so will be better continue in this issue.

publish.yml should contains config for run on macos mac targets publication, mingw - mingw, windows - windows, linux all linux and all other targets (i think linux host faster than other)

and compilation-check.yml should be updated too, same as publish. to check on PR on each host

nrobi144 commented 3 years ago

@Alex009 you were right, it runs faster on linux 😀 https://github.com/icerockdev/moko-parcelize/pull/16/checks?check_run_id=1709358177