# Upgrading
## Database migrations
Three database migrations are present in this release:
* lava_results_app.0019_update_query_contenttype
* lava_scheduler_app.0057_dt_permissions_worker_master_version
* lava_scheduler_app.0058_add_testjob_view_performance_indexes
The three migrations can be safely ran before upgrading and restarting gunicorn.
If you already applied the two first migrations, you should revert them by calling:
```shell
lava-server manage migrate lava_results_app 0018_drop_buglink
lava-server manage migrate lava_scheduler_app 0056_testjob_queue_timeout
```
Then you can safely call
```shell
lava-server manage migrate
```
# Device-types
## New device-types
New supported devices:
* acer-n20q11-r856ltn-p1s2-nissa
* r8a779m1-ulcb
# Docker images
The LAVA container images are now based on Debian (12) Bookworm.
# Docker caching
When using a docker container in a job action, by default, LAVA dispatcher will call `docker image pull` to get the latest version of the image.
In order to drop the `pull`, ones can add `local: true`. Starting from this release, when using `local: true`, if and only if the image is not present locally, LAVA dispatcher will pull the image first.
If the image is already available on the worker, then LAVA dispatcher will never force a refresh.
# Job metadata
Allow to pass any kind of objects into the job metadata:
```
metadata:
api:
name:
example.com url:
https://example.com/api/ version: latest
node_id: 12345
```
# Kernel log parsing
Allow to ignore kernel errors when parsing the boot log.
In order to use this, add `ignore_kernel_messages: True` to the boot action.
# lava-docker-worker
The LAVA project is currently migrating to [gitlab](
https://gitlab.com/lava/). In order to ease the transition, lava-docker-worker is now pulling docker images from `
registry.gitlab.com` and fallback to `
hub.lavasoftware.org`.
# Performances
## lava-run logs
When failing to push logs from `lava-run` to the server, wait some time before retrying. Prior to this version, `lava-run` was DOSing the server in case of error.
## lava-server
The LAVA server SQL queries has been improved a lot and should make the web interface way faster.
# Prometheus
A prometheus endpoint is now available at `/v1/prometheus`. To configure prometheus, add:
```yaml
- job_name: "lava"
metrics_path: "/v1/prometheus"
static_configs:
- targets: ["
https://lavaserver.example.com"]
```
To export metrics about private devices, you should provide basic authentication with username and token (same as XMLRPC API).
# Version format
The development version string format is now `<tag>.dev<commits>` instead of `<tag>.<commits>.g<hash>` to follow python recommendations that are now enforced by Debian 12.