From 5b716df45fcc2cb7d13beaf0deb9497406a61d4c Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 16 Sep 2021 09:53:54 +0530 Subject: [PATCH] We dont need a special class for delete_env_var --- kitty/child.py | 3 ++- kitty/constants.py | 8 -------- kitty/options/utils.py | 3 ++- kitty_tests/options.py | 2 +- 4 files changed, 5 insertions(+), 11 deletions(-) diff --git a/kitty/child.py b/kitty/child.py index 835658b89..fb9d2a909 100644 --- a/kitty/child.py +++ b/kitty/child.py @@ -13,7 +13,7 @@ from typing import ( import kitty.fast_data_types as fast_data_types -from .constants import is_macos, shell_path, terminfo_dir, delete_env_var +from .constants import is_macos, shell_path, terminfo_dir from .types import run_once try: @@ -209,6 +209,7 @@ class Child: @property def final_env(self) -> Dict[str, str]: + from kitty.options.utils import delete_env_var env: Optional[Dict[str, str]] = getattr(self, '_final_env', None) if env is None: env = self._final_env = default_env().copy() diff --git a/kitty/constants.py b/kitty/constants.py index 1c12144a9..157bd88a7 100644 --- a/kitty/constants.py +++ b/kitty/constants.py @@ -21,18 +21,10 @@ class Version(NamedTuple): patch: int -class SentinelString(str): - - def __new__(cls, val: str) -> 'SentinelString': - ans: SentinelString = str.__new__(cls, val) - return ans - - appname: str = 'kitty' kitty_face = '🐱' version: Version = Version(0, 23, 1) str_version: str = '.'.join(map(str, version)) -delete_env_var = SentinelString('_delete_this_env_var_') _plat = sys.platform.lower() is_macos: bool = 'darwin' in _plat if getattr(sys, 'frozen', False): diff --git a/kitty/options/utils.py b/kitty/options/utils.py index 381b3abca..6013fd6c7 100644 --- a/kitty/options/utils.py +++ b/kitty/options/utils.py @@ -16,7 +16,7 @@ from kitty.conf.utils import ( KeyAction, key_func, positive_float, positive_int, python_string, to_bool, to_cmdline, to_color, uniq, unit_float ) -from kitty.constants import config_dir, is_macos, delete_env_var +from kitty.constants import config_dir, is_macos from kitty.fast_data_types import CURSOR_BEAM, CURSOR_BLOCK, CURSOR_UNDERLINE from kitty.fonts import FontFeature from kitty.key_names import ( @@ -42,6 +42,7 @@ for x in 'ABCDEFGHIJKLMNOPQRSTUVWXYZ': sequence_sep = '>' func_with_args, args_funcs = key_func() FuncArgsType = Tuple[str, Sequence[Any]] +delete_env_var = '_delete_this_env_var_' class InvalidMods(ValueError): diff --git a/kitty_tests/options.py b/kitty_tests/options.py index 0e2909968..8b6b736f0 100644 --- a/kitty_tests/options.py +++ b/kitty_tests/options.py @@ -5,7 +5,7 @@ from . import BaseTest from kitty.utils import log_error -from kitty.constants import delete_env_var +from kitty.options.utils import delete_env_var class TestConfParsing(BaseTest):