Paul Krill
Editor at Large

JetBrains unveils Ktor roadmap

news
Mar 12, 20243 mins

OpenTelemetry plugins, gRPC support, simplified dependency injection, and managed database transactions are coming to the Kotlin-based framework for building asynchronous applications.

Java / coffee
Credit: Robert Shunev

JetBrains has unveiled a development roadmap for Ktor, the company’s Kotlin-based framework for building asynchronous client and server applications. Topping the list are OpenTelemetry plugins, gRPC support, simplified dependency injection, and support for managed transactions.

JetBrains published the 2024 roadmap for Ktor on March 12. The company said its ongoing plans and goals remain consistent with previous years, and it will strive to keep the framework lightweight, flexible, and transparent.

JetBrains said the introduction of OpenTelemetry plugins for Ktor Client and Ktor Server will enable the generation of telemetry data such as metrics, logs, and traces. OpenTelemetry is a collection of SDKs, APIs, and tools for instrumenting and collecting telemetry data, to help operators analyze software performance and behavior.

To support managed database transactions, JetBrains plans to introduce a plugin that allows for starting a transaction at the beginning of the request and committing it at the end, provided there are no errors. This will simplify database access while providing support for recovering from SQL and application-specific exceptions. Presently, Ktor services require manual management of database transactions.

To simplify dependency injection, support for this concept will officially be added into Ktor Server this year. JetBrains thus far has been agnostic on dependency injection libraries, preferring to allow users to integrate preferred products. But many users have asked for explicit recommendations on how to integrate dependency injection frameworks like Koin into Ktor-based services.

Also in 2024, plans call for integrating gRPC into both Ktor Client and Ktor Server via an idiomatic Kotlin implementation. This will make creating and consuming gRPC services as familiar as HTTP and REST, JetBrains said.

To make it easier for creators of multiplatform libraries to support Ktor Client and Ktor Server, JetBrains plans to replace existing bespoke networking types with those provided by the Kotlinx-io multiplatform library, which provides abstractions for data sources and destinations.

JetBrains this year also plans to publish a CLI tool for Ktor, to meet demand for a command line-based alternative to the online project generator or wizard in the JetBrains Intellij IDEA Ultimate IDE. This move would allow users to create and modify projects within the terminal or shell.

JetBrains also plans to introduce a mechanism for accepting third-party Ktor plugins. This will consist of a simplified format for creating these plugins, a new version of the project generator, and a procedure for submitting a pull request to the Ktor team.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author