diff --git a/pyproject.toml b/pyproject.toml index 7a6de4e7..ebad221c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -87,9 +87,6 @@ uis = [ "pyqt6 >=6.7.0, <7.0.0", "pyqtgraph", - # for consideration, - # - 'visidata' - # TODO: add an `--only daemon` group for running non-ui / pikerd # service tree in distributed mode B) # https://docs.astral.sh/uv/concepts/projects/dependencies/#optional-dependencies @@ -107,11 +104,19 @@ uis = [ dev = [ "pytest >=6.0.0, <7.0.0", "elasticsearch >=8.9.0, <9.0.0", + "cython >=3.0.0, <4.0.0", + "ruff>=0.9.6", + + # `tractor.pause_from_sync()` support + "greenback >=1.1.1, <2.0.0", + + # `piker.tsp/storage` console anal + "visidata>=3.1.1", + + # @goodboy's shell Bp "xonsh >=0.14.2, <0.15.0", "prompt-toolkit ==3.0.40", - "cython >=3.0.0, <4.0.0", - "greenback >=1.1.1, <2.0.0", - "ruff>=0.9.6", + "pyperclip>=1.9.0", # clipboard interop for `xonsh` ] [project.scripts] diff --git a/uv.lock b/uv.lock index a1701521..65f270bf 100644 --- a/uv.lock +++ b/uv.lock @@ -1,4 +1,5 @@ version = 1 +revision = 1 requires-python = "==3.12.*" [[package]] @@ -707,8 +708,10 @@ dev = [ { name = "elasticsearch" }, { name = "greenback" }, { name = "prompt-toolkit" }, + { name = "pyperclip" }, { name = "pytest" }, { name = "ruff" }, + { name = "visidata" }, { name = "xonsh" }, ] @@ -747,6 +750,7 @@ requires-dist = [ { name = "typer", specifier = ">=0.9.0,<1.0.0" }, { name = "websockets", specifier = "==12.0" }, ] +provides-extras = ["uis"] [package.metadata.requires-dev] dev = [ @@ -754,8 +758,10 @@ dev = [ { name = "elasticsearch", specifier = ">=8.9.0,<9.0.0" }, { name = "greenback", specifier = ">=1.1.1,<2.0.0" }, { name = "prompt-toolkit", specifier = "==3.0.40" }, + { name = "pyperclip", specifier = ">=1.9.0" }, { name = "pytest", specifier = ">=6.0.0,<7.0.0" }, { name = "ruff", specifier = ">=0.9.6" }, + { name = "visidata", specifier = ">=3.1.1" }, { name = "xonsh", specifier = ">=0.14.2,<0.15.0" }, ] @@ -888,6 +894,12 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl", hash = "sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c", size = 1225293 }, ] +[[package]] +name = "pyperclip" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/30/23/2f0a3efc4d6a32f3b63cdff36cd398d9701d26cda58e3ab97ac79fb5e60d/pyperclip-1.9.0.tar.gz", hash = "sha256:b7de0142ddc81bfc5c7507eea19da920b92252b548b96186caf94a5e2527d310", size = 20961 } + [[package]] name = "pyqt6" version = "6.8.0" @@ -1377,6 +1389,20 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/8f/eb/f7032be105877bcf924709c97b1bf3b90255b4ec251f9340cef912559f28/uvloop-0.21.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:183aef7c8730e54c9a3ee3227464daed66e37ba13040bb3f350bc2ddc040f22f", size = 4659022 }, ] +[[package]] +name = "visidata" +version = "3.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "importlib-metadata" }, + { name = "python-dateutil" }, + { name = "windows-curses", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6c/41/b026336b7075a2c8461c1ba0dfffd456902f736722f4a016f21fee1e6d7c/visidata-3.1.1.tar.gz", hash = "sha256:8c4484158f0851e4887e595542bd65bdd991de9c20652b442b3fd9742ce8b031", size = 13166704 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/56/60/5026e693dbd4c38d2d13a697aa61846a6791bd6131e8a84c8aa61c0d5180/visidata-3.1.1-py3-none-any.whl", hash = "sha256:903d8bff23df18c794499bee2a653bdeff3a48f899638656287c704ceca63e8b", size = 526914 }, +] + [[package]] name = "wcwidth" version = "0.2.13" @@ -1406,6 +1432,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/79/4d/9cc401e7b07e80532ebc8c8e993f42541534da9e9249c59ee0139dcb0352/websockets-12.0-py3-none-any.whl", hash = "sha256:dc284bbc8d7c78a6c69e0c7325ab46ee5e40bb4d50e494d8131a07ef47500e9e", size = 118370 }, ] +[[package]] +name = "windows-curses" +version = "2.4.1" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f4/99/60f34e51514c82631aa5c6d21eab88ce1701562de9844608411e39462a46/windows_curses-2.4.1-cp312-cp312-win32.whl", hash = "sha256:bdbe7d58747408aef8a9128b2654acf6fbd11c821b91224b9a046faba8c6b6ca", size = 71489 }, + { url = "https://files.pythonhosted.org/packages/62/8f/d908bcab1954375b156a9300fa86ceccb110f39457cd6fd59c72777626ab/windows_curses-2.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:5c9c2635faf171a229caca80e1dd760ab00db078e2a285ba2f667bbfcc31777c", size = 81777 }, +] + [[package]] name = "wrapt" version = "1.17.2"