# Workshop 0.9.8 release notes

## 16 October 2026

These release notes cover new features and changes in Workshop 0.9.8 and
SDKcraft 0.9.4.

## Requirements and compatibility

Workshop relies on Snap and LXD:

- See the [Tutorial](https://ubuntu.com/workshop/docs/tutorial/) for setup instructions.
- Refer to the [Contribution Guide](https://ubuntu.com/workshop/docs/contributing/) for development prerequisites.

## What’s new in 0.9.8

Workshop 0.9.8 introduces the `secret` interface, letting SDKs request
credentials such as API keys at runtime and letting users provide them from the
host keyring. SDKcraft 0.9.4 adds matching support for declaring `secret` plugs.
The release replaces `confinement: virtual-machine` with `runtime: lxd-vm`; use `runtime: lxd-container` for container workshops.

### Workshop

**Repository:** [https://github.com/canonical/workshop](https://github.com/canonical/workshop)

- Added the builtin `secret` interface, so an SDK can declare a `secret` plug
  and retrieve a connected credential at runtime through
  `workshopctl get-secret`, including systemd credential delivery. Users can
  provide a secret from the host keyring through a connected secret
  slot, or ad hoc as an environment variable for a single `workshop exec`
  command.
- Added connection maintenance: manual interface connections are now
  disconnected and require a reconnection when a plug or a slot changed
  its definition (secrets, tunnels, etc.).
- Enabled socket activation for the untrusted socket.
- Added shell completion for `workshop init` options.
- Sped up virtual machine startup by disabling secure boot, skipping the
  firmware boot menu, removing unused devices, disabling `pollinate.service`,
  and adding a quiet kernel parameter.

### SDKcraft 0.9.4

**Repository:** [https://github.com/canonical/sdkcraft](https://github.com/canonical/sdkcraft)

- Added support for declaring `secret` plugs, matching the new Workshop
  `secret` interface.

### Docs

**Repository:** [https://github.com/canonical/workshop](https://github.com/canonical/workshop)

- Added how-tos for providing secrets to a workshop and for using secrets in an
  SDK.
- Added a how-to for experimental virtual machine workshops.
- Documented `workshopctl get-secret` and refreshed the CLI reference.

---

**Full Changelog**:

- Workshop: [https://github.com/canonical/workshop/compare/v0.9.7…v0.9.8](https://github.com/canonical/workshop/compare/v0.9.7...v0.9.8)
- SDKcraft: [https://github.com/canonical/sdkcraft/compare/0.9.3…0.9.4](https://github.com/canonical/sdkcraft/compare/0.9.3...0.9.4)
