Skip to content

Update documentation, README, and contributor guide - #67

Merged
teknogeek0 merged 1 commit into
mainfrom
docs/markdown-and-attribution
Sep 29, 2026
Merged

teknogeek0 merged 1 commit into
mainfrom
docs/markdown-and-attribution

Conversation

@teknogeek0

Copy link
Copy Markdown
Collaborator

Documentation only. No code changes.

Re-platform

reStructuredText to Markdown. Sphinx, conf.py, the docs Makefiles,
.readthedocs.yaml and the generated docs/include tree are removed.
19 hand-written pages and 11 reference pages convert; GitHub renders them
directly.

Command help stays generated. Pages carry <!-- BEGIN HELP: ... --> markers
and docs/update-help-messages.sh rewrites the block between each pair, so one
page holds both the prose and the help for a command. make update-docs and
the CI docs check are unchanged. 57 help blocks across 10 pages.

Linting

.markdownlint-cli2.yaml, make lint-docs, one CI step. The image is pinned by
digest. Five rules are disabled with the reason recorded in the config. Nine
existing violations are fixed, including a duplicate heading that produced an
ambiguous anchor.

Content

  • Author attribution in the README, the docs landing page and the contributor
    guide, plus a note on how this fork is maintained.
  • Install page: container images at ghcr.io/planetscale/pgcopydb, version tags
    carry no leading v, and a source build with the Ubuntu 24.04 package list.
    Links the migration-scripts templates.
  • Plugin section covers pgoutput, the publication it manages, and the
    privileges that needs.
  • New docs/operations.md: deferred index builds, foreign key handling,
    same-table concurrency, restore tolerance, CDC disk use, source reconnects and
    timeline changes.

Packaging

The debian build generated man pages with Sphinx. That step, the
override_dh_installman target and the python3-sphinx build dependency are
removed. The package no longer ships a man page. The stale make docs target is
removed.

Checks

  • make lint-docs: clean across 21 files
  • make check-docs: passes in the container, "Docs are up to date"
  • Generator is idempotent; a marker naming an unknown command fails the run
  • Every relative link and heading anchor verified to resolve

Re-platform the documentation from reStructuredText to Markdown.
Remove Sphinx, its configuration, its Makefiles, and the generated
docs/include tree. GitHub renders the pages directly.

Command help stays generated. Each page marks where a help block goes:

    <!-- BEGIN HELP: pgcopydb clone -->
    ```
    ```
    <!-- END HELP -->

docs/update-help-messages.sh rewrites the text between the markers, so
prose and help share one page per command. make update-docs and the CI
docs check work as before. The script now fails when a marker names a
command that does not exist.

Add markdownlint. Configuration in .markdownlint-cli2.yaml, run by
make lint-docs, checked in CI.

Update author attribution in the README, the docs landing page, the
contributor guide, and add a note on how this fork is maintained.

Correct the install page: container images at
ghcr.io/planetscale/pgcopydb, whose version tags carry no leading "v",
and a source build with the current Ubuntu 24.04 package list. Link the
migration-scripts templates.

Cover pgoutput in the plugin section. Add docs/operations.md for the
options this project adds for large migrations.

Remove the Sphinx man page step and the python3-sphinx build dependency
from the debian packaging. Remove the stale make docs target.

@DmitriiAn DmitriiAn left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@teknogeek0
teknogeek0 merged commit ae48122 into main Sep 29, 2026
221 of 222 checks passed
@teknogeek0
teknogeek0 deleted the docs/markdown-and-attribution branch September 29, 2026 13:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants