feat: technical release (#10667)

This commit is contained in:
Bastien Nollet
2026-10-23 12:04:08 +02:00
committed by GitHub
parent a508ca7897
commit d2ffe1ad56
43 changed files with 254 additions and 341 deletions

View File

@@ -19,12 +19,12 @@
}, },
"main": "./index.mjs", "main": "./index.mjs",
"dependencies": { "dependencies": {
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"fuse-native": "^2.2.6", "fuse-native": "^2.2.6",
"lru-cache": "^7.14.0", "lru-cache": "^7.14.0",
"promise-toolbox": "^0.21.0", "promise-toolbox": "^0.21.0",
"vhd-lib": "^4.16.2" "vhd-lib": "^4.17.0"
}, },
"bin": { "bin": {
"xo-fuse-vhd": "./cli.mjs" "xo-fuse-vhd": "./cli.mjs"

View File

@@ -1,6 +1,6 @@
{ {
"name": "@vates/iscsi", "name": "@vates/iscsi",
"version": "0.2.0", "version": "0.3.0",
"main": "dist/index.mjs", "main": "dist/index.mjs",
"types": "dist/index.d.mts", "types": "dist/index.d.mts",
"bin": { "bin": {
@@ -23,7 +23,7 @@
"dependencies": { "dependencies": {
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@vates/read-chunk": "^1.2.1", "@vates/read-chunk": "^1.2.1",
"@xen-orchestra/disk-transform": "^1.3.0", "@xen-orchestra/disk-transform": "^1.3.4",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"promise-toolbox": "^0.21.0" "promise-toolbox": "^0.21.0"
}, },

View File

@@ -13,7 +13,7 @@
"url": "https://vates.fr" "url": "https://vates.fr"
}, },
"license": "ISC", "license": "ISC",
"version": "3.6.0", "version": "3.7.0",
"engines": { "engines": {
"node": ">=14.0" "node": ">=14.0"
}, },
@@ -22,10 +22,10 @@
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@vates/read-chunk": "^1.2.1", "@vates/read-chunk": "^1.2.1",
"@xen-orchestra/async-map": "^0.1.5", "@xen-orchestra/async-map": "^0.1.5",
"@xen-orchestra/disk-transform": "^1.3.3", "@xen-orchestra/disk-transform": "^1.3.4",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"promise-toolbox": "^0.21.0", "promise-toolbox": "^0.21.0",
"xen-api": "^5.0.2" "xen-api": "^5.1.0"
}, },
"devDependencies": { "devDependencies": {
"tap": "^18.7.0", "tap": "^18.7.0",

View File

@@ -1,7 +1,7 @@
{ {
"name": "@vates/types", "name": "@vates/types",
"private": false, "private": false,
"version": "2.3.0", "version": "2.4.0",
"main": "./dist/index.mjs", "main": "./dist/index.mjs",
"exports": { "exports": {
".": { ".": {
@@ -34,7 +34,7 @@
"typescript": "~5.6.3", "typescript": "~5.6.3",
"typescript-eslint": "^8.61.0", "typescript-eslint": "^8.61.0",
"@types/express": "^5.0.0", "@types/express": "^5.0.0",
"@xen-orchestra/disk-transform": "^1.3.3" "@xen-orchestra/disk-transform": "^1.3.4"
}, },
"scripts": { "scripts": {
"build": "tsc", "build": "tsc",

View File

@@ -6,7 +6,7 @@
"main": "dist/index.mjs", "main": "dist/index.mjs",
"name": "@xen-orchestra/acl", "name": "@xen-orchestra/acl",
"homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/@xen-orchestra/acl", "homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/@xen-orchestra/acl",
"version": "1.7.0", "version": "1.8.0",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"private": false, "private": false,
"type": "module", "type": "module",
@@ -30,7 +30,7 @@
}, },
"devDependencies": { "devDependencies": {
"@eslint/js": "^9.19.0", "@eslint/js": "^9.19.0",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"rimraf": "^6.0.1", "rimraf": "^6.0.1",
"typescript": "~5.6", "typescript": "~5.6",
"typescript-eslint": "^8.61.0" "typescript-eslint": "^8.61.0"

View File

@@ -1,6 +1,6 @@
{ {
"name": "@xen-orchestra/backup-archive", "name": "@xen-orchestra/backup-archive",
"version": "1.1.3", "version": "1.2.0",
"description": "Helper to handle generic backup archives", "description": "Helper to handle generic backup archives",
"license": "ISC", "license": "ISC",
"author": "", "author": "",
@@ -21,18 +21,18 @@
"tar-stream": "^3.1.8", "tar-stream": "^3.1.8",
"@types/tar-stream": "^3.1.4", "@types/tar-stream": "^3.1.4",
"tmp": "^0.2.1", "tmp": "^0.2.1",
"@vates/types": "^2.3.0" "@vates/types": "^2.4.0"
}, },
"dependencies": { "dependencies": {
"@xen-orchestra/log": "^0.7.1", "@xen-orchestra/log": "^0.7.1",
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"@xen-orchestra/disk-transform": "^1.3.3", "@xen-orchestra/disk-transform": "^1.3.4",
"@vates/task": "0.7.0", "@vates/task": "0.7.0",
"golike-defer": "0.5.1", "golike-defer": "0.5.1",
"uuid": "^9.0.0", "uuid": "^9.0.0",
"promise-toolbox": "^0.21.0", "promise-toolbox": "^0.21.0",
"@vates/async-each": "^1.0.1", "@vates/async-each": "^1.0.1",
"vhd-lib": "^4.16.2" "vhd-lib": "^4.17.0"
}, },
"scripts": { "scripts": {
"build": "yarn run clean && tsc", "build": "yarn run clean && tsc",

View File

@@ -8,8 +8,8 @@
"dependencies": { "dependencies": {
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@xen-orchestra/async-map": "^0.1.5", "@xen-orchestra/async-map": "^0.1.5",
"@xen-orchestra/backups": "^0.76.1", "@xen-orchestra/backups": "^0.77.0",
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"filenamify": "^6.0.0", "filenamify": "^6.0.0",
"getopts": "^2.2.5", "getopts": "^2.2.5",
"lodash": "^4.18.0", "lodash": "^4.18.0",
@@ -28,7 +28,7 @@
"scripts": { "scripts": {
"postversion": "npm publish --access public" "postversion": "npm publish --access public"
}, },
"version": "1.1.16", "version": "1.1.17",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"author": { "author": {
"name": "Vates SAS", "name": "Vates SAS",

View File

@@ -8,7 +8,7 @@
"type": "git", "type": "git",
"url": "https://github.com/vatesfr/xen-orchestra.git" "url": "https://github.com/vatesfr/xen-orchestra.git"
}, },
"version": "0.76.1", "version": "0.77.0",
"engines": { "engines": {
"node": ">=14.18" "node": ">=14.18"
}, },
@@ -27,17 +27,17 @@
"@vates/disposable": "^0.1.6", "@vates/disposable": "^0.1.6",
"@vates/fuse-vhd": "^2.1.3", "@vates/fuse-vhd": "^2.1.3",
"@vates/generator-toolbox": "^1.1.3", "@vates/generator-toolbox": "^1.1.3",
"@vates/nbd-client": "^3.6.0", "@vates/nbd-client": "^3.7.0",
"@vates/parse-duration": "^0.1.1", "@vates/parse-duration": "^0.1.1",
"@vates/task": "^0.7.0", "@vates/task": "^0.7.0",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"@xen-orchestra/async-map": "^0.1.5", "@xen-orchestra/async-map": "^0.1.5",
"@xen-orchestra/disk-transform": "^1.3.3", "@xen-orchestra/disk-transform": "^1.3.4",
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"@xen-orchestra/qcow2": "^1.4.0", "@xen-orchestra/qcow2": "^1.4.1",
"@xen-orchestra/template": "^0.1.1", "@xen-orchestra/template": "^0.1.1",
"@xen-orchestra/backup-archive": "^1.1.3", "@xen-orchestra/backup-archive": "^1.2.0",
"app-conf": "^3.0.0", "app-conf": "^3.0.0",
"compare-versions": "^6.0.0", "compare-versions": "^6.0.0",
"d3-time-format": "^4.1.0", "d3-time-format": "^4.1.0",
@@ -55,8 +55,8 @@
"tar": "^7.5.19", "tar": "^7.5.19",
"uuid": "^9.0.0", "uuid": "^9.0.0",
"value-matcher": "^0.2.0", "value-matcher": "^0.2.0",
"vhd-lib": "^4.16.2", "vhd-lib": "^4.17.0",
"xen-api": "^5.0.2", "xen-api": "^5.1.0",
"yazl": "^2.5.1" "yazl": "^2.5.1"
}, },
"devDependencies": { "devDependencies": {
@@ -67,7 +67,7 @@
"typescript": "^5.9.3" "typescript": "^5.9.3"
}, },
"peerDependencies": { "peerDependencies": {
"@xen-orchestra/xapi": "^9.0.1" "@xen-orchestra/xapi": "^9.1.0"
}, },
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"author": { "author": {

View File

@@ -18,7 +18,7 @@
"preferGlobal": true, "preferGlobal": true,
"dependencies": { "dependencies": {
"golike-defer": "^0.5.1", "golike-defer": "^0.5.1",
"xen-api": "^5.0.2" "xen-api": "^5.1.0"
}, },
"scripts": { "scripts": {
"postversion": "npm publish" "postversion": "npm publish"

View File

@@ -1,7 +1,7 @@
{ {
"private": false, "private": false,
"name": "@xen-orchestra/disk-cli", "name": "@xen-orchestra/disk-cli",
"version": "2.2.3", "version": "2.2.4",
"description": "CLI tool to inspect and manage disks in backup repositories", "description": "CLI tool to inspect and manage disks in backup repositories",
"type": "module", "type": "module",
"bin": { "bin": {
@@ -20,13 +20,13 @@
}, },
"dependencies": { "dependencies": {
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@xen-orchestra/backups": "^0.76.1", "@xen-orchestra/backups": "^0.77.0",
"@xen-orchestra/backup-archive": "^1.1.3", "@xen-orchestra/backup-archive": "^1.2.0",
"@xen-orchestra/disk-transform": "^1.3.3", "@xen-orchestra/disk-transform": "^1.3.4",
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"@xen-orchestra/qcow2": "^1.4.0", "@xen-orchestra/qcow2": "^1.4.1",
"promise-toolbox": "^0.21.0", "promise-toolbox": "^0.21.0",
"vhd-lib": "^4.16.2" "vhd-lib": "^4.17.0"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^22.3.0", "@types/node": "^22.3.0",

View File

@@ -1,6 +1,6 @@
{ {
"name": "@xen-orchestra/disk-transform", "name": "@xen-orchestra/disk-transform",
"version": "1.3.3", "version": "1.3.4",
"main": "./dist/index.mjs", "main": "./dist/index.mjs",
"license": "MIT", "license": "MIT",
"private": false, "private": false,

View File

@@ -1,7 +1,7 @@
{ {
"private": false, "private": false,
"name": "@xen-orchestra/fs", "name": "@xen-orchestra/fs",
"version": "4.9.5", "version": "4.10.0",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"description": "The File System for Xen Orchestra backups.", "description": "The File System for Xen Orchestra backups.",
"homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/@xen-orchestra/fs", "homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/@xen-orchestra/fs",

View File

@@ -16,13 +16,13 @@
"xo-immutable-remote": "./dist/protectRemotes.mjs" "xo-immutable-remote": "./dist/protectRemotes.mjs"
}, },
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"version": "3.0.7", "version": "3.0.8",
"engines": { "engines": {
"node": ">=20.0.0" "node": ">=20.0.0"
}, },
"dependencies": { "dependencies": {
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@xen-orchestra/backups": "^0.76.1", "@xen-orchestra/backups": "^0.77.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"app-conf": "^3.0.0", "app-conf": "^3.0.0",
"execa": "^5.0.0", "execa": "^5.0.0",

View File

@@ -27,13 +27,13 @@
"@types/file-saver": "^2.0.7", "@types/file-saver": "^2.0.7",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"@types/node": "^18.19.80", "@types/node": "^18.19.80",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"@vitejs/plugin-vue": "^6.0.0", "@vitejs/plugin-vue": "^6.0.0",
"@vue/tsconfig": "^0.9.0", "@vue/tsconfig": "^0.9.0",
"@vueuse/core": "^14.0.0", "@vueuse/core": "^14.0.0",
"@vueuse/math": "^14.0.0", "@vueuse/math": "^14.0.0",
"@vueuse/shared": "^14.0.0", "@vueuse/shared": "^14.0.0",
"@xen-orchestra/web-core": "^0.63.1", "@xen-orchestra/web-core": "^0.64.0",
"complex-matcher": "^1.1.1", "complex-matcher": "^1.1.1",
"d3-time-format": "^4.1.0", "d3-time-format": "^4.1.0",
"decorator-synchronized": "^0.6.0", "decorator-synchronized": "^0.6.0",

View File

@@ -34,7 +34,7 @@
"devDependencies": { "devDependencies": {
"@eslint/js": "^9.19.0", "@eslint/js": "^9.19.0",
"@types/node": "^22.3.0", "@types/node": "^22.3.0",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"rimraf": "^6.0.0", "rimraf": "^6.0.0",
"typescript": "~5.6.3", "typescript": "~5.6.3",
"typescript-eslint": "^8.61.0" "typescript-eslint": "^8.61.0"

View File

@@ -14,17 +14,17 @@
"url": "https://vates.fr" "url": "https://vates.fr"
}, },
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"version": "0.22.0", "version": "0.22.1",
"engines": { "engines": {
"node": ">=15.6" "node": ">=15.6"
}, },
"dependencies": { "dependencies": {
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@vates/event-listeners-manager": "^1.0.1", "@vates/event-listeners-manager": "^1.0.1",
"@vates/iscsi": "^0.2.0", "@vates/iscsi": "^0.3.0",
"@vates/parse-duration": "^0.1.1", "@vates/parse-duration": "^0.1.1",
"@vates/task": "^0.7.0", "@vates/task": "^0.7.0",
"@xen-orchestra/backup-archive": "^1.1.3", "@xen-orchestra/backup-archive": "^1.2.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"acme-client": "^5.0.0", "acme-client": "^5.0.0",
"app-conf": "^3.0.0", "app-conf": "^3.0.0",
@@ -35,7 +35,7 @@
"xo-common": "^0.11.0" "xo-common": "^0.11.0"
}, },
"devDependencies": { "devDependencies": {
"@vates/types": "^2.3.0" "@vates/types": "^2.4.0"
}, },
"scripts": { "scripts": {
"postversion": "npm publish --access public", "postversion": "npm publish --access public",

View File

@@ -1,7 +1,7 @@
{ {
"private": true, "private": true,
"name": "@xen-orchestra/proxy", "name": "@xen-orchestra/proxy",
"version": "0.33.1", "version": "0.33.2",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"description": "XO Proxy used to remotely execute backup jobs", "description": "XO Proxy used to remotely execute backup jobs",
"keywords": [ "keywords": [
@@ -34,13 +34,13 @@
"@vates/disposable": "^0.1.6", "@vates/disposable": "^0.1.6",
"@vates/task": "^0.7.0", "@vates/task": "^0.7.0",
"@xen-orchestra/async-map": "^0.1.5", "@xen-orchestra/async-map": "^0.1.5",
"@xen-orchestra/backups": "^0.76.1", "@xen-orchestra/backups": "^0.77.0",
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"@xen-orchestra/mixin": "^0.2.1", "@xen-orchestra/mixin": "^0.2.1",
"@xen-orchestra/mixins": "^0.22.0", "@xen-orchestra/mixins": "^0.22.1",
"@xen-orchestra/self-signed": "^0.2.1", "@xen-orchestra/self-signed": "^0.2.1",
"@xen-orchestra/xapi": "^9.0.1", "@xen-orchestra/xapi": "^9.1.0",
"ajv": "^8.0.3", "ajv": "^8.0.3",
"app-conf": "^3.0.0", "app-conf": "^3.0.0",
"async-iterator-to-stream": "^1.1.0", "async-iterator-to-stream": "^1.1.0",
@@ -62,7 +62,7 @@
"source-map-support": "^0.5.16", "source-map-support": "^0.5.16",
"stoppable": "^1.0.6", "stoppable": "^1.0.6",
"xdg-basedir": "^5.1.0", "xdg-basedir": "^5.1.0",
"xen-api": "^5.0.2", "xen-api": "^5.1.0",
"xo-common": "^0.11.0" "xo-common": "^0.11.0"
}, },
"devDependencies": { "devDependencies": {

View File

@@ -2,7 +2,7 @@
"name": "@xen-orchestra/qa-test", "name": "@xen-orchestra/qa-test",
"private": true, "private": true,
"type": "module", "type": "module",
"version": "1.2.3", "version": "1.3.0",
"description": "XenOrchestra QA Test Suite", "description": "XenOrchestra QA Test Suite",
"author": { "author": {
"name": "Vates SAS", "name": "Vates SAS",
@@ -22,10 +22,10 @@
"dependencies": { "dependencies": {
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@vates/read-chunk": "^1.2.1", "@vates/read-chunk": "^1.2.1",
"@xen-orchestra/backups": "^0.76.1", "@xen-orchestra/backups": "^0.77.0",
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"@xen-orchestra/vmware-explorer": "^1.0.2", "@xen-orchestra/vmware-explorer": "^1.1.0",
"nodemailer": "^7.0.13", "nodemailer": "^7.0.13",
"xo-lib": "^0.11.2" "xo-lib": "^0.11.2"
}, },

View File

@@ -1,6 +1,6 @@
{ {
"name": "@xen-orchestra/qcow2", "name": "@xen-orchestra/qcow2",
"version": "1.4.0", "version": "1.4.1",
"description": "parse and produce qcow2 files", "description": "parse and produce qcow2 files",
"main": "dist/index.mjs", "main": "dist/index.mjs",
"scripts": { "scripts": {
@@ -36,6 +36,6 @@
"typescript-eslint": "^8.61.0" "typescript-eslint": "^8.61.0"
}, },
"dependencies": { "dependencies": {
"@xen-orchestra/disk-transform": "^1.3.3" "@xen-orchestra/disk-transform": "^1.3.4"
} }
} }

View File

@@ -6,7 +6,7 @@
"main": "./dist/index.mjs", "main": "./dist/index.mjs",
"name": "@xen-orchestra/rest-api", "name": "@xen-orchestra/rest-api",
"homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/@xen-orchestra/rest-api", "homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/@xen-orchestra/rest-api",
"version": "0.40.2", "version": "0.41.0",
"description": "REST API to manage your XOA", "description": "REST API to manage your XOA",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"private": false, "private": false,
@@ -28,7 +28,7 @@
"@eslint/js": "^9.19.0", "@eslint/js": "^9.19.0",
"@types/express": "^5.0.0", "@types/express": "^5.0.0",
"@types/swagger-ui-express": "^4.1.7", "@types/swagger-ui-express": "^4.1.7",
"@xen-orchestra/disk-transform": "^1.3.3", "@xen-orchestra/disk-transform": "^1.3.4",
"openapi-types": "^12.1.3", "openapi-types": "^12.1.3",
"rimraf": "^6.0.1", "rimraf": "^6.0.1",
"typescript": "~5.6.3", "typescript": "~5.6.3",
@@ -38,13 +38,13 @@
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@vates/obfuscate": "^0.1.0", "@vates/obfuscate": "^0.1.0",
"@vates/task": "^0.7.0", "@vates/task": "^0.7.0",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"@xen-orchestra/acl": "^1.7.0", "@xen-orchestra/acl": "^1.8.0",
"@xen-orchestra/backups": "^0.76.1", "@xen-orchestra/backups": "^0.77.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"@xen-orchestra/qcow2": "^1.4.0", "@xen-orchestra/qcow2": "^1.4.1",
"@xen-orchestra/vmdk": "^0.1.0", "@xen-orchestra/vmdk": "^1.0.0",
"@xen-orchestra/xapi": "^9.0.1", "@xen-orchestra/xapi": "^9.1.0",
"complex-matcher": "^1.1.1", "complex-matcher": "^1.1.1",
"fast-xml-parser": "^5.10.1", "fast-xml-parser": "^5.10.1",
"golike-defer": "^0.5.1", "golike-defer": "^0.5.1",
@@ -56,7 +56,7 @@
"swagger-ui-express": "^5.0.1", "swagger-ui-express": "^5.0.1",
"tsoa": "^6.6.0", "tsoa": "^6.6.0",
"value-matcher": "^0.2.0", "value-matcher": "^0.2.0",
"vhd-lib": "^4.16.2", "vhd-lib": "^4.17.0",
"xo-common": "^0.11.0", "xo-common": "^0.11.0",
"xo-remote-parser": "^2.0.0", "xo-remote-parser": "^2.0.0",
"zod": "^4.3.6", "zod": "^4.3.6",

View File

@@ -1,6 +1,6 @@
{ {
"name": "@xen-orchestra/vmdk", "name": "@xen-orchestra/vmdk",
"version": "0.1.0", "version": "1.0.0",
"description": "parse and produce vmdk files", "description": "parse and produce vmdk files",
"type": "module", "type": "module",
"main": "dist/index.mjs", "main": "dist/index.mjs",
@@ -31,12 +31,12 @@
"devDependencies": { "devDependencies": {
"@eslint/js": "^9.19.0", "@eslint/js": "^9.19.0",
"@types/node": "^22.3.0", "@types/node": "^22.3.0",
"@xen-orchestra/qcow2": "^1.3.1", "@xen-orchestra/qcow2": "^1.4.1",
"rimraf": "^6.0.1", "rimraf": "^6.0.1",
"typescript": "~5.6", "typescript": "~5.6",
"typescript-eslint": "^8.61.0" "typescript-eslint": "^8.61.0"
}, },
"dependencies": { "dependencies": {
"@xen-orchestra/disk-transform": "^1.3.3" "@xen-orchestra/disk-transform": "^1.3.4"
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"license": "ISC", "license": "ISC",
"private": false, "private": false,
"version": "1.0.2", "version": "1.1.0",
"name": "@xen-orchestra/vmware-explorer", "name": "@xen-orchestra/vmware-explorer",
"description": "Reads the VMs and the disks of an ESXi host or a vCenter", "description": "Reads the VMs and the disks of an ESXi host or a vCenter",
"dependencies": { "dependencies": {

View File

@@ -1,7 +1,7 @@
{ {
"name": "@xen-orchestra/web-core", "name": "@xen-orchestra/web-core",
"type": "module", "type": "module",
"version": "0.63.1", "version": "0.64.0",
"private": false, "private": false,
"exports": { "exports": {
"./*": { "./*": {

View File

@@ -1,6 +1,6 @@
{ {
"name": "@xen-orchestra/web", "name": "@xen-orchestra/web",
"version": "0.63.1", "version": "0.64.0",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",
@@ -26,7 +26,7 @@
"@types/d3-time-format": "^4.0.3", "@types/d3-time-format": "^4.0.3",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"@types/node": "^18.19.80", "@types/node": "^18.19.80",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"@vitejs/plugin-vue": "^6.0.0", "@vitejs/plugin-vue": "^6.0.0",
"@vitest/ui": "^4.1.9", "@vitest/ui": "^4.1.9",
"@vue/test-utils": "^2.4.11", "@vue/test-utils": "^2.4.11",
@@ -35,7 +35,7 @@
"@vueuse/integrations": "^14.0.0", "@vueuse/integrations": "^14.0.0",
"@vueuse/math": "^14.0.0", "@vueuse/math": "^14.0.0",
"@vueuse/shared": "^14.0.0", "@vueuse/shared": "^14.0.0",
"@xen-orchestra/web-core": "^0.63.1", "@xen-orchestra/web-core": "^0.64.0",
"complex-matcher": "^1.1.1", "complex-matcher": "^1.1.1",
"d3-time-format": "^4.1.0", "d3-time-format": "^4.1.0",
"happy-dom": "^20.0.0", "happy-dom": "^20.0.0",
@@ -83,6 +83,6 @@
"node": ">=18" "node": ">=18"
}, },
"dependencies": { "dependencies": {
"@xen-orchestra/backups": "^0.74.2" "@xen-orchestra/backups": "^0.77.0"
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"name": "@xen-orchestra/xapi", "name": "@xen-orchestra/xapi",
"version": "9.0.1", "version": "9.1.0",
"homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/@xen-orchestra/xapi", "homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/@xen-orchestra/xapi",
"bugs": "https://github.com/vatesfr/xen-orchestra/issues", "bugs": "https://github.com/vatesfr/xen-orchestra/issues",
"repository": { "repository": {
@@ -16,7 +16,7 @@
}, },
"main": "./index.mjs", "main": "./index.mjs",
"peerDependencies": { "peerDependencies": {
"xen-api": "^5.0.2" "xen-api": "^5.1.0"
}, },
"scripts": { "scripts": {
"postversion": "npm publish --access public", "postversion": "npm publish --access public",
@@ -25,21 +25,21 @@
"dependencies": { "dependencies": {
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@vates/decorate-with": "^2.1.0", "@vates/decorate-with": "^2.1.0",
"@vates/nbd-client": "^3.6.0", "@vates/nbd-client": "^3.7.0",
"@vates/parse-duration": "^0.1.1", "@vates/parse-duration": "^0.1.1",
"@vates/read-chunk": "^1.2.1", "@vates/read-chunk": "^1.2.1",
"@vates/task": "^0.7.0", "@vates/task": "^0.7.0",
"@xen-orchestra/async-map": "^0.1.5", "@xen-orchestra/async-map": "^0.1.5",
"@xen-orchestra/disk-transform": "^1.3.3", "@xen-orchestra/disk-transform": "^1.3.4",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"@xen-orchestra/qcow2": "^1.4.0", "@xen-orchestra/qcow2": "^1.4.1",
"d3-time-format": "^4.1.0", "d3-time-format": "^4.1.0",
"golike-defer": "^0.5.1", "golike-defer": "^0.5.1",
"json-rpc-protocol": "^0.13.2", "json-rpc-protocol": "^0.13.2",
"lodash": "^4.18.0", "lodash": "^4.18.0",
"promise-toolbox": "^0.21.0", "promise-toolbox": "^0.21.0",
"undici": "^6.26.0", "undici": "^6.26.0",
"vhd-lib": "^4.16.2", "vhd-lib": "^4.17.0",
"xo-common": "^0.11.0" "xo-common": "^0.11.0"
}, },
"private": false, "private": false,

View File

@@ -1,5 +1,136 @@
# ChangeLog # ChangeLog
## **next**
### Security
- [Backup/Live mount] A connection to the iSCSI target that has not logged in yet, such as a port scan or a failed CHAP login, no longer interrupts the mounted disk (PR [#10465](https://github.com/vatesfr/xen-orchestra/pull/10465))
- [Backup/Live mount] The mounted disk is reported as write-protected, so the guest sees it read-only instead of getting I/O errors on write, and the iSCSI target bounds the size of what a client can make it buffer (PR [#10566](https://github.com/vatesfr/xen-orchestra/pull/10566))
### Enhancements
- [Tasks] Add link and object resolution to Tasks Overview panel, better text flow for resolved task names (PR [#10265](https://github.com/vatesfr/xen-orchestra/pull/10265))
- [XO5/Settings/IPs] Show an example of the expected IP format when adding IPs to an IP pool (PR [#10522](https://github.com/vatesfr/xen-orchestra/pull/10522))
- [BRs] Add backup repository create form (PR [#10271](https://github.com/vatesfr/xen-orchestra/pull/10271))
- [BRs] Add backup repository detail page (PR [#10454](https://github.com/vatesfr/xen-orchestra/pull/10454))
- [BRs] Add backup repository edit form (PR [#10478](https://github.com/vatesfr/xen-orchestra/pull/10478))
- [BRs] Add change state, test speed and forget actions, and bulk actions on BRs (PR [#10532](https://github.com/vatesfr/xen-orchestra/pull/10532))
- [BRs] Allow editing several BRs at once from the list of BRs (PR [#10555](https://github.com/vatesfr/xen-orchestra/pull/10555))
- [Plugins/load balancer] Added VM-to-host affinity to force VMs to run on a given set of hosts if possible (PR [#10207](https://github.com/vatesfr/xen-orchestra/pull/10207))
- [Plugins/load balancer] Improved migration decision making (PR [#10207](https://github.com/vatesfr/xen-orchestra/pull/10207))
- [New VM] Allow removing existing (template) disks (PR [#10292](https://github.com/vatesfr/xen-orchestra/pull/10292))
- [New VM] Allow resizing existing (template) disks when a config drive is used (PR [#10359](https://github.com/vatesfr/xen-orchestra/pull/10359))
- [Pool] Add validation to the pool connection form (PR [#10484](https://github.com/vatesfr/xen-orchestra/pull/10484))
- [XO6] All objects displayed in the UI are now updated in real time (PRs [#10450](https://github.com/vatesfr/xen-orchestra/pull/10450), [#10604](https://github.com/vatesfr/xen-orchestra/pull/10604))
- [XO6] Add copy button for multiple information on Host/VM Dashboard and Pool/Host/VM System tabs (PR [#9976](https://github.com/vatesfr/xen-orchestra/pull/9976))
- [XO6] Export VDI as vmdk (PR [#10591](https://github.com/vatesfr/xen-orchestra/pull/10591))
- [XO6/New network] Choose between no NBD, secure NBD and insecure NBD (not encrypted) when creating a network (PR [#10540](https://github.com/vatesfr/xen-orchestra/pull/10540))
- [Side panels] Harmonize card titles across side panels (PR [#10289](https://github.com/vatesfr/xen-orchestra/pull/10289))
- [Host] Add a condition to disable the detached action when the host is not running (PR [#10543](https://github.com/vatesfr/xen-orchestra/pull/10543))
- [Host] Add possibility to emergency shutdown a host (PR [#10412](https://github.com/vatesfr/xen-orchestra/pull/10412))
- [XO5/Host/Patches] Warn when installing patches on a host while its pool master is not up to date (PR [#10523](https://github.com/vatesfr/xen-orchestra/pull/10523))
- [Treeview] Press Ctrl+K (Cmd+K on macOS) to focus the treeview search (PR [#10492](https://github.com/vatesfr/xen-orchestra/pull/10492))
- [Backup/Restore] Faster reading of the files of a remote, like the full backups (10 MiB chunks instead of 64 KiB) (PR [#10537](https://github.com/vatesfr/xen-orchestra/pull/10537))
- [Mirror] The full mirrors between unencrypted remotes reuse the checksum of the source instead of computing it again (PR [#10537](https://github.com/vatesfr/xen-orchestra/pull/10537))
- [Mirror] The incremental mirrors between remotes don't recompress the blocks if the source and destination use the same compression (PR [#10581](https://github.com/vatesfr/xen-orchestra/pull/10581))
- [Backup logs] Add backup log list in admin menu (PR [#10572](https://github.com/vatesfr/xen-orchestra/pull/10572))
- [Backup] Support insecure dedicated NBD network (PR [#10540](https://github.com/vatesfr/xen-orchestra/pull/10540))
- [SDN Controller] Fix events listening and stale objects on server reconnection (PR [#10440](https://github.com/vatesfr/xen-orchestra/pull/10440))
- [Pool/Network] Allow enabling the insecure NBD (not encrypted) on a network (PR [#10540](https://github.com/vatesfr/xen-orchestra/pull/10540))
- [XO5] Improve event handling (PR [#10568](https://github.com/vatesfr/xen-orchestra/pull/10568))
- [Netbox] Support Netbox v4.7.x [#10565](https://github.com/vatesfr/xen-orchestra/issues/10565) (PR [#10574](https://github.com/vatesfr/xen-orchestra/pull/10574))
- [V2V] Import VMs from ESXi 6.x hosts: their disks are read one request at a time, so more slowly than from ESXi 7 and 8 (PR [#10590](https://github.com/vatesfr/xen-orchestra/pull/10590))
- [Backup repositories] Free, used and total space are now available on backup repositories (PR [#10406](https://github.com/vatesfr/xen-orchestra/pull/10406))
- [Backup] New `zstd` compression for the remotes in block mode (needs Node 22.15 or later), faster to back up and about 1.5 times faster to restore than `brotli` (PR [#10545](https://github.com/vatesfr/xen-orchestra/pull/10545))
- [Backup] Remove the unused `vhdDirectoryCompression` setting of the configuration: the compression is the one of the backup repository, brotli by default (PR [#10545](https://github.com/vatesfr/xen-orchestra/pull/10545))
- [Backup] New `zeros` compression for the remotes in block mode: only the pages full of zeroes are removed, much cheaper than a real compression (PR [#10545](https://github.com/vatesfr/xen-orchestra/pull/10545))
- [REST API] `POST /rest/v0/acl-roles` now supports a `privileges` property, allowing privileges to be directly associated with the newly created role (PR [#10470](https://github.com/vatesfr/xen-orchestra/pull/10470))
- [REST API] SSE now supports the `backup-archive` collection: backups appearing, being merged or disappearing from a backup repository are pushed to the subscribers. Changes made by this XO are sent at once, the others within a couple of minutes (10 minutes for a repository attached to a proxy which has not been updated yet). Each backup repository is also listed in full every hour, which the `fullListingInterval` parameter of its URL changes, in minutes, e.g. `?fullListingInterval=360` (PR [#10472](https://github.com/vatesfr/xen-orchestra/pull/10472))
- [REST API] Event subscriptions (`/rest/v0/events`) now support `authentication_token`: each user only receives events about their own tokens and `backup-logs` (PRs [#10450](https://github.com/vatesfr/xen-orchestra/pull/10450), [#10563](https://github.com/vatesfr/xen-orchestra/pull/10563))
- [REST API] `POST /rest/v0/pools/:id/actions/create_network` supports `insecureNbd` to create a network with the insecure NBD (PR [#10540](https://github.com/vatesfr/xen-orchestra/pull/10540))
- [REST API] Add `/rest/v0/plugins` endpoints to list, configure, load, unload and test the plugins (PR [#10588](https://github.com/vatesfr/xen-orchestra/pull/10588))
- [REST API] `POST /rest/v0/vms/{id}/actions/migrate` Add `bypassCpuCheck` parameter (PR [#10614](https://github.com/vatesfr/xen-orchestra/pull/10614))
- Host Probe SR REST API Endpoints:
- `POST /rest/v0/hosts/:id/actions/probe_nfs` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_zfs` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_hba` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_iscsi_iqns` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_iscsi_luns` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_iscsi_exists` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_hba_exists` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_nfs_exists` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
### Bug fixes
- [New/VM] Hide guest tools ISO SR in new VM ISO selector (PR [#10430](https://github.com/vatesfr/xen-orchestra/pull/10430))
- [Host/VM] Fix the confirmation modal staying open and blocking the UI until the action was fully completed (PR [#10417](https://github.com/vatesfr/xen-orchestra/pull/10417))
- [Dashboard] Fix cards staying in error state after a temporary failure to fetch data, until the page was reloaded (PR [#10516](https://github.com/vatesfr/xen-orchestra/pull/10516))
- [Backups/sequences] Prevent errors on backup with proxy from aborting sequences (PR [#10504](https://github.com/vatesfr/xen-orchestra/pull/10504))
- [Backups] Fix on distributed incremental replication and deleteFirst incorrectly disabled for non-distributed replication jobs (PR [#10452](https://github.com/vatesfr/xen-orchestra/pull/10452))
- [Backups] Properly detect a disk deleting while merging (PR [#10424](https://github.com/vatesfr/xen-orchestra/pull/10424))
- [Backups] Recover a deadlocked merge when the chain is out of retention (PR [#10424](https://github.com/vatesfr/xen-orchestra/pull/10424))
- [Backups/S3] Fix files never deleted on providers and handle NotFound as expected (PR [#10548](https://github.com/vatesfr/xen-orchestra/pull/10548))
- [Backups] Fix NBD reads failing after a reconnection, when the previous connection is closed late by the host (PR [#10456](https://github.com/vatesfr/xen-orchestra/pull/10456))
- [Backups] VMs with an `xo:no-bak=<reason>` tag are no longer listed as backed up by smart mode jobs (PR [#10450](https://github.com/vatesfr/xen-orchestra/pull/10450))
- [Backups] Delete orphan VDIs left on the target SR during replication (PR [#10546](https://github.com/vatesfr/xen-orchestra/pull/10546))
- [Backups/DR] Report the actual XAPI error instead of `(intermediate value) is not iterable` when a VM import fails (PR [#10551](https://github.com/vatesfr/xen-orchestra/pull/10551))
- [Backups/replication] fix to ensure distributed replications are deleted according to retention (PR [#10491] (https://github.com/vatesfr/xen-orchestra/pull/10491))
- [Backups/Replication] Fix `Cannot read properties of undefined (reading 'get')` error on continuous replication to multiple SRs (PR [#10519](https://github.com/vatesfr/xen-orchestra/pull/10519))
- [Backups/NBD] Support NBD for pools reached through an HTTP proxy (e.g. an XO Proxy): NBD connections are now tunneled through the proxy instead of falling back to a stream export (PR [#10544](https://github.com/vatesfr/xen-orchestra/pull/10544))
- [Plugins/load balancer] Prevent inter-pool migrations triggered by affinity or anti-affinity (PR [#10207](https://github.com/vatesfr/xen-orchestra/pull/10207))
- [REST API] Fix VM creation when destroying an existing VDI (PR [#10292](https://github.com/vatesfr/xen-orchestra/pull/10292))
- [Pool] Display an error when connecting a pool that is already registered, instead of failing silently (PR [#10484](https://github.com/vatesfr/xen-orchestra/pull/10484))
- [XO6] Fix the search button of the tables' query builder doing nothing on small and medium screens (PR [#10475](https://github.com/vatesfr/xen-orchestra/pull/10475))
- [XO6] Fix the ETA of task (PR [#10622](https://github.com/vatesfr/xen-orchestra/pull/10622))
- [Servers] Fix servers stuck in `Connecting` state when using an HTTPS proxy that support HTTP/2 ([Forum#12502](https://xcp-ng.org/forum/topic/12502/xoa-6.9-update)) (PR [#10507](https://github.com/vatesfr/xen-orchestra/pull/10507))
- [Servers] Fix a pool left in a broken state when its connection was lost twice in a row within 5 minutes (e.g. during a toolstack restart): it could be displayed as connecting while connected and its objects could no longer be acted upon, or it would never be reconnected automatically (PR [#10577](https://github.com/vatesfr/xen-orchestra/pull/10577))
- [V2V] Fix `vectura is not runnable` on XOA and other systems based on Debian 11 (glibc 2.31): the `vectura` binary required glibc 2.34
- [VM/System] Fix video RAM displayed in bytes instead of MiB (PR [#10486](https://github.com/vatesfr/xen-orchestra/pull/10486))
- [VM/console] Fix opening console in new tab (PR [#10616](https://github.com/vatesfr/xen-orchestra/pull/10616))
- [XO5/Hosts] Disable restart toolstack button for the hosts that belongs to a HA pools in the home page (PR [#10497](https://github.com/vatesfr/xen-orchestra/pull/10497))
- [xo-cli] fix output failing when outputing a rest api answer (PR [#10541](https://github.com/vatesfr/xen-orchestra/pull/10541))
- [XO5/Self Service] Fix removing a tag from a resource set removing all the other tags instead (PR [#10550](https://github.com/vatesfr/xen-orchestra/pull/10550))
- [VDI/Export] Fix pressing Escape in the format select closing the whole export drawer (PR [#10582](https://github.com/vatesfr/xen-orchestra/pull/10582))
- [Swagger] Fixed a typo in the VM collection: `xentools` → `xenTools`, and added a missing type to the server collection `poolMembersAddresses` [#10514](https://github.com/vatesfr/xen-orchestra/issues/10514) (PR [#10598](https://github.com/vatesfr/xen-orchestra/pull/10598))
- [Host] Enabling multipathing on hosts only disconnects shared SRs, local storage SRs stay connected (PR [#10592](https://github.com/vatesfr/xen-orchestra/pull/10592))
- [Plugins/transport-icinga2] Fix authenticated Icinga2 requests failing with `Request cannot be constructed from a URL that includes credentials`, contribution by [@vmpr](https://github.com/vmpr) [#10498](https://github.com/vatesfr/xen-orchestra/issues/10498) (PR [#10594](https://github.com/vatesfr/xen-orchestra/pull/10594))
### Released packages
- @xen-orchestra/fs 4.10.0
- @xen-orchestra/disk-transform 1.3.4
- vhd-lib 4.17.0
- @vates/iscsi 0.3.0
- xen-api 5.1.0
- @vates/nbd-client 3.7.0
- @vates/types 2.4.0
- @xen-orchestra/acl 1.8.0
- @xen-orchestra/backup-archive 1.2.0
- @xen-orchestra/qcow2 1.4.1
- @xen-orchestra/xapi 9.1.0
- @xen-orchestra/backups 0.77.0
- @xen-orchestra/backups-cli 1.1.17
- @xen-orchestra/disk-cli 2.2.4
- @xen-orchestra/immutable-backups 3.0.8
- @xen-orchestra/web-core 0.64.0
- @xen-orchestra/mixins 0.22.1
- @xen-orchestra/proxy 0.33.2
- @xen-orchestra/vmware-explorer 1.1.0
- @xen-orchestra/qa-test 1.3.0
- @xen-orchestra/vmdk 1.0.0
- @xen-orchestra/rest-api 0.41.0
- @xen-orchestra/web 0.64.0
- xo-acl-resolver 0.6.0
- xo-cli 0.32.5
- xo-server 5.212.0
- xo-server-load-balancer 0.14.0
- xo-server-netbox 1.14.0
- xo-server-sdn-controller 1.5.2
- xo-server-transport-icinga2 0.1.3
- xo-web 5.207.0
## **6.9.1** (2026-10-05) ## **6.9.1** (2026-10-05)
<img id="latest" src="https://badgen.net/badge/channel/latest/yellow" alt="Channel: latest" /> <img id="latest" src="https://badgen.net/badge/channel/latest/yellow" alt="Channel: latest" />

View File

@@ -7,104 +7,14 @@
> Security fixes and new features should go in this section > Security fixes and new features should go in this section
- [Backup/Live mount] A connection to the iSCSI target that has not logged in yet, such as a port scan or a failed CHAP login, no longer interrupts the mounted disk (PR [#10465](https://github.com/vatesfr/xen-orchestra/pull/10465))
- [Backup/Live mount] The mounted disk is reported as write-protected, so the guest sees it read-only instead of getting I/O errors on write, and the iSCSI target bounds the size of what a client can make it buffer (PR [#10566](https://github.com/vatesfr/xen-orchestra/pull/10566))
### Enhancements ### Enhancements
> Users must be able to say: "Nice enhancement, I'm eager to test it" > Users must be able to say: "Nice enhancement, I'm eager to test it"
- [REST API] `POST /rest/v0/acl-roles` now supports a `privileges` property, allowing privileges to be directly associated with the newly created role (PR [#10470](https://github.com/vatesfr/xen-orchestra/pull/10470))
- [Tasks] Add link and object resolution to Tasks Overview panel, better text flow for resolved task names (PR [#10265](https://github.com/vatesfr/xen-orchestra/pull/10265))
- [XO5/Settings/IPs] Show an example of the expected IP format when adding IPs to an IP pool (PR [#10522](https://github.com/vatesfr/xen-orchestra/pull/10522))
- [BRs] Add backup repository create form (PR [#10271](https://github.com/vatesfr/xen-orchestra/pull/10271))
- [REST API] SSE now supports the `backup-archive` collection: backups appearing, being merged or disappearing from a backup repository are pushed to the subscribers. Changes made by this XO are sent at once, the others within a couple of minutes (10 minutes for a repository attached to a proxy which has not been updated yet). Each backup repository is also listed in full every hour, which the `fullListingInterval` parameter of its URL changes, in minutes, e.g. `?fullListingInterval=360` (PR [#10472](https://github.com/vatesfr/xen-orchestra/pull/10472))
- [Plugins/load balancer] Added VM-to-host affinity to force VMs to run on a given set of hosts if possible (PR [#10207](https://github.com/vatesfr/xen-orchestra/pull/10207))
- [Plugins/load balancer] Improved migration decision making (PR [#10207](https://github.com/vatesfr/xen-orchestra/pull/10207))
- [New VM] Allow removing existing (template) disks (PR [#10292](https://github.com/vatesfr/xen-orchestra/pull/10292))
- [Pool] Add validation to the pool connection form (PR [#10484](https://github.com/vatesfr/xen-orchestra/pull/10484))
- [XO6] All objects displayed in the UI are now updated in real time (PRs [#10450](https://github.com/vatesfr/xen-orchestra/pull/10450), [#10604](https://github.com/vatesfr/xen-orchestra/pull/10604))
- [REST API] Event subscriptions (`/rest/v0/events`) now support `authentication_token`: each user only receives events about their own tokens and `backup-logs` (PRs [#10450](https://github.com/vatesfr/xen-orchestra/pull/10450), [#10563](https://github.com/vatesfr/xen-orchestra/pull/10563))
- [Side panels] Harmonize card titles across side panels (PR [#10289](https://github.com/vatesfr/xen-orchestra/pull/10289))
- [Host] Add a condition to disable the detached action when the host is not running (PR [#10543](https://github.com/vatesfr/xen-orchestra/pull/10543))
- [Treeview] Press Ctrl+K (Cmd+K on macOS) to focus the treeview search (PR [#10492](https://github.com/vatesfr/xen-orchestra/pull/10492))
- [New VM] Allow resizing existing (template) disks when a config drive is used (PR [#10359](https://github.com/vatesfr/xen-orchestra/pull/10359))
- [Host] Add possibility to emergency shutdown a host (PR [#10412](https://github.com/vatesfr/xen-orchestra/pull/10412))
- [Backup/Restore] Faster reading of the files of a remote, like the full backups (10 MiB chunks instead of 64 KiB) (PR [#10537](https://github.com/vatesfr/xen-orchestra/pull/10537))
- [Mirror] The full mirrors between unencrypted remotes reuse the checksum of the source instead of computing it again (PR [#10537](https://github.com/vatesfr/xen-orchestra/pull/10537))
- [Mirror] The incremental mirrors between remotes don't recompress the blocks if the source and destination use the same compression (PR [#10581](https://github.com/vatesfr/xen-orchestra/pull/10581))
- [SDN Controller] Fix events listening and stale objects on server reconnection (PR [#10440](https://github.com/vatesfr/xen-orchestra/pull/10440))
- [BRs] Add backup repository detail page (PR [#10454](https://github.com/vatesfr/xen-orchestra/pull/10454))
- [Backup logs] Add backup log list in admin menu (PR [#10572](https://github.com/vatesfr/xen-orchestra/pull/10572))
- [BRs] Add backup repository edit form (PR [#10478](https://github.com/vatesfr/xen-orchestra/pull/10478))
- [BRs] Add change state, test speed and forget actions, and bulk actions on BRs (PR [#10532](https://github.com/vatesfr/xen-orchestra/pull/10532))
- [BRs] Allow editing several BRs at once from the list of BRs (PR [#10555](https://github.com/vatesfr/xen-orchestra/pull/10555))
- [Backup] Support insecure dedicated NBD network (PR [#10540](https://github.com/vatesfr/xen-orchestra/pull/10540))
- [Pool/Network] Allow enabling the insecure NBD (not encrypted) on a network (PR [#10540](https://github.com/vatesfr/xen-orchestra/pull/10540))
- [REST API] `POST /rest/v0/pools/:id/actions/create_network` supports `insecureNbd` to create a network with the insecure NBD (PR [#10540](https://github.com/vatesfr/xen-orchestra/pull/10540))
- [XO6/New network] Choose between no NBD, secure NBD and insecure NBD (not encrypted) when creating a network (PR [#10540](https://github.com/vatesfr/xen-orchestra/pull/10540))
- Host Probe SR REST API Endpoints:
- `POST /rest/v0/hosts/:id/actions/probe_nfs` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_zfs` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_hba` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_iscsi_iqns` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_iscsi_luns` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_iscsi_exists` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_hba_exists` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- `POST /rest/v0/hosts/:id/actions/probe_nfs_exists` (PR [#10099](https://github.com/vatesfr/xen-orchestra/pull/10099))
- [XO5/Host/Patches] Warn when installing patches on a host while its pool master is not up to date (PR [#10523](https://github.com/vatesfr/xen-orchestra/pull/10523))
- [XO6] Add copy button for multiple information on Host/VM Dashboard and Pool/Host/VM System tabs (PR [#9976](https://github.com/vatesfr/xen-orchestra/pull/9976))
- [XO6] Export VDI as vmdk (PR [#10591](https://github.com/vatesfr/xen-orchestra/pull/10591))
- [XO5] Improve event handling (PR [#10568](https://github.com/vatesfr/xen-orchestra/pull/10568))
- [Netbox] Support Netbox v4.7.x [#10565](https://github.com/vatesfr/xen-orchestra/issues/10565) (PR [#10574](https://github.com/vatesfr/xen-orchestra/pull/10574))
- [V2V] Import VMs from ESXi 6.x hosts: their disks are read one request at a time, so more slowly than from ESXi 7 and 8 (PR [#10590](https://github.com/vatesfr/xen-orchestra/pull/10590))
- [Backup repositories] Free, used and total space are now available on backup repositories (PR [#10406](https://github.com/vatesfr/xen-orchestra/pull/10406))
- [Backup] New `zstd` compression for the remotes in block mode (needs Node 22.15 or later), faster to back up and about 1.5 times faster to restore than `brotli` (PR [#10545](https://github.com/vatesfr/xen-orchestra/pull/10545))
- [Backup] Remove the unused `vhdDirectoryCompression` setting of the configuration: the compression is the one of the backup repository, brotli by default (PR [#10545](https://github.com/vatesfr/xen-orchestra/pull/10545))
- [Backup] New `zeros` compression for the remotes in block mode: only the pages full of zeroes are removed, much cheaper than a real compression (PR [#10545](https://github.com/vatesfr/xen-orchestra/pull/10545))
- [REST API] Add `/rest/v0/plugins` endpoints to list, configure, load, unload and test the plugins (PR [#10588](https://github.com/vatesfr/xen-orchestra/pull/10588))
- [REST API] `POST /rest/v0/vms/{id}/actions/migrate` Add `bypassCpuCheck` parameter (PR [#10614](https://github.com/vatesfr/xen-orchestra/pull/10614))
### Bug fixes ### Bug fixes
> Users must be able to say: "I had this issue, happy to know it's fixed" > Users must be able to say: "I had this issue, happy to know it's fixed"
- [Backups/sequences] Prevent errors on backup with proxy from aborting sequences (PR [#10504](https://github.com/vatesfr/xen-orchestra/pull/10504))
- [Backups] Fix on distributed incremental replication and deleteFirst incorrectly disabled for non-distributed replication jobs (PR [#10452](https://github.com/vatesfr/xen-orchestra/pull/10452))
- [New/VM] Hide guest tools ISO SR in new VM ISO selector (PR [#10430](https://github.com/vatesfr/xen-orchestra/pull/10430))
- [Host/VM] Fix the confirmation modal staying open and blocking the UI until the action was fully completed (PR [#10417](https://github.com/vatesfr/xen-orchestra/pull/10417))
- [Dashboard] Fix cards staying in error state after a temporary failure to fetch data, until the page was reloaded (PR [#10516](https://github.com/vatesfr/xen-orchestra/pull/10516))
- [backup] Properly detect a disk deleting while merging (PR [#10424](https://github.com/vatesfr/xen-orchestra/pull/10424))
- [backup] Recover a deadlocked merge when the chain is out of retention (PR [#10424](https://github.com/vatesfr/xen-orchestra/pull/10424))
- [Backup/S3] Fix files never deleted on providers and handle NotFound as expected (PR [#10548](https://github.com/vatesfr/xen-orchestra/pull/10548))
- [Backups] Fix NBD reads failing after a reconnection, when the previous connection is closed late by the host (PR [#10456](https://github.com/vatesfr/xen-orchestra/pull/10456))
- [Plugins/load balancer] Prevent inter-pool migrations triggered by affinity or anti-affinity (PR [#10207](https://github.com/vatesfr/xen-orchestra/pull/10207))
- [REST API] Fix VM creation when destroying an existing VDI (PR [#10292](https://github.com/vatesfr/xen-orchestra/pull/10292))
- [Pool] Display an error when connecting a pool that is already registered, instead of failing silently (PR [#10484](https://github.com/vatesfr/xen-orchestra/pull/10484))
- [Backups] VMs with an `xo:no-bak=<reason>` tag are no longer listed as backed up by smart mode jobs (PR [#10450](https://github.com/vatesfr/xen-orchestra/pull/10450))
- [XO6] Fix the search button of the tables' query builder doing nothing on small and medium screens (PR [#10475](https://github.com/vatesfr/xen-orchestra/pull/10475))
- [Servers] Fix servers stuck in `Connecting` state when using an HTTPS proxy that support HTTP/2 ([Forum#12502](https://xcp-ng.org/forum/topic/12502/xoa-6.9-update)) (PR [#10507](https://github.com/vatesfr/xen-orchestra/pull/10507))
- [V2V] Fix `vectura is not runnable` on XOA and other systems based on Debian 11 (glibc 2.31): the `vectura` binary required glibc 2.34
- [VM/System] Fix video RAM displayed in bytes instead of MiB (PR [#10486](https://github.com/vatesfr/xen-orchestra/pull/10486))
- [XO5/Hosts] Disable restart toolstack button for the hosts that belongs to a HA pools in the home page (PR [#10497](https://github.com/vatesfr/xen-orchestra/pull/10497))
- [Backup/replication] fix to ensure distributed replications are deleted according to retention (PR [#10491] (https://github.com/vatesfr/xen-orchestra/pull/10491))
- [Replication] Fix `Cannot read properties of undefined (reading 'get')` error on continuous replication to multiple SRs (PR [#10519](https://github.com/vatesfr/xen-orchestra/pull/10519))
- [Backup/NBD] Support NBD for pools reached through an HTTP proxy (e.g. an XO Proxy): NBD connections are now tunneled through the proxy instead of falling back to a stream export (PR [#10544](https://github.com/vatesfr/xen-orchestra/pull/10544))
- [xo-cli] fix output failing when outputing a rest api answer (PR [#10541](https://github.com/vatesfr/xen-orchestra/pull/10541))
- [XO5/Self Service] Fix removing a tag from a resource set removing all the other tags instead (PR [#10550](https://github.com/vatesfr/xen-orchestra/pull/10550))
- [Backups/DR] Report the actual XAPI error instead of `(intermediate value) is not iterable` when a VM import fails (PR [#10551](https://github.com/vatesfr/xen-orchestra/pull/10551/))
- [VDI/Export] Fix pressing Escape in the format select closing the whole export drawer (PR [#10582](https://github.com/vatesfr/xen-orchestra/pull/10582))
- [Servers] Fix a pool left in a broken state when its connection was lost twice in a row within 5 minutes (e.g. during a toolstack restart): it could be displayed as connecting while connected and its objects could no longer be acted upon, or it would never be reconnected automatically (PR [#10577](https://github.com/vatesfr/xen-orchestra/pull/10577))
- [XO6] Fix the ETA of task (PR [#10622](https://github.com/vatesfr/xen-orchestra/pull/10622))
- [Swagger] Fixed a typo in the VM collection: `xentools` → `xenTools`, and added a missing type to the server collection `poolMembersAddresses` [#10514](https://github.com/vatesfr/xen-orchestra/issues/10514) (PR [#10598](https://github.com/vatesfr/xen-orchestra/pull/10598))
- [VM/console] Fix opening console in new tab (PR [#10616](https://github.com/vatesfr/xen-orchestra/pull/10616))
- [Host] Enabling multipathing on hosts only disconnects shared SRs, local storage SRs stay connected (PR [#10592](https://github.com/vatesfr/xen-orchestra/pull/10592))
- [Plugins/transport-icinga2] Fix authenticated Icinga2 requests failing with `Request cannot be constructed from a URL that includes credentials`, contribution by [@vmpr](https://github.com/vmpr) [#10498](https://github.com/vatesfr/xen-orchestra/issues/10498) (PR [#10594](https://github.com/vatesfr/xen-orchestra/pull/10594))
- [Backup] Delete orphan VDIs left on the target SR during replication (PR [#10546](https://github.com/vatesfr/xen-orchestra/pull/10546))
### Packages to release ### Packages to release
> When modifying a package, add it here with its release type. > When modifying a package, add it here with its release type.
@@ -121,32 +31,4 @@
<!--packages-start--> <!--packages-start-->
- @vates/iscsi minor
- @vates/nbd-client minor
- @vates/types minor
- @xen-orchestra/acl minor
- @xen-orchestra/backup-archive minor
- @xen-orchestra/backups minor
- @xen-orchestra/disk-transform patch
- @xen-orchestra/fs minor
- @xen-orchestra/proxy patch
- @xen-orchestra/qa-test minor
- @xen-orchestra/qcow2 patch
- @xen-orchestra/rest-api minor
- @xen-orchestra/vmdk major
- @xen-orchestra/vmware-explorer minor
- @xen-orchestra/web minor
- @xen-orchestra/web-core minor
- @xen-orchestra/xapi minor
- vhd-lib minor
- xen-api minor
- xo-acl-resolver minor
- xo-cli patch
- xo-server minor
- xo-server-load-balancer minor
- xo-server-netbox minor
- xo-server-sdn-controller patch
- xo-server-transport-icinga2 patch
- xo-web minor
<!--packages-end--> <!--packages-end-->

View File

@@ -24,7 +24,7 @@
"node": ">=10" "node": ">=10"
}, },
"dependencies": { "dependencies": {
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"cli-progress": "^3.1.0", "cli-progress": "^3.1.0",
"exec-promise": "^0.7.0", "exec-promise": "^0.7.0",
"getopts": "^2.2.3", "getopts": "^2.2.3",
@@ -32,7 +32,7 @@
"lodash": "^4.18.0", "lodash": "^4.18.0",
"promise-toolbox": "^0.21.0", "promise-toolbox": "^0.21.0",
"uuid": "^9.0.0", "uuid": "^9.0.0",
"vhd-lib": "^4.16.2" "vhd-lib": "^4.17.0"
}, },
"scripts": { "scripts": {
"postversion": "npm publish", "postversion": "npm publish",

View File

@@ -1,7 +1,7 @@
{ {
"private": false, "private": false,
"name": "vhd-lib", "name": "vhd-lib",
"version": "4.16.2", "version": "4.17.0",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"description": "Primitives for VHD file handling", "description": "Primitives for VHD file handling",
"homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/packages/vhd-lib", "homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/packages/vhd-lib",
@@ -20,7 +20,7 @@
"@vates/read-chunk": "^1.2.1", "@vates/read-chunk": "^1.2.1",
"@vates/stream-reader": "^0.1.0", "@vates/stream-reader": "^0.1.0",
"@xen-orchestra/async-map": "^0.1.5", "@xen-orchestra/async-map": "^0.1.5",
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"async-iterator-to-stream": "^1.0.2", "async-iterator-to-stream": "^1.0.2",
"decorator-synchronized": "^0.6.0", "decorator-synchronized": "^0.6.0",
@@ -33,8 +33,8 @@
"uuid": "^9.0.0" "uuid": "^9.0.0"
}, },
"devDependencies": { "devDependencies": {
"@xen-orchestra/disk-transform": "^1.3.3", "@xen-orchestra/disk-transform": "^1.3.4",
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"execa": "^5.0.0", "execa": "^5.0.0",
"get-stream": "^6.0.0", "get-stream": "^6.0.0",
"rimraf": "^6.0.1", "rimraf": "^6.0.1",

View File

@@ -40,7 +40,7 @@
"human-format": "^1.0.0", "human-format": "^1.0.0",
"lodash": "^4.18.0", "lodash": "^4.18.0",
"pw": "^0.0.4", "pw": "^0.0.4",
"xen-api": "^5.0.2" "xen-api": "^5.1.0"
}, },
"scripts": { "scripts": {
"postversion": "npm publish" "postversion": "npm publish"

View File

@@ -1,7 +1,7 @@
{ {
"private": false, "private": false,
"name": "xen-api", "name": "xen-api",
"version": "5.0.2", "version": "5.1.0",
"license": "ISC", "license": "ISC",
"description": "Connector to the Xen API", "description": "Connector to the Xen API",
"keywords": [ "keywords": [
@@ -67,7 +67,7 @@
"source-map-support": "^0.5.21", "source-map-support": "^0.5.21",
"tap": "^18.7.0", "tap": "^18.7.0",
"throttle": "^1.0.3", "throttle": "^1.0.3",
"vhd-lib": "^4.16.2" "vhd-lib": "^4.17.0"
}, },
"scripts": { "scripts": {
"plot": "gnuplot -p memory-test.gnu", "plot": "gnuplot -p memory-test.gnu",

View File

@@ -1,7 +1,7 @@
{ {
"private": false, "private": false,
"name": "xo-acl-resolver", "name": "xo-acl-resolver",
"version": "0.5.4", "version": "0.6.0",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"description": "Xen-Orchestra internal: do ACLs resolution", "description": "Xen-Orchestra internal: do ACLs resolution",
"homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/packages/xo-acl-resolver", "homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/packages/xo-acl-resolver",

View File

@@ -1,7 +1,7 @@
{ {
"private": false, "private": false,
"name": "xo-cli", "name": "xo-cli",
"version": "0.32.4", "version": "0.32.5",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"description": "Basic CLI for Xen-Orchestra", "description": "Basic CLI for Xen-Orchestra",
"keywords": [ "keywords": [

View File

@@ -28,7 +28,7 @@
}, },
"dependencies": { "dependencies": {
"@isaacs/ttlcache": "^1.4.1", "@isaacs/ttlcache": "^1.4.1",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"@xen-orchestra/log": "^0.7.1", "@xen-orchestra/log": "^0.7.1",
"xo-common": "^0.11.0" "xo-common": "^0.11.0"
}, },

View File

@@ -1,6 +1,6 @@
{ {
"name": "xo-server-load-balancer", "name": "xo-server-load-balancer",
"version": "0.13.1", "version": "0.14.0",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"description": "Load balancer for XO-Server", "description": "Load balancer for XO-Server",
"keywords": [ "keywords": [

View File

@@ -1,6 +1,6 @@
{ {
"name": "xo-server-netbox", "name": "xo-server-netbox",
"version": "1.13.3", "version": "1.14.0",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"description": "Synchronizes pools managed by Xen Orchestra with Netbox", "description": "Synchronizes pools managed by Xen Orchestra with Netbox",
"keywords": [ "keywords": [

View File

@@ -31,7 +31,7 @@
"dependencies": { "dependencies": {
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@vates/coalesce-calls": "^0.1.0", "@vates/coalesce-calls": "^0.1.0",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"json5": "^2.2.3", "json5": "^2.2.3",
"undici": "^6.2.1" "undici": "^6.2.1"

View File

@@ -17,7 +17,7 @@
"predev": "yarn run prebuild", "predev": "yarn run prebuild",
"prepublishOnly": "yarn run build" "prepublishOnly": "yarn run build"
}, },
"version": "1.5.1", "version": "1.5.2",
"engines": { "engines": {
"node": ">=10" "node": ">=10"
}, },
@@ -31,7 +31,7 @@
"dependencies": { "dependencies": {
"@vates/async-each": "^1.0.3", "@vates/async-each": "^1.0.3",
"@vates/coalesce-calls": "^0.1.0", "@vates/coalesce-calls": "^0.1.0",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"@xen-orchestra/openflow": "^0.1.4", "@xen-orchestra/openflow": "^0.1.4",
"ipaddr.js": "^2.0.1", "ipaddr.js": "^2.0.1",

View File

@@ -16,7 +16,7 @@
"predev": "yarn run prebuild", "predev": "yarn run prebuild",
"prepublishOnly": "yarn run build" "prepublishOnly": "yarn run build"
}, },
"version": "0.1.2", "version": "0.1.3",
"engines": { "engines": {
"node": ">=8.9.4" "node": ">=8.9.4"
}, },

View File

@@ -1,7 +1,7 @@
{ {
"private": true, "private": true,
"name": "xo-server", "name": "xo-server",
"version": "5.211.1", "version": "5.212.0",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"description": "Server part of Xen-Orchestra", "description": "Server part of Xen-Orchestra",
"keywords": [ "keywords": [
@@ -39,32 +39,32 @@
"@vates/event-listeners-manager": "^1.0.1", "@vates/event-listeners-manager": "^1.0.1",
"@vates/fatfs": "^0.11.1", "@vates/fatfs": "^0.11.1",
"@vates/multi-key-map": "^0.2.0", "@vates/multi-key-map": "^0.2.0",
"@vates/nbd-client": "^3.6.0", "@vates/nbd-client": "^3.7.0",
"@vates/obfuscate": "^0.1.0", "@vates/obfuscate": "^0.1.0",
"@vates/otp": "^1.1.0", "@vates/otp": "^1.1.0",
"@vates/parse-duration": "^0.1.1", "@vates/parse-duration": "^0.1.1",
"@vates/predicates": "^1.1.0", "@vates/predicates": "^1.1.0",
"@vates/read-chunk": "^1.2.1", "@vates/read-chunk": "^1.2.1",
"@vates/task": "^0.7.0", "@vates/task": "^0.7.0",
"@vates/types": "^2.3.0", "@vates/types": "^2.4.0",
"@vates/xml": "^2.0.0", "@vates/xml": "^2.0.0",
"@vates/xml-rpc": "^1.0.0", "@vates/xml-rpc": "^1.0.0",
"@xen-orchestra/async-map": "^0.1.5", "@xen-orchestra/async-map": "^0.1.5",
"@xen-orchestra/backups": "^0.76.1", "@xen-orchestra/backups": "^0.77.0",
"@xen-orchestra/cron": "^1.0.7", "@xen-orchestra/cron": "^1.0.7",
"@xen-orchestra/defined": "^0.0.2", "@xen-orchestra/defined": "^0.0.2",
"@xen-orchestra/disk-transform": "^1.3.3", "@xen-orchestra/disk-transform": "^1.3.4",
"@xen-orchestra/emit-async": "^1.0.0", "@xen-orchestra/emit-async": "^1.0.0",
"@xen-orchestra/fs": "^4.9.5", "@xen-orchestra/fs": "^4.10.0",
"@xen-orchestra/log": "^0.7.2", "@xen-orchestra/log": "^0.7.2",
"@xen-orchestra/mixin": "^0.2.1", "@xen-orchestra/mixin": "^0.2.1",
"@xen-orchestra/mixins": "^0.22.0", "@xen-orchestra/mixins": "^0.22.1",
"@xen-orchestra/qcow2": "^1.4.0", "@xen-orchestra/qcow2": "^1.4.1",
"@xen-orchestra/rest-api": "^0.40.2", "@xen-orchestra/rest-api": "^0.41.0",
"@xen-orchestra/self-signed": "^0.2.1", "@xen-orchestra/self-signed": "^0.2.1",
"@xen-orchestra/template": "^0.1.1", "@xen-orchestra/template": "^0.1.1",
"@xen-orchestra/vmware-explorer": "^1.0.2", "@xen-orchestra/vmware-explorer": "^1.1.0",
"@xen-orchestra/xapi": "^9.0.1", "@xen-orchestra/xapi": "^9.1.0",
"@xen-orchestra/xva": "^1.0.3", "@xen-orchestra/xva": "^1.0.3",
"ajv": "^8.0.3", "ajv": "^8.0.3",
"app-conf": "^3.0.0", "app-conf": "^3.0.0",
@@ -143,11 +143,11 @@
"unzipper": "^0.10.5", "unzipper": "^0.10.5",
"uuid": "^9.0.0", "uuid": "^9.0.0",
"value-matcher": "^0.2.0", "value-matcher": "^0.2.0",
"vhd-lib": "^4.16.2", "vhd-lib": "^4.17.0",
"ws": "^8.2.3", "ws": "^8.2.3",
"xdg-basedir": "^5.1.0", "xdg-basedir": "^5.1.0",
"xen-api": "^5.0.2", "xen-api": "^5.1.0",
"xo-acl-resolver": "^0.5.4", "xo-acl-resolver": "^0.6.0",
"xo-collection": "^0.6.1", "xo-collection": "^0.6.1",
"xo-common": "^0.11.0", "xo-common": "^0.11.0",
"xo-remote-parser": "^2.0.0", "xo-remote-parser": "^2.0.0",
@@ -163,7 +163,7 @@
"@babel/plugin-proposal-pipeline-operator": "^7.0.0", "@babel/plugin-proposal-pipeline-operator": "^7.0.0",
"@babel/plugin-proposal-throw-expressions": "^7.0.0", "@babel/plugin-proposal-throw-expressions": "^7.0.0",
"@babel/preset-env": "^7.29.0", "@babel/preset-env": "^7.29.0",
"@xen-orchestra/acl": "^1.7.0", "@xen-orchestra/acl": "^1.8.0",
"babel-plugin-transform-define": "^2.1.4", "babel-plugin-transform-define": "^2.1.4",
"babel-plugin-transform-dev": "^2.0.1", "babel-plugin-transform-dev": "^2.0.1",
"cross-env": "^7.0.2", "cross-env": "^7.0.2",

View File

@@ -25,7 +25,7 @@
"pako": "^2.0.4", "pako": "^2.0.4",
"promise-toolbox": "^0.21.0", "promise-toolbox": "^0.21.0",
"tar-stream": "^3.1.6", "tar-stream": "^3.1.6",
"vhd-lib": "^4.16.2", "vhd-lib": "^4.17.0",
"xml2js": "^0.6.2" "xml2js": "^0.6.2"
}, },
"devDependencies": { "devDependencies": {

View File

@@ -1,7 +1,7 @@
{ {
"private": true, "private": true,
"name": "xo-web", "name": "xo-web",
"version": "5.206.1", "version": "5.207.0",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"description": "Web interface client for Xen-Orchestra", "description": "Web interface client for Xen-Orchestra",
"keywords": [ "keywords": [
@@ -134,7 +134,7 @@
"watchify": "^3.7.0", "watchify": "^3.7.0",
"whatwg-fetch": "^3.0.0", "whatwg-fetch": "^3.0.0",
"xml2js": "^0.6.2", "xml2js": "^0.6.2",
"xo-acl-resolver": "^0.5.4", "xo-acl-resolver": "^0.6.0",
"xo-common": "^0.11.0", "xo-common": "^0.11.0",
"xo-lib": "^0.11.2", "xo-lib": "^0.11.2",
"xo-remote-parser": "^2.0.0", "xo-remote-parser": "^2.0.0",

106
yarn.lock
View File

@@ -4809,52 +4809,6 @@
resolved "https://registry.yarnpkg.com/@vueuse/shared/-/shared-14.3.0.tgz#a3e7e6391f9ed7f363cbb28c32c4a278efaacbd0" resolved "https://registry.yarnpkg.com/@vueuse/shared/-/shared-14.3.0.tgz#a3e7e6391f9ed7f363cbb28c32c4a278efaacbd0"
integrity sha512-bZpge9eSXwa4ToSiqJ7j6KRwhAsneMFoSz3LMWKQDkqimm3D/tbFlrklrs/IOqC8tEcYmXQZJ6N0UrjhBirVCg== integrity sha512-bZpge9eSXwa4ToSiqJ7j6KRwhAsneMFoSz3LMWKQDkqimm3D/tbFlrklrs/IOqC8tEcYmXQZJ6N0UrjhBirVCg==
"@xen-orchestra/backups@^0.74.2":
version "0.74.2"
resolved "https://registry.yarnpkg.com/@xen-orchestra/backups/-/backups-0.74.2.tgz#a0a40b2d6166de055409f02289789214d373619d"
integrity sha512-Vf9s/bt/tqAa6nJFfbuhXrsXDk124IOOuU+k31+FyigRRre8D+gfbo7Bbq7zG8vmHDm+Clis4jINCSyA9l/oEQ==
dependencies:
"@iarna/toml" "^2.2.5"
"@kldzj/stream-throttle" "^1.1.1"
"@vates/async-each" "^1.0.3"
"@vates/cached-dns.lookup" "^1.0.0"
"@vates/compose" "^2.1.0"
"@vates/decorate-with" "^2.1.0"
"@vates/disposable" "^0.1.6"
"@vates/fuse-vhd" "^2.1.3"
"@vates/generator-toolbox" "^1.1.3"
"@vates/nbd-client" "^3.5.1"
"@vates/parse-duration" "^0.1.1"
"@vates/task" "^0.7.0"
"@vates/types" "^2.0.1"
"@xen-orchestra/async-map" "^0.1.4"
"@xen-orchestra/backup-archive" "^1.1.2"
"@xen-orchestra/disk-transform" "^1.3.3"
"@xen-orchestra/fs" "^4.9.3"
"@xen-orchestra/log" "^0.7.2"
"@xen-orchestra/qcow2" "^1.3.1"
"@xen-orchestra/template" "^0.1.1"
app-conf "^3.0.0"
compare-versions "^6.0.0"
d3-time-format "^4.1.0"
decorator-synchronized "^0.6.0"
golike-defer "^0.5.1"
human-format "^1.2.0"
limit-concurrency-decorator "^0.6.0"
lodash "^4.18.0"
moment-timezone "^0.5.46"
ms "^2.1.3"
node-zone "^0.4.0"
parse-pairs "^2.0.0"
promise-toolbox "^0.21.0"
proper-lockfile "^4.1.2"
tar "^7.5.19"
uuid "^9.0.0"
value-matcher "^0.2.0"
vhd-lib "^4.16.1"
xen-api "^4.9.0"
yazl "^2.5.1"
"@xmldom/is-dom-node@^1.0.1": "@xmldom/is-dom-node@^1.0.1":
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/@xmldom/is-dom-node/-/is-dom-node-1.0.1.tgz#83b9f3e1260fb008061c6fa787b93a00f9be0629" resolved "https://registry.yarnpkg.com/@xmldom/is-dom-node/-/is-dom-node-1.0.1.tgz#83b9f3e1260fb008061c6fa787b93a00f9be0629"
@@ -18381,7 +18335,7 @@ string-length@^6.0.0:
dependencies: dependencies:
strip-ansi "^7.1.0" strip-ansi "^7.1.0"
"string-width-cjs@npm:string-width@^4.2.0": "string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
version "4.2.3" version "4.2.3"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
@@ -18399,15 +18353,6 @@ string-width@^1.0.1, string-width@^1.0.2:
is-fullwidth-code-point "^1.0.0" is-fullwidth-code-point "^1.0.0"
strip-ansi "^3.0.0" strip-ansi "^3.0.0"
string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
version "4.2.3"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
dependencies:
emoji-regex "^8.0.0"
is-fullwidth-code-point "^3.0.0"
strip-ansi "^6.0.1"
string-width@^5.0.0, string-width@^5.0.1, string-width@^5.1.2: string-width@^5.0.0, string-width@^5.0.1, string-width@^5.1.2:
version "5.1.2" version "5.1.2"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
@@ -18515,7 +18460,7 @@ string_decoder@~1.1.1:
dependencies: dependencies:
safe-buffer "~5.1.0" safe-buffer "~5.1.0"
"strip-ansi-cjs@npm:strip-ansi@^6.0.1": "strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1:
version "6.0.1" version "6.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
@@ -18543,13 +18488,6 @@ strip-ansi@^5.2.0:
dependencies: dependencies:
ansi-regex "^4.1.0" ansi-regex "^4.1.0"
strip-ansi@^6.0.0, strip-ansi@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
dependencies:
ansi-regex "^5.0.1"
strip-ansi@^7.0.1, strip-ansi@^7.1.0: strip-ansi@^7.0.1, strip-ansi@^7.1.0:
version "7.2.0" version "7.2.0"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.2.0.tgz#d22a269522836a627af8d04b5c3fd2c7fa3e32e3" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.2.0.tgz#d22a269522836a627af8d04b5c3fd2c7fa3e32e3"
@@ -20426,7 +20364,7 @@ wordwrap@^1.0.0:
resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==
"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0:
version "7.0.0" version "7.0.0"
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
@@ -20452,15 +20390,6 @@ wrap-ansi@^6.0.1, wrap-ansi@^6.2.0:
string-width "^4.1.0" string-width "^4.1.0"
strip-ansi "^6.0.0" strip-ansi "^6.0.0"
wrap-ansi@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
dependencies:
ansi-styles "^4.0.0"
string-width "^4.1.0"
strip-ansi "^6.0.0"
wrap-ansi@^8.1.0: wrap-ansi@^8.1.0:
version "8.1.0" version "8.1.0"
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"
@@ -20509,35 +20438,6 @@ xdg-basedir@^5.1.0:
resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-5.1.0.tgz#1efba19425e73be1bc6f2a6ceb52a3d2c884c0c9" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-5.1.0.tgz#1efba19425e73be1bc6f2a6ceb52a3d2c884c0c9"
integrity sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ== integrity sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==
xen-api@^4.9.0:
version "4.9.0"
resolved "https://registry.yarnpkg.com/xen-api/-/xen-api-4.9.0.tgz#9314f1121f2ea406241010f80a0013050227a248"
integrity sha512-JzukTn5JRjBmC41OUqhYYdmNkuF4+L87BPnNuz0i2M4BWJ8Wrgmw/8t4keNB1Z0SPcAXwSZ0TzxgWOpGOBocWg==
dependencies:
"@vates/coalesce-calls" "^0.1.0"
"@vates/compose" "^2.1.0"
"@vates/decorate-with" "^2.1.0"
"@vates/json-hash" "^0.2.0"
"@vates/obfuscate" "^0.1.0"
"@vates/xml" "^2.0.0"
"@vates/xml-rpc" "^1.0.0"
"@xen-orchestra/log" "^0.7.2"
bind-property-descriptor "^2.0.0"
blocked "^1.2.1"
jest-diff "^29.0.3"
json-rpc-protocol "^0.13.1"
limit-concurrency-decorator "^0.6.0"
lodash "^4.18.0"
make-error "^1.3.0"
minimist "^1.2.0"
ms "^2.1.1"
promise-toolbox "^0.21.0"
proxy-agent "^6.3.1"
pw "0.0.4"
undici "^6.2.1"
xo-collection "^0.6.1"
xo-common "^0.11.0"
xml-crypto@^6.1.2: xml-crypto@^6.1.2:
version "6.1.2" version "6.1.2"
resolved "https://registry.yarnpkg.com/xml-crypto/-/xml-crypto-6.1.2.tgz#ed93e87d9538f92ad1ad2db442e9ec586723d07d" resolved "https://registry.yarnpkg.com/xml-crypto/-/xml-crypto-6.1.2.tgz#ed93e87d9538f92ad1ad2db442e9ec586723d07d"