From 638f8de037720a032120dcfbd31145e4ea4924f4 Mon Sep 17 00:00:00 2001 From: Michal Wojcik Date: Mon, 16 Feb 2026 12:50:23 +0100 Subject: [PATCH 1/4] Deprecate `xen` from SDKs and Tools --- linode_api4/objects/linode.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/linode_api4/objects/linode.py b/linode_api4/objects/linode.py index 1edf4e014..097362d5b 100644 --- a/linode_api4/objects/linode.py +++ b/linode_api4/objects/linode.py @@ -217,7 +217,7 @@ def resize(self, new_size): class Kernel(Base): """ The primary component of every Linux system. The kernel interfaces - with the system’s hardware and it controls the operating system’s core functionality. + with the system’s hardware, and it controls the operating system’s core functionality. Your Compute Instance is capable of running one of three kinds of kernels: @@ -251,7 +251,7 @@ class Kernel(Base): "updates": Property(), "version": Property(), "architecture": Property(), - "xen": Property(), + "xen": Property(), # deprecated and not returned by the API anymore, but left here for backward compatibility "built": Property(), "pvops": Property(), } From 2ac18628edc34a24947b1681bb730876791274f7 Mon Sep 17 00:00:00 2001 From: Michal Wojcik Date: Mon, 16 Feb 2026 12:54:56 +0100 Subject: [PATCH 2/4] Deprecate `xen` from SDKs and Tools --- linode_api4/objects/linode.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linode_api4/objects/linode.py b/linode_api4/objects/linode.py index 097362d5b..5abd231a4 100644 --- a/linode_api4/objects/linode.py +++ b/linode_api4/objects/linode.py @@ -251,7 +251,7 @@ class Kernel(Base): "updates": Property(), "version": Property(), "architecture": Property(), - "xen": Property(), # deprecated and not returned by the API anymore, but left here for backward compatibility + "xen": Property(), # deprecated and not returned by the API anymore, but left here for backward compatibility "built": Property(), "pvops": Property(), } From a2c403d817ad25f9d30227f1311eac041fee5cba Mon Sep 17 00:00:00 2001 From: Michal Wojcik Date: Mon, 16 Feb 2026 15:31:22 +0100 Subject: [PATCH 3/4] Deprecate `xen` from SDKs and Tools --- linode_api4/objects/linode.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/linode_api4/objects/linode.py b/linode_api4/objects/linode.py index 5abd231a4..50689a5e6 100644 --- a/linode_api4/objects/linode.py +++ b/linode_api4/objects/linode.py @@ -237,6 +237,10 @@ class Kernel(Base): to compile the kernel from source than to download it from your package manager. For more information on custom compiled kernels, review our guides for Debian, Ubuntu, and CentOS. + .. note:: + The ``xen`` property is deprecated and is no longer returned by the API. + It is maintained for backward compatibility only. + API Documentation: https://techdocs.akamai.com/linode-api/reference/get-kernel """ From 054c3e4e9d997a98c164556e4ddd4340cbb7c8c1 Mon Sep 17 00:00:00 2001 From: Michal Wojcik Date: Mon, 23 Feb 2026 14:09:16 +0100 Subject: [PATCH 4/4] Deprecate `xen` from SDKs and Tools --- linode_api4/objects/linode.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/linode_api4/objects/linode.py b/linode_api4/objects/linode.py index 50689a5e6..ccddd7e40 100644 --- a/linode_api4/objects/linode.py +++ b/linode_api4/objects/linode.py @@ -1,6 +1,7 @@ import copy import string import sys +import warnings from dataclasses import dataclass, field from datetime import datetime from enum import Enum @@ -255,11 +256,21 @@ class Kernel(Base): "updates": Property(), "version": Property(), "architecture": Property(), - "xen": Property(), # deprecated and not returned by the API anymore, but left here for backward compatibility + "xen": Property(), "built": Property(), "pvops": Property(), } + def __getattribute__(self, name: str) -> object: + if name == "xen": + warnings.warn( + "The 'xen' property of Kernel is deprecated and is no longer " + "returned by the API. It is maintained for backward compatibility only.", + DeprecationWarning, + stacklevel=2, + ) + return super().__getattribute__(name) + class Type(Base): """