Webinar recording: Developing Multiplatform Projects in Kotlin 1.2

Last week the webinar “Developing Multiplatform Projects in Kotlin 1.2” took place. Thanks to all participants for coming and good questions. Today we are happy to publish the recording of it. Don’t hesitate to suggest more themes for new webinars in comments. See you next time!

Continue reading

Posted in Events | Tagged | 3 Comments

KotlinConf 2017 Session Recordings and Photos are Here!

At last, they’re here!

All KotlinConf session recordings are now available with their accompanying slides. Watch the talks you missed, and rewatch the ones you loved, all at your own leisure! While you’re at it, take a look at the newly published photo gallery and see if you can find yourself, friends, or colleagues.

For a quick recap, check out the highlights video below and if you want, continue straight through the KotlinConf playlist on JetBrainsTV.

Posted in community, Events, Uncategorized | Tagged | Comments Off on KotlinConf 2017 Session Recordings and Photos are Here!

Kotlin 1.2 Released: Sharing Code between Platforms

Members of our community have translated
this blog post into several languages:

Today we’re releasing Kotlin 1.2. This is a major new release and a big step on our road towards enabling the use of Kotlin across all components of a modern application.

In Kotlin 1.1, we officially released the JavaScript target, allowing you to compile Kotlin code to JS and to run it in your browser. In Kotlin 1.2, we’re adding the possibility to reuse code between the JVM and JavaScript. Now you can write the business logic of your application once, and reuse it across all tiers of your application – the backend, the browser frontend and the Android mobile app. We’re also working on libraries to help you reuse more of the code, such as a cross-platform serialization library.

Kotlin 1.2
Continue reading

Posted in Releases | Tagged | 46 Comments

Kotlin/Native v0.4 released: Objective-C interop, WebAssembly and more

We’re happy to announce the release of Kotlin/Native v0.4, KotlinConf 2017 edition! This release adds support for accessing Objective-C APIs on iOS and macOS, WebAssembly target platform, as well as introduces major changes making app development in Kotlin/Native way easier.
Continue reading

Posted in Native, Releases, Uncategorized | Tagged | 32 Comments

Kotlin 1.1.60 is out

We’re happy to announce the release of Kotlin 1.1.60, a new bugfix and tooling update for Kotlin 1.1. This update:

  • Adds experimental support for Kotlin/JS incremental compilation
  • Adds new features to JSR-305 custom nullability annotations support
  • Brings a lot of bug fixes in the automatic Parcelable implementation generator and provides it with IDE support
  • Improves Gradle incremental builds
  • Introduces new inspections, performance improvements and bug fixes in the IntelliJ plugin

The update is compatible with all versions of IntelliJ IDEA from 2016.3 until 2017.3, as well as with Android Studio 2.3, 3.0 and 3.1 Canary.
The complete list of changes in this release can be found in the changelog.

We’d like to thank our external contributors whose pull requests were included in this release: Toshiaki Kameyama, Kirill Rakhman, Paul Merlin, Raluca Sauciuc, Yoshinori Isogai, Andrey Mischenko, Francesco Vasco, Jonathan Leitschuh, Denis Grachev, and pivotal-vladimir.

Continue reading

Posted in Releases | Tagged | 17 Comments

Kotlin/Native IDE Support Preview

Kotlin/Native is a brand new technology that compiles Kotlin directly to machine code and produces executables that can run without a virtual machine. At KotlinConf 2017, we announced a preview release of development tools for Kotlin/Native.

While we have IntelliJ IDEA for working with Kotlin, Kotlin/Native integrates with technologies from the native world such as Clang and LLDB support. That’s why JetBrains’ choice for Kotlin/Native is CLion, our IDE for C and C++.

To get started, download and install CLion 2017.3 (note that this version is at the early access preview stage for now). Next, install two plugins from the JetBrains Plugin Repository. In CLion, choose Configure → Plugins → Install JetBrains plugin…, then find Kotlin and Kotlin/Native plugins there, and install them. Don’t forget this is still a technology preview and bugs are possible, but if you encounter any, please report them!

Continue reading

