From 8de166af0ad4e0e276be824d476e740a9a5270e3 Mon Sep 17 00:00:00 2001 From: Ngo Quoc Dat Date: Sun, 18 Oct 2026 10:21:25 +0700 Subject: [PATCH] docs: one universal DMG, and changelog blocks from notes.py --- AGENTS.md | 2 +- installation.mdx | 8 ++++---- scripts/check-docs-against-source.py | 12 ++++-------- 3 files changed, 9 insertions(+), 13 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 21134d8b..8b792747 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -40,7 +40,7 @@ Run the three scripts against an app checkout at the `main` the change describes - **A change that documents an app change** opens as a draft pull request whose description names the app pull request (`TableProApp/TablePro#1234`). CI checks against the app's `main`, so it goes green once the app pull request merges; mark it ready then. - **The daily run** catches an app change that broke a claim here. Fix the page, not the check. -- **Releases.** The `release` skill in the app repository pushes the version's `` block in `changelog.mdx` straight to `main`. Every version in the app's `CHANGELOG.md` must be on that page. +- **Releases.** For each stable release, the app's `release` skill opens a `docs(changelog): vX.Y.Z` pull request whose `` block in `changelog.mdx` is written by the app's `scripts/release/notes.py docs`, and merges it once the release is published. Every version in the app's `CHANGELOG.md` must be on that page. ## Writing style diff --git a/installation.mdx b/installation.mdx index 235bf47b..80fe0ebd 100644 --- a/installation.mdx +++ b/installation.mdx @@ -3,12 +3,12 @@ title: Installation description: Install TablePro via Homebrew or DMG on macOS 13.0+ --- -Homebrew is the short route: `brew install --cask tablepro` picks the build that matches your Mac. Everyone else takes the DMG, and that is the one route where you match the architecture yourself. +Homebrew is the short route: `brew install --cask tablepro`. Everyone else takes the DMG. ## System requirements - **macOS**: 13.0 (Ventura) or later -- **Architecture**: Apple Silicon (M1 or later) or Intel x86_64 +- **Architecture**: Apple Silicon (M1 or later) or Intel x86_64, one universal app for both Native Apple frameworks only, so there is no Java or .NET runtime to install first. The download is about 20 MB. @@ -24,8 +24,8 @@ brew uninstall --zap tablepro # remove the app and its data ## The DMG - - Release assets carry the version and the architecture: `TablePro--arm64.dmg` and `TablePro--x86_64.dmg`. Check which you need under **Apple menu > About This Mac**, where Chip means Apple Silicon and Processor means Intel. Both are on [GitHub Releases](https://github.com/TableProApp/TablePro/releases). + + Download `TablePro-.dmg` from [GitHub Releases](https://github.com/TableProApp/TablePro/releases). The same file runs on every supported Mac. Open the DMG and drag **TablePro** onto the **Applications** shortcut. diff --git a/scripts/check-docs-against-source.py b/scripts/check-docs-against-source.py index a1f9993b..fdb4954f 100755 --- a/scripts/check-docs-against-source.py +++ b/scripts/check-docs-against-source.py @@ -220,14 +220,10 @@ def check_pluginkit_version(root: Path, docs: Path) -> list[str]: def check_changelog_parity(root: Path, docs: Path) -> list[str]: """Every release in CHANGELOG.md must appear on the changelog page. - The two are not copies of each other and must not be generated from one another: - 0.67.0 is 201 terse entries in CHANGELOG.md and 113 merged, longer ones on the - page, because the page is edited for readers and the file is edited for the - release notes. What they must agree on is which versions exist. - - The check is deliberately one-way. The page may carry a version the file does not, - which is how 0.39.0 is documented: it was tagged and shipped, failed to launch with - errno 163, and 0.39.1 replaced it the same day. + The app's scripts/release/notes.py docs writes each stable's block from its CHANGELOG.md + section. The check stays one-way: the page may carry a version the file does not, which is + how 0.39.0 is documented. It shipped, failed to launch with errno 163, and 0.39.1 replaced it + the same day. """ shipped = set( re.findall(r"^## \[([0-9][^\]]*)\]", (root / "CHANGELOG.md").read_text(), re.M)