Skip to main content

zendev-review

zendev-review owns reusable commit and pull-request message checks. It depends on zendev-commit so title and complete-message checks reuse commit profiles instead of copying commit semantics.

uv add --dev zendev-review
uvx --from zendev-review zendev-message check --help

The complete zendev distribution exposes the same command as zendev message check.

Python API

from zendev.body import BodySection, validate_body

valid, headings = validate_body(
    "## Motivation\n\nWhy.\n\n## Solution\n\nHow.\n",
    [BodySection("Motivation"), BodySection("Solution")],
)
assert valid
assert headings == ["Motivation", "Solution"]

Message check

uvx --from zendev-review zendev-message check --title --text "✨ feat: add export"
uvx --from zendev-review zendev-message check --title --profile gitmoji --text ":sparkles: Add export"
uvx --from zendev-review zendev-message check --body --text "$PR_BODY" \
    --template .github/pull_request_template.md \
    --require-checklist

See zendev-commit for profile semantics.

The body section contract is:

  • every template H2 is required by default
  • <!-- pr-body:optional --> makes the following H2 optional
  • <!-- pr-body:required --> explicitly marks the following H2 as required
  • present sections must retain template order
  • undeclared, duplicate, ambiguous, and dangling sections or directives fail
  • directives and headings inside fenced code blocks are ignored

When --require-checklist is present, every checked - [x] row under the configured checklist H2 must occur in the PR body. --fail-on-empty-checklist makes an empty template checklist fail instead of becoming a no-op.

The composite Actions expose the same behavior for GitHub workflows.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zendev_review-0.3.0-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file zendev_review-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: zendev_review-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for zendev_review-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ae603209c4ad6388e0999feaf4c85c4cf00da1f0b00560bacdada2e1b1e5064f
MD5 f96e21d2718b44eda54711891635296f
BLAKE2b-256 eefa7680f48b5221f8c57848bfd72c5490ed0ee1e0f95e2ccca0b675ae868599

See more details on using hashes here.

Provenance

The following attestation bundles were made for zendev_review-0.3.0-py3-none-any.whl:

Publisher: cd-release.yml on zendev-lab/zendev

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.4.0

1 file

This release

0.3.0 This release

1 file

0.2.2

1 file

0.2.1

1 file

0.2.0

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page