diff --git a/CHANGES.txt b/CHANGES.txt index 88cabb5..ab9fe4a 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 0.93, 2026/XX/XX -- ALL: Replaced bare `except:` clauses with `except Exception:`, preventing accidental suppression of system-exit signals (KeyboardInterrupt, SystemExit) during error handling. + ALL: Removed dependency on `typing_extensions` 0.8, 2023/10/11 -- ALL: Added saveSetup() and restoreSetup(). Fixed / Improved watchdog (especially in Linux). Fixed / improved setPosition() method LINUX: Added ewmhlib as separate module. Fixed watchdog (freezing randomly invoking screen_resources and get_output_info), fixed workarea crash (some apps/environments do not set it), improved to work almost fine in Manjaro/KDE, avoid crashing in Wayland for "fake" :1 display (though module won't likely work) WIN32: Fixed dev.StateFlags returning weird values for multi-monitor. Fixed GetAwarenessFromDpiAwarenessContext not supported on Windows Server diff --git a/pyproject.toml b/pyproject.toml index 7c7fcd9..82fdfd7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -13,9 +13,7 @@ Documentation = "https://pymonctl.readthedocs.io/" name = "PyMonCtl" version = "0.92" description = "Cross-Platform toolkit to get info on and control monitors connected" -authors = [ - { name = "Kalmat", email = "palookjones@gmail.com" }, -] +authors = [{ name = "Kalmat", email = "palookjones@gmail.com" }] readme = "README.md" license = "BSD-3-Clause" license-files = ["LICENSE.txt"] @@ -57,13 +55,10 @@ dependencies = [ "python-xlib>=0.21; sys_platform == 'linux'", "ewmhlib>=0.2; sys_platform == 'linux'", "pyobjc>=8.1; sys_platform == 'darwin'", - "typing_extensions>=4.4.0", ] [dependency-groups] -docs = [ - "myst-parser", -] +docs = ["myst-parser"] dev = [ { include-group = "docs" }, "ewmhlib", @@ -72,7 +67,6 @@ dev = [ # types-pywin32>=312.0.0.20260609 doesn't support Python 3.9 # and produces a difference in typing, keep stable typing as long as we support Python 3.9 "types-pywin32<312.0.0.20260609", - "typing_extensions>=4.4.0", ] [tool.uv] diff --git a/src/pymonctl/_structs.py b/src/pymonctl/_structs.py index 49cb287..99fd77d 100644 --- a/src/pymonctl/_structs.py +++ b/src/pymonctl/_structs.py @@ -4,8 +4,7 @@ import sys from enum import IntEnum -from typing import NamedTuple, Tuple -from typing_extensions import TypedDict +from typing import NamedTuple, Tuple, TypedDict class Box(NamedTuple): diff --git a/uv.lock b/uv.lock index fea0ea5..7d716dc 100644 --- a/uv.lock +++ b/uv.lock @@ -787,7 +787,6 @@ dependencies = [ { name = "pyobjc", version = "12.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10' and sys_platform == 'darwin'" }, { name = "python-xlib", marker = "sys_platform == 'linux'" }, { name = "pywin32", marker = "sys_platform == 'win32'" }, - { name = "typing-extensions" }, ] [package.dev-dependencies] @@ -801,7 +800,6 @@ dev = [ { name = "types-python-xlib", version = "0.33.0.20250809", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, { name = "types-python-xlib", version = "0.33.0.20260518", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, { name = "types-pywin32" }, - { name = "typing-extensions" }, ] docs = [ { name = "myst-parser", version = "3.0.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, @@ -815,7 +813,6 @@ requires-dist = [ { name = "pyobjc", marker = "sys_platform == 'darwin'", specifier = ">=8.1" }, { name = "python-xlib", marker = "sys_platform == 'linux'", specifier = ">=0.21" }, { name = "pywin32", marker = "sys_platform == 'win32'", specifier = ">=302" }, - { name = "typing-extensions", specifier = ">=4.4.0" }, ] [package.metadata.requires-dev] @@ -825,7 +822,6 @@ dev = [ { name = "myst-parser" }, { name = "types-python-xlib", specifier = ">=0.32" }, { name = "types-pywin32", specifier = "<312.0.0.20260609" }, - { name = "typing-extensions", specifier = ">=4.4.0" }, ] docs = [{ name = "myst-parser" }]