From f6bdcab12e19b0512e0ae03c9ecef6531a7c6dba Mon Sep 17 00:00:00 2001 From: pollenjp Date: Sun, 25 Aug 2024 19:08:24 +0900 Subject: [PATCH 1/3] update packages --- requirements-dev.lock | 66 ++++++++++++++++++++----------------------- requirements.lock | 66 ++++++++++++++++++++----------------------- 2 files changed, 60 insertions(+), 72 deletions(-) diff --git a/requirements-dev.lock b/requirements-dev.lock index 1763411..df54261 100644 --- a/requirements-dev.lock +++ b/requirements-dev.lock @@ -10,92 +10,86 @@ # universal: false -e file:. -ansible-compat==4.1.10 +ansible-compat==24.8.0 # via ansible-lint -ansible-core==2.16.0 +ansible-core==2.17.3 # via ansible-compat # via ansible-lint -ansible-lint==6.22.0 +ansible-lint==24.7.0 # via ansible-lint-custom-strict-naming -attrs==23.1.0 +attrs==24.2.0 # via jsonschema # via referencing -black==23.11.0 +black==24.8.0 # via ansible-lint -bracex==2.4 +bracex==2.5 # via wcmatch -certifi==2023.7.22 - # via requests -cffi==1.16.0 +cffi==1.17.0 # via cryptography -charset-normalizer==3.3.2 - # via requests click==8.1.7 # via black -cryptography==41.0.5 +cryptography==43.0.0 # via ansible-core -filelock==3.13.1 +filelock==3.15.4 # via ansible-lint -idna==3.4 - # via requests -jinja2==3.1.2 +importlib-metadata==8.4.0 + # via ansible-lint +jinja2==3.1.4 # via ansible-core -jsonschema==4.19.2 +jsonschema==4.23.0 # via ansible-compat # via ansible-lint -jsonschema-specifications==2023.7.1 +jsonschema-specifications==2023.12.1 # via jsonschema markdown-it-py==3.0.0 # via rich -markupsafe==2.1.3 +markupsafe==2.1.5 # via jinja2 mdurl==0.1.2 # via markdown-it-py mypy-extensions==1.0.0 # via black -packaging==23.2 +packaging==24.1 # via ansible-compat # via ansible-core # via ansible-lint # via black -pathspec==0.11.2 +pathspec==0.12.1 # via ansible-lint # via black # via yamllint -platformdirs==3.11.0 +platformdirs==4.2.2 # via black -pycparser==2.21 +pycparser==2.22 # via cffi -pygments==2.16.1 +pygments==2.18.0 # via rich -pyyaml==6.0.1 +pyyaml==6.0.2 # via ansible-compat # via ansible-core # via ansible-lint # via yamllint -referencing==0.30.2 +referencing==0.35.1 # via jsonschema # via jsonschema-specifications -requests==2.31.0 - # via ansible-lint resolvelib==1.0.1 # via ansible-core -rich==13.6.0 +rich==13.7.1 # via ansible-lint -rpds-py==0.12.0 +rpds-py==0.20.0 # via jsonschema # via referencing -ruamel-yaml==0.18.5 +ruamel-yaml==0.18.6 # via ansible-lint ruamel-yaml-clib==0.2.8 # via ruamel-yaml ruff==0.6.2 -subprocess-tee==0.4.1 +subprocess-tee==0.4.2 # via ansible-compat # via ansible-lint -urllib3==2.0.7 - # via requests -wcmatch==8.5 +wcmatch==9.0 # via ansible-lint -yamllint==1.32.0 +yamllint==1.35.1 # via ansible-lint +zipp==3.20.0 + # via importlib-metadata diff --git a/requirements.lock b/requirements.lock index 2b5d167..d1757c4 100644 --- a/requirements.lock +++ b/requirements.lock @@ -10,91 +10,85 @@ # universal: false -e file:. -ansible-compat==4.1.10 +ansible-compat==24.8.0 # via ansible-lint -ansible-core==2.16.0 +ansible-core==2.17.3 # via ansible-compat # via ansible-lint -ansible-lint==6.22.0 +ansible-lint==24.7.0 # via ansible-lint-custom-strict-naming -attrs==23.1.0 +attrs==24.2.0 # via jsonschema # via referencing -black==23.11.0 +black==24.8.0 # via ansible-lint -bracex==2.4 +bracex==2.5 # via wcmatch -certifi==2023.7.22 - # via requests -cffi==1.16.0 +cffi==1.17.0 # via cryptography -charset-normalizer==3.3.2 - # via requests click==8.1.7 # via black -cryptography==41.0.5 +cryptography==43.0.0 # via ansible-core -filelock==3.13.1 +filelock==3.15.4 # via ansible-lint -idna==3.4 - # via requests -jinja2==3.1.2 +importlib-metadata==8.4.0 + # via ansible-lint +jinja2==3.1.4 # via ansible-core -jsonschema==4.19.2 +jsonschema==4.23.0 # via ansible-compat # via ansible-lint -jsonschema-specifications==2023.7.1 +jsonschema-specifications==2023.12.1 # via jsonschema markdown-it-py==3.0.0 # via rich -markupsafe==2.1.3 +markupsafe==2.1.5 # via jinja2 mdurl==0.1.2 # via markdown-it-py mypy-extensions==1.0.0 # via black -packaging==23.2 +packaging==24.1 # via ansible-compat # via ansible-core # via ansible-lint # via black -pathspec==0.11.2 +pathspec==0.12.1 # via ansible-lint # via black # via yamllint -platformdirs==3.11.0 +platformdirs==4.2.2 # via black -pycparser==2.21 +pycparser==2.22 # via cffi -pygments==2.16.1 +pygments==2.18.0 # via rich -pyyaml==6.0.1 +pyyaml==6.0.2 # via ansible-compat # via ansible-core # via ansible-lint # via yamllint -referencing==0.30.2 +referencing==0.35.1 # via jsonschema # via jsonschema-specifications -requests==2.31.0 - # via ansible-lint resolvelib==1.0.1 # via ansible-core -rich==13.6.0 +rich==13.7.1 # via ansible-lint -rpds-py==0.12.0 +rpds-py==0.20.0 # via jsonschema # via referencing -ruamel-yaml==0.18.5 +ruamel-yaml==0.18.6 # via ansible-lint ruamel-yaml-clib==0.2.8 # via ruamel-yaml -subprocess-tee==0.4.1 +subprocess-tee==0.4.2 # via ansible-compat # via ansible-lint -urllib3==2.0.7 - # via requests -wcmatch==8.5 +wcmatch==9.0 # via ansible-lint -yamllint==1.32.0 +yamllint==1.35.1 # via ansible-lint +zipp==3.20.0 + # via importlib-metadata From 838ac98f58fd6eae7bf84367ac77c68e42a85cde Mon Sep 17 00:00:00 2001 From: pollenjp Date: Sun, 25 Aug 2024 21:53:14 +0900 Subject: [PATCH 2/3] Add pyright and fix lint --- noxfile.py | 96 ------------------- pyproject.toml | 5 +- requirements-dev.lock | 3 + .../__init__.py | 10 +- src/rules/register_prefix.py | 3 +- src/rules/var_name_prefix.py | 7 +- 6 files changed, 18 insertions(+), 106 deletions(-) delete mode 100644 noxfile.py diff --git a/noxfile.py b/noxfile.py deleted file mode 100644 index d76fa7d..0000000 --- a/noxfile.py +++ /dev/null @@ -1,96 +0,0 @@ -# Standard Library -import typing as t -from pathlib import Path - -# Third Party Library -import nox -from nox.sessions import Session - -src_dir: Path = Path(__file__).parent / "src" -python_code_path_list: t.List[str] = [ - f"{src_dir}", - "noxfile.py", -] -assert all(isinstance(path, str) for path in python_code_path_list) -env_common: dict[str, str] = { - "PYTHONPATH": f"{src_dir}", -} -nox_tmp_dir: Path = Path(__file__).parent / ".nox_tmp" -python_version_list: list[str] = ["3.11"] - - -class SessionKwargs(t.TypedDict, total=False): - env: dict[str, str] - success_codes: list[int] - - -def install_requirements(session: Session, dev: bool = False) -> None: - session.install("--upgrade", "pip") - session.run("pip", "-V") - session.install("-r", f"requirements{'-dev' if dev else ''}.lock") - - -def load_requirements_dict(dev: bool = False) -> dict[str, str]: - requirements_txt = Path(f"requirements{'-dev' if dev else ''}.lock") - requirements_dict = {} - with open(requirements_txt, "rt") as file: - for line in file: - line = line.strip() - if not line or line.startswith(("#", "-")): - continue - package, version = line.split("==") - requirements_dict[package] = version - return requirements_dict - - -@nox.session(python=python_version_list) -def format(session: Session) -> None: - env: dict[str, str] = {} - env.update(env_common) - kwargs: SessionKwargs = {"env": env, "success_codes": [0, 1]} - - install_requirements(session) - requirements_dev_dict = load_requirements_dict(dev=True) - packages = ["autoflake8", "isort", "black"] - session.install(*[f"{package}=={requirements_dev_dict[package]}" for package in packages]) - session.run( - "autoflake8", - "--in-place", - "--recursive", - "--remove-unused-variables", - "--in-place", - "--exit-zero-even-if-changed", - *python_code_path_list, - **kwargs, - ) - session.run("isort", *python_code_path_list, **kwargs) - session.run("black", *python_code_path_list, **kwargs) - - -@nox.session(python=python_version_list) -def lint(session: Session) -> None: - env: dict[str, str] = {} - env.update(env_common) - kwargs: SessionKwargs = {"env": env} - - install_requirements(session, dev=True) # mypy may require dev packages - - session.run("flake8", "--statistics", "--count", "--show-source", *python_code_path_list, **kwargs) - session.run("autoflake8", "--check", "--recursive", "--remove-unused-variables", *python_code_path_list, **kwargs) - session.run("isort", "--check", *python_code_path_list, **kwargs) - session.run("black", "--check", *python_code_path_list, **kwargs) - session.run("mypy", "--check", "--no-incremental", *python_code_path_list, **kwargs) - - -@nox.session(python=python_version_list) -def test(session: Session) -> None: - env: dict[str, str] = {} - env.update(env_common) - kwargs: SessionKwargs = {"env": env} - - install_requirements(session) - requirements_dev_dict = load_requirements_dict(dev=True) - packages = ["pytest"] - session.install(*[f"{package}=={requirements_dev_dict[package]}" for package in packages]) - - session.run("pytest", **kwargs) diff --git a/pyproject.toml b/pyproject.toml index f1cee36..24f77c9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,7 +33,10 @@ packages = [ [tool.rye] managed = true -dev-dependencies = ["ruff>=0.6.2"] +dev-dependencies = [ + "ruff>=0.6.2", + "pyright>=1.1.377", +] [tool.hatch.metadata] allow-direct-references = true diff --git a/requirements-dev.lock b/requirements-dev.lock index df54261..5d66264 100644 --- a/requirements-dev.lock +++ b/requirements-dev.lock @@ -49,6 +49,8 @@ mdurl==0.1.2 # via markdown-it-py mypy-extensions==1.0.0 # via black +nodeenv==1.9.1 + # via pyright packaging==24.1 # via ansible-compat # via ansible-core @@ -64,6 +66,7 @@ pycparser==2.22 # via cffi pygments==2.18.0 # via rich +pyright==1.1.377 pyyaml==6.0.2 # via ansible-compat # via ansible-core diff --git a/src/ansible_lint_custom_strict_naming/__init__.py b/src/ansible_lint_custom_strict_naming/__init__.py index 7812ab9..fe32ecb 100644 --- a/src/ansible_lint_custom_strict_naming/__init__.py +++ b/src/ansible_lint_custom_strict_naming/__init__.py @@ -39,9 +39,7 @@ def get_tasks_name_from_tasks_file(file: Lintable) -> str: def is_registered_key(key: str) -> bool: - return key in set( - ( - FILENAME_KEY, - LINE_NUMBER_KEY, - ) - ) + return key in { + FILENAME_KEY, + LINE_NUMBER_KEY, + } diff --git a/src/rules/register_prefix.py b/src/rules/register_prefix.py index 3745b39..38d056c 100644 --- a/src/rules/register_prefix.py +++ b/src/rules/register_prefix.py @@ -1,4 +1,5 @@ # Standard Library +import typing as t from logging import NullHandler from logging import getLogger from pathlib import Path @@ -31,7 +32,7 @@ class RegisterPrefix(AnsibleLintRule): id = ID description = DESCRIPTION - tags = ["formatting"] + tags: t.ClassVar[list[str]] = ["formatting"] # pyright: ignore[reportIncompatibleVariableOverride] def matchtask(self, task: Task, file: Lintable | None = None) -> bool | str: if (task_result := task.get("register")) is None: diff --git a/src/rules/var_name_prefix.py b/src/rules/var_name_prefix.py index 0cfcb59..3310009 100644 --- a/src/rules/var_name_prefix.py +++ b/src/rules/var_name_prefix.py @@ -1,4 +1,5 @@ # Standard Library +import typing as t from logging import NullHandler from logging import getLogger from pathlib import Path @@ -35,7 +36,7 @@ class VarNamePrefix(AnsibleLintRule): id = ID description = DESCRIPTION - tags = ["formatting"] + tags: t.ClassVar[list[str]] = ["formatting"] # pyright: ignore[reportIncompatibleVariableOverride] def matchtask(self, task: Task, file: Lintable | None = None) -> UnmatchedType: match task.action: @@ -89,6 +90,7 @@ def match_task_for_include_role_module(self, task: Task, file: Lintable | None = # check vars prefix = f"{role_name}_role__arg__" completely_matched_name = f"{role_name}_role__args" + def validate_key_name(key: str): """keyが条件を満たすか""" if is_registered_key(key): @@ -106,7 +108,7 @@ def validate_key_name(key: str): filename=file, ) for key in task_vars.keys() - if not validate_key_name(key) + if not validate_key_name(key) ] def match_task_for_include_tasks_module(self, task: Task, file: Lintable | None = None) -> bool | list[MatchError]: @@ -120,6 +122,7 @@ def match_task_for_include_tasks_module(self, task: Task, file: Lintable | None # check vars prefix = f"{role_name}_tasks__arg__" completely_matched_name = f"{role_name}_tasks__args" + def validate_key_name(key: str): """keyが条件を満たすか""" if is_registered_key(key): From 91470c1f1d4aa697fcee330cb539df0985564b1c Mon Sep 17 00:00:00 2001 From: pollenjp Date: Tue, 27 Aug 2024 09:42:23 +0900 Subject: [PATCH 3/3] Add examples --- examples/sample1/.ansible-lint.yml | 0 examples/sample1/Makefile | 9 ++ examples/sample1/README.md | 42 ++++++++ examples/sample1/playbooks/debug.yml | 19 ++++ .../playbooks/roles/sample/tasks/main.yml | 16 +++ examples/sample1/playbooks/tasks/sample.yml | 13 +++ examples/sample1/pyproject.toml | 26 +++++ examples/sample1/requirements-dev.lock | 97 +++++++++++++++++++ examples/sample1/requirements.lock | 97 +++++++++++++++++++ pyproject.toml | 5 +- 10 files changed, 320 insertions(+), 4 deletions(-) create mode 100644 examples/sample1/.ansible-lint.yml create mode 100644 examples/sample1/Makefile create mode 100644 examples/sample1/README.md create mode 100644 examples/sample1/playbooks/debug.yml create mode 100644 examples/sample1/playbooks/roles/sample/tasks/main.yml create mode 100644 examples/sample1/playbooks/tasks/sample.yml create mode 100644 examples/sample1/pyproject.toml create mode 100644 examples/sample1/requirements-dev.lock create mode 100644 examples/sample1/requirements.lock diff --git a/examples/sample1/.ansible-lint.yml b/examples/sample1/.ansible-lint.yml new file mode 100644 index 0000000..e69de29 diff --git a/examples/sample1/Makefile b/examples/sample1/Makefile new file mode 100644 index 0000000..98778c8 --- /dev/null +++ b/examples/sample1/Makefile @@ -0,0 +1,9 @@ + +.PHONY: lint +lint: + rye run ansible-lint -vvv + +.PHONY: install +install: + rm -rf .venv + rye sync diff --git a/examples/sample1/README.md b/examples/sample1/README.md new file mode 100644 index 0000000..0828aee --- /dev/null +++ b/examples/sample1/README.md @@ -0,0 +1,42 @@ +# sample1 + +## sample output + +```sh +make lint +``` + +```log.txt +ansible-lint-custom-strict-naming: Variables in 'set_fact' should have a 'var__' prefix. +playbooks/debug.yml:8 Task/Handler: Set vars (playbooks/) + +fqcn[action-core]: Use FQCN for builtin module actions (set_fact). +playbooks/debug.yml:11 Use `ansible.builtin.set_fact` or `ansible.legacy.set_fact` instead. + +ansible-lint-custom-strict-naming: Variables in 'set_fact' should have a 'var__' prefix. +playbooks/debug.yml:14 Task/Handler: Set vars (playbooks/) + +ansible-lint-custom-strict-naming: Variables in 'set_fact' should have a 'sample_role__var__' prefix. +playbooks/roles/sample/tasks/main.yml:2 Task/Handler: Set vars (roles/) + +ansible-lint-custom-strict-naming: Variables in 'set_fact' should have a 'sample_role__var__' prefix. +playbooks/roles/sample/tasks/main.yml:5 Task/Handler: Set vars (roles/) + +fqcn[action-core]: Use FQCN for builtin module actions (set_fact). +playbooks/roles/sample/tasks/main.yml:8 Use `ansible.builtin.set_fact` or `ansible.legacy.set_fact` instead. + +ansible-lint-custom-strict-naming: Variables in 'set_fact' should have a 'sample_role__var__' prefix. +playbooks/roles/sample/tasks/main.yml:11 Task/Handler: Set vars (roles/) + +ansible-lint-custom-strict-naming: Variables in 'set_fact' should have a 'sample_tasks__var__' prefix. +playbooks/tasks/sample.yml:2 Task/Handler: Set vars (tasks/) + +ansible-lint-custom-strict-naming: Variables in 'set_fact' should have a 'sample_tasks__var__' prefix. +playbooks/tasks/sample.yml:5 Task/Handler: Set vars (tasks/) + +ansible-lint-custom-strict-naming: Variables in 'set_fact' should have a 'sample_tasks__var__' prefix. +playbooks/tasks/sample.yml:8 Task/Handler: Set vars (tasks/) + +ansible-lint-custom-strict-naming: Variables in 'set_fact' should have a 'sample_tasks__var__' prefix. +playbooks/tasks/sample.yml:11 Task/Handler: Set vars (tasks/) +``` diff --git a/examples/sample1/playbooks/debug.yml b/examples/sample1/playbooks/debug.yml new file mode 100644 index 0000000..48a54e3 --- /dev/null +++ b/examples/sample1/playbooks/debug.yml @@ -0,0 +1,19 @@ +--- +- name: "Debug" + hosts: localhost + tasks: + - name: "Debug (playbooks/)" + ansible.builtin.debug: + msg: "{{ ansible_facts }}" + - name: Set vars (playbooks/) + ansible.builtin.set_fact: + hoge: "hoge" + - name: Set vars (playbooks/) + set_fact: + hoge: "hoge" + - name: Set vars (playbooks/) + ansible.builtin.set_fact: + sample_role__hoge: "hoge" + - name: Include tasks (playbooks/) + ansible.builtin.include_tasks: + file: "./tasks/sample.yml" diff --git a/examples/sample1/playbooks/roles/sample/tasks/main.yml b/examples/sample1/playbooks/roles/sample/tasks/main.yml new file mode 100644 index 0000000..b1134c3 --- /dev/null +++ b/examples/sample1/playbooks/roles/sample/tasks/main.yml @@ -0,0 +1,16 @@ +--- +- name: Set vars (roles/) + ansible.builtin.set_fact: + my_var: "hoge" +- name: Set vars (roles/) + ansible.builtin.set_fact: + hoge: "hoge" +- name: Set vars (roles/) + set_fact: + hoge: "hoge" +- name: Set vars (roles/) + ansible.builtin.set_fact: + sample_role__hoge: "hoge" +- name: Debug + ansible.builtin.debug: + msg: "{{ sample_role__hoge }}" diff --git a/examples/sample1/playbooks/tasks/sample.yml b/examples/sample1/playbooks/tasks/sample.yml new file mode 100644 index 0000000..29cbcef --- /dev/null +++ b/examples/sample1/playbooks/tasks/sample.yml @@ -0,0 +1,13 @@ +--- +- name: Set vars (tasks/) + ansible.builtin.set_fact: + my_var: "hoge" +- name: Set vars (tasks/) + ansible.builtin.set_fact: + hoge: "hoge" +- name: Set vars (tasks/) + ansible.builtin.set_fact: + hoge: "hoge" +- name: Set vars (tasks/) + ansible.builtin.set_fact: + sample_role__hoge: "hoge" diff --git a/examples/sample1/pyproject.toml b/examples/sample1/pyproject.toml new file mode 100644 index 0000000..18433ee --- /dev/null +++ b/examples/sample1/pyproject.toml @@ -0,0 +1,26 @@ +[project] +name = "sample1" +version = "0.1.0" +description = "Add your description here" +authors = [{ name = "pollenjp", email = "polleninjp@gmail.com" }] +dependencies = [ + "ansible-lint>=6.21.1", + # "ansible-lint-custom-strict-naming>=0.1.0", + "ansible-lint-custom-strict-naming @ file:///${PROJECT_ROOT}/../..", +] +readme = "README.md" +requires-python = ">= 3.11" + +[build-system] +# use pdm for relative path dependencies +requires = ["pdm-backend"] +build-backend = "pdm.backend" + +[tool.rye] +managed = true +dev-dependencies = [] + +# [[tool.rye.sources]] +# name = "testpypi" +# url = "https://test.pypi.org/simple/" +# type = "index" diff --git a/examples/sample1/requirements-dev.lock b/examples/sample1/requirements-dev.lock new file mode 100644 index 0000000..1d16ac9 --- /dev/null +++ b/examples/sample1/requirements-dev.lock @@ -0,0 +1,97 @@ +# generated by rye +# use `rye lock` or `rye sync` to update this lockfile +# +# last locked with the following flags: +# pre: false +# features: [] +# all-features: false +# with-sources: false +# generate-hashes: false +# universal: false + +-e file:. +ansible-compat==24.8.0 + # via ansible-lint +ansible-core==2.17.3 + # via ansible-compat + # via ansible-lint +ansible-lint==24.7.0 + # via ansible-lint-custom-strict-naming + # via sample1 +ansible-lint-custom-strict-naming @ file:///${PROJECT_ROOT}/../.. + # via sample1 +attrs==24.2.0 + # via jsonschema + # via referencing +black==24.8.0 + # via ansible-lint +bracex==2.5 + # via wcmatch +cffi==1.17.0 + # via cryptography +click==8.1.7 + # via black +cryptography==43.0.0 + # via ansible-core +filelock==3.15.4 + # via ansible-lint +importlib-metadata==8.4.0 + # via ansible-lint +jinja2==3.1.4 + # via ansible-core +jsonschema==4.23.0 + # via ansible-compat + # via ansible-lint +jsonschema-specifications==2023.12.1 + # via jsonschema +markdown-it-py==3.0.0 + # via rich +markupsafe==2.1.5 + # via jinja2 +mdurl==0.1.2 + # via markdown-it-py +mypy-extensions==1.0.0 + # via black +packaging==24.1 + # via ansible-compat + # via ansible-core + # via ansible-lint + # via black +pathspec==0.12.1 + # via ansible-lint + # via black + # via yamllint +platformdirs==4.2.2 + # via black +pycparser==2.22 + # via cffi +pygments==2.18.0 + # via rich +pyyaml==6.0.2 + # via ansible-compat + # via ansible-core + # via ansible-lint + # via yamllint +referencing==0.35.1 + # via jsonschema + # via jsonschema-specifications +resolvelib==1.0.1 + # via ansible-core +rich==13.8.0 + # via ansible-lint +rpds-py==0.20.0 + # via jsonschema + # via referencing +ruamel-yaml==0.18.6 + # via ansible-lint +ruamel-yaml-clib==0.2.8 + # via ruamel-yaml +subprocess-tee==0.4.2 + # via ansible-compat + # via ansible-lint +wcmatch==9.0 + # via ansible-lint +yamllint==1.35.1 + # via ansible-lint +zipp==3.20.1 + # via importlib-metadata diff --git a/examples/sample1/requirements.lock b/examples/sample1/requirements.lock new file mode 100644 index 0000000..1d16ac9 --- /dev/null +++ b/examples/sample1/requirements.lock @@ -0,0 +1,97 @@ +# generated by rye +# use `rye lock` or `rye sync` to update this lockfile +# +# last locked with the following flags: +# pre: false +# features: [] +# all-features: false +# with-sources: false +# generate-hashes: false +# universal: false + +-e file:. +ansible-compat==24.8.0 + # via ansible-lint +ansible-core==2.17.3 + # via ansible-compat + # via ansible-lint +ansible-lint==24.7.0 + # via ansible-lint-custom-strict-naming + # via sample1 +ansible-lint-custom-strict-naming @ file:///${PROJECT_ROOT}/../.. + # via sample1 +attrs==24.2.0 + # via jsonschema + # via referencing +black==24.8.0 + # via ansible-lint +bracex==2.5 + # via wcmatch +cffi==1.17.0 + # via cryptography +click==8.1.7 + # via black +cryptography==43.0.0 + # via ansible-core +filelock==3.15.4 + # via ansible-lint +importlib-metadata==8.4.0 + # via ansible-lint +jinja2==3.1.4 + # via ansible-core +jsonschema==4.23.0 + # via ansible-compat + # via ansible-lint +jsonschema-specifications==2023.12.1 + # via jsonschema +markdown-it-py==3.0.0 + # via rich +markupsafe==2.1.5 + # via jinja2 +mdurl==0.1.2 + # via markdown-it-py +mypy-extensions==1.0.0 + # via black +packaging==24.1 + # via ansible-compat + # via ansible-core + # via ansible-lint + # via black +pathspec==0.12.1 + # via ansible-lint + # via black + # via yamllint +platformdirs==4.2.2 + # via black +pycparser==2.22 + # via cffi +pygments==2.18.0 + # via rich +pyyaml==6.0.2 + # via ansible-compat + # via ansible-core + # via ansible-lint + # via yamllint +referencing==0.35.1 + # via jsonschema + # via jsonschema-specifications +resolvelib==1.0.1 + # via ansible-core +rich==13.8.0 + # via ansible-lint +rpds-py==0.20.0 + # via jsonschema + # via referencing +ruamel-yaml==0.18.6 + # via ansible-lint +ruamel-yaml-clib==0.2.8 + # via ruamel-yaml +subprocess-tee==0.4.2 + # via ansible-compat + # via ansible-lint +wcmatch==9.0 + # via ansible-lint +yamllint==1.35.1 + # via ansible-lint +zipp==3.20.1 + # via importlib-metadata diff --git a/pyproject.toml b/pyproject.toml index 24f77c9..29cb3eb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,10 +33,7 @@ packages = [ [tool.rye] managed = true -dev-dependencies = [ - "ruff>=0.6.2", - "pyright>=1.1.377", -] +dev-dependencies = ["ruff>=0.6.2", "pyright>=1.1.377"] [tool.hatch.metadata] allow-direct-references = true