diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index e0019d4..4d0ff22 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -18,8 +18,6 @@ jobs: strategy: matrix: python-version: - - "3.8" - - "3.9" - "3.10" - "3.11" system: @@ -70,7 +68,7 @@ jobs: - run: | mk python-release owner=vkottler \ - repo=vmklib version=1.10.5 + repo=vmklib version=1.10.6 if: | matrix.python-version == '3.11' && matrix.system == 'ubuntu-latest' diff --git a/.gitignore b/.gitignore index ef25f89..1b819fe 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ htmlcov coverage*.xml tags mklocal +docs diff --git a/README.md b/README.md index 8e20b04..d6c7c90 100644 --- a/README.md +++ b/README.md @@ -2,11 +2,11 @@ ===================================== generator=datazen version=3.1.2 - hash=88bf2ea3b66818e76a080f80b80e5839 + hash=da4d4c6d28f923c7af8cddbc7ef94455 ===================================== --> -# vmklib ([1.10.5](https://pypi.org/project/vmklib/)) +# vmklib ([1.10.6](https://pypi.org/project/vmklib/)) [![python](https://img.shields.io/pypi/pyversions/vmklib.svg)](https://pypi.org/project/vmklib/) ![Build Status](https://github.com/vkottler/vmklib/workflows/Python%20Package/badge.svg) @@ -29,8 +29,6 @@ This package is tested with the following Python minor versions: -* [`python3.8`](https://docs.python.org/3.8/) -* [`python3.9`](https://docs.python.org/3.9/) * [`python3.10`](https://docs.python.org/3.10/) * [`python3.11`](https://docs.python.org/3.11/) diff --git a/config b/config index fe54bd7..713208b 160000 --- a/config +++ b/config @@ -1 +1 @@ -Subproject commit fe54bd7904feb629013ede54268ec7823f05535c +Subproject commit 713208b1cebe73d2a19e0266052f442f6bffdec7 diff --git a/im/pydeps.svg b/im/pydeps.svg index 8b81b80..3097bde 100644 --- a/im/pydeps.svg +++ b/im/pydeps.svg @@ -4,1039 +4,1101 @@ - - + + G - + __main__ - -__main__ + +__main__ pkg_resources - -pkg_resources + +pkg_resources __main__->pkg_resources - - + + - + vmklib_resources - -vmklib. -resources + +vmklib. +resources pkg_resources->vmklib_resources - - + + vcorelib - -vcorelib + +vcorelib - + vmklib_app - -vmklib.app + +vmklib.app vcorelib->vmklib_app - - - + + + - + + +vmklib_entry + +vmklib.entry + + +vcorelib->vmklib_entry + + + + + vcorelib->vmklib_resources - - - + + + - + vmklib_tasks - -vmklib.tasks + +vmklib.tasks - + vcorelib->vmklib_tasks - - + + - + vmklib_tasks_clean - -vmklib. -tasks. -clean + +vmklib. +tasks. +clean - + vcorelib->vmklib_tasks_clean - - + + - + vmklib_tasks_mixins_concrete - -vmklib. -tasks. -mixins. -concrete + +vmklib. +tasks. +mixins. +concrete - + vcorelib->vmklib_tasks_mixins_concrete - - - + + - + vmklib_tasks_mixins_curl - -vmklib. -tasks. -mixins. -curl + +vmklib. +tasks. +mixins. +curl - + vcorelib->vmklib_tasks_mixins_curl - - + + - + vmklib_tasks_node - -vmklib. -tasks. -node + +vmklib. +tasks. +node - + vcorelib->vmklib_tasks_node - - - + + - + vmklib_tasks_python - -vmklib. -tasks. -python + +vmklib. +tasks. +python - + vcorelib->vmklib_tasks_python - - - + + + - + vmklib_tasks_python_build - -vmklib. -tasks. -python. -build + +vmklib. +tasks. +python. +build - + vcorelib->vmklib_tasks_python_build - - + + + - + vmklib_tasks_python_datazen - -vmklib. -tasks. -python. -datazen + +vmklib. +tasks. +python. +datazen - + vcorelib->vmklib_tasks_python_datazen - - + + - + vmklib_tasks_python_docs - -vmklib. -tasks. -python. -docs + +vmklib. +tasks. +python. +docs - + vcorelib->vmklib_tasks_python_docs - - + + - + vmklib_tasks_python_lint - -vmklib. -tasks. -python. -lint + +vmklib. +tasks. +python. +lint - + vcorelib->vmklib_tasks_python_lint - - - + + + + + - + vmklib_tasks_python_package - -vmklib. -tasks. -python. -package + +vmklib. +tasks. +python. +package - + vcorelib->vmklib_tasks_python_package - - - + - + vmklib_tasks_python_release - -vmklib. -tasks. -python. -release + +vmklib. +tasks. +python. +release - + vcorelib->vmklib_tasks_python_release - - - - - + + - + vmklib_tasks_python_sa - -vmklib. -tasks. -python. -sa + +vmklib. +tasks. +python. +sa - + vcorelib->vmklib_tasks_python_sa - - + + + - + vmklib_tasks_python_test - -vmklib. -tasks. -python. -test + +vmklib. +tasks. +python. +test - + vcorelib->vmklib_tasks_python_test - - - + + + - + vmklib_tasks_python_yaml - -vmklib. -tasks. -python. -yaml + +vmklib. +tasks. +python. +yaml - + vcorelib->vmklib_tasks_python_yaml - - - + + - + vmklib_tasks_release - -vmklib. -tasks. -release + +vmklib. +tasks. +release - + vcorelib->vmklib_tasks_release - - + + - + vmklib_tasks_venv - -vmklib. -tasks. -venv + +vmklib. +tasks. +venv - + vcorelib->vmklib_tasks_venv - - + + vcorelib_asyncio - -vcorelib. -asyncio + +vcorelib. +asyncio - + vcorelib_task_manager - -vcorelib. -task. -manager + +vcorelib. +task. +manager - + vcorelib_asyncio->vcorelib_task_manager - - - + + + - + vcorelib_task_subprocess_run - -vcorelib. -task. -subprocess. -run + +vcorelib. +task. +subprocess. +run - + vcorelib_asyncio->vcorelib_task_subprocess_run - - - + + + - + vcorelib_asyncio->vmklib_tasks_mixins_curl - - + + + vcorelib_asyncio_cli - -vcorelib. -asyncio. -cli + +vcorelib. +asyncio. +cli - + vcorelib_asyncio_cli->vcorelib_task_subprocess_run - - + + + - + vcorelib_asyncio_cli->vmklib_tasks_mixins_curl - - - + vcorelib_dict - -vcorelib.dict + +vcorelib.dict - + vcorelib_task - -vcorelib.task + +vcorelib.task - + vcorelib_dict->vcorelib_task - - + + - + vcorelib_dict->vcorelib_task_manager - + + - + vcorelib_dict->vmklib_app - - + + + - + vcorelib_dict->vmklib_tasks_venv - - + + vcorelib_io - -vcorelib.io + +vcorelib.io - + vcorelib_io->vmklib_app - + - + +vcorelib_logging + +vcorelib. +logging + + + +vcorelib_logging->vcorelib_asyncio + + + + + +vcorelib_logging->vcorelib_asyncio_cli + + + + + +vcorelib_logging->vcorelib_dict + + + + + +vcorelib_logging->vcorelib_task + + + + + +vcorelib_logging->vmklib_entry + + + + + + + vcorelib_paths - -vcorelib.paths + +vcorelib.paths - + vcorelib_python - -vcorelib. -python + +vcorelib. +python - + vcorelib_paths->vcorelib_python - - + + - + vcorelib_paths->vmklib_resources - - + + - + vcorelib_paths->vmklib_tasks_mixins_concrete - - + + - + vcorelib_paths->vmklib_tasks_python_docs - - - + + + + - + vcorelib_paths_context - -vcorelib. -paths. -context + +vcorelib. +paths. +context - + vcorelib_paths_context->vmklib_tasks_python_docs - - + + + + + +vcorelib_platform + +vcorelib. +platform + + + +vcorelib_platform->vcorelib_task_subprocess_run + + + + + +vcorelib_platform->vmklib_tasks_python_lint + + - + vcorelib_python->vmklib_tasks_python - + + - + vcorelib_target - -vcorelib. -target + +vcorelib. +target - + vcorelib_target->vcorelib_task - - + + + - + vcorelib_target->vcorelib_task_manager - - - + - + vcorelib_target->vmklib_app - - - - + + + - + vcorelib_target->vmklib_tasks_mixins_concrete - - - + + - + vcorelib_task->vcorelib_python - - + + - + vcorelib_task->vmklib_app - - + - + vcorelib_task->vmklib_tasks - - + + - + vcorelib_task->vmklib_tasks_clean - - + + - + vcorelib_task->vmklib_tasks_mixins_concrete - - + + + - + vcorelib_task->vmklib_tasks_mixins_curl - - + + - + vcorelib_task->vmklib_tasks_node - - + + - + vcorelib_task->vmklib_tasks_python_build - - + + + - + vcorelib_task->vmklib_tasks_python_datazen - - + + - + vcorelib_task->vmklib_tasks_python_docs - - + + + + + - + vcorelib_task->vmklib_tasks_python_lint - - + - + vcorelib_task->vmklib_tasks_python_package - - - - - - - + + + + + - + vcorelib_task->vmklib_tasks_python_release - - - + + + - + vcorelib_task->vmklib_tasks_python_sa - - - + + - + vcorelib_task->vmklib_tasks_python_test - - - - + + - + vcorelib_task->vmklib_tasks_python_yaml - - + + + - + vcorelib_task->vmklib_tasks_release - - - + + + - + vcorelib_task->vmklib_tasks_venv - - + + - + vcorelib_task_manager->vmklib_app - - + + - + vcorelib_task_manager->vmklib_tasks_node - - + + - + vcorelib_task_manager->vmklib_tasks_python_build - + + + - + vcorelib_task_manager->vmklib_tasks_python_datazen - - + + + - + vcorelib_task_manager->vmklib_tasks_python_docs - - - + + - + vcorelib_task_manager->vmklib_tasks_python_lint - - - + + + - + vcorelib_task_manager->vmklib_tasks_python_package - - - - + + - + vcorelib_task_manager->vmklib_tasks_python_release - + + + + + - + vcorelib_task_manager->vmklib_tasks_python_sa - - + + + - + vcorelib_task_manager->vmklib_tasks_python_test - - + + + - + vcorelib_task_manager->vmklib_tasks_python_yaml - - + + - + vcorelib_task_manager->vmklib_tasks_venv - - + + - + vcorelib_task_subprocess - -vcorelib. -task. -subprocess + +vcorelib. +task. +subprocess - + vcorelib_task_subprocess->vcorelib_python - - + + - + vcorelib_task_subprocess->vmklib_tasks_mixins_curl - - + + - + vcorelib_task_subprocess->vmklib_tasks_node - - - + + - + vcorelib_task_subprocess->vmklib_tasks_python_build - - + - + vcorelib_task_subprocess->vmklib_tasks_python_datazen - - - - + + + - + vcorelib_task_subprocess->vmklib_tasks_python_docs - - - + - + vcorelib_task_subprocess->vmklib_tasks_python_lint - + + - + vcorelib_task_subprocess->vmklib_tasks_python_package - - - + + - + vcorelib_task_subprocess->vmklib_tasks_python_test - - - + + + - + vcorelib_task_subprocess->vmklib_tasks_python_yaml - - - + + + - + vcorelib_task_subprocess->vmklib_tasks_venv - - - - + + - + vcorelib_task_subprocess_run->vcorelib_python - - - - + + - + vcorelib_task_subprocess_run->vmklib_tasks_mixins_curl - - - + + + - + vcorelib_task_subprocess_run->vmklib_tasks_node - + + + + - + vcorelib_task_subprocess_run->vmklib_tasks_python_build - + - + vcorelib_task_subprocess_run->vmklib_tasks_python_datazen - - - + + - + vcorelib_task_subprocess_run->vmklib_tasks_python_docs - + + - + vcorelib_task_subprocess_run->vmklib_tasks_python_lint - - - + + - + vcorelib_task_subprocess_run->vmklib_tasks_python_package - - - + + + - + vcorelib_task_subprocess_run->vmklib_tasks_python_test - - + + - + vcorelib_task_subprocess_run->vmklib_tasks_python_yaml - - + + - + vcorelib_task_subprocess_run->vmklib_tasks_venv - - + + + + - -vmklib___main__ - -vmklib. -__main__ - - -vmklib_entry - -vmklib.entry +vmklib___main__ + +vmklib. +__main__ - + vmklib_app->vmklib_entry - - + + - + vmklib_entry->vmklib___main__ - - + + - + vmklib_resources->vmklib_app - - + + - + vmklib_tasks_args - -vmklib. -tasks. -args + +vmklib. +tasks. +args - + vmklib_tasks_args->vmklib_tasks_python_build - - - + + + - + vmklib_tasks_args->vmklib_tasks_python_datazen - - - + + + - + vmklib_tasks_args->vmklib_tasks_python_docs - - + + - + vmklib_tasks_args->vmklib_tasks_python_lint - + + - + vmklib_tasks_args->vmklib_tasks_python_test - - + + - + vmklib_tasks_github - -vmklib. -tasks. -github + +vmklib. +tasks. +github - + vmklib_tasks_github->vmklib_tasks_release - - + + - + vmklib_tasks_mixins - -vmklib. -tasks. -mixins + +vmklib. +tasks. +mixins - + vmklib_tasks_mixins->vmklib_tasks_github - - + + - + vmklib_tasks_mixins->vmklib_tasks_python_build - - - + + - + vmklib_tasks_mixins->vmklib_tasks_python_package - - - + + - + vmklib_tasks_mixins->vmklib_tasks_release - + + + - + vmklib_tasks_mixins->vmklib_tasks_venv - - + + - + vmklib_tasks_mixins_concrete->vmklib_tasks_mixins - - + + - + vmklib_tasks_mixins_concrete->vmklib_tasks_python_build - - + - + vmklib_tasks_mixins_concrete->vmklib_tasks_python_package - + + - + vmklib_tasks_mixins_concrete->vmklib_tasks_venv - - + + - + vmklib_tasks_mixins_curl->vmklib_tasks_mixins - - + + - + vmklib_tasks_python->vmklib_tasks_venv - - + + - + vmklib_tasks_python_lint->vmklib_tasks_python_sa - - + + - + vmklib_tasks_release->vmklib_tasks_python_release - + diff --git a/local/configs/python.yaml b/local/configs/python.yaml index e7a2519..4952efd 100644 --- a/local/configs/python.yaml +++ b/local/configs/python.yaml @@ -4,7 +4,7 @@ author_info: email: "vaughnkottler@gmail.com" username: "vkottler" -versions: ["3.8", "3.9", "3.10", "3.11"] +versions: ["3.10", "3.11"] systems: - macos-latest diff --git a/local/variables/package.yaml b/local/variables/package.yaml index d5ab470..fb4efb0 100644 --- a/local/variables/package.yaml +++ b/local/variables/package.yaml @@ -1,5 +1,5 @@ --- major: 1 minor: 10 -patch: 5 +patch: 6 entry: mk diff --git a/pyproject.toml b/pyproject.toml index eb570f9..1d3efb1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,10 +4,10 @@ build-backend = "setuptools.build_meta:__legacy__" [project] name = "vmklib" -version = "1.10.5" +version = "1.10.6" description = "Simplify project workflows by standardizing use of GNU Make." readme = "README.md" -requires-python = ">=3.8" +requires-python = ">=3.10" license = {file = "LICENSE"} keywords = [ "workflow", @@ -22,8 +22,6 @@ maintainers = [ ] classifiers = [ "Topic :: Software Development :: Build Tools", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Operating System :: Microsoft :: Windows", @@ -46,6 +44,8 @@ test = [ "yamllint", "yambs", "vmklib", + "sphinx", + "sphinx-book-theme", "pytest-asyncio", "setuptools-wrapper" ] diff --git a/setup.py b/setup.py index a220a80..e59f5b7 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,7 @@ # ===================================== # generator=datazen # version=3.1.2 -# hash=c29553a5eb8c58f39d08f72dfa51d217 +# hash=b10cdc2e4759a797bc0d36b525de6ade # ===================================== """ @@ -28,8 +28,6 @@ "version": VERSION, "description": DESCRIPTION, "versions": [ - "3.8", - "3.9", "3.10", "3.11", ], diff --git a/vmklib/__init__.py b/vmklib/__init__.py index e545fb3..fd05073 100644 --- a/vmklib/__init__.py +++ b/vmklib/__init__.py @@ -1,7 +1,7 @@ # ===================================== # generator=datazen # version=3.1.2 -# hash=79a57999c836bffe25c48570db6699ea +# hash=08161d666b1ba6755b8b52d5679ad51c # ===================================== """ @@ -10,4 +10,4 @@ DESCRIPTION = "Simplify project workflows by standardizing use of GNU Make." PKG_NAME = "vmklib" -VERSION = "1.10.5" +VERSION = "1.10.6" diff --git a/vmklib/dev_requirements.txt b/vmklib/dev_requirements.txt index 8011bc6..7515f10 100644 --- a/vmklib/dev_requirements.txt +++ b/vmklib/dev_requirements.txt @@ -7,5 +7,7 @@ isort yamllint yambs vmklib +sphinx +sphinx-book-theme pytest-asyncio setuptools-wrapper diff --git a/vmklib/entry.py b/vmklib/entry.py index 9c90c9c..870cdf3 100644 --- a/vmklib/entry.py +++ b/vmklib/entry.py @@ -1,7 +1,7 @@ # ===================================== # generator=datazen # version=3.1.2 -# hash=334b3aaa0057809fb4013ea7760483a9 +# hash=745689313e0947f30ccf35892bb72cd4 # ===================================== """ @@ -10,12 +10,14 @@ # built-in import argparse -import logging import os from pathlib import Path import sys from typing import List +# third-party +from vcorelib.logging import init_logging, logging_args + # internal from vmklib import DESCRIPTION, VERSION from vmklib.app import add_app_args, entry @@ -38,12 +40,7 @@ def main(argv: List[str] = None) -> int: action="version", version=f"%(prog)s {VERSION}", ) - parser.add_argument( - "-v", - "--verbose", - action="store_true", - help="set to increase logging verbosity", - ) + logging_args(parser) parser.add_argument( "-C", "--dir", @@ -63,10 +60,8 @@ def main(argv: List[str] = None) -> int: args.dir = args.dir.resolve() # initialize logging - log_level = logging.DEBUG if args.verbose else logging.INFO - logging.basicConfig( - level=log_level, - format="%(name)-36s - %(levelname)-6s - %(message)s", + init_logging( + args, default_format="%(name)-36s - %(levelname)-6s - %(message)s" ) # change to the specified directory