Skip to content

📣 Release Notes - 0.5.0 ​

During this release we focused on preparing work to simplify Kubernetes deployments and are working towards headless training mode. This release adds a lot of code changes under the hood and streamlines the API usage more. Next to this, we are also shipping composabl-train with the wrapper package.

⏰ For some statistics! This release contains 164 changed files with 8,886 additions and 2,678 deletions.

💥 Breaking Change ​

We renamed the prepare method for agent exporting and put it in the Runtime under package ​

When you wanted to package the agent, you could use the prepare method on the Agent object. This has now been moved to the Runtime and renamed to package.

python
r = Runtime(config)
a = Agent(runtime, config)
a.prepare()

becomes

python
r = Runtime(config)
a = Agent()
r.prepare(a)

The train method has been moved to the Runtime ​

We decoupled the Agent from the Runtime, therefore moving the train method to the runtime itself.

python
r = Runtime(config)
a = Agent(runtime, config)
a.train()

becomes

python
r = Runtime(config)
a = Agent()
r.train(a)

Agent does not require the config and runtime parameters anymore ​

We removed the dependency for the config and runtime parameters.

python
r = Runtime(config)
a = Agent(runtime, config)

becomes

python
r = Runtime(config)
a = Agent()

💖 Improvements ​

  • As we keep improving our code quality, we have introduced many new tests that improve error handling, error messaging and stability.

📝 Documentation ​

  • COMPOSABL_LICENSE is now used instead of COMPOSABL_KEY consistently across the code base

🔧 Maintenance ​

  • Added extra tests for E2E communication between the SDK and the simulator
  • For naming sake we deprecated the composabl-ray package in favor of composabl-train. This shouldn't have any impact as it gets shipped through the wrapper package