Release Notes
Nov 2024
Kalix JVM SDK 1.5.4 Improved compatibility with the new Akka SDK, smaller improvements and fixes.
Kalix Runtime 1.2.1: Allow transcoded endpoints mapped to root path, dynamic log level configuration.
Oct 2024
kalix CLI 2.0.54: Adds support for the heap dump extension.
Kalix JVM SDK 1.5.3 Several minor fixes and improvements
Kalix Runtime 1.1.46: View indexing improvements for some join conditions and other smaller improvements.
kalix CLI 2.0.52: Updates to region management commands.
Sep 2024
Kalix Runtime 1.1.45: Fixes one issue related to eventing lag and one where gRPC request could end up being processed twice.
kalix CLI 2.0.51:
Fixes issue where PRINCIPAL is not displayed correctly when executing the command kalix organization users list-bindings
.
Aug 2024
kalix CLI 2.0.49: Organizations get command for organization details. More detailed region information is now displayed.
Kalix JVM SDKs 1.5.2 Automatically passing metadata traceparent in Actions, adding missing tracing MDC for views, and other various improvements.
July 2024
kalix CLI 2.0.48: Bug fix where principals were not being printed to the console whilst listing bindings
kalix CLI 2.0.47: Select a default Organization for subsequent commands
kalix CLI 2.0.47: Bug fix for output formats
Kalix JVM SDK 1.5.1 Logging now supports correlation with trace IDs.
May 2024
Kalix JVM SDK 1.5.0 release we change our license to Business Source License (BSL). This change allows the Kalix SDK to make use of the latest enhancements in Akka 2.9 and other Akka libraries. Furthermore, with this even the Kalix SDK is covered by Lightbend’s SOC2 compliance. Please refer to the Lightbend Legal terms page for details.
New features include support for Scala 3 in the Scala Protobuf SDK and component to component tracing now available even for the Java SDK.
A minor build migration is needed when updating to Kalix JVM SDK 1.5.0. See the migration guide here.
Some deprecated APIs have been removed in Kalix JVM SDKs 1.5.0. Please refer to the migration guide here for more details.
The license for Kalix JavaScript SDK has also been changed to Business Source License (BSL). This change is to align with the licensing of our other SDKs. Please refer to the Lightbend Legal terms page for details.
Additional features in the Kalix CLI, including support for developing locally with kalix local run
.
The new kalix services views describe
command shows detailed information about a Kalix View.
March 2024
Kalix JVM SDKs 1.4.1 Support for tracing component and external calls and other various improvements.
February 2024
Kalix JVM SDKs 1.4.0 Adds support for workflows in Java and Scala Protobuf SDKs, see here. Additionally, this version extends View component to support multiple queries to the same table.
Deprecations introduced in Kalix JVM SDKs 1.4.0
Java and Scala Protobuf SDKs:
-
(kalix.field).entity_key
is replaced with(kalix.field).id
-
(kalix.method).entity.key_generator
is replaced with(kalix.method).id_generator.algorithm
-
(kalix.codegen).entity_type
is replaced with(kalix.codegen).type_id
Old annotations are deprecated and will be removed in the next major release.
Java SDK:
-
class
kalix.javasdk.workflow.Workflow.RecoverStrategy
was moved tokalix.javasdk.workflow.AbstractWorkflow.RecoverStrategy
, please update your code accordingly.
January 2024
Kalix JVM SDKs 1.3.8 Adds support for on-startup hook in Java SDK, see here. Introduces ability to require multiple values for a JWT static claim and defining it with a regex pattern, see here. General fixes and improvements.
December 2023
Kalix JVM SDKs 1.3.7 Fixes and improves the broken Maven Archetypes.
Kalix JVM SDKs 1.3.6 Views' enhancements for when doing aggregations. Ability to declare an on-startup hook which will be triggered automatically on instance startup (currently available for Java/Scala Protobuf SDKs, see here). Support for JWT static claims (see docs).
The kalix container-registry
commands have been added to assist in managing your assets in the Kalix Container Registry.
HTTP/1.1 support for kalix
commands. The kalix
CLI uses gRPC to communicate with many backend Kalix services, which requires HTTP/2. In some corporate environments, decrypting transparent proxies are used which don’t support HTTP/2, preventing the kalix
CLI from working. This adds a new option to tell kalix
to use grpc-web when communicating with backend services, which works over HTTP/1.1.
November 2023
Kalix JVM SDKs 1.3.5 Support for JUnit 5. Fix regression introduced in v1.3.4 affecting the use of KalixClient
and ComponentClient
. General documentation improvements.
kalix local
command has been added to assist in running and managing Kalix services locally.
Route validations can now be configured. Routes can be protected by HTTP Basic authentication, and, when using client certificates, client certificate subjects can be validated.
Google Cloud logs and metrics exporters can now be configured. This replaces the old Stackdriver log aggregator support.
Kalix JVM SDKs 1.3.4 Support for mocked Service-to-Service and View subscriptions in Integrations tests (make sure to update your current test kit configuration). New service-level JWT configuration that reduces boilerplate and allows for a deny-by-default policy.
September 2023
Kalix JVM SDKs 1.3.3 Support for JSON Schema Evolution in Java SDK. Improvements in Workflows and TestKit Mocked Topic.
August 2023
Splunk HEC CLI configuration support
Kalix JavaScript/TypeScript SDK 1.1.0 Updated to Node 18 (Active LTS).
Adds the ability to configure observability for a Kalix project via projects observability
in the Kalix CLI.
July 2023
Kalix JVM SDKs 1.3.2 Support ComponentClient in integration tests and some bug fixes.
Allow users to set their own Kafka message broker with SASL authentication by using kalix project config set broker with arguments --broker-auth
, --broker-bootstrap-servers
, --broker-user
, --broker-password-secret
and --broker-password-secret
. Deprecated the argument --broker-config-file
.
Kalix JVM SDKs 1.3.1 Kalix TestKit EventingSupport
enum for PubSub renamed from EventingSupport.GOOGLE_PUBSUB_EMULATOR
to EventingSupport.GOOGLE_PUBSUB
.
June 2023
Introduced the secrets create tls
command in the Kalix CLI. Support to show exceptions in Kalix logs.
Kalix JVM SDKs 1.3.0 Kalix Workflow GA release.
Kalix JVM SDKs 1.3.0 ComponentClient for type-safe deferred calls creation. Also, deprecating existing KalixClient.
Kalix JVM SDKs 1.3.0 TestKit Mocked Topics for easier integration tests with brokers (for Java SDK, see here).
Kalix JVM SDKs 1.3.0 Default broker used in Integration Tests is no longer Google PubSub but can still be enabled via settings for each test.
Kalix JVM SDKs 1.3.0 New annotations @Id
, @TypeId
and @GenerateId
to replace @EntityKey
, @EntityType
and @GenerateEntityKey
respectively. @EntityKey
, @EntityType
and @GenerateEntityKey
are deprecated as of release Kalix Java SDK 1.3.0.
Java and Java/Protobuf SDK new plugin goal (mvn kalix:runAll
) allows the start of Kalix Proxy from within the Maven plugin.
Scala/Protobuf SDK new plugin goal (sbt runAll
) allows the start of Kalix Proxy from within the sbt plugin.
Multi-service testing for Java, Java/Protobuf and Scala/Protobuf SDKs.
May 2023
Allow users to set/update their own TLS certificate for the Ingress by using kalix routes create and kalix routes update with argument --server-certificate-secret
(and --remove-server-certificate-secret
for the update command).
Show expired trial projects in CLI and Web UI.
April 2023
Enable multi-platform proxy docker image build to improve developer experience for Mac users with Apple silicon processors.
Allow users to set the description of a broker configuration by using kalix project config set broker with argument --description
.
Display the project’s region when using kalix projects list and kalix project get.
March 2023
Allow users to configure autoscaling of a service using kalix service deploy with arguments --max-instances
and --min-instances
.
New service commands kalix service apply and kalix service export to apply and export YAML descriptors for services.
Second preview of Kalix Workflows.
Improve CLI help for kalix routes create and kalix routes update
Kalix JVM SDKs 1.2.0 Protocol-first Java/Scala SDKs are renamed to Java/Scala Protobuf SDKs and code-first Spring SDK is renamed to Java SDK. Users of Java/Protobuf SDK need to update the artifact name. See migration guide.
February 2023
New Billing UI for Organizations
First preview of Kalix Workflows.
Improved auto restarting in dev mode.
Kalix Java SDK 1.1.7 Fix allowing the use of Instant
in Spring SDK views.
January 2023
Kalix Java SDK 1.1.5 Several developer experience improvements.
December 2022
Kalix Java SDK 1.1.4 Fix for Replicated Entities in the Scala SDK. Support advanced views in the Spring SDK.
Performance improvements of View updates. Views can keep up with a higher event throughput.
Performance improvements of timers. Can handle more short lived and more active timers. Also limits timer payload size and total number of accepted timers.
Lower latency for eventing.in
from Event Sourced Entity, including Service to Service eventing.
Kalix Java SDK 1.1.3 Support advanced views with join queries. Allow ignore
as an async effect in Actions.
November 2022
Delete handlers for Views and Actions.
The Kalix Console now shows service statuses (such as "Paused").
CLI command kalix projects rename to rename an existing Kalix project.
The CLI command kalix services get now includes the status of the service.
Kalix Java SDK 1.1.2 Fixes and improvements on the Kalix Spring SDK.
Kalix Java SDK 1.1.1 Fixes and improvements. TestKit updated to proxy 1.0.28.
Kalix Java SDK 1.1.0 First release that officially includes the new Spring SDK (beta) - find the documentation here.
ACLs are now by default disabled for local development starting from Java/Scala SDK version 1.0.11 and JavaScript SDK version 1.0.5. Consult Local development with ACLs section as well the specific SDK pages for details on how to enable it for tests (Java/Scala or JavaScript)
Support Kalix Console login with MFA (Multi-factor Authentication) settings.
Support service soft delete with the commands kalix services delete and kalix services restore.
New service commands for pausing and resuming a service - kalix services pause and kalix services resume.
CLI command kalix docs to open online documentation.
Display organization contract number in kalix organization list.
October 2022
Deprecation of the --shell
flag for the kalix completion
command.
Service to Service eventing - brokerless at-least-once eventing between Kalix services.
Kalix Java SDK 1.0.9 Support and docs for Service to Service eventing.
Kalix Javascript/Typescript SDK 1.0.4 Support for Service to Service eventing.
September 2022
Kalix Java SDK 1.0.8 New Spring SDK preview available.
Kalix Java SDK 1.0.6 Parallel request handling bug fix
August 2022
Kalix JavaScript SDK 1.0.3 Fix for codegen binary on Windows.
Service tokens - users can now create tokens for third party services, such as CI/CD, that are associated with a single project, rather than a logged in user, so that those tools can interact with projects having only the permissions they need. See Integrate with CI/CD tools for more details.
Kalix JavaScript SDK 1.0.2 Fix for codegen binary on Linux.
Kalix JavaScript SDK 1.0.1 Fix for protobufjs
transitive dependency and missing pbjs
and pbts
binaries.
Users can now have different roles in their Organizations and Projects. See Managing organization users and Managing project users for more details.
Kalix Java SDK 1.0.5 Internal networking improvements.
Organization administrators can now manage user roles within their organization. See Add a role binding for more details.
July 2022
Invitations to organizations can now be cancelled via the Kalix CLI. See Organizations for more details.
Kalix JavaScript SDK 1.0.0 Full TypeScript support. New Quickstart documentation.
More efficient way of ignoring events in Actions and Views, see documentation.
June 2022
Kalix JavaScript SDK 1.0.0-M10 TypeScript API and tooling improvements. ACL support added. Preliminary support for building projects on Apple M1.
Kalix Java SDK 1.0.3 ACL support.
May 2022
Pass through JSON, text and bytes from HTTP endpoints
ACL support: Access Control Lists for authorizing access to Kalix services
Timers providing scheduled service calls
April 2022
Projects can now belong to an organization. Users can be invited to become part of an organization via the Kalix CLI. See Organizations for more details.
The query language in Views has been extended significantly.
The all new web interface has been launched at console.kalix.io.
March 2022
Kalix JavaScript SDK 0.33.5 Fix proto to JS code generation.
Kalix JavaScript SDK 0.33.4 Support emitting JSON to topics.
January 2022
Kalix Java SDK 0.10.5 Support for paging in views.
JWT support: validate messages against the JWT bearer token; specify multiple trusted issuers; allow local testing with JWT
Entity keys can now be generated by Kalix actions.
December 2021
You can now secure your services with client certificates and/or JWTs. See Securing services for more details. You will need version 0.1.9 of the Kalix CLI to use this.
You can now querying repeated nested message fields in views.
You can now receive byte string and text messages from topics.
The root package is now configurable, which is important when your .proto
definitions don’t share a common parent package when using the Java/Scala SDK.
Component names can now be explicitly specified when using the Java/Scala SDK.
November 2021
Kalix Java SDK 0.10.1 smaller fixes and improvements including a code generation solving Scala and Java quickstart sample issues.
You can now use Kafka to connect your Kalix services together and to connect to external services as well.
We’ve updated the messages that are logged in your projects so it is easier to see which messages you should act on and what they mean.
Kalix Java SDK 0.10.0 is now available with a new type safe generated API for interaction between components in the same service.
We’ve introduced our new secrets management API. To safely and securely store secrets you’ll need version 0.1.6 of the Kalix CLI.
October 2021
We’ve implemented a new feature that automatically scales your service down to zero when it fails to start 3 times in a row. This helps preserve your trial credits.
The minimum required Java version is now Java 11.
A new version of the Kalix CLI (v 0.1.1) is now available! You’ll need this latest version to make use of the new platform capabilities
Kalix Java/Scala SDK 0.9.0 is now available and contains all entity types!
As a new state model, we’ve introduced our Replicated Entities. Replicated Entities distribute state using a conflict-free replicated data type (CRDT). Data is shared across multiple instances of a Replicated Entity and is eventually consistent to provide high availability with low latency.
We’ve added a lot of new quickstarts to help you get started with Kalix even faster.
We’ve added documentation on how you can call Kalix services from other Kalix services in your project.
September 2021
A new version of the Kalix CLI (v 0.0.39) is now available! We strongly recommend upgrading to the latest version to make use of the new quickstarts
command.
Kalix Java SDK 0.7.0 is now available! This is massive rewrite of the SDK to align our different APIs, remove reflection magic, have a better typed system, and introduce a new generated TestKit.
We’ve deprecated the entity generate
command in the Kalix CLI in favor of the new code generation capabilities of the SDKs.
There is a new section in the documentation, Quickstarts, to help you get started with Kalix.
We’ve introduced a new (and easy) way to give feedback on the documentation. Click on the little blue icon (with the thumbs) to give us feedback.
The Kalix CLI will now periodically update the cached data.
August 2021
Kalix Java SDK 0.7.0-beta.19 is now available!
We’ve added docs to show how to leverage GitHub Actions and CircleCI to deploy services to Kalix
To make it easier to test your services, the Service Explorer now generate gRPCurl, cURL, and Fetch commands you can copy/paste
To make it easier to get started you’re now guided through an onboarding wizard to create a project, download the CLI, and find the tutorials
We’ve updated the SDK support page to make it easier to see which SDKs are in which tier
The Kalix CLI now has a new required flag region when you create a new project using the CLI.
Kalix JavaScript/Typescript SDK 0.33.0 is now available!
July 2021
Kalix Java SDK 0.7.0-beta.18 is now available!
Kalix JavaScript/Typescript SDK 0.32.0 is now available!
You can now add container registry credentials from within the console, on the "Integrations" tab.
We’ve made changes to the support form, so it’ll be easier for us to help you troubleshoot an issue.
When you’re inviting a new user, we now also show the invite URL in the console so you can send the URL to the new project member.
Kalix Java SDK 0.7.0-beta.15 is now available!
Kalix JavaScript/Typescript SDK 0.31.0 is now available!
June 2021
If you don’t like your project anymore, you can now delete it and start a brand new one.
The kalix
CLI now natively runs on Apple Silicon chips.
The Kalix JavaScript SDK now ships TypeScript definitions to make development even easier.
The Kalix JavaScript SDK now supports asynchronous user functions.
Added new account menu to the header bar in the Kalix Console.
The help menu items from the left navigation bar have move to a help menu in the header bar.
May 2021
Updated the user interface to be consistent across various screens.
Updated log format for the CLI to match the Web UI.
Added integration to Google Cloud Pub/Sub.
With the ability to connect to Google Cloud Pub/Sub we’ve also added new samples for our Java and JavaScript SDKs.
April 2021
As we get ready for our open beta, you no longer need to get projects approved.
To protect our users' applications and our platform, we’ve limited the ports that are open by default. If you need additional ports opened, send us a note.
March 2021
Added a new “integrations” section from where you can connect to Google Cloud’s operation suite (formerly Stackdriver).
Created new versions of the code generation for Node.js and Java.
There’s a new indicator that shows the Project ID field, which is useful when contacting the support team.
Updated the log section to show more details, show an icon of the log level, and make filtering of the logs possible from the UI.
With the introduction of Views, you can now query your entities using SQL.
Adding a new State Model to the mix, you can now use Value Entities using the Java and JavaScript SDKs.