Posted in EAP, Native, Releases, Tools | Tagged | 33 Comments

KotlinConf Keynote Recap

Today is a great day for the Kotlin community. KotlinConf, the inaugural Kotlin conference, opens today, and we’re really impressed that around 1200 attendees from all over the world have joined us in San Francisco. During the conference keynote, Andrey Breslav, the lead designer of Kotlin, has announced a few major developments around Kotlin, and now we’re sharing the news with everyone else.

Kotlin 1.2 RC

The first major announcement from the keynote is the release of Kotlin 1.2 Release Candidate. The new features in this release include the experimental support for multiplatform projects, allowing you to share code between modules targeting the JVM and JavaScript, as well as several language improvements, including support for array literals in annotations. For more information about the new features in 1.2, please check out the Kotlin 1.2 Beta announcement blog post.

The compiler now rejects binaries compiled with earlier pre-release versions of Kotlin 1.2; you’ll need to recompile them with this release. Code compiled with Kotlin 1.0.x or 1.1.x is, of course, fully compatible with this release of the compiler.

Even though coroutines are still labeled as an experimental feature, we’d like to clarify the exact meaning of this status. Coroutines are fully ready to be used in production, we’re using them in our own development, and we’re not aware of any major issues with the implementation. The reason why we keep the experimental status is that it gives us the ability to iterate on the design. Note that, even if we do make changes to the API, the current API will remain supported, even though it will be marked as deprecated, and we will provide the necessary migration tools. According to our current plans, the experimental status of coroutines will be removed in Kotlin 1.3.

Now is the time when we ask for your help. Even though we’ve done a lot of testing of this release internally and with other teams at JetBrains, the real world is far more varied than what we have access to. Therefore, please — give Kotlin 1.2 RC a try on your own projects, and let us know if you run into any issues. Your help is essential in ensuring a smooth final release.
Tell everyone to go try it

Continue reading

Posted in community, Events, Releases | Tagged | 13 Comments

Kotlin 1.2 Beta2 is out

We’re happy to announce the second Beta release for Kotlin 1.2. In this release, we’ve been mostly focusing on smaller internal changes and on adding some missing pieces to our multiplatform project story.

We’d like to thank Andrey Mischenko, Francesco Vasco, Jake Wharton, Jonathan Leitschuh, Kirill Rakhman, Pap Lorinc, Paul Merlin, Raluca Sauciuc, Toshiaki Kameyama, and Yoshinori Isogai for their contributions to Kotlin 1.2 Beta2.

The complete changelog since 1.2-Beta can be found here with the significant changes listed below.

Continue reading

Posted in EAP, Releases | Tagged | 11 Comments

Kotlin Census 2017


Every year we run the Kotlin Census survey so we can get the latest feedback from you, and how you are using Kotlin in your projects. If you still don’t use Kotlin, we would like to understand your reasons why and your opinion of the language is exceptionally important for us as well. If you filled out the survey last year, thank you, it would be really helpful if you could please do it again: we’re interested in the up-to-date information, we’ve also added a few new questions and response options based on last year’s results.

As such, we’re asking you if you could kindly give us two minutes of your time and fill out the following survey.

Please note that by providing us with your details, you are not automatically giving us consent to use your name, application or company name. We would always ask for written confirmation from you before doing so.

Continue reading

Posted in community | 25 Comments

Kotlin 1.2 Beta is out

We’re happy to announce the Beta release for Kotlin 1.2. With this release, we’re unveiling the major new feature of Kotlin 1.2 – experimental support for multiplatform projects. Also, the language and standard library are now feature complete – all the new features planned for Kotlin 1.2 have been implemented. Now is a great time to give us feedback on the changes – we still have time to take the feedback into account and adjust the design for the final 1.2 release, if needed.

In terms of tooling, Kotlin 1.2 Beta includes the same set of features as the recently released 1.1.50 update. The beta is compatible with all versions of IntelliJ IDEA from 2016.3 until 2017.3, as well as with Android Studio 2.3 and 3.0.

The complete changelog since 1.2-M2 can be found here with the significant changes listed below.


Continue reading

Posted in EAP, Releases | Tagged | 20 Comments