[pve-devel] [PATCH storage 06/11] bump API age and version

Fiona Ebner f.ebner at proxmox.com
Tue Dec 16 14:02:17 CET 2025


Signed-off-by: Fiona Ebner <f.ebner at proxmox.com>
---
 ApiChangeLog       | 20 ++++++++++++++++++++
 src/PVE/Storage.pm |  4 ++--
 2 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/ApiChangeLog b/ApiChangeLog
index de41192..5a78ca4 100644
--- a/ApiChangeLog
+++ b/ApiChangeLog
@@ -6,6 +6,26 @@ without breaking anything unaware of it.)
 
 Future changes should be documented in here.
 
+## Version 14:
+
+* Add new `$snapname` parameter to the `volume_resize()` plugin method
+
+  If specified, the snapshot is the target of the resize operation. This is currently only used in
+  combination with the `snapshot-as-volume-chain` configuration option before a commit operation.
+  Plugins that do not support the `snapshot-as-volume-chain` configuration option may either die
+  when `$snapname` is set or must implement resizing snapshots.
+
+* Add `virtual-size` to the information returned by the `volume_snapshot_info()` plugin method
+
+  This is the virtual size of the volume at the time the snapshot was taken. This information is
+  required for storages with the `snapshot-as-volume-chain` configuration option, to make snapshot
+  removal work correctly in combination with resizing images.
+
+* Properly document `volume_snapshot_info()` plugin method
+
+  If you already implement this method, check that the returned information is in line with the
+  documentation.
+
 ## Version 13:
 
 * Add new parameter $hints to the `activate_volume()` and `map_volume()` plugin methods
diff --git a/src/PVE/Storage.pm b/src/PVE/Storage.pm
index c45d35b..24d35a8 100755
--- a/src/PVE/Storage.pm
+++ b/src/PVE/Storage.pm
@@ -41,11 +41,11 @@ use PVE::Storage::BTRFSPlugin;
 use PVE::Storage::ESXiPlugin;
 
 # Storage API version. Increment it on changes in storage API interface.
-use constant APIVER => 13;
+use constant APIVER => 14;
 # Age is the number of versions we're backward compatible with.
 # This is like having 'current=APIVER' and age='APIAGE' in libtool,
 # see https://www.gnu.org/software/libtool/manual/html_node/Libtool-versioning.html
-use constant APIAGE => 4;
+use constant APIAGE => 5;
 
 our $KNOWN_EXPORT_FORMATS = ['raw+size', 'tar+size', 'qcow2+size', 'vmdk+size', 'zfs', 'btrfs'];
 
-- 
2.47.3





More information about the pve-devel mailing list