Announcement
https://discuss.linuxcontainers.org/t/lxd-4-22-has-been-released/13137
What's Changed
- tests: Bump pg_num to 16 by @stgraber in #9661
- test: Add 1s between running non-interactive exec and checking for exit status in operation by @tomponline in #9668
- Events: Make Connect use an event driven wait approach for waiting until the event stream is connected by @tomponline in #9663
- Cluster: Move notifyNodesUpdate call out of transaction in Join by @tomponline in #9670
- lxc/list: Better handle --all-projects by @stgraber in #9672
- Fix incorrect type of ceph.rbd.clone_copy in docs by @liamnickell in #9676
- lxd/cluster: Update not clustered error by @stgraber in #9675
- lxd/cluster: Handle lack of available target in evacuation by @stgraber in #9677
- fuidshift: Remove accidental binary build by @stgraber in #9681
- NIC: Enable IP forwarding on routed NIC veth host_name interface by @tomponline in #9682
- Cluster: Remove panic in UpgradeMembersWithoutRole by @tomponline in #9683
- gitignore: Ignore potential binaries by @stgraber in #9685
- lxc/utils: Make byName sort all columns by @stgraber in #9687
- NIC: Don't depend on existance of dnsmasq.pid file to write static DHCP allocation file by @tomponline in #9686
- Generator: Use api.NewURL for URL generation by @masnax in #9618
- Fix cluster group handling on instance creation by @stgraber in #9689
- lxd/db/instance/profiles: Add missing error to stmt.Exec by @masnax in #9690
- Cluster: Only take clusterMembershipMutex on leader by @tomponline in #9691
- doc: use customized Furo theme by @ru-fu in #9671
- API get Instance with more in-depth information by @presztak in #9662
- lxd/db/cluster: Removes unused database views. by @markylaing in #9692
- Cluster: Heartbeat system rework to allow for full-state member change notifications by @tomponline in #9695
- Add TLS over Unix Socket support by @stgraber in #9694
- NIC: Don't add auto gateway when IP family not in use by @tomponline in #9697
- Lxc list wrong project names for same name instances by @markylaing in #9698
- Disk: Fix support for bind mounting unix sockets as source by opening with O_PATH by @tomponline in #9700
- lxd: Uses api.NewURL and sets project when querying other nodes. by @markylaing in #9702
- Cluster: Heartbeat and event tweaks by @tomponline in #9701
- Clean up index page by @ru-fu in #9588
- Update to gobgp v3 and drop old protobuf by @stgraber in #9704
- Agent-less VM metrics by @monstermunchkin in #9669
- Makes description columns non-nullable. by @markylaing in #9684
- doc: fix link in README by @ru-fu in #9707
- Cluster: Logging consistency improvements and removes unnecessary call to EventsUpdateListeners by @tomponline in #9708
- Migration: Enable TCP_USER_TIMEOUT and TCP keep alives on migration connections by @tomponline in #9710
- lxd/images: Don't cleanup unknown images from shared volume by @stgraber in #9705
- Cluster: Event listener socket cleanup and logging improvements by @tomponline in #9715
- Cluster: If heartbeat context is cancelled during spread sleep then exit quicker by @tomponline in #9714
- Checks that the host node is clustered before editing. by @markylaing in #9709
- lxc/alias: Allows users to reference specific arguments. by @markylaing in #9713
- lxd/cluster/recover: Return separate error if no raft role found by @masnax in #9717
- Update minimum requirements by @stgraber in #9721
- Fix progress indicator for 'lxc export' by @presztak in #9720
- Exec: Don't attempt to send signals to VM lxd-agent process if command has finished by @tomponline in #9735
- daemon: fix feature indentation by @brauner in #9737
- Add support for UUID selection of NVIDIA MIG devices by @VincentK-Titandc in #9732
- lxd/instance/drivers: Specify number of USB ports by @monstermunchkin in #9743
- automatically add labels to PRs that contain doc changes by @ru-fu in #9742
- Fix broken include by @ru-fu in #9746
- Exec: Treat websocket control close message the same as a disconnect by @tomponline in #9750
- doc: improve placement of header by @ru-fu in #9745
- DB: Handle null ExpiryDate for custom volume snapshots by @tomponline in #9744
- Fix
lxc storage volume set
on snapshots by @stgraber in #9751 - lxd/instance: Prevent nvidia.runtime on privileged containers by @stgraber in #9752
- shared/usbid: Document reasons to fork by @stgraber in #9753
- Fix overriding public property by auto-update by @presztak in #9740
- Switch back to upstream log15 by @stgraber in #9754
- gmod: Updates go-dqlite by @tomponline in #9756
- Small doc fixes by @ru-fu in #9759
- Client: Maintain per-project event listeners and connections by @tomponline in #9760
- Event: Add Project field to Event and rename group concept to projectName by @tomponline in #9757
- github: Add API label to labeler by @stgraber in #9762
- FD Leaks by @tomponline in #9764
- Events: Add support for listener clients to send events back to server by @tomponline in #9763
- lxd/instance/qemu: Always set memory sharing on memory-backend-file by @stgraber in #9768
- lxc/exec: Don't send SIGWINCH when non-interactive by @stgraber in #9771
- fsmonitor: fixes by @brauner in #9774
- Automatically attempt live migration during evacuation by @liamnickell in #9673
- Introduce the
lxd-user
daemon by @stgraber in #9777 - lxd-user: use atomic operations by @brauner in #9779
- lxd-user: More integration bits by @stgraber in #9781
- lxd/db/cluster: Fixes v19 migration for sqlite 3.37. by @markylaing in #9769
- lxd/network: Fixes misspelling of interface. by @markylaing in #9782
- lxd: ensure file descriptors are closed before starting container by @brauner in #9778
- Allow inconsistent rsync copies with flag by @markylaing in #9780
- lxd/storage/ceph: Always pass cluster name and id by @stgraber in #9786
- doc: only link the Swagger files that we actually need by @ru-fu in #9788
- lxd/device: Adds arp check for nic routed device. by @markylaing in #9758
New Contributors
- @VincentK-Titandc made their first contribution in #9732
Full Changelog: lxd-4.21...lxd-4.22