----- 0.1.10 2025-12-02 [Changed] * Updated libvirt to v11.10.0 (from v11.9.0) [Added] * Constants STATS_BLOCK_SUFFIX_LIMITS_*, STATS_BLOCK_SUFFIX_TIMED_GROUP_*, EVENT_SUSPENDED_GUEST_SHUTDOWN, BACKUP_BEGIN_PRESERVE_SHUTDOWN_DOMAIN 0.1.9 2025-11-23 [Fixed] * SSH URL query parameter handling ignores 'keyfile', 'no_tty', 'mode' and 'command' parameters 0.1.8 2025-11-07 [Changed] * Updated libvirt to v11.9.0 (from v11.8.0) * No actual changes 0.1.7 2025-10-13 [Fixed] * MANIFEST now lists the new examples 0.1.6 2025-10-12 [Added] * Examples: * eg/cpumap.pl * eg/getstate.pl * eg/leases.pl [Changed] * Minimum version of development dependency Protocol::Sys::Virt::Devel increased * Updated libvirt to v11.8.0 (from v11.7.0) * Adds CPU_STATS_GUEST constant for use with node_get_cpu_stats() [Fixed] * `get_cpu_map` broken by migration to Object::Pad * Connection closing time-out should have been relative * Invocation of non-existing `Future->await_any` to `->wait_any` * Missing `await` in `get_cpu_map` in call to async function * Calling correct factory methods for instantiation of networks, ports, pools, nwfilters, volumes, snapshots and secrets * Experimental field enheritance warning from Object::Pad suppressed 0.1.5 2025-09-06 [Changed] * Updated to libvirt tag v11.7.0 (from v11.6.0) * No actual changes 0.1.4 2025-08-05 [Added] * New constants: * Sys::Async::Virt->BASELINE_CPU_IGNORE_HOST * Sys::Async::Virt::Domain->EVENT_STARTED_RECREATED * Sys::Async::Virt::Domain->EVENT_STOPPED_RECREATED [Changed] * Updated to libvirt tag v11.6.0 (from v11.5.0) 0.1.3 2025-07-13 [Changed] * Removed ':repr()' attributes from classes inheriting from IO::Async::Notifier; Object::Pad will automatically select 'HASH' as the representation. 0.1.2 2025-07-13 [Fixed] * Syntax error in Sys::Async::Virt::Connection::SSH 0.1.1 2025-07-13 [Fixed] * Removed undeclared dependency Carp::Always 0.1.0 2025-07-12 [Changed] * Rewritten to use Object::Pad instead of blessed hashes as objects This should not be breaking as the API remained the same. [Fixed] * eg/wait-domain-state.pl: domain name now taken from command line (removed hard-coded domain name) 0.0.21 2025-07-11 [Changed] * Updated to libvirt tag v11.5.0 (from v11.4.0) 0.0.20 2025-05-04 [Changed] * Updated to libvirt tag v11.4.0 (from v11.3.0) 0.0.19 2025-05-12 [Added] * New domain entrypoints: del_throttle_group(), set_throttle_group(), get_autostart_once(), set_autostart_once() * New GUEST_INFO_* and STATS_* domain API related constants (from 11.2.0) * New SAVE_PARAM_IMAGE_FORMAT and SAVE_PARAM_PARALLEL_CHANNEL domain API related constants (from 11.2.0) [Changed] * Updated to libvirt tag v11.3.0 (from v11.1.0) 0.0.18 2025-03-29 [Fixed] * Syntax errors in Sys::Async::Virt 0.0.17 2025-03-21 [Changed] * Updated to libvirt tag v11.1.0 (from v11.0.0); adds constants LIST_NODE_DEVICES_CAP_CCWGROUP_DEV, LIST_NODE_DEVICES_CAP_CCWGROUP_MEMBER, MIGRATE_PARAM_BANDWIDTH_AVAIL_SWITCHOVER, MESSAGE_IOERRORS 0.0.16 2025-02-13 [Added] * Configurable PING message interval [Changed] * Increased minimum required Sublike::Extended (to v0.29) * Declare extra entrypoints as unsupported, because newer entrypoints exist (for over a decade) * Wait for server to close connection after PROC_CLOSE message sent to server and response received. 0.0.15 2025-02-08 [Added] * Implemented 25 additional entrypoints; now 21 entrypoints remain unimplemented, mostly relating to migrations. * Added documentation on the difference between C API 'cpumap'-s and the Perl API 0.0.14 2025-02-05 [Changed] * Updated to libvirt tag v11.0.0 (from v10.10.0) 0.0.13 2024-12-11 [Changed] * Updated to libvirt tag v10.10.0 (from v10.9.0) 0.0.12 2024-11-19 [Changed] * Updated to libvirt tag v10.9.0 (from v10.3.0) 0.0.11 2024-10-11 [Breaking] * Callback event futures resolved data no longer includes 'callbackID' * Callback event data has the elements from the 'msg' element flattened into the toplevel (this mirrors the C API) [Added] * Documentation for events and event callbacks * Example demonstrating event consumption (eg/wait-domain-state.pl) [Fixed] * Warning 'reference is already weak' triggered by event callbacks * Replace 'use v5.20;' with 'use v5.26' everywhere 0.0.10 2024-10-10 [Added] * Support for external process transport ('...+ext://') * More documentation on supported URL parameters * New '@default_drivers' global variable in connection factory module [Fixed] * Connection factory's "new" method ignores "drivers" argument * Callback registration on a single domain/network/pool/device/secret * References to discarded weak references (accessing 'undef' values) * Cancel I/O processing routines before closing low level connection * Domain instance 'id' value not filled in $dom returned by create() 0.0.9 2024-10-06 [Added] * Detection of end-of-stream or stream-read-failure conditions to trigger connection termination * Cancellation of callbacks, streams and RPC calls on connection termination [Fixed] * Invocation of 'on_close' callback with reason indication * MANIFEST fixed to include Sys::Async::Virt::Connection::SSH 0.0.8 2024-10-04 [Added] * Support for SSH-transport ('...+ssh://') connection URLs * Run read-only connections through '*-ro' sockets [Changed] * Calls to auth() and open() are now part of the connect() function [Fixed] * Completeness 'cpanfile' dependency listing * Error reporting on Connection module load failure 0.0.7 2024-09-29 [Breaking] * Minimum Perl increased from 5.20 to 5.26 due to the combination of signatures with Future::AsyncAwait. Incidentally also allows the use of postfix deref. [Added] * Support for KeepAlive messages when the server advertizes support for it * Minimal testing (correct loading of source code) [Fixed] * Possible out-of-order data transfer to the server due to missing sychronization points 0.0.6 2024-09-27 [Added] * Abstract connection driver and Unix connection driver implementations * Cleanup of callbacks at connection close; also waits for in-progress cancellations (e.g. due to DESTROY) before finishing the connection * Connection establishement now part of Sys::Async::Virt through connect() function [Fixed] * Handling of the 'nparams' argument in network calls * Dependency listing should include 'Sublike::Extended' 0.0.5 2024-09-24 [Added] * Documentation [Fixed] * Syntax error in Stream.pm [Removed] * Unused methods "register_stream" and "unregister_stream" 0.0.4 2024-09-23 [Added] * Methods returning streams ($volume->upload; $volume->download) * Methods linking to protocol messages with '@generator: none' * Dependency on Sublike::Extended for easier and faster named argument processing [Fixed] * Weak callback references, allowing callbacks to be cleaned up when references are dropped by user code * Instantiation of StorageVol and Secret objects in API return values [Changed] * Lots of improvements in 'fill-templates' (entrypoint generator) [Removed] * Various debugging statements 0.0.3 2024-09-20 [Added] * Mention related C header file in list of unimplemented entry points * Whitelist some entry points for generation, despite being marked 'server' or 'none' * List intentionally unimplemented entry points (in Domain.pm only for now) [Changed] * Methods linked to functions in the C header 'src/libvirt_internal.h' prefixed with '_', making them internal by convention [Fixed] * POD tests should not run on CPANtesters (AUTHOR_TESTING) 0.0.2 2024-09-18 [Fixed] * POD errors * Some 'return value count' (maxnames, maxuuids, etc) parameters not correctly hard-coded [Added] * Query 'nparams' parameter from the server before requesting 'params', for those APIs that don't accept an 'nparams' value of *_MAX * Mapping of the last two entry points which use a (hard-coded) 'need_results' argument [Changed] * Alphabetic sorting of list of entrypoints not yet implemented * Function signatures dropped 'nparams' argument, instead hard-coding or dynamically querying the value from the server 0.0.1 2024-09-15 Initial release