Metadata-Version: 2.4
Name: minchin.tasks
Version: 1.1.0
Summary: Common development tasks (lint, format, test, ...) for use with Invoke.
Author-email: William Minchin <w_minchin@hotmail.com>
License-Expression: MIT
Project-URL: Bug Tracker, https://github.com/MinchinWeb/minchin.tasks/issues
Project-URL: Repository, https://github.com/MinchinWeb/minchin.tasks
Project-URL: Changelog, https://github.com/MinchinWeb/minchin.tasks/blob/master/CHANGELOG.rst
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Natural Language :: English
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Environment :: Console
Requires-Python: >=3.9
Description-Content-Type: text/x-rst
License-File: LICENSE.txt
Requires-Dist: invoke>=2.0.0
Requires-Dist: minchin-text>=7.0.0
Requires-Dist: taplo
Requires-Dist: validate-pyproject
Dynamic: license-file

Minchin.Tasks
=============

Common development tasks for use with `Invoke <https://www.pyinvoke.org/>`_.
Defaults to a ``uv`` and ``ruff`` setup, but should continue to work with
``black``, ``isort``, and ``pip-tools``. Useful for applying my in-house Python
style, see https://github.com/minchinweb/python-style-guide

In your ``tasks.py`` (import each for clarity)::

    from minchin.tasks import check, format_code, lint, test, update, upgrade  # noqa: F401
    from minchin.tasks import pelican_build  # noqa: F401


This gives you:

- ``invoke update`` -- update requirements to the current versions
- ``invoke upgrade`` -- install the locked requirements
- ``invoke lint`` -- report only format check, including ``pyproject.toml``
- ``invoke format`` -- fix formatting issues
- ``invoke test`` -- run ``pytest``.
- ``invoke check`` -- ``lint`` and ``test``.
- ``invoke pelican-build`` -- build the local Pelican site
