-
-
Notifications
You must be signed in to change notification settings - Fork 112
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
Add Linux X64 Support #119
Conversation
@napperley is the PR ready to be merged from your perspective? If so I will create an artifact from this to verify it's ok and after we test that I will merge. |
The PR is ready to be merged. |
@napperley I tried to deploy 1.8.0.1.
Did you encounter something similar? |
I have encountered the 422 error before but haven't found a way to resolve it. One theory for the error is that the same artifact (GitHub package) exists on GitHub Packages therefore the publishing fails. Unfortunately GitHub doesn't provide a way to remove a individual artifact (GitHub package) from GitHub Packages. |
I managed to release only the native artifact to github in version |
Did a quick visual inspection of the GitHub package. Everything looks ok 👍 . |
All is not well. Tried to use the GitHub linuxx64 Package in a test project, and Gradle cannot find it. Using the following in the build file: // ...
repositories {
jcenter()
mavenCentral()
maven {
url = uri("https://maven.pkg.github.com/MicroUtils/kotlin-logging")
}
}
kotlin {
linuxX64 {
compilations.getByName("main") {
dependencies {
val kotlinLoggingVer = "1.8.0.3"
implementation("kotlin-logging:kotlin-logging:$kotlinLoggingVer")
}
}
// ...
}
}
// ... Note that the base URL works: https://maven.pkg.github.com |
I think that there is a line that should be changed:
Note the artifact id: |
That doesn't make a difference. Usually with Kotlin Native libraries the name of the module is omitted when adding a Kotlin Native library as a dependency, eg: |
Might be, but as far as I understand that is how gradle find the artifact. See here: https://github.com/MicroUtils/kotlin-logging/packages/286126 |
Can you try also to see if there is a difference from the version you managed to publish? |
Turns out one has to authenticate (via a username and token) in order to access the GitHub Packages Maven repository which isn't going to work (the Maven repositories are private) 😦 . GitLab Maven repositories by comparison can be accessed by anyone (are public) for downloading artifacts via Gradle or Maven. |
This is strange, because via the ui you can download it without even being signed-in. |
@napperley it seems we are a bit stuck here. What do you think about merging the code changes without the changes in the build? so we actually won't publish those artifacts yet but we'll have the code ready until we solve it, maybe with changes to multiplatform framework in kotlin. |
@oshai - If you are referring to removing the configuration for GitHub Packages then I can have it removed from the build file. Hopefully artifacts hosted by GitHub Packages in the future will be publicly accessible through Gradle. |
Thanks @napperley , I merged it. Hope the packaging issue will be solved soon. |
This PR partly addresses issue #45 by only adding support for a single Kotlin Native target (linuxX64), and is the successor to PR #103 . Implementation of this PR is based on the existing JS implementation with some minor adaptations made to make it work with the Kotlin Native linuxX64 target. Use of dependencies is minimal with only the Kotlin Native Standard library, and POSIX being used. Most Linux distributions have built-in support for POSIX (Android is one of the main exceptions).
The latest stable version of Kotlin is used due to Kotlin Native currently not having proper backwards compatibility. It remains unknown if this situation will be resolved with the Kotlin 1.4 release that is arriving soon.