|  | 
|  | 1 | +[project] | 
|  | 2 | +name = "AutoSplit" | 
|  | 3 | +dynamic = ["version"] | 
|  | 4 | +requires-python = " >=3.11" | 
|  | 5 | +dependencies = [ | 
|  | 6 | +  # Dependencies: | 
|  | 7 | +  "Levenshtein >=0.25", | 
|  | 8 | +  "PyAutoGUI >=0.9.52", | 
|  | 9 | +  "PyWinCtl >=0.0.42", # py.typed | 
|  | 10 | +  "keyboard", | 
|  | 11 | +  "numpy >=2.1", # Python 3.13 support | 
|  | 12 | +  "opencv-python-headless >=4.10", # NumPy 2 support | 
|  | 13 | +  "packaging >=20.0", # py.typed | 
|  | 14 | +  "psutil >=6.0.0", # Python 3.13 support | 
|  | 15 | +  # When needed, dev builds can be found at https://download.qt.io/snapshots/ci/pyside/dev?C=M;O=D | 
|  | 16 | +  "PySide6-Essentials <6.8.1", # Has typing issue with QMessageBox.warning https://bugreports.qt.io/browse/PYSIDE-2939 | 
|  | 17 | +  # "PySide6-Essentials >=6.8.2", # Fixed typing issue with QMessageBox.warning | 
|  | 18 | +  "scipy >=1.14.1", # Python 3.13 support | 
|  | 19 | +  "tomli-w >=1.1.0", # Typing fixes | 
|  | 20 | +  "typing-extensions >=4.4.0", # @override decorator support | 
|  | 21 | + | 
|  | 22 | +  # | 
|  | 23 | +  # Build and compile resources | 
|  | 24 | +  "pyinstaller >=6.10.0", # Python 3.13 support | 
|  | 25 | + | 
|  | 26 | +  # | 
|  | 27 | +  # https://peps.python.org/pep-0508/#environment-markers | 
|  | 28 | +  # | 
|  | 29 | +  # Windows-only dependencies: | 
|  | 30 | +  "pygrabber >=0.2; sys_platform == 'win32'", # Completed types | 
|  | 31 | +  "pywin32 >=307; sys_platform == 'win32'", # Python 3.13 support | 
|  | 32 | +  "typed-D3DShot[numpy] >=1.0.1; sys_platform == 'win32'", | 
|  | 33 | +  "winrt-Windows.Foundation >=2.2.0; sys_platform == 'win32'", # Python 3.13 support | 
|  | 34 | +  "winrt-Windows.Graphics >=2.2.0; sys_platform == 'win32'", # Python 3.13 support | 
|  | 35 | +  "winrt-Windows.Graphics.Capture >=2.3.0; sys_platform == 'win32'", # Python 3.13 support | 
|  | 36 | +  "winrt-Windows.Graphics.Capture.Interop >=2.3.0; sys_platform == 'win32'", # Python 3.13 support | 
|  | 37 | +  "winrt-Windows.Graphics.DirectX >=2.3.0; sys_platform == 'win32'", # Python 3.13 support | 
|  | 38 | +  "winrt-Windows.Graphics.DirectX.Direct3D11 >=2.3.0; sys_platform == 'win32'", # Python 3.13 support | 
|  | 39 | +  "winrt-Windows.Graphics.DirectX.Direct3D11.Interop >=2.3.0; sys_platform == 'win32'", | 
|  | 40 | +  "winrt-Windows.Graphics.Imaging >=2.3.0; sys_platform == 'win32'", # Python 3.13 support | 
|  | 41 | +  # | 
|  | 42 | +  # Linux-only dependencies | 
|  | 43 | +  "PyScreeze >=1.0.0; sys_platform == 'linux'", | 
|  | 44 | +  "pillow >=11.0; sys_platform == 'linux'", # Python 3.13 support # Necessary for PyScreeze/ImageGrab. | 
|  | 45 | +  "python-xlib >=0.33; sys_platform == 'linux'", | 
|  | 46 | +] | 
|  | 47 | +[dependency-groups] | 
|  | 48 | +dev = [ | 
|  | 49 | +  # | 
|  | 50 | +  # Visual Designer | 
|  | 51 | +  "qt6-applications >=6.5.0", | 
|  | 52 | +  # | 
|  | 53 | +  # Linters & Formatters | 
|  | 54 | +  "mypy >=1.14", | 
|  | 55 | +  "pyright[nodejs] >=1.1", | 
|  | 56 | +  "ruff >=0.8.5", | 
|  | 57 | +  # | 
|  | 58 | +  # Types (pins based on implementation version) | 
|  | 59 | +  "scipy-stubs >=1.14.1.1", | 
|  | 60 | +  "types-PyAutoGUI >=0.9.3", | 
|  | 61 | +  "types-PyScreeze >=1.0.0; sys_platform == 'linux'", | 
|  | 62 | +  "types-keyboard >=0.13.2", | 
|  | 63 | +  "types-psutil >=6.0.0", | 
|  | 64 | +  "types-pyinstaller >=6.10.0", | 
|  | 65 | +  "types-python-xlib >=0.33; sys_platform == 'linux'", | 
|  | 66 | +  "types-pywin32 >=307; sys_platform == 'win32'", | 
|  | 67 | +] | 
|  | 68 | +[tool.uv] | 
|  | 69 | +dependency-metadata = [ | 
|  | 70 | +  # PyAutoGUI installs extra libraries we don't want. We only use it for hotkeys | 
|  | 71 | +  # PyScreeze -> pyscreenshot -> mss deps calls SetProcessDpiAwareness on Windows | 
|  | 72 | +  { name = "PyAutoGUI", requires-dist = [] }, | 
|  | 73 | +  { name = "types-PyAutoGUI", requires-dist = [] }, | 
|  | 74 | +] | 
|  | 75 | +[tool.uv.sources] | 
|  | 76 | +keyboard = { git = "https://github.com/boppreh/keyboard.git" } # Fix install on macos and linux-ci https://github.com/boppreh/keyboard/pull/568 | 
|  | 77 | + | 
| 1 | 78 | # https://github.com/microsoft/pyright/blob/main/docs/configuration.md#sample-pyprojecttoml-file | 
| 2 | 79 | [tool.pyright] | 
| 3 | 80 | typeCheckingMode = "strict" | 
|  | 
0 commit comments