From 7a8e281dd7ce55aa0193fcce5dd2970e2127f7e7 Mon Sep 17 00:00:00 2001 From: Erich Blume Date: Wed, 4 Feb 2026 08:18:56 -0800 Subject: [PATCH 1/2] Fix Quartz build to preserve git history for accurate file dates Build Quartz from within the blumeops repo instead of copying files to a separate location. This allows git to find file history for the CreatedModifiedDate plugin, eliminating the "not tracked by git" warnings. Changes: - Copy Quartz build system into workspace instead of vice versa - Use symlinks for content and CHANGELOG.md - Clean up build artifacts after creating tarball Co-Authored-By: Claude Opus 4.5 --- .forgejo/workflows/build-blumeops.yaml | 38 ++++++++++++------- .../changelog.d/fix-quartz-git-dates.infra.md | 1 + 2 files changed, 26 insertions(+), 13 deletions(-) create mode 100644 docs/changelog.d/fix-quartz-git-dates.infra.md diff --git a/.forgejo/workflows/build-blumeops.yaml b/.forgejo/workflows/build-blumeops.yaml index 5638ae5..b44b46f 100644 --- a/.forgejo/workflows/build-blumeops.yaml +++ b/.forgejo/workflows/build-blumeops.yaml @@ -147,35 +147,47 @@ jobs: echo "Node version: $(node --version)" echo "NPM version: $(npm --version)" - # Clone Quartz + # Clone Quartz to temp location git clone --depth 1 https://github.com/jackyzha0/quartz.git /tmp/quartz - cd /tmp/quartz + + # Copy Quartz build system into blumeops workspace + # This allows building from within the repo so git can find file history + cp -r /tmp/quartz/quartz "$GITHUB_WORKSPACE/" + cp /tmp/quartz/package.json "$GITHUB_WORKSPACE/" + cp /tmp/quartz/package-lock.json "$GITHUB_WORKSPACE/" + cp /tmp/quartz/tsconfig.json "$GITHUB_WORKSPACE/" + + cd "$GITHUB_WORKSPACE" # Install dependencies npm ci - # Copy our configuration (lives in docs/ to keep repo root clean) - cp "$GITHUB_WORKSPACE/docs/quartz.config.ts" . - cp "$GITHUB_WORKSPACE/docs/quartz.layout.ts" . + # Copy our configuration to workspace root + cp docs/quartz.config.ts . + cp docs/quartz.layout.ts . - # Copy docs as content (includes index.md) - rm -rf content - cp -r "$GITHUB_WORKSPACE/docs" content + # Symlink docs as content (preserves git history for accurate dates) + ln -s docs content - # Copy CHANGELOG.md from repo root into content so it's accessible in docs - cp "$GITHUB_WORKSPACE/CHANGELOG.md" content/ + # Symlink CHANGELOG.md into docs so it's part of the content + ln -s ../CHANGELOG.md docs/CHANGELOG.md - # Build + # Build (from within repo so git commands work) echo "Building static site..." npx quartz build # Create tarball TARBALL="docs-${VERSION}.tar.gz" echo "Creating tarball: $TARBALL" - tar -czf "$GITHUB_WORKSPACE/$TARBALL" -C public . + tar -czf "$TARBALL" -C public . echo "Build complete!" - ls -lh "$GITHUB_WORKSPACE/$TARBALL" + ls -lh "$TARBALL" + + # Clean up Quartz build artifacts (keep tarball) + rm -rf quartz content public node_modules + rm -f package.json package-lock.json tsconfig.json quartz.config.ts quartz.layout.ts + rm -f docs/CHANGELOG.md # Remove symlink - name: Create release env: diff --git a/docs/changelog.d/fix-quartz-git-dates.infra.md b/docs/changelog.d/fix-quartz-git-dates.infra.md new file mode 100644 index 0000000..3020a00 --- /dev/null +++ b/docs/changelog.d/fix-quartz-git-dates.infra.md @@ -0,0 +1 @@ +Fix Quartz build to preserve git history for accurate file dates -- 2.50.1 (Apple Git-155) From b361383051fc2b0b37d84bf86f9ade3c3c784852 Mon Sep 17 00:00:00 2001 From: Erich Blume Date: Wed, 4 Feb 2026 08:24:54 -0800 Subject: [PATCH 2/2] Fix misc changelog type to show content The showcontent=false setting expected issue-number-style fragment names. Since blumeops uses branch names for fragments, change to showcontent=true so the content is displayed like other fragment types. Co-Authored-By: Claude Opus 4.5 --- docs/changelog.d/fix-quartz-git-dates.doc.md | 1 + docs/how-to/update-documentation.md | 2 +- towncrier.toml | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 docs/changelog.d/fix-quartz-git-dates.doc.md diff --git a/docs/changelog.d/fix-quartz-git-dates.doc.md b/docs/changelog.d/fix-quartz-git-dates.doc.md new file mode 100644 index 0000000..84db7ed --- /dev/null +++ b/docs/changelog.d/fix-quartz-git-dates.doc.md @@ -0,0 +1 @@ +Fix misc changelog fragment type to show content (was showing empty entries) diff --git a/docs/how-to/update-documentation.md b/docs/how-to/update-documentation.md index 872dedb..9f6753d 100644 --- a/docs/how-to/update-documentation.md +++ b/docs/how-to/update-documentation.md @@ -56,7 +56,7 @@ Fragments are automatically collected into `CHANGELOG.md` (at repo root) during | `bugfix` | `bugfix/` | Bug fixes | | `infra` | `infra/` | Infrastructure changes | | `doc` | `doc/` | Documentation updates | -| `misc` | `misc/` | Other (content hidden in changelog) | +| `misc` | `misc/` | Other changes | ## Runner Environment diff --git a/towncrier.toml b/towncrier.toml index 199f4ea..387040f 100644 --- a/towncrier.toml +++ b/towncrier.toml @@ -37,4 +37,4 @@ showcontent = true [[tool.towncrier.type]] directory = "misc" name = "Miscellaneous" -showcontent = false +showcontent = true -- 2.50.1 (Apple Git-155)