From: Jakob Haufe <sur5r@debian.org>
Date: Sun, 24 Nov 2024 10:12:40 +0100
Subject: Use builtin enum.StrEnum

Starting with 3.11, Python includes enum.StrEnum which, while not a
complete drop-in replacement, works for the usecase of zabbix-cli.

Let's use it to avoid packaging another dependency.

Last-Update: 2025-01-02
---
 zabbix_cli/auth.py               | 2 +-
 zabbix_cli/bulk.py               | 2 +-
 zabbix_cli/commands/export.py    | 2 +-
 zabbix_cli/commands/user.py      | 2 +-
 zabbix_cli/commands/usergroup.py | 2 +-
 zabbix_cli/config/constants.py   | 2 +-
 zabbix_cli/models.py             | 2 +-
 zabbix_cli/output/style.py       | 2 +-
 zabbix_cli/pyzabbix/enums.py     | 2 +-
 zabbix_cli/update.py             | 2 +-
 10 files changed, 10 insertions(+), 10 deletions(-)

--- a/zabbix_cli/auth.py
+++ b/zabbix_cli/auth.py
@@ -27,7 +27,7 @@ from pydantic import BaseModel
 from pydantic import PrivateAttr
 from pydantic import RootModel
 from rich.console import ScreenContext
-from strenum import StrEnum
+from enum import StrEnum
 
 from zabbix_cli._v2_compat import AUTH_FILE as AUTH_FILE_LEGACY
 from zabbix_cli._v2_compat import AUTH_TOKEN_FILE as AUTH_TOKEN_FILE_LEGACY
--- a/zabbix_cli/bulk.py
+++ b/zabbix_cli/bulk.py
@@ -19,7 +19,7 @@ import typer
 import typer.core
 from pydantic import BaseModel
 from pydantic import Field
-from strenum import StrEnum
+from enum import StrEnum
 from typing_extensions import Self
 
 from zabbix_cli.exceptions import CommandFileError
--- a/zabbix_cli/commands/export.py
+++ b/zabbix_cli/commands/export.py
@@ -11,7 +11,7 @@ from typing import Optional
 from typing import Protocol
 
 import typer
-from strenum import StrEnum
+from enum import StrEnum
 
 from zabbix_cli._v2_compat import ARGS_POSITIONAL
 from zabbix_cli.app import Example
--- a/zabbix_cli/commands/user.py
+++ b/zabbix_cli/commands/user.py
@@ -7,7 +7,7 @@ from typing import Optional
 from typing import TypeVar
 
 import typer
-from strenum import StrEnum
+from enum import StrEnum
 
 from zabbix_cli._v2_compat import ARGS_POSITIONAL
 from zabbix_cli.app import Example
--- a/zabbix_cli/commands/usergroup.py
+++ b/zabbix_cli/commands/usergroup.py
@@ -9,7 +9,7 @@ from typing import Optional
 from typing import TypeVar
 
 import typer
-from strenum import StrEnum
+from enum import StrEnum
 
 from zabbix_cli._v2_compat import ARGS_POSITIONAL
 from zabbix_cli.app import Example
--- a/zabbix_cli/config/constants.py
+++ b/zabbix_cli/config/constants.py
@@ -7,7 +7,7 @@ from typing import Callable
 from typing import Optional
 from typing import Union
 
-from strenum import StrEnum
+from enum import StrEnum
 
 from zabbix_cli.dirs import CONFIG_DIR
 from zabbix_cli.dirs import DATA_DIR
--- a/zabbix_cli/models.py
+++ b/zabbix_cli/models.py
@@ -18,7 +18,7 @@ from pydantic import Field
 from pydantic import JsonValue
 from pydantic.fields import ComputedFieldInfo
 from pydantic.fields import FieldInfo
-from strenum import StrEnum
+from enum import StrEnum
 from typing_extensions import TypeVar
 
 from zabbix_cli.logs import logger
--- a/zabbix_cli/output/style.py
+++ b/zabbix_cli/output/style.py
@@ -4,7 +4,7 @@ from __future__ import annotations
 from typing import Any
 
 from rich.theme import Theme
-from strenum import StrEnum
+from enum import StrEnum
 from typer.rich_utils import STYLE_OPTION
 
 # NOTE: we define these enums to allow us to parse the markup text and
--- a/zabbix_cli/pyzabbix/enums.py
+++ b/zabbix_cli/pyzabbix/enums.py
@@ -7,7 +7,7 @@ from typing import Generic
 from typing import Optional
 from typing import TypeVar
 
-from strenum import StrEnum
+from enum import StrEnum
 from typing_extensions import Self
 
 from zabbix_cli.exceptions import ZabbixCLIError
--- a/zabbix_cli/update.py
+++ b/zabbix_cli/update.py
@@ -27,7 +27,7 @@ import httpx
 from pydantic import BaseModel
 from pydantic import ValidationError
 from rich.progress import Progress
-from strenum import StrEnum
+from enum import StrEnum
 from typing_extensions import Self
 
 from zabbix_cli.__about__ import __version__
