diff --git a/.pylintrc.toml b/.pylintrc.toml new file mode 100644 index 0000000000000000000000000000000000000000..92b9f079fb5afc1610d22c1258eaab29e1988b71 --- /dev/null +++ b/.pylintrc.toml @@ -0,0 +1,235 @@ +[tool.pylint.main] +# Specify a score threshold under which the program will exit with error. +fail-under = 8.0 + +# Files or directories to be skipped. They should be base names, not paths. +ignore = ["CVS", ".git", "__pycache__", ".tools", "node_modules", "migrations"] + +# Add files or directories matching the regular expressions patterns to the +# ignore-list. The regex matches against paths and can be in Posix or Windows +# format. Because '\\' represents the directory delimiter on Windows systems, it +# can't be used as an escape character. +# ignore-paths = + +# Files or directories matching the regular expression patterns are skipped. The +# regex matches against base names, not paths. The default value ignores Emacs +# file locks +ignore-patterns = ["^\\.#"] + +# Use multiple processes to speed up Pylint. Specifying 0 will auto-detect the +# number of processors available to use, and will cap the count on Windows to +# avoid hangs. +jobs = 0 + +# List of plugins (as comma separated values of python module names) to load, +# usually to register additional checkers. +load-plugins = ["pylint_django", "pylint_per_file_ignores"] + +# Pickle collected data for later comparisons. +persistent = true + +# Resolve imports to .pyi stubs if available. May reduce no-member messages and +# increase not-an-iterable messages. +prefer-stubs = true + +# Minimum Python version to use for version dependent checks. Will default to the +# version used to run pylint. +py-version = "3.13" + +[tool.pylint.basic] + +# Good variable names which should always be accepted, separated by a comma. +good-names = ["i", "j", "k", "ex", "Run", "_"] + +[tool.pylint.classes] +# Warn about protected attribute access inside special methods +# check-protected-access-in-special-methods = + +# List of method names used to declare (i.e. assign) instance attributes. +defining-attr-methods = [ + "__init__", + "__new__", + "setUp", + "asyncSetUp", + "__post_init__", +] + + +[tool.pylint.design] +# List of regular expressions of class ancestor names to ignore when counting +# public methods (see R0903) +# exclude-too-few-public-methods = + +# List of qualified class names to ignore when counting class parents (see R0901) +# ignored-parents = + +# Maximum number of arguments for function / method. +max-args = 5 + +# Maximum number of attributes for a class (see R0902). +max-attributes = 7 + +# Maximum number of boolean expressions in an if statement (see R0916). +max-bool-expr = 5 + +# Maximum number of branch for function / method body. +max-branches = 12 + +# Maximum number of locals for function / method body. +max-locals = 15 + +# Maximum number of parents for a class (see R0901). +max-parents = 7 + +# Maximum number of positional arguments for function / method. +max-positional-arguments = 5 + +# Maximum number of public methods for a class (see R0904). +max-public-methods = 20 + +# Maximum number of return / yield for function / method body. +max-returns = 6 + +# Maximum number of statements in function / method body. +max-statements = 50 + +# Minimum number of public methods for a class (see R0903). +# min-public-methods = + + +[tool.pylint.format] +# Maximum number of characters on a single line. +max-line-length = 160 + +# Maximum number of lines in a module. +max-module-lines = 1000 + +[tool.pylint.imports] +# List of modules that can be imported at any level, not just the top level one. +allow-any-import-level = ["core.templatetags.hub_absolute"] + +[tool.pylint.logging] +# The type of string formatting that logging methods do. `old` means using % +# formatting, `new` is for `{}` formatting. +logging-format-style = "new" + +[tool.pylint."messages control"] +# Disable the message, report, category or checker with the given id(s). You can +# either give multiple identifiers separated by comma (,) or put this option +# multiple times (only on the command line, not in the configuration file where +# it should appear only once). You can also use "--disable=all" to disable +# everything first and then re-enable specific checks. For example, if you want +# to run only the similarities checker, you can use "--disable=all +# --enable=similarities". If you want to run only the classes checker, but have +# no Warning level messages displayed, use "--disable=all --enable=classes +# --disable=W". +disable = [ + "raw-checker-failed", + "bad-inline-option", + "locally-disabled", + "file-ignored", + "suppressed-message", + "useless-suppression", + "deprecated-pragma", + "use-implicit-booleaness-not-comparison-to-string", + "use-implicit-booleaness-not-comparison-to-zero", + "use-symbolic-message-instead", + "missing-module-docstring", # we did not write docstrings for all modules - Can be enabled with time + "missing-class-docstring", # we did not write docstrings for all classes - Can be enabled with time + "missing-function-docstring", # we did not write docstrings for all functions - Can be enabled with time + "too-many-ancestors", # we do not want to limit the number of ancestors to have full use of django features + "wrong-import-position", # import position is enforced by isort/ruff + "wrong-import-order", # import order is enforced by isort/ruff + "logging-too-many-args", # The way most of our logging is done, would trigger this. Enable with logging statement updates + # Let's ignore design issues for now + "too-few-public-methods", + "too-many-ancestors", + "too-many-arguments", + "too-many-boolean-expressions", + "too-many-branches", + "too-many-function-args", + "too-many-instance-attributes", + "too-many-locals", + "too-many-nested-blocks", + "too-many-positional-arguments", + "too-many-public-methods", + "too-many-return-statements", + "too-many-statements", + +] + +# TODO: replace with TOML List after https://github.com/christopherpickering/pylint-per-file-ignores/issues/160 is fixec +per-file-ignores = """ + "src/hub/settings/*:unused-wildcard-import,wildcard-import,unused-import", + ".*/tests/.*:invalid-name", +""" + + +[tool.pylint.miscellaneous] +# List of note tags to take in consideration, separated by a comma. +notes = ["FIXME", "XXX", "TODO"] + + +[tool.pylint.refactoring] +# Maximum number of nested blocks for function / method body +max-nested-blocks = 5 + +[tool.pylint.reports] + +# Set the output format. Available formats are: text, parseable, colorized, json2 +# (improved json format), json (old json format) and msvs (visual studio). You +# can also give a reporter class, e.g. mypackage.mymodule.MyReporterClass. +output-format = "colorized" + +# Tells whether to display a full report or only the messages. +reports = true + +# Activate the evaluation score. +score = true + +[tool.pylint.typecheck] +# List of decorators that produce context managers, such as +# contextlib.contextmanager. Add to this list to register other decorators that +# produce valid context managers. +contextmanager-decorators = ["contextlib.contextmanager"] + +# List of members which are set dynamically and missed by pylint inference +# system, and so shouldn't trigger E1101 when accessed. Python regular +# expressions are accepted. +# generated-members = + +# Tells whether missing members accessed in mixin class should be ignored. A +# class is considered mixin if its name matches the mixin-class-rgx option. +# Tells whether to warn about missing members when the owner of the attribute is +# inferred to be None. +ignore-none = true + +# This flag controls whether pylint should warn about no-member and similar +# checks whenever an opaque object is returned when inferring. The inference can +# return multiple potential results while evaluating a Python object, but some +# branches might not be evaluated, which results in partial inference. In that +# case, it might be useful to still emit no-member and other checks for the rest +# of the inferred objects. +ignore-on-opaque-inference = true + +# List of symbolic message names to ignore for Mixin members. +ignored-checks-for-mixins = [ + "no-member", + "not-async-context-manager", + "not-context-manager", + "attribute-defined-outside-init", +] + +# List of class names for which member attributes should not be checked (useful +# for classes with dynamically set attributes). This supports the use of +# qualified names. +ignored-classes = [ + "optparse.Values", + "thread._local", + "_thread._local", + "argparse.Namespace", +] + +[tool.pylint.variables] +# Tells whether unused global variables should be treated as a violation. +allow-global-unused-variables = true diff --git a/pdm.lock b/pdm.lock index a38c9e22fb0b3975943d8ea97ff4b0b25f67a80a..7ba5e7cec01d24964f32ba97a3003b7561e92c09 100644 --- a/pdm.lock +++ b/pdm.lock @@ -2,10 +2,10 @@ # It is not intended for manual editing. [metadata] -groups = ["default", "dev", "lint", "local", "typing"] +groups = ["default", "dev", "lint", "local", "static-analysis", "typing"] strategy = ["inherit_metadata"] lock_version = "4.5.0" -content_hash = "sha256:57415feb7e3d555daccb5c620b70971c8ef104a19a864a64fa8e03dfa4a4f6af" +content_hash = "sha256:a786eeaa349e5d8c751180d8b14ddd165eb5350edfbeb693730002dad20ed2d0" [[metadata.targets]] requires_python = "==3.13.*" @@ -55,6 +55,20 @@ files = [ {file = "asgiref-3.8.1.tar.gz", hash = "sha256:c343bd80a0bec947a9860adb4c432ffa7db769836c64238fc34bdc3fec84d590"}, ] +[[package]] +name = "astroid" +version = "3.3.5" +requires_python = ">=3.9.0" +summary = "An abstract syntax tree for Python with inference support." +groups = ["static-analysis"] +dependencies = [ + "typing-extensions>=4.0.0; python_version < \"3.11\"", +] +files = [ + {file = "astroid-3.3.5-py3-none-any.whl", hash = "sha256:a9d1c946ada25098d790e079ba2a1b112157278f3fb7e718ae6a9252f5835dc8"}, + {file = "astroid-3.3.5.tar.gz", hash = "sha256:5cfc40ae9f68311075d27ef68a4841bdc5cc7f6cf86671b49f00607d30188e2d"}, +] + [[package]] name = "asttokens" version = "2.4.1" @@ -99,49 +113,48 @@ files = [ [[package]] name = "bleach" -version = "6.1.0" -requires_python = ">=3.8" +version = "6.2.0" +requires_python = ">=3.9" summary = "An easy safelist-based HTML-sanitizing tool." groups = ["default"] dependencies = [ - "six>=1.9.0", "webencodings", ] files = [ - {file = "bleach-6.1.0-py3-none-any.whl", hash = "sha256:3225f354cfc436b9789c66c4ee030194bee0568fbf9cbdad3bc8b5c26c5f12b6"}, - {file = "bleach-6.1.0.tar.gz", hash = "sha256:0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe"}, + {file = "bleach-6.2.0-py3-none-any.whl", hash = "sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e"}, + {file = "bleach-6.2.0.tar.gz", hash = "sha256:123e894118b8a599fd80d3ec1a6d4cc7ce4e5882b1317a7e1ba69b56e95f991f"}, ] [[package]] name = "blinker" -version = "1.8.2" -requires_python = ">=3.8" +version = "1.9.0" +requires_python = ">=3.9" summary = "Fast, simple object-to-object and broadcast signaling" groups = ["default"] files = [ - {file = "blinker-1.8.2-py3-none-any.whl", hash = "sha256:1779309f71bf239144b9399d06ae925637cf6634cf6bd131104184531bf67c01"}, - {file = "blinker-1.8.2.tar.gz", hash = "sha256:8f77b09d3bf7c795e969e9486f39c2c5e9c39d4ee07424be2bc594ece9642d83"}, + {file = "blinker-1.9.0-py3-none-any.whl", hash = "sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc"}, + {file = "blinker-1.9.0.tar.gz", hash = "sha256:b4ce2265a7abece45e7cc896e98dbebe6cead56bcf805a3d23136d145f5445bf"}, ] [[package]] name = "boto3" -version = "1.35.44" +version = "1.35.57" requires_python = ">=3.8" summary = "The AWS SDK for Python" groups = ["default"] dependencies = [ - "botocore<1.36.0,>=1.35.44", + "botocore<1.36.0,>=1.35.57", "jmespath<2.0.0,>=0.7.1", "s3transfer<0.11.0,>=0.10.0", ] files = [ - {file = "boto3-1.35.44-py3-none-any.whl", hash = "sha256:18416d07b41e6094101a44f8b881047dcec6b846dad0b9f83b9bbf2f0cd93d07"}, - {file = "boto3-1.35.44.tar.gz", hash = "sha256:7f8e8a252458d584d8cf7877c372c4f74ec103356eedf43d2dd9e479f47f3639"}, + {file = "boto3-1.35.57-py3-none-any.whl", hash = "sha256:9edf49640c79a05b0a72f4c2d1e24dfc164344b680535a645f455ac624dc3680"}, + {file = "boto3-1.35.57.tar.gz", hash = "sha256:db58348849a5af061f0f5ec9c3b699da5221ca83354059fdccb798e3ddb6b62a"}, ] [[package]] name = "botocore" -version = "1.35.44" +version = "1.35.57" requires_python = ">=3.8" summary = "Low-level, data-driven core of boto 3." groups = ["default"] @@ -152,8 +165,8 @@ dependencies = [ "urllib3<1.27,>=1.25.4; python_version < \"3.10\"", ] files = [ - {file = "botocore-1.35.44-py3-none-any.whl", hash = "sha256:55388e80624401d017a9a2b8109afd94814f7e666b53e28fce51375cfa8d9326"}, - {file = "botocore-1.35.44.tar.gz", hash = "sha256:1fcd97b966ad8a88de4106fe1bd3bbd6d8dadabe99bbd4a6aadcf11cb6c66b39"}, + {file = "botocore-1.35.57-py3-none-any.whl", hash = "sha256:92ddd02469213766872cb2399269dd20948f90348b42bf08379881d5e946cc34"}, + {file = "botocore-1.35.57.tar.gz", hash = "sha256:d96306558085baf0bcb3b022d7a8c39c93494f031edb376694d2b2dcd0e81327"}, ] [[package]] @@ -271,7 +284,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 = ["dev", "lint", "local"] +groups = ["dev", "lint", "local", "static-analysis"] files = [ {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, @@ -279,32 +292,32 @@ files = [ [[package]] name = "coverage" -version = "7.6.3" +version = "7.6.4" requires_python = ">=3.9" summary = "Code coverage measurement for Python" groups = ["dev"] files = [ - {file = "coverage-7.6.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9134032f5aa445ae591c2ba6991d10136a1f533b1d2fa8f8c21126468c5025c6"}, - {file = "coverage-7.6.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:99670790f21a96665a35849990b1df447993880bb6463a0a1d757897f30da929"}, - {file = "coverage-7.6.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2dc7d6b380ca76f5e817ac9eef0c3686e7834c8346bef30b041a4ad286449990"}, - {file = "coverage-7.6.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f7b26757b22faf88fcf232f5f0e62f6e0fd9e22a8a5d0d5016888cdfe1f6c1c4"}, - {file = "coverage-7.6.3-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c59d6a4a4633fad297f943c03d0d2569867bd5372eb5684befdff8df8522e39"}, - {file = "coverage-7.6.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f263b18692f8ed52c8de7f40a0751e79015983dbd77b16906e5b310a39d3ca21"}, - {file = "coverage-7.6.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:79644f68a6ff23b251cae1c82b01a0b51bc40c8468ca9585c6c4b1aeee570e0b"}, - {file = "coverage-7.6.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:71967c35828c9ff94e8c7d405469a1fb68257f686bca7c1ed85ed34e7c2529c4"}, - {file = "coverage-7.6.3-cp313-cp313-win32.whl", hash = "sha256:e266af4da2c1a4cbc6135a570c64577fd3e6eb204607eaff99d8e9b710003c6f"}, - {file = "coverage-7.6.3-cp313-cp313-win_amd64.whl", hash = "sha256:ea52bd218d4ba260399a8ae4bb6b577d82adfc4518b93566ce1fddd4a49d1dce"}, - {file = "coverage-7.6.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8d4c6ea0f498c7c79111033a290d060c517853a7bcb2f46516f591dab628ddd3"}, - {file = "coverage-7.6.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:331b200ad03dbaa44151d74daeb7da2cf382db424ab923574f6ecca7d3b30de3"}, - {file = "coverage-7.6.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54356a76b67cf8a3085818026bb556545ebb8353951923b88292556dfa9f812d"}, - {file = "coverage-7.6.3-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ebec65f5068e7df2d49466aab9128510c4867e532e07cb6960075b27658dca38"}, - {file = "coverage-7.6.3-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d33a785ea8354c480515e781554d3be582a86297e41ccbea627a5c632647f2cd"}, - {file = "coverage-7.6.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:f7ddb920106bbbbcaf2a274d56f46956bf56ecbde210d88061824a95bdd94e92"}, - {file = "coverage-7.6.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:70d24936ca6c15a3bbc91ee9c7fc661132c6f4c9d42a23b31b6686c05073bde5"}, - {file = "coverage-7.6.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c30e42ea11badb147f0d2e387115b15e2bd8205a5ad70d6ad79cf37f6ac08c91"}, - {file = "coverage-7.6.3-cp313-cp313t-win32.whl", hash = "sha256:365defc257c687ce3e7d275f39738dcd230777424117a6c76043459db131dd43"}, - {file = "coverage-7.6.3-cp313-cp313t-win_amd64.whl", hash = "sha256:23bb63ae3f4c645d2d82fa22697364b0046fbafb6261b258a58587441c5f7bd0"}, - {file = "coverage-7.6.3.tar.gz", hash = "sha256:bb7d5fe92bd0dc235f63ebe9f8c6e0884f7360f88f3411bfed1350c872ef2054"}, + {file = "coverage-7.6.4-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:023bf8ee3ec6d35af9c1c6ccc1d18fa69afa1cb29eaac57cb064dbb262a517f9"}, + {file = "coverage-7.6.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b0ac3d42cb51c4b12df9c5f0dd2f13a4f24f01943627120ec4d293c9181219ba"}, + {file = "coverage-7.6.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8fe4984b431f8621ca53d9380901f62bfb54ff759a1348cd140490ada7b693c"}, + {file = "coverage-7.6.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5fbd612f8a091954a0c8dd4c0b571b973487277d26476f8480bfa4b2a65b5d06"}, + {file = "coverage-7.6.4-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dacbc52de979f2823a819571f2e3a350a7e36b8cb7484cdb1e289bceaf35305f"}, + {file = "coverage-7.6.4-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:dab4d16dfef34b185032580e2f2f89253d302facba093d5fa9dbe04f569c4f4b"}, + {file = "coverage-7.6.4-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:862264b12ebb65ad8d863d51f17758b1684560b66ab02770d4f0baf2ff75da21"}, + {file = "coverage-7.6.4-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5beb1ee382ad32afe424097de57134175fea3faf847b9af002cc7895be4e2a5a"}, + {file = "coverage-7.6.4-cp313-cp313-win32.whl", hash = "sha256:bf20494da9653f6410213424f5f8ad0ed885e01f7e8e59811f572bdb20b8972e"}, + {file = "coverage-7.6.4-cp313-cp313-win_amd64.whl", hash = "sha256:182e6cd5c040cec0a1c8d415a87b67ed01193ed9ad458ee427741c7d8513d963"}, + {file = "coverage-7.6.4-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:a181e99301a0ae128493a24cfe5cfb5b488c4e0bf2f8702091473d033494d04f"}, + {file = "coverage-7.6.4-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:df57bdbeffe694e7842092c5e2e0bc80fff7f43379d465f932ef36f027179806"}, + {file = "coverage-7.6.4-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0bcd1069e710600e8e4cf27f65c90c7843fa8edfb4520fb0ccb88894cad08b11"}, + {file = "coverage-7.6.4-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:99b41d18e6b2a48ba949418db48159d7a2e81c5cc290fc934b7d2380515bd0e3"}, + {file = "coverage-7.6.4-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6b1e54712ba3474f34b7ef7a41e65bd9037ad47916ccb1cc78769bae324c01a"}, + {file = "coverage-7.6.4-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:53d202fd109416ce011578f321460795abfe10bb901b883cafd9b3ef851bacfc"}, + {file = "coverage-7.6.4-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:c48167910a8f644671de9f2083a23630fbf7a1cb70ce939440cd3328e0919f70"}, + {file = "coverage-7.6.4-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:cc8ff50b50ce532de2fa7a7daae9dd12f0a699bfcd47f20945364e5c31799fef"}, + {file = "coverage-7.6.4-cp313-cp313t-win32.whl", hash = "sha256:b8d3a03d9bfcaf5b0141d07a88456bb6a4c3ce55c080712fec8418ef3610230e"}, + {file = "coverage-7.6.4-cp313-cp313t-win_amd64.whl", hash = "sha256:f3ddf056d3ebcf6ce47bdaf56142af51bb7fad09e4af310241e9db7a3a8022e1"}, + {file = "coverage-7.6.4.tar.gz", hash = "sha256:29fc0f17b1d3fea332f8001d4558f8214af7f1d87a345f3a133c901d60347c73"}, ] [[package]] @@ -354,17 +367,17 @@ files = [ [[package]] name = "debugpy" -version = "1.8.7" +version = "1.8.8" requires_python = ">=3.8" summary = "An implementation of the Debug Adapter Protocol for Python" groups = ["local"] files = [ - {file = "debugpy-1.8.7-cp313-cp313-macosx_14_0_universal2.whl", hash = "sha256:d050a1ec7e925f514f0f6594a1e522580317da31fbda1af71d1530d6ea1f2b40"}, - {file = "debugpy-1.8.7-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2f4349a28e3228a42958f8ddaa6333d6f8282d5edaea456070e48609c5983b7"}, - {file = "debugpy-1.8.7-cp313-cp313-win32.whl", hash = "sha256:11ad72eb9ddb436afb8337891a986302e14944f0f755fd94e90d0d71e9100bba"}, - {file = "debugpy-1.8.7-cp313-cp313-win_amd64.whl", hash = "sha256:2efb84d6789352d7950b03d7f866e6d180284bc02c7e12cb37b489b7083d81aa"}, - {file = "debugpy-1.8.7-py2.py3-none-any.whl", hash = "sha256:57b00de1c8d2c84a61b90880f7e5b6deaf4c312ecbde3a0e8912f2a56c4ac9ae"}, - {file = "debugpy-1.8.7.zip", hash = "sha256:18b8f731ed3e2e1df8e9cdaa23fb1fc9c24e570cd0081625308ec51c82efe42e"}, + {file = "debugpy-1.8.8-cp313-cp313-macosx_14_0_universal2.whl", hash = "sha256:705cd123a773d184860ed8dae99becd879dfec361098edbefb5fc0d3683eb804"}, + {file = "debugpy-1.8.8-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:890fd16803f50aa9cb1a9b9b25b5ec321656dd6b78157c74283de241993d086f"}, + {file = "debugpy-1.8.8-cp313-cp313-win32.whl", hash = "sha256:90244598214bbe704aa47556ec591d2f9869ff9e042e301a2859c57106649add"}, + {file = "debugpy-1.8.8-cp313-cp313-win_amd64.whl", hash = "sha256:4b93e4832fd4a759a0c465c967214ed0c8a6e8914bced63a28ddb0dd8c5f078b"}, + {file = "debugpy-1.8.8-py2.py3-none-any.whl", hash = "sha256:ec684553aba5b4066d4de510859922419febc710df7bba04fe9e7ef3de15d34f"}, + {file = "debugpy-1.8.8.zip", hash = "sha256:e6355385db85cbd666be703a96ab7351bc9e6c61d694893206f8001e22aee091"}, ] [[package]] @@ -392,6 +405,18 @@ files = [ {file = "dep_logic-0.4.9.tar.gz", hash = "sha256:5d455ea2a3da4fea2be6186d886905c57eeeebe3ea7fa967f599cb8e0f01d5c9"}, ] +[[package]] +name = "dill" +version = "0.3.9" +requires_python = ">=3.8" +summary = "serialize all of Python" +groups = ["static-analysis"] +marker = "python_version >= \"3.11\"" +files = [ + {file = "dill-0.3.9-py3-none-any.whl", hash = "sha256:468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a"}, + {file = "dill-0.3.9.tar.gz", hash = "sha256:81aa267dddf68cbfe8029c42ca9ec6a4ab3b22371d1c450abc54422577b4512c"}, +] + [[package]] name = "distlib" version = "0.3.9" @@ -434,17 +459,17 @@ files = [ [[package]] name = "django-cors-headers" -version = "4.5.0" +version = "4.6.0" requires_python = ">=3.9" summary = "django-cors-headers is a Django application for handling the server headers required for Cross-Origin Resource Sharing (CORS)." groups = ["default"] dependencies = [ "asgiref>=3.6", - "django>=3.2", + "django>=4.2", ] files = [ - {file = "django_cors_headers-4.5.0-py3-none-any.whl", hash = "sha256:28c1ded847aa70208798de3e42422a782f427b8b720e8d7319d34b654b5978e6"}, - {file = "django_cors_headers-4.5.0.tar.gz", hash = "sha256:6c01a85cf1ec779a7bde621db853aa3ce5c065a5ba8e27df7a9f9e8dac310f4f"}, + {file = "django_cors_headers-4.6.0-py3-none-any.whl", hash = "sha256:8edbc0497e611c24d5150e0055d3b178c6534b8ed826fb6f53b21c63f5d48ba3"}, + {file = "django_cors_headers-4.6.0.tar.gz", hash = "sha256:14d76b4b4c8d39375baeddd89e4f08899051eeaf177cb02a29bd6eae8cf63aa8"}, ] [[package]] @@ -651,7 +676,7 @@ files = [ [[package]] name = "djlint" -version = "1.35.4" +version = "1.36.1" requires_python = ">=3.9" summary = "HTML Template Linter and Formatter" groups = ["lint"] @@ -659,8 +684,6 @@ dependencies = [ "click>=8.0.1", "colorama>=0.4.4", "cssbeautifier>=1.14.4", - "html-tag-names>=0.1.2", - "html-void-elements>=0.1", "jsbeautifier>=1.14.4", "json5>=0.9.11", "pathspec>=0.12", @@ -668,15 +691,14 @@ dependencies = [ "regex>=2023", "tomli>=2.0.1; python_version < \"3.11\"", "tqdm>=4.62.2", - "typing-extensions>=3.7.4", ] files = [ - {file = "djlint-1.35.4-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7b12ad12048c4a44a61bd39e5f85147e9b8f1ca85b76c5066603747f660a2922"}, - {file = "djlint-1.35.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:24aca63394d2f060d5f6367c34e3dca3ecb1c5c5a908ce24147243bccc8710c9"}, - {file = "djlint-1.35.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:858e6bce13aedaf387a20d625e4795113b78ac1fb572bd4d03abb76f89822722"}, - {file = "djlint-1.35.4-cp313-cp313-win_amd64.whl", hash = "sha256:491a41c23981164bbc7bc754ab0d39c99f5aa1887680a3fd00543f6dd50fc907"}, - {file = "djlint-1.35.4-py3-none-any.whl", hash = "sha256:ed6088d416019e453c1451463ed44ffbf3f84c3bd8b1dfeadc456103fd1e5d14"}, - {file = "djlint-1.35.4.tar.gz", hash = "sha256:d4a1342d83e65171059925b87ab351a1d5201289a764f9e092ef7a99e312554e"}, + {file = "djlint-1.36.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7f31646435385eec1d4b03dad7bebb5e4078d9893c60d490a685535bd6303c83"}, + {file = "djlint-1.36.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4399477ac51f9c8147eedbef70aa8465eccba6759d875d1feec6782744aa168a"}, + {file = "djlint-1.36.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f08c217b17d3ae3c0e3b5fff57fb708029cceda6e232f5a54ff1b3aeb43a7540"}, + {file = "djlint-1.36.1-cp313-cp313-win_amd64.whl", hash = "sha256:1577490802ca4697af3488ed13066c9214ef0f625a96aa20d4f297e37aa19303"}, + {file = "djlint-1.36.1-py3-none-any.whl", hash = "sha256:950782b396dd82b74622c09d7e4c52328e56a3b03c8ac790c319708e5caa0686"}, + {file = "djlint-1.36.1.tar.gz", hash = "sha256:f7260637ed72c270fa6dd4a87628e1a21c49b24a46df52e4e26f44d4934fb97c"}, ] [[package]] @@ -701,13 +723,13 @@ files = [ [[package]] name = "et-xmlfile" -version = "1.1.0" -requires_python = ">=3.6" +version = "2.0.0" +requires_python = ">=3.8" summary = "An implementation of lxml.xmlfile for the standard library" groups = ["default"] files = [ - {file = "et_xmlfile-1.1.0-py3-none-any.whl", hash = "sha256:a2ba85d1d6a74ef63837eed693bcb89c3f752169b0e3e7ae5b16ca5e1b3deada"}, - {file = "et_xmlfile-1.1.0.tar.gz", hash = "sha256:8eb9e2bc2f8c97e37a2dc85a09ecdcdec9d8a396530a6d5a33b30b9a92da0c5c"}, + {file = "et_xmlfile-2.0.0-py3-none-any.whl", hash = "sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa"}, + {file = "et_xmlfile-2.0.0.tar.gz", hash = "sha256:dab3f4764309081ce75662649be815c4c9081e88f0837825f90fd28317d4da54"}, ] [[package]] @@ -804,28 +826,6 @@ files = [ {file = "hishel-0.0.33.tar.gz", hash = "sha256:ab5b2661d5e2252f305fd0fb20e8c76bfab3ea73458f20f2591c53c37b270089"}, ] -[[package]] -name = "html-tag-names" -version = "0.1.2" -requires_python = ">=3.7,<4.0" -summary = "List of known HTML tag names" -groups = ["lint"] -files = [ - {file = "html-tag-names-0.1.2.tar.gz", hash = "sha256:04924aca48770f36b5a41c27e4d917062507be05118acb0ba869c97389084297"}, - {file = "html_tag_names-0.1.2-py3-none-any.whl", hash = "sha256:eeb69ef21078486b615241f0393a72b41352c5219ee648e7c61f5632d26f0420"}, -] - -[[package]] -name = "html-void-elements" -version = "0.1.0" -requires_python = ">=3.7,<4.0" -summary = "List of HTML void tag names." -groups = ["lint"] -files = [ - {file = "html-void-elements-0.1.0.tar.gz", hash = "sha256:931b88f84cd606fee0b582c28fcd00e41d7149421fb673e1e1abd2f0c4f231f0"}, - {file = "html_void_elements-0.1.0-py3-none-any.whl", hash = "sha256:784cf39db03cdeb017320d9301009f8f3480f9d7b254d0974272e80e0cb5e0d2"}, -] - [[package]] name = "httpcore" version = "1.0.6" @@ -893,13 +893,13 @@ files = [ [[package]] name = "identify" -version = "2.6.1" -requires_python = ">=3.8" +version = "2.6.2" +requires_python = ">=3.9" summary = "File identification library for Python" groups = ["dev"] files = [ - {file = "identify-2.6.1-py2.py3-none-any.whl", hash = "sha256:53863bcac7caf8d2ed85bd20312ea5dcfc22226800f6d6881f232d861db5a8f0"}, - {file = "identify-2.6.1.tar.gz", hash = "sha256:91478c5fb7c3aac5ff7bf9b4344f803843dc586832d5f110d672b19aa1984c98"}, + {file = "identify-2.6.2-py2.py3-none-any.whl", hash = "sha256:c097384259f49e372f4ea00a19719d95ae27dd5ff0fd77ad630aa891306b82f3"}, + {file = "identify-2.6.2.tar.gz", hash = "sha256:fab5c716c24d7a789775228823797296a2994b075fb6080ac83a102772a98cbd"}, ] [[package]] @@ -924,6 +924,17 @@ files = [ {file = "installer-0.7.0.tar.gz", hash = "sha256:a26d3e3116289bb08216e0d0f7d925fcef0b0194eedfa0c944bcaaa106c4b631"}, ] +[[package]] +name = "isort" +version = "5.13.2" +requires_python = ">=3.8.0" +summary = "A Python utility / library to sort Python imports." +groups = ["static-analysis"] +files = [ + {file = "isort-5.13.2-py3-none-any.whl", hash = "sha256:8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"}, + {file = "isort-5.13.2.tar.gz", hash = "sha256:48fdfcb9face5d58a4f6dde2e72a1fb8dcaf8ab26f95ab49fab84c2ddefb0109"}, +] + [[package]] name = "jinja2" version = "3.1.4" @@ -1073,6 +1084,17 @@ files = [ {file = "markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0"}, ] +[[package]] +name = "mccabe" +version = "0.7.0" +requires_python = ">=3.6" +summary = "McCabe checker, plugin for flake8" +groups = ["static-analysis"] +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 = "mdurl" version = "0.1.2" @@ -1129,31 +1151,33 @@ files = [ [[package]] name = "numpy" -version = "2.1.2" +version = "2.1.3" requires_python = ">=3.10" summary = "Fundamental package for array computing in Python" groups = ["default"] marker = "python_version >= \"3.12\"" files = [ - {file = "numpy-2.1.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a84498e0d0a1174f2b3ed769b67b656aa5460c92c9554039e11f20a05650f00d"}, - {file = "numpy-2.1.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4d6ec0d4222e8ffdab1744da2560f07856421b367928026fb540e1945f2eeeaf"}, - {file = "numpy-2.1.2-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:259ec80d54999cc34cd1eb8ded513cb053c3bf4829152a2e00de2371bd406f5e"}, - {file = "numpy-2.1.2-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:675c741d4739af2dc20cd6c6a5c4b7355c728167845e3c6b0e824e4e5d36a6c3"}, - {file = "numpy-2.1.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05b2d4e667895cc55e3ff2b56077e4c8a5604361fc21a042845ea3ad67465aa8"}, - {file = "numpy-2.1.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:43cca367bf94a14aca50b89e9bc2061683116cfe864e56740e083392f533ce7a"}, - {file = "numpy-2.1.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:76322dcdb16fccf2ac56f99048af32259dcc488d9b7e25b51e5eca5147a3fb98"}, - {file = "numpy-2.1.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:32e16a03138cabe0cb28e1007ee82264296ac0983714094380b408097a418cfe"}, - {file = "numpy-2.1.2-cp313-cp313-win32.whl", hash = "sha256:242b39d00e4944431a3cd2db2f5377e15b5785920421993770cddb89992c3f3a"}, - {file = "numpy-2.1.2-cp313-cp313-win_amd64.whl", hash = "sha256:f2ded8d9b6f68cc26f8425eda5d3877b47343e68ca23d0d0846f4d312ecaa445"}, - {file = "numpy-2.1.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:2ffef621c14ebb0188a8633348504a35c13680d6da93ab5cb86f4e54b7e922b5"}, - {file = "numpy-2.1.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:ad369ed238b1959dfbade9018a740fb9392c5ac4f9b5173f420bd4f37ba1f7a0"}, - {file = "numpy-2.1.2-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:d82075752f40c0ddf57e6e02673a17f6cb0f8eb3f587f63ca1eaab5594da5b17"}, - {file = "numpy-2.1.2-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:1600068c262af1ca9580a527d43dc9d959b0b1d8e56f8a05d830eea39b7c8af6"}, - {file = "numpy-2.1.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a26ae94658d3ba3781d5e103ac07a876b3e9b29db53f68ed7df432fd033358a8"}, - {file = "numpy-2.1.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13311c2db4c5f7609b462bc0f43d3c465424d25c626d95040f073e30f7570e35"}, - {file = "numpy-2.1.2-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:2abbf905a0b568706391ec6fa15161fad0fb5d8b68d73c461b3c1bab6064dd62"}, - {file = "numpy-2.1.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:ef444c57d664d35cac4e18c298c47d7b504c66b17c2ea91312e979fcfbdfb08a"}, - {file = "numpy-2.1.2.tar.gz", hash = "sha256:13532a088217fa624c99b843eeb54640de23b3414b14aa66d023805eb731066c"}, + {file = "numpy-2.1.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:96fe52fcdb9345b7cd82ecd34547fca4321f7656d500eca497eb7ea5a926692f"}, + {file = "numpy-2.1.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f653490b33e9c3a4c1c01d41bc2aef08f9475af51146e4a7710c450cf9761598"}, + {file = "numpy-2.1.3-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:dc258a761a16daa791081d026f0ed4399b582712e6fc887a95af09df10c5ca57"}, + {file = "numpy-2.1.3-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:016d0f6f5e77b0f0d45d77387ffa4bb89816b57c835580c3ce8e099ef830befe"}, + {file = "numpy-2.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c181ba05ce8299c7aa3125c27b9c2167bca4a4445b7ce73d5febc411ca692e43"}, + {file = "numpy-2.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5641516794ca9e5f8a4d17bb45446998c6554704d888f86df9b200e66bdcce56"}, + {file = "numpy-2.1.3-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ea4dedd6e394a9c180b33c2c872b92f7ce0f8e7ad93e9585312b0c5a04777a4a"}, + {file = "numpy-2.1.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b0df3635b9c8ef48bd3be5f862cf71b0a4716fa0e702155c45067c6b711ddcef"}, + {file = "numpy-2.1.3-cp313-cp313-win32.whl", hash = "sha256:50ca6aba6e163363f132b5c101ba078b8cbd3fa92c7865fd7d4d62d9779ac29f"}, + {file = "numpy-2.1.3-cp313-cp313-win_amd64.whl", hash = "sha256:747641635d3d44bcb380d950679462fae44f54b131be347d5ec2bce47d3df9ed"}, + {file = "numpy-2.1.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:996bb9399059c5b82f76b53ff8bb686069c05acc94656bb259b1d63d04a9506f"}, + {file = "numpy-2.1.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:45966d859916ad02b779706bb43b954281db43e185015df6eb3323120188f9e4"}, + {file = "numpy-2.1.3-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:baed7e8d7481bfe0874b566850cb0b85243e982388b7b23348c6db2ee2b2ae8e"}, + {file = "numpy-2.1.3-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:a9f7f672a3388133335589cfca93ed468509cb7b93ba3105fce780d04a6576a0"}, + {file = "numpy-2.1.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7aac50327da5d208db2eec22eb11e491e3fe13d22653dce51b0f4109101b408"}, + {file = "numpy-2.1.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4394bc0dbd074b7f9b52024832d16e019decebf86caf909d94f6b3f77a8ee3b6"}, + {file = "numpy-2.1.3-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:50d18c4358a0a8a53f12a8ba9d772ab2d460321e6a93d6064fc22443d189853f"}, + {file = "numpy-2.1.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:14e253bd43fc6b37af4921b10f6add6925878a42a0c5fe83daee390bca80bc17"}, + {file = "numpy-2.1.3-cp313-cp313t-win32.whl", hash = "sha256:08788d27a5fd867a663f6fc753fd7c3ad7e92747efc73c53bca2f19f8bc06f48"}, + {file = "numpy-2.1.3-cp313-cp313t-win_amd64.whl", hash = "sha256:2564fbdf2b99b3f815f2107c1bbc93e2de8ee655a69c261363a1172a79a257d4"}, + {file = "numpy-2.1.3.tar.gz", hash = "sha256:aa08e04e08aaf974d4458def539dece0d28146d866a39da5639596f4921fd761"}, ] [[package]] @@ -1206,13 +1230,13 @@ files = [ [[package]] name = "packaging" -version = "24.1" +version = "24.2" requires_python = ">=3.8" summary = "Core utilities for Python packages" groups = ["default", "dev"] files = [ - {file = "packaging-24.1-py3-none-any.whl", hash = "sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124"}, - {file = "packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"}, + {file = "packaging-24.2-py3-none-any.whl", hash = "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"}, + {file = "packaging-24.2.tar.gz", hash = "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f"}, ] [[package]] @@ -1270,16 +1294,18 @@ files = [ [[package]] name = "pdm" -version = "2.19.3" +version = "2.20.1" requires_python = ">=3.8" summary = "A modern Python package and dependency manager supporting the latest PEP standards" groups = ["default"] dependencies = [ "blinker", + "certifi>=2024.8.30", "dep-logic>=0.4.4", "filelock>=3.13", "findpython<1.0.0a0,>=0.6.0", "hishel<0.1.0,>=0.0.32", + "httpcore>=1.0.6", "httpx[socks]<1,>0.20", "importlib-metadata>=3.6; python_version < \"3.10\"", "importlib-resources>=5; python_version < \"3.9\"", @@ -1290,7 +1316,7 @@ dependencies = [ "platformdirs", "pyproject-hooks", "python-dotenv>=0.15", - "resolvelib>=1.0.1", + "resolvelib>=1.1", "rich>=12.3.0", "shellingham>=1.3.2", "tomli>=1.1.0; python_version < \"3.11\"", @@ -1300,8 +1326,8 @@ dependencies = [ "virtualenv>=20", ] files = [ - {file = "pdm-2.19.3-py3-none-any.whl", hash = "sha256:80594e5d6167fb17ea724df09b68cdfe9c601ad7f218f1beea2c032b61bf30e9"}, - {file = "pdm-2.19.3.tar.gz", hash = "sha256:a9cc7f2078cd3b25ac645ffb5eca9d6b3d5dfcd788eaddfb6083432da71c97c2"}, + {file = "pdm-2.20.1-py3-none-any.whl", hash = "sha256:27904e5a703e6ce6598a2a92a6e4c95b2099746b1aba9402154978afce4ed6a7"}, + {file = "pdm-2.20.1.tar.gz", hash = "sha256:5348e9d33de381f998904a63ab18efdd6d1cf6377d45572e8b996d58dfc5b996"}, ] [[package]] @@ -1338,7 +1364,7 @@ name = "platformdirs" version = "4.3.6" requires_python = ">=3.8" summary = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." -groups = ["default", "dev"] +groups = ["default", "dev", "static-analysis"] files = [ {file = "platformdirs-4.3.6-py3-none-any.whl", hash = "sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb"}, {file = "platformdirs-4.3.6.tar.gz", hash = "sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907"}, @@ -1517,6 +1543,73 @@ files = [ {file = "pyjwt-2.9.0.tar.gz", hash = "sha256:7e1e5b56cc735432a7369cbfa0efe50fa113ebecdc04ae6922deba8b84582d0c"}, ] +[[package]] +name = "pylint" +version = "3.3.1" +requires_python = ">=3.9.0" +summary = "python code static checker" +groups = ["static-analysis"] +dependencies = [ + "astroid<=3.4.0-dev0,>=3.3.4", + "colorama>=0.4.5; sys_platform == \"win32\"", + "dill>=0.2; python_version < \"3.11\"", + "dill>=0.3.6; python_version >= \"3.11\"", + "dill>=0.3.7; python_version >= \"3.12\"", + "isort!=5.13.0,<6,>=4.2.5", + "mccabe<0.8,>=0.6", + "platformdirs>=2.2.0", + "tomli>=1.1.0; python_version < \"3.11\"", + "tomlkit>=0.10.1", + "typing-extensions>=3.10.0; python_version < \"3.10\"", +] +files = [ + {file = "pylint-3.3.1-py3-none-any.whl", hash = "sha256:2f846a466dd023513240bc140ad2dd73bfc080a5d85a710afdb728c420a5a2b9"}, + {file = "pylint-3.3.1.tar.gz", hash = "sha256:9f3dcc87b1203e612b78d91a896407787e708b3f189b5fa0b307712d49ff0c6e"}, +] + +[[package]] +name = "pylint-django" +version = "2.6.1" +requires_python = "<4.0,>=3.9" +summary = "A Pylint plugin to help Pylint understand the Django web framework" +groups = ["static-analysis"] +dependencies = [ + "pylint-plugin-utils>=0.8", + "pylint<4,>=3.0", +] +files = [ + {file = "pylint-django-2.6.1.tar.gz", hash = "sha256:19e8c85a8573a04e3de7be2ba91e9a7c818ebf05e1b617be2bbae67a906b725f"}, + {file = "pylint_django-2.6.1-py3-none-any.whl", hash = "sha256:359f68fe8c810ee6bc8e1ab4c83c19b15a43b234a24b08978f47a23462b5ce28"}, +] + +[[package]] +name = "pylint-per-file-ignores" +version = "1.3.2" +requires_python = ">=3.8.1,<4.0.0" +summary = "A pylint plugin to ignore error codes per file." +groups = ["static-analysis"] +dependencies = [ + "tomli<3.0.0,>=2.0.1; python_version < \"3.11\"", +] +files = [ + {file = "pylint_per_file_ignores-1.3.2-py3-none-any.whl", hash = "sha256:4a2a2d7b88484ef1d1b1170029e542954f70efbab13ac3b977606ea5617d04c1"}, + {file = "pylint_per_file_ignores-1.3.2.tar.gz", hash = "sha256:3c641f69c316770749a8a353556504dae7469541cdaef38e195fe2228841451e"}, +] + +[[package]] +name = "pylint-plugin-utils" +version = "0.8.2" +requires_python = ">=3.7,<4.0" +summary = "Utilities and helpers for writing Pylint plugins" +groups = ["static-analysis"] +dependencies = [ + "pylint>=1.7", +] +files = [ + {file = "pylint_plugin_utils-0.8.2-py3-none-any.whl", hash = "sha256:ae11664737aa2effbf26f973a9e0b6779ab7106ec0adc5fe104b0907ca04e507"}, + {file = "pylint_plugin_utils-0.8.2.tar.gz", hash = "sha256:d3cebf68a38ba3fba23a873809155562571386d4c1b03e5b4c4cc26c3eee93e4"}, +] + [[package]] name = "pyproject-api" version = "1.8.0" @@ -1599,7 +1692,7 @@ files = [ [[package]] name = "redis" -version = "5.1.1" +version = "5.2.0" requires_python = ">=3.8" summary = "Python client for Redis database and key-value store" groups = ["default"] @@ -1607,33 +1700,33 @@ dependencies = [ "async-timeout>=4.0.3; python_full_version < \"3.11.3\"", ] files = [ - {file = "redis-5.1.1-py3-none-any.whl", hash = "sha256:f8ea06b7482a668c6475ae202ed8d9bcaa409f6e87fb77ed1043d912afd62e24"}, - {file = "redis-5.1.1.tar.gz", hash = "sha256:f6c997521fedbae53387307c5d0bf784d9acc28d9f1d058abeac566ec4dbed72"}, + {file = "redis-5.2.0-py3-none-any.whl", hash = "sha256:ae174f2bb3b1bf2b09d54bf3e51fbc1469cf6c10aa03e21141f51969801a7897"}, + {file = "redis-5.2.0.tar.gz", hash = "sha256:0b1087665a771b1ff2e003aa5bdd354f15a70c9e25d5a7dbf9c722c16528a7b0"}, ] [[package]] name = "regex" -version = "2024.9.11" +version = "2024.11.6" requires_python = ">=3.8" summary = "Alternative regular expression module, to replace re." groups = ["lint"] files = [ - {file = "regex-2024.9.11-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:c157bb447303070f256e084668b702073db99bbb61d44f85d811025fcf38f784"}, - {file = "regex-2024.9.11-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:4db21ece84dfeefc5d8a3863f101995de646c6cb0536952c321a2650aa202c36"}, - {file = "regex-2024.9.11-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:220e92a30b426daf23bb67a7962900ed4613589bab80382be09b48896d211e92"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eb1ae19e64c14c7ec1995f40bd932448713d3c73509e82d8cd7744dc00e29e86"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f47cd43a5bfa48f86925fe26fbdd0a488ff15b62468abb5d2a1e092a4fb10e85"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9d4a76b96f398697fe01117093613166e6aa8195d63f1b4ec3f21ab637632963"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ea51dcc0835eea2ea31d66456210a4e01a076d820e9039b04ae8d17ac11dee6"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7aaa315101c6567a9a45d2839322c51c8d6e81f67683d529512f5bcfb99c802"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c57d08ad67aba97af57a7263c2d9006d5c404d721c5f7542f077f109ec2a4a29"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:f8404bf61298bb6f8224bb9176c1424548ee1181130818fcd2cbffddc768bed8"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:dd4490a33eb909ef5078ab20f5f000087afa2a4daa27b4c072ccb3cb3050ad84"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:eee9130eaad130649fd73e5cd92f60e55708952260ede70da64de420cdcad554"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6a2644a93da36c784e546de579ec1806bfd2763ef47babc1b03d765fe560c9f8"}, - {file = "regex-2024.9.11-cp313-cp313-win32.whl", hash = "sha256:e997fd30430c57138adc06bba4c7c2968fb13d101e57dd5bb9355bf8ce3fa7e8"}, - {file = "regex-2024.9.11-cp313-cp313-win_amd64.whl", hash = "sha256:042c55879cfeb21a8adacc84ea347721d3d83a159da6acdf1116859e2427c43f"}, - {file = "regex-2024.9.11.tar.gz", hash = "sha256:6c188c307e8433bcb63dc1915022deb553b4203a70722fc542c363bf120a01fd"}, + {file = "regex-2024.11.6-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a6ba92c0bcdf96cbf43a12c717eae4bc98325ca3730f6b130ffa2e3c3c723d84"}, + {file = "regex-2024.11.6-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:525eab0b789891ac3be914d36893bdf972d483fe66551f79d3e27146191a37d4"}, + {file = "regex-2024.11.6-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:086a27a0b4ca227941700e0b31425e7a28ef1ae8e5e05a33826e17e47fbfdba0"}, + {file = "regex-2024.11.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bde01f35767c4a7899b7eb6e823b125a64de314a8ee9791367c9a34d56af18d0"}, + {file = "regex-2024.11.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b583904576650166b3d920d2bcce13971f6f9e9a396c673187f49811b2769dc7"}, + {file = "regex-2024.11.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c4de13f06a0d54fa0d5ab1b7138bfa0d883220965a29616e3ea61b35d5f5fc7"}, + {file = "regex-2024.11.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3cde6e9f2580eb1665965ce9bf17ff4952f34f5b126beb509fee8f4e994f143c"}, + {file = "regex-2024.11.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0d7f453dca13f40a02b79636a339c5b62b670141e63efd511d3f8f73fba162b3"}, + {file = "regex-2024.11.6-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:59dfe1ed21aea057a65c6b586afd2a945de04fc7db3de0a6e3ed5397ad491b07"}, + {file = "regex-2024.11.6-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b97c1e0bd37c5cd7902e65f410779d39eeda155800b65fc4d04cc432efa9bc6e"}, + {file = "regex-2024.11.6-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:f9d1e379028e0fc2ae3654bac3cbbef81bf3fd571272a42d56c24007979bafb6"}, + {file = "regex-2024.11.6-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:13291b39131e2d002a7940fb176e120bec5145f3aeb7621be6534e46251912c4"}, + {file = "regex-2024.11.6-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4f51f88c126370dcec4908576c5a627220da6c09d0bff31cfa89f2523843316d"}, + {file = "regex-2024.11.6-cp313-cp313-win32.whl", hash = "sha256:63b13cfd72e9601125027202cad74995ab26921d8cd935c25f09c630436348ff"}, + {file = "regex-2024.11.6-cp313-cp313-win_amd64.whl", hash = "sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a"}, + {file = "regex-2024.11.6.tar.gz", hash = "sha256:7ab159b063c52a0333c884e4679f8d7a85112ee3078fe3d9004b2dd875585519"}, ] [[package]] @@ -1669,17 +1762,18 @@ files = [ [[package]] name = "resolvelib" -version = "1.0.1" +version = "1.1.0" +requires_python = ">=3.7" summary = "Resolve abstract dependencies into concrete ones" groups = ["default"] files = [ - {file = "resolvelib-1.0.1-py2.py3-none-any.whl", hash = "sha256:d2da45d1a8dfee81bdd591647783e340ef3bcb104b54c383f70d422ef5cc7dbf"}, - {file = "resolvelib-1.0.1.tar.gz", hash = "sha256:04ce76cbd63fded2078ce224785da6ecd42b9564b1390793f64ddecbe997b309"}, + {file = "resolvelib-1.1.0-py2.py3-none-any.whl", hash = "sha256:f80de38ae744bcf4e918e27a681a5c6cb63a08d9a926c0989c0730bcdd089049"}, + {file = "resolvelib-1.1.0.tar.gz", hash = "sha256:b68591ef748f58c1e2a2ac28d0961b3586ae8b25f60b0ba9a5e4f3d87c1d6a79"}, ] [[package]] name = "rich" -version = "13.9.2" +version = "13.9.4" requires_python = ">=3.8.0" summary = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" groups = ["default"] @@ -1689,35 +1783,35 @@ dependencies = [ "typing-extensions<5.0,>=4.0.0; python_version < \"3.11\"", ] files = [ - {file = "rich-13.9.2-py3-none-any.whl", hash = "sha256:8c82a3d3f8dcfe9e734771313e606b39d8247bb6b826e196f4914b333b743cf1"}, - {file = "rich-13.9.2.tar.gz", hash = "sha256:51a2c62057461aaf7152b4d611168f93a9fc73068f8ded2790f29fe2b5366d0c"}, + {file = "rich-13.9.4-py3-none-any.whl", hash = "sha256:6049d5e6ec054bf2779ab3358186963bac2ea89175919d699e378b99738c2a90"}, + {file = "rich-13.9.4.tar.gz", hash = "sha256:439594978a49a09530cff7ebc4b5c7103ef57baf48d5ea3184f21d9a2befa098"}, ] [[package]] name = "ruff" -version = "0.7.0" +version = "0.7.3" requires_python = ">=3.7" summary = "An extremely fast Python linter and code formatter, written in Rust." groups = ["lint"] files = [ - {file = "ruff-0.7.0-py3-none-linux_armv6l.whl", hash = "sha256:0cdf20c2b6ff98e37df47b2b0bd3a34aaa155f59a11182c1303cce79be715628"}, - {file = "ruff-0.7.0-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:496494d350c7fdeb36ca4ef1c9f21d80d182423718782222c29b3e72b3512737"}, - {file = "ruff-0.7.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:214b88498684e20b6b2b8852c01d50f0651f3cc6118dfa113b4def9f14faaf06"}, - {file = "ruff-0.7.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:630fce3fefe9844e91ea5bbf7ceadab4f9981f42b704fae011bb8efcaf5d84be"}, - {file = "ruff-0.7.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:211d877674e9373d4bb0f1c80f97a0201c61bcd1e9d045b6e9726adc42c156aa"}, - {file = "ruff-0.7.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:194d6c46c98c73949a106425ed40a576f52291c12bc21399eb8f13a0f7073495"}, - {file = "ruff-0.7.0-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:82c2579b82b9973a110fab281860403b397c08c403de92de19568f32f7178598"}, - {file = "ruff-0.7.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9af971fe85dcd5eaed8f585ddbc6bdbe8c217fb8fcf510ea6bca5bdfff56040e"}, - {file = "ruff-0.7.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b641c7f16939b7d24b7bfc0be4102c56562a18281f84f635604e8a6989948914"}, - {file = "ruff-0.7.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d71672336e46b34e0c90a790afeac8a31954fd42872c1f6adaea1dff76fd44f9"}, - {file = "ruff-0.7.0-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:ab7d98c7eed355166f367597e513a6c82408df4181a937628dbec79abb2a1fe4"}, - {file = "ruff-0.7.0-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:1eb54986f770f49edb14f71d33312d79e00e629a57387382200b1ef12d6a4ef9"}, - {file = "ruff-0.7.0-py3-none-musllinux_1_2_i686.whl", hash = "sha256:dc452ba6f2bb9cf8726a84aa877061a2462afe9ae0ea1d411c53d226661c601d"}, - {file = "ruff-0.7.0-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:4b406c2dce5be9bad59f2de26139a86017a517e6bcd2688da515481c05a2cb11"}, - {file = "ruff-0.7.0-py3-none-win32.whl", hash = "sha256:f6c968509f767776f524a8430426539587d5ec5c662f6addb6aa25bc2e8195ec"}, - {file = "ruff-0.7.0-py3-none-win_amd64.whl", hash = "sha256:ff4aabfbaaba880e85d394603b9e75d32b0693152e16fa659a3064a85df7fce2"}, - {file = "ruff-0.7.0-py3-none-win_arm64.whl", hash = "sha256:10842f69c245e78d6adec7e1db0a7d9ddc2fff0621d730e61657b64fa36f207e"}, - {file = "ruff-0.7.0.tar.gz", hash = "sha256:47a86360cf62d9cd53ebfb0b5eb0e882193fc191c6d717e8bef4462bc3b9ea2b"}, + {file = "ruff-0.7.3-py3-none-linux_armv6l.whl", hash = "sha256:34f2339dc22687ec7e7002792d1f50712bf84a13d5152e75712ac08be565d344"}, + {file = "ruff-0.7.3-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:fb397332a1879b9764a3455a0bb1087bda876c2db8aca3a3cbb67b3dbce8cda0"}, + {file = "ruff-0.7.3-py3-none-macosx_11_0_arm64.whl", hash = "sha256:37d0b619546103274e7f62643d14e1adcbccb242efda4e4bdb9544d7764782e9"}, + {file = "ruff-0.7.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d59f0c3ee4d1a6787614e7135b72e21024875266101142a09a61439cb6e38a5"}, + {file = "ruff-0.7.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:44eb93c2499a169d49fafd07bc62ac89b1bc800b197e50ff4633aed212569299"}, + {file = "ruff-0.7.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6d0242ce53f3a576c35ee32d907475a8d569944c0407f91d207c8af5be5dae4e"}, + {file = "ruff-0.7.3-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:6b6224af8b5e09772c2ecb8dc9f3f344c1aa48201c7f07e7315367f6dd90ac29"}, + {file = "ruff-0.7.3-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c50f95a82b94421c964fae4c27c0242890a20fe67d203d127e84fbb8013855f5"}, + {file = "ruff-0.7.3-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7f3eff9961b5d2644bcf1616c606e93baa2d6b349e8aa8b035f654df252c8c67"}, + {file = "ruff-0.7.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8963cab06d130c4df2fd52c84e9f10d297826d2e8169ae0c798b6221be1d1d2"}, + {file = "ruff-0.7.3-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:61b46049d6edc0e4317fb14b33bd693245281a3007288b68a3f5b74a22a0746d"}, + {file = "ruff-0.7.3-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:10ebce7696afe4644e8c1a23b3cf8c0f2193a310c18387c06e583ae9ef284de2"}, + {file = "ruff-0.7.3-py3-none-musllinux_1_2_i686.whl", hash = "sha256:3f36d56326b3aef8eeee150b700e519880d1aab92f471eefdef656fd57492aa2"}, + {file = "ruff-0.7.3-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:5d024301109a0007b78d57ab0ba190087b43dce852e552734ebf0b0b85e4fb16"}, + {file = "ruff-0.7.3-py3-none-win32.whl", hash = "sha256:4ba81a5f0c5478aa61674c5a2194de8b02652f17addf8dfc40c8937e6e7d79fc"}, + {file = "ruff-0.7.3-py3-none-win_amd64.whl", hash = "sha256:588a9ff2fecf01025ed065fe28809cd5a53b43505f48b69a1ac7707b1b7e4088"}, + {file = "ruff-0.7.3-py3-none-win_arm64.whl", hash = "sha256:1713e2c5545863cdbfe2cbce21f69ffaf37b813bfd1fb3b90dc9a6f1963f5a8c"}, + {file = "ruff-0.7.3.tar.gz", hash = "sha256:e1d1ba2e40b6e71a61b063354d04be669ab0d39c352461f3d789cac68b54a313"}, ] [[package]] @@ -1834,7 +1928,7 @@ name = "tomlkit" version = "0.13.2" requires_python = ">=3.8" summary = "Style preserving TOML library" -groups = ["default"] +groups = ["default", "static-analysis"] files = [ {file = "tomlkit-0.13.2-py3-none-any.whl", hash = "sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde"}, {file = "tomlkit-0.13.2.tar.gz", hash = "sha256:fff5fe59a87295b278abd31bec92c15d9bc4a06885ab12bcea52c71119392e79"}, @@ -1842,7 +1936,7 @@ files = [ [[package]] name = "tox" -version = "4.23.0" +version = "4.23.2" requires_python = ">=3.8" summary = "tox is a generic virtualenv management and test command line tool" groups = ["dev"] @@ -1860,8 +1954,8 @@ dependencies = [ "virtualenv>=20.26.6", ] files = [ - {file = "tox-4.23.0-py3-none-any.whl", hash = "sha256:46da40afb660e46238c251280eb910bdaf00b390c7557c8e4bb611f422e9db12"}, - {file = "tox-4.23.0.tar.gz", hash = "sha256:a6bd7d54231d755348d3c3a7b450b5bf6563833716d1299a1619587a1b77a3bf"}, + {file = "tox-4.23.2-py3-none-any.whl", hash = "sha256:452bc32bb031f2282881a2118923176445bac783ab97c874b8770ab4c3b76c38"}, + {file = "tox-4.23.2.tar.gz", hash = "sha256:86075e00e555df6e82e74cfc333917f91ecb47ffbc868dcafbd2672e332f4a2c"}, ] [[package]] @@ -1881,7 +1975,7 @@ files = [ [[package]] name = "tqdm" -version = "4.66.5" +version = "4.67.0" requires_python = ">=3.7" summary = "Fast, Extensible Progress Meter" groups = ["lint"] @@ -1889,20 +1983,20 @@ dependencies = [ "colorama; platform_system == \"Windows\"", ] files = [ - {file = "tqdm-4.66.5-py3-none-any.whl", hash = "sha256:90279a3770753eafc9194a0364852159802111925aa30eb3f9d85b0e805ac7cd"}, - {file = "tqdm-4.66.5.tar.gz", hash = "sha256:e1020aef2e5096702d8a025ac7d16b1577279c9d63f8375b63083e9a5f0fcbad"}, + {file = "tqdm-4.67.0-py3-none-any.whl", hash = "sha256:0cd8af9d56911acab92182e88d763100d4788bdf421d251616040cc4d44863be"}, + {file = "tqdm-4.67.0.tar.gz", hash = "sha256:fe5a6f95e6fe0b9755e9469b77b9c3cf850048224ecaa8293d7d2d31f97d869a"}, ] [[package]] name = "truststore" -version = "0.9.2" +version = "0.10.0" requires_python = ">=3.10" summary = "Verify certificates using native system trust stores" groups = ["default"] marker = "python_version >= \"3.10\"" files = [ - {file = "truststore-0.9.2-py3-none-any.whl", hash = "sha256:04559916f8810cc1a5ecc41f215eddc988746067b754fc0995da7a2ceaf54735"}, - {file = "truststore-0.9.2.tar.gz", hash = "sha256:a1dee0d0575ff22d2875476343783a5d64575419974e228f3248772613c3d993"}, + {file = "truststore-0.10.0-py3-none-any.whl", hash = "sha256:b3798548e421ffe2ca2a6217cca49e7a17baf40b72d86a5505dc7d701e77d15b"}, + {file = "truststore-0.10.0.tar.gz", hash = "sha256:5da347c665714fdfbd46f738c823fe9f0d8775e41ac5fb94f325749091187896"}, ] [[package]] @@ -1921,7 +2015,7 @@ name = "typing-extensions" version = "4.12.2" requires_python = ">=3.8" summary = "Backported and Experimental Type Hints for Python 3.8+" -groups = ["default", "lint", "typing"] +groups = ["default", "typing"] 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"}, @@ -1966,7 +2060,7 @@ files = [ [[package]] name = "virtualenv" -version = "20.27.0" +version = "20.27.1" requires_python = ">=3.8" summary = "Virtual Python Environment builder" groups = ["default", "dev"] @@ -1977,8 +2071,8 @@ dependencies = [ "platformdirs<5,>=3.9.1", ] files = [ - {file = "virtualenv-20.27.0-py3-none-any.whl", hash = "sha256:44a72c29cceb0ee08f300b314848c86e57bf8d1f13107a5e671fb9274138d655"}, - {file = "virtualenv-20.27.0.tar.gz", hash = "sha256:2ca56a68ed615b8fe4326d11a0dca5dfbe8fd68510fb6c6349163bed3c15f2b2"}, + {file = "virtualenv-20.27.1-py3-none-any.whl", hash = "sha256:f11f1b8a29525562925f745563bfd48b189450f61fb34c4f9cc79dd5aa32a1f4"}, + {file = "virtualenv-20.27.1.tar.gz", hash = "sha256:142c6be10212543b32c6c45d3d3893dff89112cc588b7d0879ae5a1ec03a47ba"}, ] [[package]] diff --git a/pyproject.toml b/pyproject.toml index b9f1faf1f49b84e2b1f351d83850219ece46930c..3e9435298f8c570d9b3bccdcf0bb5d7cc0cf3550 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -75,6 +75,11 @@ dev = [ typing = [ "django-stubs[mypy-compatible]>=5.1.1", ] +static-analysis = [ + "pylint>=3.3.1", + "pylint-django>=2.6.1", + "pylint-per-file-ignores>=1.3.2", +] [tool.pdm.scripts] # Generic scripts diff --git a/requirements.dev.txt b/requirements.dev.txt index 5d28bc212f1e4aa3f7823b5d2175836cb45541d6..7de998d9873470f4120ab5aa69de5d5b72985f24 100644 --- a/requirements.dev.txt +++ b/requirements.dev.txt @@ -4,13 +4,14 @@ annotated-types==0.7.0 anyio==4.6.2.post1 asgiref==3.8.1 +astroid==3.3.5 asttokens==2.4.1 babel==2.16.0 beautifulsoup4==4.12.3 -bleach==6.1.0 -blinker==1.8.2 -boto3==1.35.44 -botocore==1.35.44 +bleach==6.2.0 +blinker==1.9.0 +boto3==1.35.57 +botocore==1.35.57 cachetools==5.5.0 certifi==2024.8.30 cffi==1.17.1; platform_python_implementation != "PyPy" @@ -19,16 +20,17 @@ chardet==5.2.0 charset-normalizer==3.4.0 click==8.1.7 colorama==0.4.6 -coverage==7.6.3 +coverage==7.6.4 cryptography==43.0.3 cssbeautifier==1.15.1 -debugpy==1.8.7 +debugpy==1.8.8 defusedxml==0.7.1 dep-logic==0.4.9 +dill==0.3.9; python_version >= "3.11" distlib==0.3.9 django==5.1.2 django-bootstrap5==24.3 -django-cors-headers==4.5.0 +django-cors-headers==4.6.0 django-debug-toolbar==4.4.6 django-environ==0.11.2 django-modeltranslation==0.18.13 @@ -42,10 +44,10 @@ django-stubs[mypy-compatible]==5.1.1 django-timezone-field==7.0 django-widget-tweaks==1.5.0 djangorestframework==3.15.2 -djlint==1.35.4 +djlint==1.36.1 docutils==0.21.2 editorconfig==0.12.4 -et-xmlfile==1.1.0 +et-xmlfile==2.0.0 executing==2.1.0 filelock==3.16.1 findpython==0.6.2 @@ -53,14 +55,13 @@ freezegun==1.5.1 gunicorn==23.0.0 h11==0.14.0 hishel==0.0.33 -html-tag-names==0.1.2 -html-void-elements==0.1.0 httpcore==1.0.6 httpx[socks]==0.27.2 icecream==2.1.3 -identify==2.6.1 +identify==2.6.2 idna==3.10 installer==0.7.0 +isort==5.13.2 jinja2==3.1.4 jmespath==1.0.1 jsbeautifier==1.15.1 @@ -70,20 +71,21 @@ lxml==5.3.0 markdown-it-py==3.0.0 markdownify==0.13.1 markupsafe==3.0.2 +mccabe==0.7.0 mdurl==0.1.2 mistletoe==1.4.0 msgpack==1.1.0 nodeenv==1.9.1 -numpy==2.1.2; python_version >= "3.12" +numpy==2.1.3; python_version >= "3.12" oauthlib==3.2.2 odfpy==1.4.1 openpyxl==3.1.5 ordered-set==4.1.0 -packaging==24.1 +packaging==24.2 pandas==2.2.3 pathspec==0.12.1 pbs-installer==2024.10.16 -pdm==2.19.3 +pdm==2.20.1 pillow==11.0.0 platformdirs==4.3.6 pluggy==1.5.0 @@ -96,19 +98,23 @@ pydantic==2.9.2 pydantic-core==2.23.4 pygments==2.18.0 pyjwt==2.9.0 +pylint==3.3.1 +pylint-django==2.6.1 +pylint-per-file-ignores==1.3.2 +pylint-plugin-utils==0.8.2 pyproject-api==1.8.0 pyproject-hooks==1.2.0 python-dateutil==2.9.0.post0 python-dotenv==1.0.1 pytz==2024.2 pyyaml==6.0.2 -redis==5.1.1 -regex==2024.9.11 +redis==5.2.0 +regex==2024.11.6 requests==2.31.0 requests-file==1.5.1 -resolvelib==1.0.1 -rich==13.9.2 -ruff==0.7.0 +resolvelib==1.1.0 +rich==13.9.4 +ruff==0.7.3 s3transfer==0.10.3 segno==1.6.1 sentry-sdk==2.17.0 @@ -119,14 +125,14 @@ socksio==1.0.0 soupsieve==2.6 sqlparse==0.5.1 tomlkit==0.13.2 -tox==4.23.0 +tox==4.23.2 tox-pdm==0.7.2 -tqdm==4.66.5 -truststore==0.9.2; python_version >= "3.10" +tqdm==4.67.0 +truststore==0.10.0; python_version >= "3.10" types-pyyaml==6.0.12.20240917 typing-extensions==4.12.2 tzdata==2024.2 unearth==0.17.2 urllib3==2.2.3 -virtualenv==20.27.0 +virtualenv==20.27.1 webencodings==0.5.1 diff --git a/requirements.txt b/requirements.txt index 693e2dbf82028e3e25aa8399a52d5ec1ee2818c5..39254586a2d7467e77ec6b549296d46b229e1ba7 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,10 +6,10 @@ anyio==4.6.2.post1 asgiref==3.8.1 babel==2.16.0 beautifulsoup4==4.12.3 -bleach==6.1.0 -blinker==1.8.2 -boto3==1.35.44 -botocore==1.35.44 +bleach==6.2.0 +blinker==1.9.0 +boto3==1.35.57 +botocore==1.35.57 certifi==2024.8.30 cffi==1.17.1; platform_python_implementation != "PyPy" charset-normalizer==3.4.0 @@ -19,7 +19,7 @@ dep-logic==0.4.9 distlib==0.3.9 django==5.1.2 django-bootstrap5==24.3 -django-cors-headers==4.5.0 +django-cors-headers==4.6.0 django-debug-toolbar==4.4.6 django-environ==0.11.2 django-modeltranslation==0.18.13 @@ -31,7 +31,7 @@ django-storages==1.14.4 django-timezone-field==7.0 django-widget-tweaks==1.5.0 djangorestframework==3.15.2 -et-xmlfile==1.1.0 +et-xmlfile==2.0.0 filelock==3.16.1 findpython==0.6.2 freezegun==1.5.1 @@ -52,15 +52,15 @@ markupsafe==3.0.2 mdurl==0.1.2 mistletoe==1.4.0 msgpack==1.1.0 -numpy==2.1.2; python_version >= "3.12" +numpy==2.1.3; python_version >= "3.12" oauthlib==3.2.2 odfpy==1.4.1 openpyxl==3.1.5 ordered-set==4.1.0 -packaging==24.1 +packaging==24.2 pandas==2.2.3 pbs-installer==2024.10.16 -pdm==2.19.3 +pdm==2.20.1 pillow==11.0.0 platformdirs==4.3.6 psycopg-binary==3.2.3; implementation_name != "pypy" @@ -75,11 +75,11 @@ pyproject-hooks==1.2.0 python-dateutil==2.9.0.post0 python-dotenv==1.0.1 pytz==2024.2 -redis==5.1.1 +redis==5.2.0 requests==2.31.0 requests-file==1.5.1 -resolvelib==1.0.1 -rich==13.9.2 +resolvelib==1.1.0 +rich==13.9.4 s3transfer==0.10.3 segno==1.6.1 sentry-sdk==2.17.0 @@ -90,10 +90,10 @@ socksio==1.0.0 soupsieve==2.6 sqlparse==0.5.1 tomlkit==0.13.2 -truststore==0.9.2; python_version >= "3.10" +truststore==0.10.0; python_version >= "3.10" typing-extensions==4.12.2 tzdata==2024.2 unearth==0.17.2 urllib3==2.2.3 -virtualenv==20.27.0 +virtualenv==20.27.1 webencodings==0.5.1 diff --git a/src/api/views/maps.py b/src/api/views/maps.py index 2b2824ff33ba3eb666bd8d76d9fb9bd477ae2a0d..41c83afe237adf4eea82e585cd31f9a987d96e5a 100644 --- a/src/api/views/maps.py +++ b/src/api/views/maps.py @@ -133,7 +133,7 @@ class C3NavExportView(ConferenceSlugMixin, APIView): required_service_classes = ['c3nav'] def get(self, request, *args, **kwargs): - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel data = [] diff --git a/src/core/abuse.py b/src/core/abuse.py index 7731c918d2487b6cfa1e337309af6579feea38e4..3b2ed818b4773a0a4f739336d358fb00b41b1fa7 100644 --- a/src/core/abuse.py +++ b/src/core/abuse.py @@ -25,7 +25,7 @@ EMAIL_TEMPLATE_NAME = 'core/report_mail_body.txt' def report_content(request, reporter, category, reported_content, problem_message, proposed_solution, moderation_url): - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel current_site = get_current_site(request) site_name = current_site.name diff --git a/src/core/models/assemblies.py b/src/core/models/assemblies.py index 516ba1f498bb2ba211f975a258efc4cda41a6d94..f61a334aaf0d8dd6f33180bea061340a4c0160f9 100644 --- a/src/core/models/assemblies.py +++ b/src/core/models/assemblies.py @@ -241,7 +241,7 @@ class Assembly(TaggedItemMixin, ActivityLogMixin, models.Model): return isinstance(obj, cls) def get_absolute_url(self): - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel return hub_absolute('plainui:assembly', assembly_slug=self.slug) @@ -425,7 +425,7 @@ class Assembly(TaggedItemMixin, ActivityLogMixin, models.Model): return super().save(*args, update_fields=update_fields, **kwargs) def prepare_mail_to_managers(self, subject, message) -> tuple[str, Optional[str], str]: - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel ctx = { 'conference': self.conference, diff --git a/src/core/models/badges.py b/src/core/models/badges.py index 751137f23538011cc58e7af768a0514ddc0ca9e3..fcee09d49089064bf53110fd6062524835558607 100644 --- a/src/core/models/badges.py +++ b/src/core/models/badges.py @@ -280,7 +280,7 @@ class BadgeToken(models.Model): def save(self, *args, **kwargs) -> None: if not self.has_qr_code: - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel qr_full = segno_make(f"{hub_absolute('plainui:manage_badges')}?redeem_token={self.token}", micro=False) buffer = io.BytesIO() diff --git a/src/core/models/events.py b/src/core/models/events.py index ce69108506775d98eabdc239a6d9c25527f16b1e..46cda3b3e026f07c0a3750887e3ecd51fa2845af 100644 --- a/src/core/models/events.py +++ b/src/core/models/events.py @@ -165,7 +165,7 @@ class Event(TaggedItemMixin, BackendMixin, ActivityLogMixin, models.Model): last_update = models.DateTimeField(auto_now=True) def get_absolute_url(self): - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel return hub_absolute('plainui:event', event_slug=self.slug, i18n=settings.ARCHIVE_MODE) diff --git a/src/core/models/projects.py b/src/core/models/projects.py index e96f9501ae47d66360c29fa866597ba97ff1e3a4..f16c8a05d15a51b85d127cc6a5d0fc33b7b829bf 100644 --- a/src/core/models/projects.py +++ b/src/core/models/projects.py @@ -132,7 +132,7 @@ class Project(TaggedItemMixin, ActivityLogMixin, models.Model): return isinstance(obj, cls) def get_absolute_url(self): - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel if self.assembly: return hub_absolute('plainui:project', slug=self.slug, i18n=settings.ARCHIVE_MODE) diff --git a/src/core/models/users.py b/src/core/models/users.py index a2fdaad8dede4f7b6f50296440c9f72591b26367..169a80bbc29f43ab44ded914d4a1221d666e662b 100644 --- a/src/core/models/users.py +++ b/src/core/models/users.py @@ -251,7 +251,7 @@ class PlatformUser(AbstractUser): return None def get_absolute_url(self): - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel return hub_absolute('plainui:user', user_slug=self.slug, i18n=settings.ARCHIVE_MODE) diff --git a/src/core/utils.py b/src/core/utils.py index bb36fbf413911b02fa93489cc0dc813956c2688c..4df1eea55b26faf5eb433e044d4f64ae1dcc5d54 100644 --- a/src/core/utils.py +++ b/src/core/utils.py @@ -173,7 +173,7 @@ def resolve_internal_url(url: str, fallback_as_is: bool = True) -> Optional[str] query_string = '' if len(rhs_splitted) == 1 else rhs_splitted[1] try: - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel if protocol == 'conference': return hub_absolute('plainui:' + remainder, query_string=query_string) diff --git a/src/manage.py b/src/manage.py index 1c883736174cb0e2c148af77a45a17fdefc3bff7..9fc76e8d7859815e8189e24ef890bbd2a48607ae 100755 --- a/src/manage.py +++ b/src/manage.py @@ -11,7 +11,7 @@ def main(): os.environ.setdefault('SERVE_MODULE_OUTPUT', 'False') os.environ.setdefault('SSO_WARNING', 'False') try: - from django.core.management import execute_from_command_line + from django.core.management import execute_from_command_line # pylint: disable=import-outside-toplevel except ImportError as exc: raise ImportError( "Couldn't import Django. Are you sure it's installed and " diff --git a/src/plainui/forms.py b/src/plainui/forms.py index c81480f7f01f9a7752d00f7485dfe259dd4e92cc..60366bb00d88c318940e08ff110778881ff962c8 100644 --- a/src/plainui/forms.py +++ b/src/plainui/forms.py @@ -277,7 +277,7 @@ class ReportForm(forms.Form): return super().clean() def send_report_mail(self, request): - from core.templatetags.hub_absolute import hub_absolute + from core.templatetags.hub_absolute import hub_absolute # pylint: disable=import-outside-toplevel kind = self.cleaned_data['kind'] moderation_url = None diff --git a/src/plainui/utils.py b/src/plainui/utils.py index db123ce76b6990bb3339d834ae3840c73079fbe1..608b35b83db6e9d4d52b0dc11a3c3dd49d851e01 100644 --- a/src/plainui/utils.py +++ b/src/plainui/utils.py @@ -32,11 +32,11 @@ def fetch_wiki_page( static_page = StaticPage.objects.conference_accessible(conference=conference, language=language or get_language()).get(slug=slug) except StaticPage.DoesNotExist: + url = reverse('plainui:static_page_edit', kwargs={'page_slug': slug}) if not default_title: default_title = 'Page Missing' if not default_body: - url = reverse('plainui:static_page_edit', kwargs={'page_slug': slug}) default_body = '!!! warning\n WIKI PAGE 404 `{slug}` [(edit)]({url})' static_page = StaticPage(conference=conference, title=default_title, body=default_body.format(slug=slug, url=url)) diff --git a/yarn.lock b/yarn.lock index 068de79e35a8fac870b57949b1e93fb833006772..6b1c793038206b018b6c6866e635b16a24c9e70a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,14 +5,976 @@ __metadata: version: 8 cacheKey: 10c0 +"@cspell/cspell-bundled-dicts@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/cspell-bundled-dicts@npm:8.16.0" + dependencies: + "@cspell/dict-ada": "npm:^4.0.5" + "@cspell/dict-al": "npm:^1.0.3" + "@cspell/dict-aws": "npm:^4.0.7" + "@cspell/dict-bash": "npm:^4.1.8" + "@cspell/dict-companies": "npm:^3.1.7" + "@cspell/dict-cpp": "npm:^6.0.1" + "@cspell/dict-cryptocurrencies": "npm:^5.0.3" + "@cspell/dict-csharp": "npm:^4.0.5" + "@cspell/dict-css": "npm:^4.0.16" + "@cspell/dict-dart": "npm:^2.2.4" + "@cspell/dict-django": "npm:^4.1.3" + "@cspell/dict-docker": "npm:^1.1.11" + "@cspell/dict-dotnet": "npm:^5.0.8" + "@cspell/dict-elixir": "npm:^4.0.6" + "@cspell/dict-en-common-misspellings": "npm:^2.0.7" + "@cspell/dict-en-gb": "npm:1.1.33" + "@cspell/dict-en_us": "npm:^4.3.26" + "@cspell/dict-filetypes": "npm:^3.0.8" + "@cspell/dict-flutter": "npm:^1.0.3" + "@cspell/dict-fonts": "npm:^4.0.3" + "@cspell/dict-fsharp": "npm:^1.0.4" + "@cspell/dict-fullstack": "npm:^3.2.3" + "@cspell/dict-gaming-terms": "npm:^1.0.8" + "@cspell/dict-git": "npm:^3.0.3" + "@cspell/dict-golang": "npm:^6.0.16" + "@cspell/dict-google": "npm:^1.0.4" + "@cspell/dict-haskell": "npm:^4.0.4" + "@cspell/dict-html": "npm:^4.0.10" + "@cspell/dict-html-symbol-entities": "npm:^4.0.3" + "@cspell/dict-java": "npm:^5.0.10" + "@cspell/dict-julia": "npm:^1.0.4" + "@cspell/dict-k8s": "npm:^1.0.9" + "@cspell/dict-latex": "npm:^4.0.3" + "@cspell/dict-lorem-ipsum": "npm:^4.0.3" + "@cspell/dict-lua": "npm:^4.0.6" + "@cspell/dict-makefile": "npm:^1.0.3" + "@cspell/dict-markdown": "npm:^2.0.7" + "@cspell/dict-monkeyc": "npm:^1.0.9" + "@cspell/dict-node": "npm:^5.0.5" + "@cspell/dict-npm": "npm:^5.1.11" + "@cspell/dict-php": "npm:^4.0.13" + "@cspell/dict-powershell": "npm:^5.0.13" + "@cspell/dict-public-licenses": "npm:^2.0.11" + "@cspell/dict-python": "npm:^4.2.12" + "@cspell/dict-r": "npm:^2.0.4" + "@cspell/dict-ruby": "npm:^5.0.7" + "@cspell/dict-rust": "npm:^4.0.9" + "@cspell/dict-scala": "npm:^5.0.6" + "@cspell/dict-software-terms": "npm:^4.1.13" + "@cspell/dict-sql": "npm:^2.1.8" + "@cspell/dict-svelte": "npm:^1.0.5" + "@cspell/dict-swift": "npm:^2.0.4" + "@cspell/dict-terraform": "npm:^1.0.6" + "@cspell/dict-typescript": "npm:^3.1.11" + "@cspell/dict-vue": "npm:^3.0.3" + checksum: 10c0/a447b9a4aaae583352e2f57d890abf97bd05dc2c7692fe9320d4979bba8e7551f8dec9fbb66148c2a0c734ef2b9126800a4b491501112d8de233204eb06b1a57 + languageName: node + linkType: hard + +"@cspell/cspell-json-reporter@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/cspell-json-reporter@npm:8.16.0" + dependencies: + "@cspell/cspell-types": "npm:8.16.0" + checksum: 10c0/7ee0957d171a8305dcda231c4dcc517cb390be349edca0997cda2e0605f8ec6398fb5497daa353c3b3557f644964c8ce13bc2bb2658c57e424494f7fabba3f83 + languageName: node + linkType: hard + +"@cspell/cspell-pipe@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/cspell-pipe@npm:8.16.0" + checksum: 10c0/9bb3a2945d0bec8d618642f11ad26ff449b34748a3d32ddf8b288c496324258ec4eca33893f1f08fa714233282703f62a60fdc7283dff50682625d589232064a + languageName: node + linkType: hard + +"@cspell/cspell-resolver@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/cspell-resolver@npm:8.16.0" + dependencies: + global-directory: "npm:^4.0.1" + checksum: 10c0/d585e16a39261ccecde31eb5a73c3b96220350c378aae2e2a8182c79b8b0a7a27d703b3dc64eff49490a16241e0f019f86957fe0bba3ae8f6507e8cb3e1d52a0 + languageName: node + linkType: hard + +"@cspell/cspell-service-bus@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/cspell-service-bus@npm:8.16.0" + checksum: 10c0/b095b12777b1b82a759bfa0f20169adadb522636a2f71fab3e93804de2d2b67bde633c53df1d70cea11517191c0da3b8a073ca22ade0a8725f180e9aa2c2b779 + languageName: node + linkType: hard + +"@cspell/cspell-types@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/cspell-types@npm:8.16.0" + checksum: 10c0/c0817c5923f51e25e993a77adef04dcabd35b25ae1eb628ff217441507b4d7ebc2f342ca95d45e474877afb984b447970fcb9827365af29298d26ef5f082627f + languageName: node + linkType: hard + +"@cspell/dict-ada@npm:^4.0.5": + version: 4.0.5 + resolution: "@cspell/dict-ada@npm:4.0.5" + checksum: 10c0/eac1a1852bc71131ac96ce70a3857cb97b0c2f28036a56badbd51b4d2f5c03eb53e85e2d91ced74a9b77898ff478ef27099cc8f452166304f7a475bf672bc710 + languageName: node + linkType: hard + +"@cspell/dict-al@npm:^1.0.3": + version: 1.0.3 + resolution: "@cspell/dict-al@npm:1.0.3" + checksum: 10c0/77a54c7b7945669f938e52f51361353d934829161f96ea32582de50055ce35f69d3aa4f7bef8aeaac0a92da605a6546fecb5143138e757d631eda6c1c353d86c + languageName: node + linkType: hard + +"@cspell/dict-aws@npm:^4.0.7": + version: 4.0.7 + resolution: "@cspell/dict-aws@npm:4.0.7" + checksum: 10c0/6d736b25c99a6ba270c857bbf478af20a744632b7559223a6b49d5f10dfdaddd08a05cf5e5e65fc8c42fbe5e1d1d302a0068e778479352a4dff368b54986b023 + languageName: node + linkType: hard + +"@cspell/dict-bash@npm:^4.1.8": + version: 4.1.8 + resolution: "@cspell/dict-bash@npm:4.1.8" + checksum: 10c0/5b111fbc365123dd003d9781b1de5e06cf33edbec6c203361cb749f3206bbca9207367191f0d405c1feb00225315b804510698d39c2e02cf7b8f049b4a9e3815 + languageName: node + linkType: hard + +"@cspell/dict-companies@npm:^3.1.7": + version: 3.1.7 + resolution: "@cspell/dict-companies@npm:3.1.7" + checksum: 10c0/edb92c7e25ea46f24f0d8b657304878d16bd808cd21a90a3338ade7e78705d7aa677d49c7650d54e88d4ce8d726b4f003324ea8827397a480173b9817f69d3cf + languageName: node + linkType: hard + +"@cspell/dict-cpp@npm:^6.0.1": + version: 6.0.2 + resolution: "@cspell/dict-cpp@npm:6.0.2" + checksum: 10c0/548d4d31bb4876993159f02e70c9559a34a9e6d7220d788876cd31256883ecf3798d983108526b7e801399216e28c82f37564512e6cbedaa6478b3e8097bee06 + languageName: node + linkType: hard + +"@cspell/dict-cryptocurrencies@npm:^5.0.3": + version: 5.0.3 + resolution: "@cspell/dict-cryptocurrencies@npm:5.0.3" + checksum: 10c0/e150a791f477b0c8a9ed6bb806f4dec90e6ee3d026307fdd4535ab01294fedf1a44ed29f52cb7662e79cb25847b16753d52d573bdf7c97c3b8393de18a82a615 + languageName: node + linkType: hard + +"@cspell/dict-csharp@npm:^4.0.5": + version: 4.0.5 + resolution: "@cspell/dict-csharp@npm:4.0.5" + checksum: 10c0/444b11f206cb3beea6fadd74f54b2ade7c51320373cf6d45a502bb4c2213f62f9bd766938f7d317afc18299cfc2f592777b30ef8166c49202ef97ad0e1c64dba + languageName: node + linkType: hard + +"@cspell/dict-css@npm:^4.0.16": + version: 4.0.16 + resolution: "@cspell/dict-css@npm:4.0.16" + checksum: 10c0/f75b58153f780f2e2ab16eb0a032823d30f323b8651c5ee532212de27d89fc28c00b629aa13b9dba5c780a4a533b9f783e6e3cc8acfb0c2030981920986622d7 + languageName: node + linkType: hard + +"@cspell/dict-dart@npm:^2.2.4": + version: 2.2.4 + resolution: "@cspell/dict-dart@npm:2.2.4" + checksum: 10c0/b7b6b00f330c24aa28a28596da19a3013a8170ade143124b3b92950d1890267d31d2b8375ddb84801e399b9530b79627f57594c64b7253601c8e97501af900a4 + languageName: node + linkType: hard + +"@cspell/dict-data-science@npm:^2.0.5": + version: 2.0.5 + resolution: "@cspell/dict-data-science@npm:2.0.5" + checksum: 10c0/06241df1c687b61fa3843825baf45509027100ed870f15f42f2880525a67f2c70617323ff2710a28fa40a4189165e610ee5831a3f618729cdf95bc543399b984 + languageName: node + linkType: hard + +"@cspell/dict-de-de@npm:^4.0.3": + version: 4.0.3 + resolution: "@cspell/dict-de-de@npm:4.0.3" + checksum: 10c0/f8129cca02c3df75257bb4f2d8e350b4aa095fb825cdda9e66115b5b359fd231ee1b94f8b6cdfcb539346d4984ec79a1c9f7866b5c5133c224eec1a199cb5a64 + languageName: node + linkType: hard + +"@cspell/dict-django@npm:^4.1.3": + version: 4.1.3 + resolution: "@cspell/dict-django@npm:4.1.3" + checksum: 10c0/b97c376b6f4cb013c1aa356a97930969fc371005214c5a492bf82c298e28a665ae452031b673cc7c79132562c10cd191cb611a06f8f78eee744165cd5c091835 + languageName: node + linkType: hard + +"@cspell/dict-docker@npm:^1.1.11": + version: 1.1.11 + resolution: "@cspell/dict-docker@npm:1.1.11" + checksum: 10c0/d9f73b8924c116879417cb0820733aa83d16d553e7f3ef5dcbc56ed54b212c20b62ab1b41d4119c2337f06b1458cf2655169d7fdda9b68f8d83bee7a2db17fc0 + languageName: node + linkType: hard + +"@cspell/dict-dotnet@npm:^5.0.8": + version: 5.0.8 + resolution: "@cspell/dict-dotnet@npm:5.0.8" + checksum: 10c0/436b8df241b2083430681820d00a1d5ee66ef707835b23f1ff7121636e66985a19b2352fb98ec4e64236ba88685ed41d5b9ec5ce891758eb79b6d1686035add4 + languageName: node + linkType: hard + +"@cspell/dict-elixir@npm:^4.0.6": + version: 4.0.6 + resolution: "@cspell/dict-elixir@npm:4.0.6" + checksum: 10c0/d321a0b224829bad3f463e8f58104519a885b71023bc00bc2f9168e72a0b7a8c33369e3bf3afeead9137d73cff9275277c4c79419a9be0bf29227e5543514038 + languageName: node + linkType: hard + +"@cspell/dict-en-common-misspellings@npm:^2.0.7": + version: 2.0.7 + resolution: "@cspell/dict-en-common-misspellings@npm:2.0.7" + checksum: 10c0/d865d80ea170cecb4699c9973f6735d3c9f80d1b1337da6eb7d211d09bbd0774d4deec3b5802e7ef0101a0fcc5fb2121c4264cb2f2f0f7ebdc30e9bc527d7bbc + languageName: node + linkType: hard + +"@cspell/dict-en-gb@npm:1.1.33": + version: 1.1.33 + resolution: "@cspell/dict-en-gb@npm:1.1.33" + checksum: 10c0/09563d1016f652dc8164a5f692be49beb78a847a54d5e470d406ae4db125bf8021db75d3db63f7a0c1d1b7a5dfbec4b709fb2ff3520447dcad690adb98d74130 + languageName: node + linkType: hard + +"@cspell/dict-en_us@npm:^4.3.26": + version: 4.3.27 + resolution: "@cspell/dict-en_us@npm:4.3.27" + checksum: 10c0/9c95488678a6ee661013c175437c6cdb5d6f523af275188fcdd2cb56411d239dc0ff2e5ca1bb3680b95212e041bc77586eea970e6c60225af504b52535649e73 + languageName: node + linkType: hard + +"@cspell/dict-filetypes@npm:^3.0.8": + version: 3.0.8 + resolution: "@cspell/dict-filetypes@npm:3.0.8" + checksum: 10c0/aaa419b473a090f529145dd19124cff80921d0a553df530ceded2b8d3d78274957cb7e55bb0a8f552f15066a29281d857369a145da6b4d2738142e0b24dfe314 + languageName: node + linkType: hard + +"@cspell/dict-flutter@npm:^1.0.3": + version: 1.0.3 + resolution: "@cspell/dict-flutter@npm:1.0.3" + checksum: 10c0/9e77406e03f7b3eea37efc54f16b33b8c4823ec1b6fb9462ae34c4665abbf5b7a1c351c475e927b0ca70963882eb97f9a206572be1de2ca80208f3fddca32197 + languageName: node + linkType: hard + +"@cspell/dict-fonts@npm:^4.0.3": + version: 4.0.3 + resolution: "@cspell/dict-fonts@npm:4.0.3" + checksum: 10c0/6415cb21a5d940d4aedf7b557f866394a280a9bbfabcd466151be74f57758e0a95d3a1f7929b1a148d11eccbd34549809ec83e9f599966ff54c97b46ea309ebe + languageName: node + linkType: hard + +"@cspell/dict-fsharp@npm:^1.0.4": + version: 1.0.4 + resolution: "@cspell/dict-fsharp@npm:1.0.4" + checksum: 10c0/6af0bff9b4ffface5c6fcf5564fa919a09e8b4152b1b00c11d51522455f4699aa66f95e2a096e4614cc8e2e99e161434d6c5430b9dbd9d9bd50aba6a9a4a6239 + languageName: node + linkType: hard + +"@cspell/dict-fullstack@npm:^3.2.3": + version: 3.2.3 + resolution: "@cspell/dict-fullstack@npm:3.2.3" + checksum: 10c0/e3c461cdb7ab20143ce33bdfdb39da9bb737123b55656a172434224e73cb14638718433113222ea72521a3af7ae0454a4d70d7c3bbf4432e4ecf3e0eed045fe5 + languageName: node + linkType: hard + +"@cspell/dict-gaming-terms@npm:^1.0.8": + version: 1.0.8 + resolution: "@cspell/dict-gaming-terms@npm:1.0.8" + checksum: 10c0/7617d5278021598dd65cd2be68c0a22144a02888a82bf4ba8c7e49fec2ba6d22fb185d50b3f187bb40abaa2881f9e585f185b0539889684d5d49aa65f533ae09 + languageName: node + linkType: hard + +"@cspell/dict-git@npm:^3.0.3": + version: 3.0.3 + resolution: "@cspell/dict-git@npm:3.0.3" + checksum: 10c0/63511720f621dc90a946585597c8c9e75bae4971c163e1c31a9fc2e34fbd3af4ad0ab9042e0b8a3eef4971cbcf78d4f6057fe4c799a93c0879219944bd730c8e + languageName: node + linkType: hard + +"@cspell/dict-golang@npm:^6.0.16": + version: 6.0.16 + resolution: "@cspell/dict-golang@npm:6.0.16" + checksum: 10c0/e0b4063693dbd58d12c039160368a5ccb8f603fc08d503f7952bb2991fccb19ba5f99e38aeb9e44093648b1724b763849bbd838fa5e95f89453a3e004b4bb77b + languageName: node + linkType: hard + +"@cspell/dict-google@npm:^1.0.4": + version: 1.0.4 + resolution: "@cspell/dict-google@npm:1.0.4" + checksum: 10c0/2af215e6632e3b93869e054a3a24084bcbf6b4bc7eff0ff9ca631d8f93699f89902f588ec83ada97811362085e88fba2b12f3300d41ca457cd5584e0e37573bd + languageName: node + linkType: hard + +"@cspell/dict-haskell@npm:^4.0.4": + version: 4.0.4 + resolution: "@cspell/dict-haskell@npm:4.0.4" + checksum: 10c0/257b59f2fb9e931fadf5409386037cadd44304ed2606ffaf21d50576fcf0bc839fce1b2e59d07833de82e87e3013be48ecc87fb4a56be199f5070cd92ad943ef + languageName: node + linkType: hard + +"@cspell/dict-html-symbol-entities@npm:^4.0.3": + version: 4.0.3 + resolution: "@cspell/dict-html-symbol-entities@npm:4.0.3" + checksum: 10c0/d7fbffb484b4d826890c873792ac383892ed2013c6e7436fc1223a181ef3b11bf98d33f2faa50dba1461853eebf6006451ff853caf8fa1948dca4f228b9248ca + languageName: node + linkType: hard + +"@cspell/dict-html@npm:^4.0.10": + version: 4.0.10 + resolution: "@cspell/dict-html@npm:4.0.10" + checksum: 10c0/1ccdca06b36107e70f0031c7797ec062dab75a3570b07d6579f28eaa78dd0a900b800a41fc07ed03f8383e83d8956db9d4384fd24992c7842557aa78b40ad3a9 + languageName: node + linkType: hard + +"@cspell/dict-java@npm:^5.0.10": + version: 5.0.10 + resolution: "@cspell/dict-java@npm:5.0.10" + checksum: 10c0/5e3113559154c2069466a6d7b3bc9c95708ab26ac025ca8f86645f5bbf492d89b369c6dc73a53d4b672f7f6141b646a970d6abdbd04c8b0e47c4689b5587edd5 + languageName: node + linkType: hard + +"@cspell/dict-julia@npm:^1.0.4": + version: 1.0.4 + resolution: "@cspell/dict-julia@npm:1.0.4" + checksum: 10c0/abd10732352d1d53a929c546e78f87afc745f4351add328b0e1bf093905b8083dc76fa29ba9ce3d29b893e96fdc44ed04b0418331430b4731fbb249debb10403 + languageName: node + linkType: hard + +"@cspell/dict-k8s@npm:^1.0.9": + version: 1.0.9 + resolution: "@cspell/dict-k8s@npm:1.0.9" + checksum: 10c0/66298e07977f1950114ed457f755d3be8faeb5ce6d70677ca60d144b9fb1a6f7e67c1d2b3ffa71232499a6100fd0c83c77c03baa220d99b0be2ac31e150b45db + languageName: node + linkType: hard + +"@cspell/dict-latex@npm:^4.0.3": + version: 4.0.3 + resolution: "@cspell/dict-latex@npm:4.0.3" + checksum: 10c0/bba028fb61a38e48615f865f7cbeab4bf9d84f3305cb9828321b4d2ed2b592555a30aef0db9188273acabc0c88d7e8c04e72a30b2364c3c7c6fbf3b0fbc4a6ec + languageName: node + linkType: hard + +"@cspell/dict-lorem-ipsum@npm:^4.0.3": + version: 4.0.3 + resolution: "@cspell/dict-lorem-ipsum@npm:4.0.3" + checksum: 10c0/4c7682bb442e27894527c21265268ad7786dc4d087e0fae6c6c88a6483e93b07e0f26d59ef6a6bd836a5c92c3af6878914b2f98cad100ff244f0fd484ba03644 + languageName: node + linkType: hard + +"@cspell/dict-lua@npm:^4.0.6": + version: 4.0.6 + resolution: "@cspell/dict-lua@npm:4.0.6" + checksum: 10c0/8fb550f3c7762ff1e3215cb1a4677b43a59a463c99eae5ac7eddf360269ec4d2abbc1cbcb4933df52eea026a65e681d62934c60bb92d0791640be81b5cbdc51c + languageName: node + linkType: hard + +"@cspell/dict-makefile@npm:^1.0.3": + version: 1.0.3 + resolution: "@cspell/dict-makefile@npm:1.0.3" + checksum: 10c0/22576eca594afd4e8680e00d56d42a4298501f4a24e1999f150de8f3d85afe21698fa2cdcdd9b49a979b39bda7ebe364f57a818225312e39bddc92a760d61c78 + languageName: node + linkType: hard + +"@cspell/dict-markdown@npm:^2.0.7": + version: 2.0.7 + resolution: "@cspell/dict-markdown@npm:2.0.7" + peerDependencies: + "@cspell/dict-css": ^4.0.16 + "@cspell/dict-html": ^4.0.10 + "@cspell/dict-html-symbol-entities": ^4.0.3 + "@cspell/dict-typescript": ^3.1.11 + checksum: 10c0/8731b19ab5f25a33d5905337f011cfb8ed86b89edbc4a348d79ad0f6f1fee108046ab434786c277d961ae29d2e78d7958347f8c4005434a0a7fd07b2a8e9cc80 + languageName: node + linkType: hard + +"@cspell/dict-monkeyc@npm:^1.0.9": + version: 1.0.9 + resolution: "@cspell/dict-monkeyc@npm:1.0.9" + checksum: 10c0/1ba425768363afeefa777ef0886dc421b2f47496794567473fc02a1453410638a6e340a1b06f67e63a6fc00b0e6253bf6c74d4bf11d8cd630ceecedf11c55aad + languageName: node + linkType: hard + +"@cspell/dict-node@npm:^5.0.5": + version: 5.0.5 + resolution: "@cspell/dict-node@npm:5.0.5" + checksum: 10c0/237821d87a25bbf2286cf1b3b03f2a7186342fdf1d335d22f32c74155c466c18cb1d862f2d540bade3dfa8020380c11d9df4b3046227c2f599429a232c488f2a + languageName: node + linkType: hard + +"@cspell/dict-npm@npm:^5.1.11": + version: 5.1.11 + resolution: "@cspell/dict-npm@npm:5.1.11" + checksum: 10c0/6780333ff4be24253c4db61d0e43a28e802f8166eaa5cc902e0638727554859effa17e1b0b1f2da59e152ff5d43d0352adf004b968fa20aae0e32c9ebb9af007 + languageName: node + linkType: hard + +"@cspell/dict-php@npm:^4.0.13": + version: 4.0.13 + resolution: "@cspell/dict-php@npm:4.0.13" + checksum: 10c0/2d2ee84a4b102290206c1f5ab710efb547b3c4d2be0f231930fe3323a5d846843ecfee5684c656ca90ee3ebff649af19d6022fbbe9bf304fddb77b353aed1ffa + languageName: node + linkType: hard + +"@cspell/dict-powershell@npm:^5.0.13": + version: 5.0.13 + resolution: "@cspell/dict-powershell@npm:5.0.13" + checksum: 10c0/8b731e720da9963f2ea2a10bf4560a4db41f9bd9dc4cd2de0bc9fb5f2b69e18e5a89d6f3b7cd8836d9b7adf11376634fd6a25792f8edab237ff82b3d1f624aec + languageName: node + linkType: hard + +"@cspell/dict-public-licenses@npm:^2.0.11": + version: 2.0.11 + resolution: "@cspell/dict-public-licenses@npm:2.0.11" + checksum: 10c0/81fefcd0f425c5a354f3bcdfa635eba4dcb0a0c42c61fa379b2318510d080f619aaa01c5ea249b58a63462af83c9b6a5bbd5b259b0f9807a70d02723f4af20fa + languageName: node + linkType: hard + +"@cspell/dict-python@npm:^4.2.12": + version: 4.2.12 + resolution: "@cspell/dict-python@npm:4.2.12" + dependencies: + "@cspell/dict-data-science": "npm:^2.0.5" + checksum: 10c0/930f7f10eb89c56994d5e8d891d55950331c010e5f0d5dec03383a0d001078df646b44b003014504aba827dda8a1ff564902186586dc6e9ffc9637fa70b8a5bd + languageName: node + linkType: hard + +"@cspell/dict-r@npm:^2.0.4": + version: 2.0.4 + resolution: "@cspell/dict-r@npm:2.0.4" + checksum: 10c0/3f5d2fdb41f058be4eb21a79b19f0c1f033e501ecfd30e43f5c3dd810235b9837c0cac1b5e2dc087845fd3db9e2d33e4ab31dd22b89c861d98d011e0cb33eb05 + languageName: node + linkType: hard + +"@cspell/dict-ruby@npm:^5.0.7": + version: 5.0.7 + resolution: "@cspell/dict-ruby@npm:5.0.7" + checksum: 10c0/84ae8331467911d687f9c145a0cc310f06e9bae0c2abc872cfc2d890abe0fe9c53a7f6ea7d3f5de546ffcc715b2b8c63dcfe30e5d58a9eea910d307dad335b55 + languageName: node + linkType: hard + +"@cspell/dict-rust@npm:^4.0.9": + version: 4.0.9 + resolution: "@cspell/dict-rust@npm:4.0.9" + checksum: 10c0/969b97b52af508ac55989510486a58b4f6b0e652a04f8deb486b3356e94adb186255bba45d83227db778dad396e77230504814331a3a79cf3a5ab578d4e50133 + languageName: node + linkType: hard + +"@cspell/dict-scala@npm:^5.0.6": + version: 5.0.6 + resolution: "@cspell/dict-scala@npm:5.0.6" + checksum: 10c0/5018e63ef1e0b640d229a7a22baaae1244bfaa7d5639365f92ef4b4acd0d44e315905259f5a9135dbabf172390eb89b43cc04cf94d4b3a54e4c2f79083af75d8 + languageName: node + linkType: hard + +"@cspell/dict-software-terms@npm:^4.1.13": + version: 4.1.14 + resolution: "@cspell/dict-software-terms@npm:4.1.14" + checksum: 10c0/27cddee6b7701e51ec5ade07e36d1a532d1b0fc55eab9ae2753b95be26a1f216c8604afcc4c6f0454975c20da1e6e47214df0ae383abe13aeb3f7d932a3162d7 + languageName: node + linkType: hard + +"@cspell/dict-sql@npm:^2.1.8": + version: 2.1.8 + resolution: "@cspell/dict-sql@npm:2.1.8" + checksum: 10c0/dad458146cba600716cc4990ed58a39ca1386049d85a66c0b484ba95c404743d650099b2e55ce11d472c7c183fd1e21519de6808f47a80aacb9db190d199e4b1 + languageName: node + linkType: hard + +"@cspell/dict-svelte@npm:^1.0.5": + version: 1.0.5 + resolution: "@cspell/dict-svelte@npm:1.0.5" + checksum: 10c0/9f482c333c304a465fa5ae6cdbb736f32b47ca57a68ad6f3429a79720aa54082553381130272d7bfad01207c186aa557e712c0c5904d5b8d9b8fdfdfa9a88438 + languageName: node + linkType: hard + +"@cspell/dict-swift@npm:^2.0.4": + version: 2.0.4 + resolution: "@cspell/dict-swift@npm:2.0.4" + checksum: 10c0/10ef516b54da3b7c5e4a69009d444faaf4986f32121050ef319e997b25a0d63f707de7027dad4d17303d86d9707fad044f5ffae25e96e9fbca3a6aea555eccd5 + languageName: node + linkType: hard + +"@cspell/dict-terraform@npm:^1.0.6": + version: 1.0.6 + resolution: "@cspell/dict-terraform@npm:1.0.6" + checksum: 10c0/0494d01703d671c47b93085ba791c2098640d11fc366adc877df16e79b5eccedf7d93d46d6acb37f4fa24f2c7ffac761ff1cd4c539ece2701519abbbbaa445e4 + languageName: node + linkType: hard + +"@cspell/dict-typescript@npm:^3.1.11": + version: 3.1.11 + resolution: "@cspell/dict-typescript@npm:3.1.11" + checksum: 10c0/080558cb1399c64ff0a9cb5b711e726bf6585e983f6559518b13f9ec1770db2880434ee772186b755b863c8a22f6b4c1660038627e5c32239dd1ddc59ee87273 + languageName: node + linkType: hard + +"@cspell/dict-vue@npm:^3.0.3": + version: 3.0.3 + resolution: "@cspell/dict-vue@npm:3.0.3" + checksum: 10c0/8b69413b5b5002cff8b1b2f8441accc14fdc1fca731ff30be66ba925e9cbbb4caf428c2a35327b756269fbe608db7d3ec0946f8017f8433ee508ead14147389f + languageName: node + linkType: hard + +"@cspell/dynamic-import@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/dynamic-import@npm:8.16.0" + dependencies: + import-meta-resolve: "npm:^4.1.0" + checksum: 10c0/20423993dbd20e6441111a03a7352f5ba8dd9304a664b519dab1fca7411525114968d14695732073c70dd469f6f211d8cc8d517ce99f56f86fa617bd15183b0e + languageName: node + linkType: hard + +"@cspell/filetypes@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/filetypes@npm:8.16.0" + checksum: 10c0/3b2302b824832bd35bbb8dde2440632613a0e1f2bc0d513ece24f35c6dcb6962e7011ce5da82157071c69cbfe82b7947e43fe3615583dd5de13c0322f6d9ecc4 + languageName: node + linkType: hard + +"@cspell/strong-weak-map@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/strong-weak-map@npm:8.16.0" + checksum: 10c0/d3994d017dad5bd48c18b0b6e0aa8524191f6bd803e8f84d4e792c40263d24e9a498e9d8750207f99645d09d0d551c8bdcf878e2768d66fe950bdf735f2f6dcc + languageName: node + linkType: hard + +"@cspell/url@npm:8.16.0": + version: 8.16.0 + resolution: "@cspell/url@npm:8.16.0" + checksum: 10c0/62e0bee3fb6016add96cbe18bfdcf15a5c127b857c96bf75ee8d6b19d69e3372da7491dee485c730df0cc4ca9ca454104a05f36fcef02b8465dd6e7d4298414e + languageName: node + linkType: hard + +"array-timsort@npm:^1.0.3": + version: 1.0.3 + resolution: "array-timsort@npm:1.0.3" + checksum: 10c0/bd3a1707b621947265c89867e67c9102b9b9f4c50f5b3974220112290d8b60d26ce60595edec5deed3325207b759d70b758bed3cd310b5ddadb835657ffb6d12 + languageName: node + linkType: hard + +"braces@npm:^3.0.3": + version: 3.0.3 + resolution: "braces@npm:3.0.3" + dependencies: + fill-range: "npm:^7.1.1" + checksum: 10c0/7c6dfd30c338d2997ba77500539227b9d1f85e388a5f43220865201e407e076783d0881f2d297b9f80951b4c957fcf0b51c1d2d24227631643c3f7c284b0aa04 + languageName: node + linkType: hard + +"callsites@npm:^3.0.0, callsites@npm:^3.1.0": + version: 3.1.0 + resolution: "callsites@npm:3.1.0" + checksum: 10c0/fff92277400eb06c3079f9e74f3af120db9f8ea03bad0e84d9aede54bbe2d44a56cccb5f6cf12211f93f52306df87077ecec5b712794c5a9b5dac6d615a3f301 + languageName: node + linkType: hard + +"chalk-template@npm:^1.1.0": + version: 1.1.0 + resolution: "chalk-template@npm:1.1.0" + dependencies: + chalk: "npm:^5.2.0" + checksum: 10c0/bb6eda6115a33d06828caf8c44f786c26e0d392c74c2bd6bb0f7526588b15664e3e7c0305858531cdd9b266fc54a31fe71fe3844afcd47a3e67445313f149437 + languageName: node + linkType: hard + +"chalk@npm:^5.2.0, chalk@npm:^5.3.0": + version: 5.3.0 + resolution: "chalk@npm:5.3.0" + checksum: 10c0/8297d436b2c0f95801103ff2ef67268d362021b8210daf8ddbe349695333eb3610a71122172ff3b0272f1ef2cf7cc2c41fdaa4715f52e49ffe04c56340feed09 + languageName: node + linkType: hard + +"clear-module@npm:^4.1.2": + version: 4.1.2 + resolution: "clear-module@npm:4.1.2" + dependencies: + parent-module: "npm:^2.0.0" + resolve-from: "npm:^5.0.0" + checksum: 10c0/73207f06af256e3c8901ceaa74f7e4468a777aa68dedc7f745db4116861a7f8e69c558e16dbdf7b3d2295675d5896f916ba55b5dc737dda81792dbeee1488127 + languageName: node + linkType: hard + +"commander@npm:^12.1.0": + version: 12.1.0 + resolution: "commander@npm:12.1.0" + checksum: 10c0/6e1996680c083b3b897bfc1cfe1c58dfbcd9842fd43e1aaf8a795fbc237f65efcc860a3ef457b318e73f29a4f4a28f6403c3d653d021d960e4632dd45bde54a9 + languageName: node + linkType: hard + +"comment-json@npm:^4.2.5": + version: 4.2.5 + resolution: "comment-json@npm:4.2.5" + dependencies: + array-timsort: "npm:^1.0.3" + core-util-is: "npm:^1.0.3" + esprima: "npm:^4.0.1" + has-own-prop: "npm:^2.0.0" + repeat-string: "npm:^1.6.1" + checksum: 10c0/e22f13f18fcc484ac33c8bc02a3d69c3f9467ae5063fdfb3df7735f83a8d9a2cab6a32b7d4a0c53123413a9577de8e17c8cc88369c433326799558febb34ef9c + languageName: node + linkType: hard + +"core-util-is@npm:^1.0.3": + version: 1.0.3 + resolution: "core-util-is@npm:1.0.3" + checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9 + languageName: node + linkType: hard + +"cspell-config-lib@npm:8.16.0": + version: 8.16.0 + resolution: "cspell-config-lib@npm:8.16.0" + dependencies: + "@cspell/cspell-types": "npm:8.16.0" + comment-json: "npm:^4.2.5" + yaml: "npm:^2.6.0" + checksum: 10c0/cece04b1dbc37c3c2210ec5bc88f313139ac45a7db87cc12d6da321862d9cbdecfcfe15556e2454da4082e2468045cd093b57ce14ce8ceb48b264688a667f078 + languageName: node + linkType: hard + +"cspell-dictionary@npm:8.16.0": + version: 8.16.0 + resolution: "cspell-dictionary@npm:8.16.0" + dependencies: + "@cspell/cspell-pipe": "npm:8.16.0" + "@cspell/cspell-types": "npm:8.16.0" + cspell-trie-lib: "npm:8.16.0" + fast-equals: "npm:^5.0.1" + checksum: 10c0/eda45e089806e0f2875d1e76744e31b69ad59a38c0472e81d2deffd731cae17611ee205302affdfbdae50002f598dba91777f902120600491dea7eb50d998103 + languageName: node + linkType: hard + +"cspell-gitignore@npm:8.16.0": + version: 8.16.0 + resolution: "cspell-gitignore@npm:8.16.0" + dependencies: + "@cspell/url": "npm:8.16.0" + cspell-glob: "npm:8.16.0" + cspell-io: "npm:8.16.0" + find-up-simple: "npm:^1.0.0" + bin: + cspell-gitignore: bin.mjs + checksum: 10c0/2e1e5c515c954ca9ea93576647e75d9ae8453d04986c6757983b0561ee7b3db6b7dd37730252f4202b2af024f18481745e715fd02c91378fa93a3b1de7ea160d + languageName: node + linkType: hard + +"cspell-glob@npm:8.16.0": + version: 8.16.0 + resolution: "cspell-glob@npm:8.16.0" + dependencies: + "@cspell/url": "npm:8.16.0" + micromatch: "npm:^4.0.8" + checksum: 10c0/a1f3d0dafc5e8917b811a5cf2939c1afbee302ba69f93803588afbeed119ad4676513339803c9d24f75f4b80d991608a7aad0f75e757081f2f302d52e265faa0 + languageName: node + linkType: hard + +"cspell-grammar@npm:8.16.0": + version: 8.16.0 + resolution: "cspell-grammar@npm:8.16.0" + dependencies: + "@cspell/cspell-pipe": "npm:8.16.0" + "@cspell/cspell-types": "npm:8.16.0" + bin: + cspell-grammar: bin.mjs + checksum: 10c0/dbc081c5f7247cb6e4c84fa6f42a5e32a3403c19fcb3cd309fa8e2c4a58ede33677d5f5e9e006a23570a02564e203ab7aeb3677d4bfde5ada352d2e4e74667b6 + languageName: node + linkType: hard + +"cspell-io@npm:8.16.0": + version: 8.16.0 + resolution: "cspell-io@npm:8.16.0" + dependencies: + "@cspell/cspell-service-bus": "npm:8.16.0" + "@cspell/url": "npm:8.16.0" + checksum: 10c0/da0376f89a7a1475a0a963da752fd1a73aff9cfa1fec173c269ef2171e6518fe725a49f7ad67fa2a18eac1f1eb4b420fe518b1348d94c90640d20ab2cab64dda + languageName: node + linkType: hard + +"cspell-lib@npm:8.16.0": + version: 8.16.0 + resolution: "cspell-lib@npm:8.16.0" + dependencies: + "@cspell/cspell-bundled-dicts": "npm:8.16.0" + "@cspell/cspell-pipe": "npm:8.16.0" + "@cspell/cspell-resolver": "npm:8.16.0" + "@cspell/cspell-types": "npm:8.16.0" + "@cspell/dynamic-import": "npm:8.16.0" + "@cspell/filetypes": "npm:8.16.0" + "@cspell/strong-weak-map": "npm:8.16.0" + "@cspell/url": "npm:8.16.0" + clear-module: "npm:^4.1.2" + comment-json: "npm:^4.2.5" + cspell-config-lib: "npm:8.16.0" + cspell-dictionary: "npm:8.16.0" + cspell-glob: "npm:8.16.0" + cspell-grammar: "npm:8.16.0" + cspell-io: "npm:8.16.0" + cspell-trie-lib: "npm:8.16.0" + env-paths: "npm:^3.0.0" + fast-equals: "npm:^5.0.1" + gensequence: "npm:^7.0.0" + import-fresh: "npm:^3.3.0" + resolve-from: "npm:^5.0.0" + vscode-languageserver-textdocument: "npm:^1.0.12" + vscode-uri: "npm:^3.0.8" + xdg-basedir: "npm:^5.1.0" + checksum: 10c0/1ce9e813a2a8e5ae8f19ed3253870d80e308cf528b1b39d6baf1b331fbc5bd63a9e47b4a1ac46c4f54e48901e72a204c2a7c9ba3d8472a04972d25202d47bbc0 + languageName: node + linkType: hard + +"cspell-trie-lib@npm:8.16.0": + version: 8.16.0 + resolution: "cspell-trie-lib@npm:8.16.0" + dependencies: + "@cspell/cspell-pipe": "npm:8.16.0" + "@cspell/cspell-types": "npm:8.16.0" + gensequence: "npm:^7.0.0" + checksum: 10c0/0296f2f7ff4896bb3560c90c3a044dc8fbc0f1b0cfa60a373db67840442b6d48d8e3b1a4aad75514ffec7a6b651d605624b5638fb128500374d198b9f52409c2 + languageName: node + linkType: hard + +"cspell@npm:^8.16.0": + version: 8.16.0 + resolution: "cspell@npm:8.16.0" + dependencies: + "@cspell/cspell-json-reporter": "npm:8.16.0" + "@cspell/cspell-pipe": "npm:8.16.0" + "@cspell/cspell-types": "npm:8.16.0" + "@cspell/dynamic-import": "npm:8.16.0" + "@cspell/url": "npm:8.16.0" + chalk: "npm:^5.3.0" + chalk-template: "npm:^1.1.0" + commander: "npm:^12.1.0" + cspell-dictionary: "npm:8.16.0" + cspell-gitignore: "npm:8.16.0" + cspell-glob: "npm:8.16.0" + cspell-io: "npm:8.16.0" + cspell-lib: "npm:8.16.0" + fast-json-stable-stringify: "npm:^2.1.0" + file-entry-cache: "npm:^9.1.0" + get-stdin: "npm:^9.0.0" + semver: "npm:^7.6.3" + tinyglobby: "npm:^0.2.10" + bin: + cspell: bin.mjs + cspell-esm: bin.mjs + checksum: 10c0/9111f3a737fd59f687ecf8d8997a5d077ec8d347d8cb9802d9bf6f0101ae43948b23d7bf12cd7107a9d0352bad23d57aac9b4ca408ee6d296356f9c4c20c035a + languageName: node + linkType: hard + +"env-paths@npm:^3.0.0": + version: 3.0.0 + resolution: "env-paths@npm:3.0.0" + checksum: 10c0/76dec878cee47f841103bacd7fae03283af16f0702dad65102ef0a556f310b98a377885e0f32943831eb08b5ab37842a323d02529f3dfd5d0a40ca71b01b435f + languageName: node + linkType: hard + +"esprima@npm:^4.0.1": + version: 4.0.1 + resolution: "esprima@npm:4.0.1" + bin: + esparse: ./bin/esparse.js + esvalidate: ./bin/esvalidate.js + checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 + languageName: node + linkType: hard + +"fast-equals@npm:^5.0.1": + version: 5.0.1 + resolution: "fast-equals@npm:5.0.1" + checksum: 10c0/d7077b8b681036c2840ed9860a3048e44fc268fad2b525b8f25b43458be0c8ad976152eb4b475de9617170423c5b802121ebb61ed6641c3ac035fadaf805c8c0 + languageName: node + linkType: hard + +"fast-json-stable-stringify@npm:^2.1.0": + version: 2.1.0 + resolution: "fast-json-stable-stringify@npm:2.1.0" + checksum: 10c0/7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b + languageName: node + linkType: hard + +"fdir@npm:^6.4.2": + version: 6.4.2 + resolution: "fdir@npm:6.4.2" + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + checksum: 10c0/34829886f34a3ca4170eca7c7180ec4de51a3abb4d380344063c0ae2e289b11d2ba8b724afee974598c83027fea363ff598caf2b51bc4e6b1e0d8b80cc530573 + languageName: node + linkType: hard + +"file-entry-cache@npm:^9.1.0": + version: 9.1.0 + resolution: "file-entry-cache@npm:9.1.0" + dependencies: + flat-cache: "npm:^5.0.0" + checksum: 10c0/4b4dbc1e972f50202b1a4430d30fd99378ef6e2a64857176abdc65c5e4730a948fb37e274478520a7bacbc70f3abba455a4b9d2c1915c53f30d11dc85d3fef5e + languageName: node + linkType: hard + +"fill-range@npm:^7.1.1": + version: 7.1.1 + resolution: "fill-range@npm:7.1.1" + dependencies: + to-regex-range: "npm:^5.0.1" + checksum: 10c0/b75b691bbe065472f38824f694c2f7449d7f5004aa950426a2c28f0306c60db9b880c0b0e4ed819997ffb882d1da02cfcfc819bddc94d71627f5269682edf018 + languageName: node + linkType: hard + +"find-up-simple@npm:^1.0.0": + version: 1.0.0 + resolution: "find-up-simple@npm:1.0.0" + checksum: 10c0/de1ad5e55c8c162f5600fe3297bb55a3da5cd9cb8c6755e463ec1d52c4c15a84e312a68397fb5962d13263b3dbd4ea294668c465ccacc41291d7cc97588769f9 + languageName: node + linkType: hard + +"flat-cache@npm:^5.0.0": + version: 5.0.0 + resolution: "flat-cache@npm:5.0.0" + dependencies: + flatted: "npm:^3.3.1" + keyv: "npm:^4.5.4" + checksum: 10c0/847f25eefec5d6614fdce76dc6097ee98f63fd4dfbcb908718905ac56610f939f4c28b1f908d6e8857d49286fe73235095d2e7ac9df096c35a3e8a15204c361b + languageName: node + linkType: hard + +"flatted@npm:^3.3.1": + version: 3.3.1 + resolution: "flatted@npm:3.3.1" + checksum: 10c0/324166b125ee07d4ca9bcf3a5f98d915d5db4f39d711fba640a3178b959919aae1f7cfd8aabcfef5826ed8aa8a2aa14cc85b2d7d18ff638ddf4ae3df39573eaf + languageName: node + linkType: hard + +"gensequence@npm:^7.0.0": + version: 7.0.0 + resolution: "gensequence@npm:7.0.0" + checksum: 10c0/d446772a795d8a50d70d87e87b827591ccd599c267acce9c2e1f17e4df6c04e6d47661b2ddf5d0144d026c1e3ac71eca917c171e594c3daf6a87aeabbe1d7a3d + languageName: node + linkType: hard + +"get-stdin@npm:^9.0.0": + version: 9.0.0 + resolution: "get-stdin@npm:9.0.0" + checksum: 10c0/7ef2edc0c81a0644ca9f051aad8a96ae9373d901485abafaabe59fd347a1c378689d8a3d8825fb3067415d1d09dfcaa43cb9b9516ecac6b74b3138b65a8ccc6b + languageName: node + linkType: hard + +"global-directory@npm:^4.0.1": + version: 4.0.1 + resolution: "global-directory@npm:4.0.1" + dependencies: + ini: "npm:4.1.1" + checksum: 10c0/f9cbeef41db4876f94dd0bac1c1b4282a7de9c16350ecaaf83e7b2dd777b32704cc25beeb1170b5a63c42a2c9abfade74d46357fe0133e933218bc89e613d4b2 + languageName: node + linkType: hard + +"has-own-prop@npm:^2.0.0": + version: 2.0.0 + resolution: "has-own-prop@npm:2.0.0" + checksum: 10c0/2745497283d80228b5c5fbb8c63ab1029e604bce7db8d4b36255e427b3695b2153dc978b176674d0dd2a23f132809e04d7ef41fefc0ab85870a5caa918c5c0d9 + languageName: node + linkType: hard + "hub@workspace:.": version: 0.0.0-use.local resolution: "hub@workspace:." dependencies: + "@cspell/dict-de-de": "npm:^4.0.3" + "@cspell/dict-python": "npm:^4.2.12" + cspell: "npm:^8.16.0" prettier: "npm:^3.3.3" languageName: unknown linkType: soft +"import-fresh@npm:^3.3.0": + version: 3.3.0 + resolution: "import-fresh@npm:3.3.0" + dependencies: + parent-module: "npm:^1.0.0" + resolve-from: "npm:^4.0.0" + checksum: 10c0/7f882953aa6b740d1f0e384d0547158bc86efbf2eea0f1483b8900a6f65c5a5123c2cf09b0d542cc419d0b98a759ecaeb394237e97ea427f2da221dc3cd80cc3 + languageName: node + linkType: hard + +"import-meta-resolve@npm:^4.1.0": + version: 4.1.0 + resolution: "import-meta-resolve@npm:4.1.0" + checksum: 10c0/42f3284b0460635ddf105c4ad99c6716099c3ce76702602290ad5cbbcd295700cbc04e4bdf47bacf9e3f1a4cec2e1ff887dabc20458bef398f9de22ddff45ef5 + languageName: node + linkType: hard + +"ini@npm:4.1.1": + version: 4.1.1 + resolution: "ini@npm:4.1.1" + checksum: 10c0/7fddc8dfd3e63567d4fdd5d999d1bf8a8487f1479d0b34a1d01f28d391a9228d261e19abc38e1a6a1ceb3400c727204fce05725d5eb598dfcf2077a1e3afe211 + languageName: node + linkType: hard + +"is-number@npm:^7.0.0": + version: 7.0.0 + resolution: "is-number@npm:7.0.0" + checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811 + languageName: node + linkType: hard + +"json-buffer@npm:3.0.1": + version: 3.0.1 + resolution: "json-buffer@npm:3.0.1" + checksum: 10c0/0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7 + languageName: node + linkType: hard + +"keyv@npm:^4.5.4": + version: 4.5.4 + resolution: "keyv@npm:4.5.4" + dependencies: + json-buffer: "npm:3.0.1" + checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e + languageName: node + linkType: hard + +"micromatch@npm:^4.0.8": + version: 4.0.8 + resolution: "micromatch@npm:4.0.8" + dependencies: + braces: "npm:^3.0.3" + picomatch: "npm:^2.3.1" + checksum: 10c0/166fa6eb926b9553f32ef81f5f531d27b4ce7da60e5baf8c021d043b27a388fb95e46a8038d5045877881e673f8134122b59624d5cecbd16eb50a42e7a6b5ca8 + languageName: node + linkType: hard + +"parent-module@npm:^1.0.0": + version: 1.0.1 + resolution: "parent-module@npm:1.0.1" + dependencies: + callsites: "npm:^3.0.0" + checksum: 10c0/c63d6e80000d4babd11978e0d3fee386ca7752a02b035fd2435960ffaa7219dc42146f07069fb65e6e8bf1caef89daf9af7535a39bddf354d78bf50d8294f556 + languageName: node + linkType: hard + +"parent-module@npm:^2.0.0": + version: 2.0.0 + resolution: "parent-module@npm:2.0.0" + dependencies: + callsites: "npm:^3.1.0" + checksum: 10c0/e4c5e34102c709df1932e1065dee53764fbd869f5a673beb8c3b4bcbbd4a7be16e3595f8846b24f52a77b9e96d8d499e68736ec690b108e55d95a5315f41e073 + languageName: node + linkType: hard + +"picomatch@npm:^2.3.1": + version: 2.3.1 + resolution: "picomatch@npm:2.3.1" + checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be + languageName: node + linkType: hard + +"picomatch@npm:^4.0.2": + version: 4.0.2 + resolution: "picomatch@npm:4.0.2" + checksum: 10c0/7c51f3ad2bb42c776f49ebf964c644958158be30d0a510efd5a395e8d49cb5acfed5b82c0c5b365523ce18e6ab85013c9ebe574f60305892ec3fa8eee8304ccc + languageName: node + linkType: hard + "prettier@npm:^3.3.3": version: 3.3.3 resolution: "prettier@npm:3.3.3" @@ -21,3 +983,82 @@ __metadata: checksum: 10c0/b85828b08e7505716324e4245549b9205c0cacb25342a030ba8885aba2039a115dbcf75a0b7ca3b37bc9d101ee61fab8113fc69ca3359f2a226f1ecc07ad2e26 languageName: node linkType: hard + +"repeat-string@npm:^1.6.1": + version: 1.6.1 + resolution: "repeat-string@npm:1.6.1" + checksum: 10c0/87fa21bfdb2fbdedc44b9a5b118b7c1239bdd2c2c1e42742ef9119b7d412a5137a1d23f1a83dc6bb686f4f27429ac6f542e3d923090b44181bafa41e8ac0174d + languageName: node + linkType: hard + +"resolve-from@npm:^4.0.0": + version: 4.0.0 + resolution: "resolve-from@npm:4.0.0" + checksum: 10c0/8408eec31a3112ef96e3746c37be7d64020cda07c03a920f5024e77290a218ea758b26ca9529fd7b1ad283947f34b2291c1c0f6aa0ed34acfdda9c6014c8d190 + languageName: node + linkType: hard + +"resolve-from@npm:^5.0.0": + version: 5.0.0 + resolution: "resolve-from@npm:5.0.0" + checksum: 10c0/b21cb7f1fb746de8107b9febab60095187781137fd803e6a59a76d421444b1531b641bba5857f5dc011974d8a5c635d61cec49e6bd3b7fc20e01f0fafc4efbf2 + languageName: node + linkType: hard + +"semver@npm:^7.6.3": + version: 7.6.3 + resolution: "semver@npm:7.6.3" + bin: + semver: bin/semver.js + checksum: 10c0/88f33e148b210c153873cb08cfe1e281d518aaa9a666d4d148add6560db5cd3c582f3a08ccb91f38d5f379ead256da9931234ed122057f40bb5766e65e58adaf + languageName: node + linkType: hard + +"tinyglobby@npm:^0.2.10": + version: 0.2.10 + resolution: "tinyglobby@npm:0.2.10" + dependencies: + fdir: "npm:^6.4.2" + picomatch: "npm:^4.0.2" + checksum: 10c0/ce946135d39b8c0e394e488ad59f4092e8c4ecd675ef1bcd4585c47de1b325e61ec6adfbfbe20c3c2bfa6fd674c5b06de2a2e65c433f752ae170aff11793e5ef + languageName: node + linkType: hard + +"to-regex-range@npm:^5.0.1": + version: 5.0.1 + resolution: "to-regex-range@npm:5.0.1" + dependencies: + is-number: "npm:^7.0.0" + checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892 + languageName: node + linkType: hard + +"vscode-languageserver-textdocument@npm:^1.0.12": + version: 1.0.12 + resolution: "vscode-languageserver-textdocument@npm:1.0.12" + checksum: 10c0/534349894b059602c4d97615a1147b6c4c031141c2093e59657f54e38570f5989c21b376836f13b9375419869242e9efb4066643208b21ab1e1dee111a0f00fb + languageName: node + linkType: hard + +"vscode-uri@npm:^3.0.8": + version: 3.0.8 + resolution: "vscode-uri@npm:3.0.8" + checksum: 10c0/f7f217f526bf109589969fe6e66b71e70b937de1385a1d7bb577ca3ee7c5e820d3856a86e9ff2fa9b7a0bc56a3dd8c3a9a557d3fedd7df414bc618d5e6b567f9 + languageName: node + linkType: hard + +"xdg-basedir@npm:^5.1.0": + version: 5.1.0 + resolution: "xdg-basedir@npm:5.1.0" + checksum: 10c0/c88efabc71ffd996ba9ad8923a8cc1c7c020a03e2c59f0ffa72e06be9e724ad2a0fccef488757bc6ed3d8849d753dd25082d1035d95cb179e79eae4d034d0b80 + languageName: node + linkType: hard + +"yaml@npm:^2.6.0": + version: 2.6.0 + resolution: "yaml@npm:2.6.0" + bin: + yaml: bin.mjs + checksum: 10c0/9e74cdb91cc35512a1c41f5ce509b0e93cc1d00eff0901e4ba831ee75a71ddf0845702adcd6f4ee6c811319eb9b59653248462ab94fa021ab855543a75396ceb + languageName: node + linkType: hard