diff --git a/docs/source/conf.py b/docs/source/conf.py index 6f82deda..cf892314 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -17,14 +17,8 @@ # -- Project information ----------------------------------------------------- -import sys - import sphinx_rtd_theme - -if sys.version_info >= (3, 8): - from importlib.metadata import Distribution -else: - from importlib_metadata import Distribution +from importlib.metadata import Distribution html_theme = "sphinx_rtd_theme" diff --git a/examples/top_lite_simulator.py b/examples/top_lite_simulator.py index 147cbb0f..f3eec0d1 100644 --- a/examples/top_lite_simulator.py +++ b/examples/top_lite_simulator.py @@ -1,7 +1,6 @@ """Lite simulation of the top linux command.""" import datetime import random -import sys import time from dataclasses import dataclass @@ -9,11 +8,7 @@ from rich import box from rich.console import Console from rich.live import Live from rich.table import Table - -if sys.version_info >= (3, 8): - from typing import Literal -else: - from typing_extensions import Literal +from typing import Literal @dataclass diff --git a/rich/_ratio.py b/rich/_ratio.py index e12397af..5fd5a383 100644 --- a/rich/_ratio.py +++ b/rich/_ratio.py @@ -1,12 +1,6 @@ -import sys from fractions import Fraction from math import ceil -from typing import cast, List, Optional, Sequence - -if sys.version_info >= (3, 8): - from typing import Protocol -else: - from typing_extensions import Protocol # pragma: no cover +from typing import cast, List, Optional, Sequence, Protocol class Edge(Protocol): diff --git a/rich/align.py b/rich/align.py index fac50b1e..cb5f31d6 100644 --- a/rich/align.py +++ b/rich/align.py @@ -1,11 +1,5 @@ -import sys from itertools import chain -from typing import TYPE_CHECKING, Iterable, Optional - -if sys.version_info >= (3, 8): - from typing import Literal -else: - from typing_extensions import Literal # pragma: no cover +from typing import TYPE_CHECKING, Iterable, Optional, Literal from .constrain import Constrain from .jupyter import JupyterMixin diff --git a/rich/box.py b/rich/box.py index aa4ada32..82555b61 100644 --- a/rich/box.py +++ b/rich/box.py @@ -1,10 +1,4 @@ -import sys -from typing import TYPE_CHECKING, Iterable, List - -if sys.version_info >= (3, 8): - from typing import Literal -else: - from typing_extensions import Literal # pragma: no cover +from typing import TYPE_CHECKING, Iterable, List, Literal from ._loop import loop_last diff --git a/rich/console.py b/rich/console.py index 6725e405..bfedfa84 100644 --- a/rich/console.py +++ b/rich/console.py @@ -33,15 +33,7 @@ from typing import ( ) from rich._null_file import NULL_FILE - -if sys.version_info >= (3, 8): - from typing import Literal, Protocol, runtime_checkable -else: - from typing_extensions import ( - Literal, - Protocol, - runtime_checkable, - ) # pragma: no cover +from typing import Literal, Protocol, runtime_checkable from . import errors, themes from ._emoji_replace import _emoji_replace diff --git a/rich/control.py b/rich/control.py index a8a91255..248b0f59 100644 --- a/rich/control.py +++ b/rich/control.py @@ -1,11 +1,5 @@ -import sys import time -from typing import TYPE_CHECKING, Callable, Dict, Iterable, List, Union - -if sys.version_info >= (3, 8): - from typing import Final -else: - from typing_extensions import Final # pragma: no cover +from typing import TYPE_CHECKING, Callable, Dict, Iterable, List, Union, Final from .segment import ControlCode, ControlType, Segment diff --git a/rich/emoji.py b/rich/emoji.py index d5a1062a..9433e6fb 100644 --- a/rich/emoji.py +++ b/rich/emoji.py @@ -1,5 +1,5 @@ import sys -from typing import TYPE_CHECKING, Optional, Union +from typing import TYPE_CHECKING, Optional, Union, Literal from .jupyter import JupyterMixin from .segment import Segment @@ -7,11 +7,6 @@ from .style import Style from ._emoji_codes import EMOJI from ._emoji_replace import _emoji_replace -if sys.version_info >= (3, 8): - from typing import Literal -else: - from typing_extensions import Literal # pragma: no cover - if TYPE_CHECKING: from .console import Console, ConsoleOptions, RenderResult diff --git a/rich/live_render.py b/rich/live_render.py index 4284cccc..d3da5111 100644 --- a/rich/live_render.py +++ b/rich/live_render.py @@ -1,10 +1,4 @@ -import sys -from typing import Optional, Tuple - -if sys.version_info >= (3, 8): - from typing import Literal -else: - from typing_extensions import Literal # pragma: no cover +from typing import Optional, Tuple, Literal from ._loop import loop_last diff --git a/rich/markdown.py b/rich/markdown.py index 26c58d15..12496487 100644 --- a/rich/markdown.py +++ b/rich/markdown.py @@ -1,16 +1,11 @@ from __future__ import annotations import sys -from typing import ClassVar, Iterable +from typing import ClassVar, Iterable, get_args from markdown_it import MarkdownIt from markdown_it.token import Token -if sys.version_info >= (3, 8): - from typing import get_args -else: - from typing_extensions import get_args # pragma: no cover - from rich.table import Table from . import box diff --git a/rich/progress.py b/rich/progress.py index 1e92eb6b..c7070a61 100644 --- a/rich/progress.py +++ b/rich/progress.py @@ -33,11 +33,7 @@ from typing import ( TypeVar, Union, ) - -if sys.version_info >= (3, 8): - from typing import Literal -else: - from typing_extensions import Literal # pragma: no cover +from typing import Literal if sys.version_info >= (3, 11): from typing import Self diff --git a/tests/test_syntax.py b/tests/test_syntax.py index bbd4c7a5..c42ad731 100644 --- a/tests/test_syntax.py +++ b/tests/test_syntax.py @@ -19,11 +19,7 @@ from rich.syntax import ( ) from .render import render - -if sys.version_info >= (3, 8): - from importlib.metadata import Distribution -else: - from importlib_metadata import Distribution +from importlib.metadata import Distribution PYGMENTS_VERSION = Distribution.from_name("pygments").version OLD_PYGMENTS = PYGMENTS_VERSION == "2.13.0"