Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Initial support for Swift export #723

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

sbogolepov
Copy link
Collaborator

Some notes:

  • We re-use Kotlin/Wasm stdlib klib to avoid downloading huge Kotlin/Native distribution. Should be fine as for now, Swift export supports a limited set of declarations from stdlib.
  • Re-use existing endpoints for js/wasm translation.
  • All Analysis API & Swift export dependencies are hidden in a separate module to avoid cluttering the main build.gradle.kts.

There might be bugs. We will squash them as soon as possible :)

@nikpachoo
Copy link
Collaborator

DO NOT MERGE IT.
The Swift export works on RC2.

@nikpachoo
Copy link
Collaborator

A note for the devs: in prod, we use "swift-export-v1" branch

SirAsSwiftSourcesPrinter.print(
sirModule,
stableDeclarationsOrder = true,
renderDocComments = true,
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be false - we do not support them currently, see KT-68744 for more information.

@zhelenskiy
Copy link
Contributor

Are there any updates?

@nikpachoo
Copy link
Collaborator

@sbogolepov, could you please rebase you changes on the master?

Minor hack: use wasm stdlib to avoid downloading the whole K/N distribution
@sbogolepov sbogolepov changed the base branch from 2.0.0-beta2-prepare to master December 2, 2024 14:07
@sbogolepov
Copy link
Collaborator Author

Sure, done. Now that we have a proper publishing of Swift export artifacts the dependency hell is gone, and everything looks more or less clean.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants