diff --git a/devbox.json b/devbox.json index cedebe4d..08dade8d 100644 --- a/devbox.json +++ b/devbox.json @@ -12,6 +12,9 @@ "scripts": { "test": [ "poetry run pytest" + ], + "lint": [ + "poetry run pyright" ] } } diff --git a/poetry.lock b/poetry.lock index 0caa587b..65fe1b99 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.4 and should not be changed by hand. [[package]] name = "colorama" @@ -22,6 +22,33 @@ files = [ {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, ] +[[package]] +name = "nodeenv" +version = "1.9.1" +description = "Node.js virtual environment builder" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "nodeenv-1.9.1-py2.py3-none-any.whl", hash = "sha256:ba11c9782d29c27c70ffbdda2d7415098754709be8a7056d79a737cd901155c9"}, + {file = "nodeenv-1.9.1.tar.gz", hash = "sha256:6ec12890a2dab7946721edbfbcd91f3319c6ccc9aec47be7c7e6b7011ee6645f"}, +] + +[[package]] +name = "nodejs-wheel-binaries" +version = "22.11.0" +description = "unoffical Node.js package" +optional = false +python-versions = ">=3.7" +files = [ + {file = "nodejs_wheel_binaries-22.11.0-py2.py3-none-macosx_11_0_arm64.whl", hash = "sha256:00afada277fd6e945a74f881831aaf1bb7f853a15e15e8c998238ab88d327f6a"}, + {file = "nodejs_wheel_binaries-22.11.0-py2.py3-none-macosx_11_0_x86_64.whl", hash = "sha256:f29471263d65a66520a04a0e74ff641a775df1135283f0b4d1826048932b289d"}, + {file = "nodejs_wheel_binaries-22.11.0-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd2ff0e20389f22927e311ccab69c1ecb34c3431fa809d1548e7000dc8248680"}, + {file = "nodejs_wheel_binaries-22.11.0-py2.py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9545cc43f1ba2c9f467f3444e9cd7f8db059933be1a5215135610dee5b38bf3"}, + {file = "nodejs_wheel_binaries-22.11.0-py2.py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:43a277cbabf4b68e0a4798578a4f17e5f518ada1f79a174bfde06eb2bb47e730"}, + {file = "nodejs_wheel_binaries-22.11.0-py2.py3-none-win_amd64.whl", hash = "sha256:8310ab182ee159141e08c85bc07f11e67ac3044922e6e4958f4a8f3ba6860185"}, + {file = "nodejs_wheel_binaries-22.11.0.tar.gz", hash = "sha256:e67f4e4a646bba24baa2150460c9cfbde0f75169ba37e58a2341930a5c1456ee"}, +] + [[package]] name = "packaging" version = "24.2" @@ -48,6 +75,27 @@ files = [ dev = ["pre-commit", "tox"] testing = ["pytest", "pytest-benchmark"] +[[package]] +name = "pyright" +version = "1.1.389" +description = "Command line wrapper for pyright" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pyright-1.1.389-py3-none-any.whl", hash = "sha256:41e9620bba9254406dc1f621a88ceab5a88af4c826feb4f614d95691ed243a60"}, + {file = "pyright-1.1.389.tar.gz", hash = "sha256:716bf8cc174ab8b4dcf6828c3298cac05c5ed775dda9910106a5dcfe4c7fe220"}, +] + +[package.dependencies] +nodeenv = ">=1.6.0" +nodejs-wheel-binaries = {version = "*", optional = true, markers = "extra == \"nodejs\""} +typing-extensions = ">=4.1" + +[package.extras] +all = ["nodejs-wheel-binaries", "twine (>=3.4.1)"] +dev = ["twine (>=3.4.1)"] +nodejs = ["nodejs-wheel-binaries"] + [[package]] name = "pytest" version = "8.3.4" @@ -68,7 +116,18 @@ pluggy = ">=1.5,<2" [package.extras] dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] +[[package]] +name = "typing-extensions" +version = "4.12.2" +description = "Backported and Experimental Type Hints for Python 3.8+" +optional = false +python-versions = ">=3.8" +files = [ + {file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"}, + {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, +] + [metadata] lock-version = "2.0" python-versions = "^3.12" -content-hash = "2d6527c71b22d0e88bbba31dad63ac44bede7d9535395740a0a190eaa31c46f7" +content-hash = "cb6c1aa9471234b39ee31f9efe9a2501cc9aa1a8c8226ac69ad674e004221e2f" diff --git a/pyproject.toml b/pyproject.toml index 51caef84..36608ae6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -17,7 +17,12 @@ wal = 'pywal.__main__:main' [tool.poetry.group.dev.dependencies] pytest = "^8.3.4" +pyright = {extras = ["nodejs"], version = "^1.1.389"} [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" + +[tool.pyright] +include = ["pywal"] +exclude = ["pywal/colorschemes/**"] \ No newline at end of file diff --git a/pywal/backends/__init__.py b/pywal/backends/__init__.py deleted file mode 100644 index 192dc606..00000000 --- a/pywal/backends/__init__.py +++ /dev/null @@ -1,10 +0,0 @@ -r""" -Hh ____ -HP "HHF:. `._ :.,-'"" "-. -F F" :::..'"" "-. `. -F , \ \ "BACKENDS" -F j\ / ; `. -| j `. ` A \ -| | ;_ . 8 \ -J F\_,'| "`-----.\ j `. \ -"""