diff --git a/pdm.lock b/pdm.lock --- a/pdm.lock +++ b/pdm.lock @@ -2,17 +2,17 @@ # It is not intended for manual editing. [metadata] -groups = ["default"] +groups = ["default", "dev"] strategy = ["cross_platform", "inherit_metadata"] lock_version = "4.4.1" -content_hash = "sha256:4d47b7232c48c8ff6346aa24142d7822a94b74217997758f65fe69259eeffcc2" +content_hash = "sha256:d3ae9f6966068cc41ec2f3189399535df27dceba40835b5e2614a57c8cb48f7e" [[package]] name = "aiohttp" version = "3.9.5" requires_python = ">=3.8" summary = "Async http client/server framework (asyncio)" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "aiosignal>=1.1.2", "attrs>=17.3.0", @@ -59,7 +59,7 @@ name = "aiosignal" version = "1.3.1" requires_python = ">=3.7" summary = "aiosignal: a list of registered asynchronous callbacks" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "frozenlist>=1.1.0", ] @@ -89,7 +89,7 @@ name = "anyio" version = "4.3.0" requires_python = ">=3.8" summary = "High level compatibility layer for multiple asynchronous event loop implementations" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "idna>=2.8", "sniffio>=1.1", @@ -103,7 +103,7 @@ files = [ name = "asttokens" version = "2.4.1" summary = "Annotate AST trees with source code positions" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "six>=1.12.0", ] @@ -113,17 +113,44 @@ files = [ ] [[package]] +name = "asyncinotify" +version = "4.0.9" +requires_python = "<4,>=3.6" +summary = "A simple optionally-async python inotify library, focused on simplicity of use and operation, and leveraging modern Python features" +groups = ["dev"] +files = [ + {file = "asyncinotify-4.0.9-py3-none-any.whl", hash = "sha256:45e3e2c95e331b4fbc0a76db3ad8e25e50d2a436ae2cd0d9917bcfd8b7d5cd37"}, + {file = "asyncinotify-4.0.9.tar.gz", hash = "sha256:d0fc2c9af487b6ac2a3bd7db7b5139de54afcc3660720f80d7324b122a27c1c7"}, +] + +[[package]] name = "attrs" version = "23.2.0" requires_python = ">=3.7" summary = "Classes Without Boilerplate" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "attrs-23.2.0-py3-none-any.whl", hash = "sha256:99b87a485a5820b23b879f04c2305b44b951b502fd64be915879d77a7e8fc6f1"}, {file = "attrs-23.2.0.tar.gz", hash = "sha256:935dc3b529c262f6cf76e50877d35a4bd3c1de194fd41f47a2b7ae8f19971f30"}, ] [[package]] +name = "autobahn" +version = "23.6.2" +requires_python = ">=3.9" +summary = "WebSocket client & server library, WAMP real-time framework" +groups = ["dev"] +dependencies = [ + "cryptography>=3.4.6", + "hyperlink>=21.0.0", + "setuptools", + "txaio>=21.2.1", +] +files = [ + {file = "autobahn-23.6.2.tar.gz", hash = "sha256:ec9421c52a2103364d1ef0468036e6019ee84f71721e86b36fe19ad6966c1181"}, +] + +[[package]] name = "automat" version = "22.10.0" summary = "Self-service finite-state machines for the programmer on the go." @@ -162,7 +189,7 @@ name = "cffi" version = "1.16.0" requires_python = ">=3.8" summary = "Foreign Function Interface for Python calling C code." -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "pycparser", ] @@ -251,8 +278,7 @@ name = "colorama" version = "0.4.6" requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" summary = "Cross-platform colored terminal text." -groups = ["default"] -marker = "sys_platform == \"win32\" or platform_system == \"Windows\"" +groups = ["default", "dev"] files = [ {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, @@ -297,11 +323,42 @@ files = [ ] [[package]] +name = "coverage" +version = "7.5.1" +requires_python = ">=3.8" +summary = "Code coverage measurement for Python" +groups = ["dev"] +files = [ + {file = "coverage-7.5.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:796a79f63eca8814ca3317a1ea443645c9ff0d18b188de470ed7ccd45ae79428"}, + {file = "coverage-7.5.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4fc84a37bfd98db31beae3c2748811a3fa72bf2007ff7902f68746d9757f3746"}, + {file = "coverage-7.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6175d1a0559986c6ee3f7fccfc4a90ecd12ba0a383dcc2da30c2b9918d67d8a3"}, + {file = "coverage-7.5.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1fc81d5878cd6274ce971e0a3a18a8803c3fe25457165314271cf78e3aae3aa2"}, + {file = "coverage-7.5.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:556cf1a7cbc8028cb60e1ff0be806be2eded2daf8129b8811c63e2b9a6c43bca"}, + {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9981706d300c18d8b220995ad22627647be11a4276721c10911e0e9fa44c83e8"}, + {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:d7fed867ee50edf1a0b4a11e8e5d0895150e572af1cd6d315d557758bfa9c057"}, + {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:ef48e2707fb320c8f139424a596f5b69955a85b178f15af261bab871873bb987"}, + {file = "coverage-7.5.1-cp311-cp311-win32.whl", hash = "sha256:9314d5678dcc665330df5b69c1e726a0e49b27df0461c08ca12674bcc19ef136"}, + {file = "coverage-7.5.1-cp311-cp311-win_amd64.whl", hash = "sha256:5fa567e99765fe98f4e7d7394ce623e794d7cabb170f2ca2ac5a4174437e90dd"}, + {file = "coverage-7.5.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b6cf3764c030e5338e7f61f95bd21147963cf6aa16e09d2f74f1fa52013c1206"}, + {file = "coverage-7.5.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2ec92012fefebee89a6b9c79bc39051a6cb3891d562b9270ab10ecfdadbc0c34"}, + {file = "coverage-7.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:16db7f26000a07efcf6aea00316f6ac57e7d9a96501e990a36f40c965ec7a95d"}, + {file = "coverage-7.5.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:beccf7b8a10b09c4ae543582c1319c6df47d78fd732f854ac68d518ee1fb97fa"}, + {file = "coverage-7.5.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8748731ad392d736cc9ccac03c9845b13bb07d020a33423fa5b3a36521ac6e4e"}, + {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7352b9161b33fd0b643ccd1f21f3a3908daaddf414f1c6cb9d3a2fd618bf2572"}, + {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:7a588d39e0925f6a2bff87154752481273cdb1736270642aeb3635cb9b4cad07"}, + {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:68f962d9b72ce69ea8621f57551b2fa9c70509af757ee3b8105d4f51b92b41a7"}, + {file = "coverage-7.5.1-cp312-cp312-win32.whl", hash = "sha256:f152cbf5b88aaeb836127d920dd0f5e7edff5a66f10c079157306c4343d86c19"}, + {file = "coverage-7.5.1-cp312-cp312-win_amd64.whl", hash = "sha256:5a5740d1fb60ddf268a3811bcd353de34eb56dc24e8f52a7f05ee513b2d4f596"}, + {file = "coverage-7.5.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:6537e7c10cc47c595828b8a8be04c72144725c383c4702703ff4e42e44577312"}, + {file = "coverage-7.5.1.tar.gz", hash = "sha256:54de9ef3a9da981f7af93eafde4ede199e0846cd819eb27c88e2b712aae9708c"}, +] + +[[package]] name = "cryptography" version = "42.0.7" requires_python = ">=3.7" summary = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "cffi>=1.12; platform_python_implementation != \"PyPy\"", ] @@ -345,24 +402,49 @@ name = "decorator" version = "4.4.2" requires_python = ">=2.6, !=3.0.*, !=3.1.*" summary = "Decorators for Humans" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "decorator-4.4.2-py2.py3-none-any.whl", hash = "sha256:41fa54c2a0cc4ba648be4fd43cff00aedf5b9465c9bf18d64325bc225f08f760"}, {file = "decorator-4.4.2.tar.gz", hash = "sha256:e3a62f0520172440ca0dcc823749319382e377f37f140a0b99ef45fecb84bfe7"}, ] [[package]] +name = "docopt" +version = "0.6.2" +summary = "Pythonic argument parser, that will make you smile" +groups = ["dev"] +files = [ + {file = "docopt-0.6.2.tar.gz", hash = "sha256:49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491"}, +] + +[[package]] name = "executing" version = "2.0.1" requires_python = ">=3.5" summary = "Get the currently executing AST node of a frame, and other information" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "executing-2.0.1-py2.py3-none-any.whl", hash = "sha256:eac49ca94516ccc753f9fb5ce82603156e590b27525a8bc32cce8ae302eb61bc"}, {file = "executing-2.0.1.tar.gz", hash = "sha256:35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147"}, ] [[package]] +name = "flake8" +version = "7.0.0" +requires_python = ">=3.8.1" +summary = "the modular source code checker: pep8 pyflakes and co" +groups = ["dev"] +dependencies = [ + "mccabe<0.8.0,>=0.7.0", + "pycodestyle<2.12.0,>=2.11.0", + "pyflakes<3.3.0,>=3.2.0", +] +files = [ + {file = "flake8-7.0.0-py2.py3-none-any.whl", hash = "sha256:a6dfbb75e03252917f2473ea9653f7cd799c3064e54d4c8140044c5c065f53c3"}, + {file = "flake8-7.0.0.tar.gz", hash = "sha256:33f96621059e65eec474169085dc92bf26e7b2d47366b70be2f67ab80dc25132"}, +] + +[[package]] name = "flask" version = "2.2.4" requires_python = ">=3.7" @@ -380,11 +462,25 @@ files = [ ] [[package]] +name = "freezegun" +version = "1.5.1" +requires_python = ">=3.7" +summary = "Let your Python tests travel through time" +groups = ["dev"] +dependencies = [ + "python-dateutil>=2.7", +] +files = [ + {file = "freezegun-1.5.1-py3-none-any.whl", hash = "sha256:bf111d7138a8abe55ab48a71755673dbaa4ab87f4cff5634a4442dfec34c15f1"}, + {file = "freezegun-1.5.1.tar.gz", hash = "sha256:b29dedfcda6d5e8e083ce71b2b542753ad48cfec44037b3fc79702e2980a89e9"}, +] + +[[package]] name = "frozenlist" version = "1.4.1" requires_python = ">=3.8" summary = "A list-like structure which implements collections.abc.MutableSequence" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a0cb6f11204443f27a1628b0e460f37fb30f624be6051d490fa7d7e26d4af3d0"}, {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b46c8ae3a8f1f41a0d2ef350c0b6e65822d80772fe46b653ab6b6274f61d4a49"}, @@ -470,11 +566,39 @@ files = [ ] [[package]] +name = "hunter" +version = "3.7.0" +requires_python = ">=3.8" +summary = "Hunter is a flexible code tracing toolkit." +groups = ["dev"] +dependencies = [ + "manhole>=1.5; platform_system != \"Windows\"", +] +files = [ + {file = "hunter-3.7.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:94efe2df941a6186e0aa7fc0b87df6686d9455ac77fc48f67a0d10237397591f"}, + {file = "hunter-3.7.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c3516266c3dceae92636c7f21808f0ca2cd571d368bff79da57c7fb505398f5"}, + {file = "hunter-3.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3b94da39b1881492cfda6f4630c27815c17823078ddefb9dfaf3d79d0c7ee89"}, + {file = "hunter-3.7.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:403a54ba425dda94cb00ebc47c71a2e7c8e8c2e4188dc9b1b6848ce2e13059d0"}, + {file = "hunter-3.7.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1fe660d266547f85644bce8230e714e6984bfaa94e8513d77c8c8b5562aeefae"}, + {file = "hunter-3.7.0-cp311-cp311-win32.whl", hash = "sha256:c810b56999576a8313793d4da64b857165e97a8f6f6a3b161f13c8b285324dd4"}, + {file = "hunter-3.7.0-cp311-cp311-win_amd64.whl", hash = "sha256:6d32a1c3ead5347325f92b90299f4e049b8cdea45a7682312187a34f0ecdbf43"}, + {file = "hunter-3.7.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c5aebe6d72749d509a2001ebf4bc6cba2a6bafb7dd645b8a6a027dcc2c966465"}, + {file = "hunter-3.7.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8948f11a0dfb3d19112cf67539d9ade7517ea22c5b3471b0566c7d62075f090"}, + {file = "hunter-3.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab774df3dcf99c1b933afe91c1d5ed7e9bfa53826bd88c7b37cd0650db9e4ce9"}, + {file = "hunter-3.7.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:161bc2b522449696d06943c0fdc61219c15f8a407d4f06ddfc71689e43a77d80"}, + {file = "hunter-3.7.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fa34b19b00be465054f1001158e6ac89511ce7b3bb40f8e7bc56a9ae18184c5b"}, + {file = "hunter-3.7.0-cp312-cp312-win32.whl", hash = "sha256:b73aa7eeb5990807698692367f874fb746d9ffb45430fb07ef497ac9fb7ad63c"}, + {file = "hunter-3.7.0-cp312-cp312-win_amd64.whl", hash = "sha256:d1e72f28d81c67921548f504afc254f5bd96128ef92ecbf17946a145752a6602"}, + {file = "hunter-3.7.0-pp310.pp38.pp39-none-any.whl", hash = "sha256:b9955013d2e8eb4d0472823153086cba7c36f894ea3acab43aface1d9d27444c"}, + {file = "hunter-3.7.0.tar.gz", hash = "sha256:16f4fb4dbde366bac61ebf235bc4d075bfd8748009c8a4e0327d2fbca6f611d6"}, +] + +[[package]] name = "hyperlink" version = "21.0.0" requires_python = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" summary = "A featureful, immutable, and correct URL for Python." -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "idna>=2.5", ] @@ -488,7 +612,7 @@ name = "idna" version = "3.7" requires_python = ">=3.5" summary = "Internationalized Domain Names in Applications (IDNA)" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "idna-3.7-py3-none-any.whl", hash = "sha256:82fee1fc78add43492d3a1898bfa6d8a904cc97d8427f683ed8e798d07761aa0"}, {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"}, @@ -530,6 +654,20 @@ files = [ ] [[package]] +name = "importlib-metadata" +version = "7.1.0" +requires_python = ">=3.8" +summary = "Read metadata from Python packages" +groups = ["dev"] +dependencies = [ + "zipp>=0.5", +] +files = [ + {file = "importlib_metadata-7.1.0-py3-none-any.whl", hash = "sha256:30962b96c0c223483ed6cc7280e7f0199feb01a0e40cfae4d4450fc6fab1f570"}, + {file = "importlib_metadata-7.1.0.tar.gz", hash = "sha256:b78938b926ee8d5f020fc4772d487045805a55ddbad2ecf21c6d60938dc7fcd2"}, +] + +[[package]] name = "incremental" version = "22.10.0" summary = "\"A small library that versions your Python projects.\"" @@ -540,11 +678,37 @@ files = [ ] [[package]] +name = "iniconfig" +version = "2.0.0" +requires_python = ">=3.7" +summary = "brain-dead simple config-ini parsing" +groups = ["default", "dev"] +files = [ + {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, + {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, +] + +[[package]] +name = "ipdb" +version = "0.13.13" +requires_python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +summary = "IPython-enabled pdb" +groups = ["dev"] +dependencies = [ + "decorator; python_version >= \"3.11\"", + "ipython>=7.31.1; python_version >= \"3.11\"", +] +files = [ + {file = "ipdb-0.13.13-py3-none-any.whl", hash = "sha256:45529994741c4ab6d2388bfa5d7b725c2cf7fe9deffabdb8a6113aa5ed449ed4"}, + {file = "ipdb-0.13.13.tar.gz", hash = "sha256:e3ac6018ef05126d442af680aad863006ec19d02290561ac88b8b1c0b0cfc726"}, +] + +[[package]] name = "ipython" version = "8.24.0" requires_python = ">=3.10" summary = "IPython: Productive Interactive Computing" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "colorama; sys_platform == \"win32\"", "decorator", @@ -566,7 +730,7 @@ files = [ name = "isodate" version = "0.6.1" summary = "An ISO 8601 date/time/duration parser and formatter" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "six", ] @@ -591,7 +755,7 @@ name = "jedi" version = "0.19.1" requires_python = ">=3.6" summary = "An autocompletion tool for Python that can be used for text editors." -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "parso<0.9.0,>=0.8.3", ] @@ -635,6 +799,18 @@ files = [ ] [[package]] +name = "manhole" +version = "1.8.0" +requires_python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +summary = "Manhole is in-process service that will accept unix domain socket connections and present the" +groups = ["dev"] +marker = "platform_system != \"Windows\"" +files = [ + {file = "manhole-1.8.0-py2.py3-none-any.whl", hash = "sha256:a17f62f9d47bd9a53438f655d351d7d2b0d6e9d805665fc775e4cb6cbbb4440b"}, + {file = "manhole-1.8.0.tar.gz", hash = "sha256:bada20a25b547b395d472e2e08928f0437df26bbdbda4797c55863198e29a21f"}, +] + +[[package]] name = "markupsafe" version = "2.1.5" requires_python = ">=3.7" @@ -669,7 +845,7 @@ name = "matplotlib-inline" version = "0.1.7" requires_python = ">=3.8" summary = "Inline Matplotlib backend for Jupyter" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "traitlets", ] @@ -679,6 +855,17 @@ files = [ ] [[package]] +name = "mccabe" +version = "0.7.0" +requires_python = ">=3.6" +summary = "McCabe checker, plugin for flake8" +groups = ["dev"] +files = [ + {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"}, + {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, +] + +[[package]] name = "mido" version = "1.3.2" requires_python = "~=3.7" @@ -693,6 +880,17 @@ files = [ ] [[package]] +name = "mock" +version = "5.1.0" +requires_python = ">=3.6" +summary = "Rolling backport of unittest.mock for all Pythons" +groups = ["dev"] +files = [ + {file = "mock-5.1.0-py3-none-any.whl", hash = "sha256:18c694e5ae8a208cdb3d2c20a993ca1a7b0efa258c247a1e565150f477f83744"}, + {file = "mock-5.1.0.tar.gz", hash = "sha256:5e96aad5ccda4718e0a229ed94b2024df75cc2d55575ba5762d31f5767b8767d"}, +] + +[[package]] name = "moviepy" version = "1.0.3" summary = "Video editing with Python" @@ -716,7 +914,7 @@ name = "multidict" version = "6.0.5" requires_python = ">=3.7" summary = "multidict implementation" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "multidict-6.0.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f285e862d2f153a70586579c15c44656f888806ed0e5b56b64489afe4a2dbfba"}, {file = "multidict-6.0.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:53689bb4e102200a4fafa9de9c7c3c212ab40a7ab2c8e474491914d2305f187e"}, @@ -774,6 +972,17 @@ files = [ ] [[package]] +name = "nose2" +version = "0.14.2" +requires_python = ">=3.8" +summary = "unittest with plugins" +groups = ["dev"] +files = [ + {file = "nose2-0.14.2-py3-none-any.whl", hash = "sha256:50cd5f5d025dcf4b6b7c8ada9849ba9a5ffb544fc46f8740da1059502c4b7f92"}, + {file = "nose2-0.14.2.tar.gz", hash = "sha256:29e581efcef01a1aba391e817b121a681e9841b3299c1110bba8b1cd1d4074bf"}, +] + +[[package]] name = "numpy" version = "1.26.4" requires_python = ">=3.9" @@ -807,7 +1016,7 @@ name = "packaging" version = "23.2" requires_python = ">=3.7" summary = "Core utilities for Python packages" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"}, {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, @@ -818,7 +1027,7 @@ name = "parso" version = "0.8.4" requires_python = ">=3.6" summary = "A Python Parser" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "parso-0.8.4-py2.py3-none-any.whl", hash = "sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18"}, {file = "parso-0.8.4.tar.gz", hash = "sha256:eb3a7b58240fb99099a345571deecc0f9540ea5f4dd2fe14c2a99d6b281ab92d"}, @@ -828,7 +1037,7 @@ files = [ name = "pexpect" version = "4.9.0" summary = "Pexpect allows easy control of interactive console applications." -groups = ["default"] +groups = ["default", "dev"] marker = "sys_platform != \"win32\" and sys_platform != \"emscripten\"" dependencies = [ "ptyprocess>=0.5", @@ -885,6 +1094,28 @@ files = [ ] [[package]] +name = "platformdirs" +version = "4.2.1" +requires_python = ">=3.8" +summary = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." +groups = ["dev"] +files = [ + {file = "platformdirs-4.2.1-py3-none-any.whl", hash = "sha256:17d5a1161b3fd67b390023cb2d3b026bbd40abde6fdb052dfbd3a29c3ba22ee1"}, + {file = "platformdirs-4.2.1.tar.gz", hash = "sha256:031cd18d4ec63ec53e82dceaac0417d218a6863f7745dfcc9efe7793b7039bdf"}, +] + +[[package]] +name = "pluggy" +version = "1.5.0" +requires_python = ">=3.8" +summary = "plugin and hook calling mechanisms for python" +groups = ["default", "dev"] +files = [ + {file = "pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669"}, + {file = "pluggy-1.5.0.tar.gz", hash = "sha256:2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1"}, +] + +[[package]] name = "proglog" version = "0.1.10" summary = "Log and progress bar manager for console, notebooks, web..." @@ -902,7 +1133,7 @@ name = "prometheus-client" version = "0.20.0" requires_python = ">=3.8" summary = "Python client for the Prometheus monitoring system." -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "prometheus_client-0.20.0-py3-none-any.whl", hash = "sha256:cde524a85bce83ca359cc837f28b8c0db5cac7aa653a588fd7e84ba061c329e7"}, {file = "prometheus_client-0.20.0.tar.gz", hash = "sha256:287629d00b147a32dcb2be0b9df905da599b2d82f80377083ec8463309a4bb89"}, @@ -913,7 +1144,7 @@ name = "prompt-toolkit" version = "3.0.43" requires_python = ">=3.7.0" summary = "Library for building powerful interactive command lines in Python" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "wcwidth", ] @@ -926,7 +1157,7 @@ files = [ name = "ptyprocess" version = "0.7.0" summary = "Run a subprocess in a pseudo terminal" -groups = ["default"] +groups = ["default", "dev"] marker = "sys_platform != \"win32\" and sys_platform != \"emscripten\"" files = [ {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, @@ -937,7 +1168,7 @@ files = [ name = "pure-eval" version = "0.2.2" summary = "Safely evaluate AST nodes without side effects" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"}, {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"}, @@ -985,17 +1216,41 @@ files = [ ] [[package]] +name = "pycodestyle" +version = "2.11.1" +requires_python = ">=3.8" +summary = "Python style guide checker" +groups = ["dev"] +files = [ + {file = "pycodestyle-2.11.1-py2.py3-none-any.whl", hash = "sha256:44fe31000b2d866f2e41841b18528a505fbd7fef9017b04eff4e2648a0fadc67"}, + {file = "pycodestyle-2.11.1.tar.gz", hash = "sha256:41ba0e7afc9752dfb53ced5489e89f8186be00e599e712660695b7a75ff2663f"}, +] + +[[package]] name = "pycparser" version = "2.22" requires_python = ">=3.8" summary = "C parser in Python" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc"}, {file = "pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6"}, ] [[package]] +name = "pydeps" +version = "1.12.20" +summary = "Display module dependencies" +groups = ["dev"] +dependencies = [ + "stdlib-list", +] +files = [ + {file = "pydeps-1.12.20-py3-none-any.whl", hash = "sha256:7278a8912bdada26b773d3550f0cc8fd76bed172d23dc1472c457d6292b67fd7"}, + {file = "pydeps-1.12.20.tar.gz", hash = "sha256:4f6a833a7998bfa24e339c55535882905c22960efc14902c361f74b2952aff19"}, +] + +[[package]] name = "pydmxcontrol" version = "2.0.0" requires_python = ">= 3.6" @@ -1014,6 +1269,17 @@ files = [ ] [[package]] +name = "pyflakes" +version = "3.2.0" +requires_python = ">=3.8" +summary = "passive checker of Python programs" +groups = ["dev"] +files = [ + {file = "pyflakes-3.2.0-py2.py3-none-any.whl", hash = "sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a"}, + {file = "pyflakes-3.2.0.tar.gz", hash = "sha256:1c61603ff154621fb2a9172037d84dca3500def8c8b630657d1701f026f8af3f"}, +] + +[[package]] name = "pyftdi" version = "0.55.4" requires_python = ">=3.8" @@ -1033,7 +1299,7 @@ name = "pygments" version = "2.18.0" requires_python = ">=3.8" summary = "Pygments is a syntax highlighting package written in Python." -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a"}, {file = "pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"}, @@ -1083,7 +1349,7 @@ name = "pyparsing" version = "3.1.2" requires_python = ">=3.6.8" summary = "pyparsing module - Classes and methods to define and execute parsing grammars" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "pyparsing-3.1.2-py3-none-any.whl", hash = "sha256:f9db75911801ed778fe61bb643079ff86601aca99fcae6345aa67292038fb742"}, {file = "pyparsing-3.1.2.tar.gz", hash = "sha256:a1bac0ce561155ecc3ed78ca94d3c9378656ad4c94c1270de543f621420f94ad"}, @@ -1111,11 +1377,43 @@ files = [ ] [[package]] +name = "pytest" +version = "8.2.0" +requires_python = ">=3.8" +summary = "pytest: simple powerful testing with Python" +groups = ["default", "dev"] +dependencies = [ + "colorama; sys_platform == \"win32\"", + "iniconfig", + "packaging", + "pluggy<2.0,>=1.5", +] +files = [ + {file = "pytest-8.2.0-py3-none-any.whl", hash = "sha256:1733f0620f6cda4095bbf0d9ff8022486e91892245bb9e7d5542c018f612f233"}, + {file = "pytest-8.2.0.tar.gz", hash = "sha256:d507d4482197eac0ba2bae2e9babf0672eb333017bcedaa5fb1a3d42c1174b3f"}, +] + +[[package]] +name = "pytest-watch" +version = "4.2.0" +summary = "Local continuous test runner with pytest and watchdog." +groups = ["dev"] +dependencies = [ + "colorama>=0.3.3", + "docopt>=0.4.0", + "pytest>=2.6.4", + "watchdog>=0.6.0", +] +files = [ + {file = "pytest-watch-4.2.0.tar.gz", hash = "sha256:06136f03d5b361718b8d0d234042f7b2f203910d8568f63df2f866b547b3d4b9"}, +] + +[[package]] name = "python-dateutil" version = "2.9.0.post0" requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" summary = "Extensions to the standard Python datetime module" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "six>=1.5", ] @@ -1259,11 +1557,28 @@ files = [ ] [[package]] +name = "rdfdb" +version = "0.24.0" +requires_python = ">=3.10" +editable = true +path = "/my/proj/rdfdb" +summary = "" +groups = ["dev"] +dependencies = [ + "aiohttp>=3.8.1", + "asyncinotify>=4.0.2", + "autobahn>=23.1.2", + "prometheus-client>=0.13.1", + "rdflib", + "starlette-exporter>=0.12.0", +] + +[[package]] name = "rdflib" version = "7.0.0" requires_python = ">=3.8.1,<4.0.0" summary = "RDFLib is a Python library for working with RDF, a simple yet powerful language for representing information." -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "isodate<0.7.0,>=0.6.0", "pyparsing<4,>=2.1.0", @@ -1348,7 +1663,7 @@ name = "setuptools" version = "69.5.1" requires_python = ">=3.8" summary = "Easily download, build, install, upgrade, and uninstall Python packages" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "setuptools-69.5.1-py3-none-any.whl", hash = "sha256:c636ac361bc47580504644275c9ad802c50415c7522212252c033bd15f301f32"}, {file = "setuptools-69.5.1.tar.gz", hash = "sha256:6c1fccdac05a97e598fb0ae3bbed5904ccb317337a51139dcd51453611bbb987"}, @@ -1359,7 +1674,7 @@ name = "six" version = "1.16.0" requires_python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" summary = "Python 2 and 3 compatibility utilities" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, @@ -1370,7 +1685,7 @@ name = "sniffio" version = "1.3.1" requires_python = ">=3.7" summary = "Sniff out which async library your code is running under" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"}, {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, @@ -1396,7 +1711,7 @@ files = [ name = "stack-data" version = "0.6.3" summary = "Extract data from python stack frames and tracebacks for informative displays" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "asttokens>=2.1.0", "executing>=1.2.0", @@ -1412,7 +1727,7 @@ name = "starlette" version = "0.37.2" requires_python = ">=3.8" summary = "The little ASGI library that shines." -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "anyio<5,>=3.4.0", ] @@ -1426,7 +1741,7 @@ name = "starlette-exporter" version = "0.21.0" requires_python = ">=3.8" summary = "Prometheus metrics exporter for Starlette applications." -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "prometheus-client>=0.12", "starlette>=0.35", @@ -1446,6 +1761,17 @@ files = [ ] [[package]] +name = "stdlib-list" +version = "0.10.0" +requires_python = ">=3.7" +summary = "A list of Python Standard Libraries (2.7 through 3.12)." +groups = ["dev"] +files = [ + {file = "stdlib_list-0.10.0-py3-none-any.whl", hash = "sha256:b3a911bc441d03e0332dd1a9e7d0870ba3bb0a542a74d7524f54fb431256e214"}, + {file = "stdlib_list-0.10.0.tar.gz", hash = "sha256:6519c50d645513ed287657bfe856d527f277331540691ddeaf77b25459964a14"}, +] + +[[package]] name = "tenacity" version = "8.3.0" requires_python = ">=3.8" @@ -1457,6 +1783,17 @@ files = [ ] [[package]] +name = "tomli" +version = "2.0.1" +requires_python = ">=3.7" +summary = "A lil' TOML parser" +groups = ["dev"] +files = [ + {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, + {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, +] + +[[package]] name = "toposort" version = "1.10" summary = "Implements a topological sort algorithm." @@ -1485,7 +1822,7 @@ name = "traitlets" version = "5.14.3" requires_python = ">=3.8" summary = "Traitlets Python configuration system" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "traitlets-5.14.3-py3-none-any.whl", hash = "sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f"}, {file = "traitlets-5.14.3.tar.gz", hash = "sha256:9ed0579d3502c94b4b3732ac120375cda96f923114522847de4b3bb98b96b6b7"}, @@ -1567,6 +1904,17 @@ files = [ ] [[package]] +name = "txaio" +version = "23.1.1" +requires_python = ">=3.7" +summary = "Compatibility API between asyncio/Twisted/Trollius" +groups = ["dev"] +files = [ + {file = "txaio-23.1.1-py2.py3-none-any.whl", hash = "sha256:aaea42f8aad50e0ecfb976130ada140797e9dcb85fad2cf72b0f37f8cefcb490"}, + {file = "txaio-23.1.1.tar.gz", hash = "sha256:f9a9216e976e5e3246dfd112ad7ad55ca915606b60b84a757ac769bd404ff704"}, +] + +[[package]] name = "txzmq" version = "1.0.0" summary = "Twisted bindings for ZeroMQ" @@ -1585,7 +1933,7 @@ name = "typing-extensions" version = "4.11.0" requires_python = ">=3.8" summary = "Backported and Experimental Type Hints for Python 3.8+" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "typing_extensions-4.11.0-py3-none-any.whl", hash = "sha256:c1f94d72897edaf4ce775bb7558d5b79d8126906a14ea5ed1635921406c0387a"}, {file = "typing_extensions-4.11.0.tar.gz", hash = "sha256:83f085bd5ca59c80295fc2a82ab5dac679cbe02b9f33f7d83af68e241bea51b0"}, @@ -1680,7 +2028,7 @@ name = "watchdog" version = "4.0.0" requires_python = ">=3.8" summary = "Filesystem events monitoring" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "watchdog-4.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8350d4055505412a426b6ad8c521bc7d367d1637a762c70fdd93a3a0d595990b"}, {file = "watchdog-4.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c17d98799f32e3f55f181f19dd2021d762eb38fdd381b4a748b9f5a36738e935"}, @@ -1759,7 +2107,7 @@ files = [ name = "wcwidth" version = "0.2.13" summary = "Measures the displayed width of unicode strings in a terminal" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859"}, {file = "wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5"}, @@ -1839,11 +2187,27 @@ files = [ ] [[package]] +name = "yapf" +version = "0.40.2" +requires_python = ">=3.7" +summary = "A formatter for Python code" +groups = ["dev"] +dependencies = [ + "importlib-metadata>=6.6.0", + "platformdirs>=3.5.1", + "tomli>=2.0.1", +] +files = [ + {file = "yapf-0.40.2-py3-none-any.whl", hash = "sha256:adc8b5dd02c0143108878c499284205adb258aad6db6634e5b869e7ee2bd548b"}, + {file = "yapf-0.40.2.tar.gz", hash = "sha256:4dab8a5ed7134e26d57c1647c7483afb3f136878b579062b786c9ba16b94637b"}, +] + +[[package]] name = "yarl" version = "1.9.4" requires_python = ">=3.7" summary = "Yet another URL library" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "idna>=2.0", "multidict>=4.0", @@ -1884,6 +2248,17 @@ files = [ ] [[package]] +name = "zipp" +version = "3.18.1" +requires_python = ">=3.8" +summary = "Backport of pathlib-compatible object wrapper for zip files" +groups = ["dev"] +files = [ + {file = "zipp-3.18.1-py3-none-any.whl", hash = "sha256:206f5a15f2af3dbaee80769fb7dc6f249695e940acca08dfb2a4769fe61e538b"}, + {file = "zipp-3.18.1.tar.gz", hash = "sha256:2884ed22e7d8961de1c9a05142eb69a247f120291bc0206a00a7642f09b5b715"}, +] + +[[package]] name = "zmq" version = "0.0.0" summary = "You are probably looking for pyzmq."