Skip to content

feat: publish the archived release PDFs, and archive new ones automatically - #21

Merged
achubaty merged 3 commits into
mainfrom
feat/publish-pdf-archive
Sep 21, 2026
Merged

achubaty merged 3 commits into
mainfrom
feat/publish-pdf-archive

Conversation

@achubaty

Copy link
Copy Markdown
Collaborator

Draft: depends on PredictiveEcology/SpaDES.docs#16, which adds
publishManualArchive(). Also best merged after #20, which stops committing
docs/.

The four archived manuals (v1.0.0–v1.0.3, ~7 MB) are tracked under
archive/pdf/ and have never reached the site — archive/ sits at the project
root while the deploy publishes docs/.

change effect
publishManualArchive() in build.R copies the archive into docs/archive/pdf/ and writes an index page built from the files present
static link in the preface to archive/ never needs editing; the page behind it regenerates each build
version from DESCRIPTION build.R hardcoded "1.0.4" with an "update this for each new release" comment — a second source of truth, and a step to forget
"Archive the release PDF" workflow step commits a newly archived PDF back to main as the bot

The workflow step is self-gating: archiveManualPDF() writes
archive/pdf/LandR-manual-v<version>.pdf only when a PDF was rendered and
that version is not already archived. So it is a no-op on ordinary builds, needs
no separate release trigger, and cannot be skipped at release time.

Not yet exercised

No PDF is produced today — _output.yml declares pdf_book but build.R
renders bs4_book only, because xelatex + krantz.cls + biblatex are unproven
on modern R. So this PR publishes the four existing archives and leaves the
release path dormant until the PDF builds. Getting the PDF working is the
prerequisite for the release scheme, and is worth its own issue.

🤖 Generated with Claude Code

achubaty and others added 3 commits September 21, 2026 11:03
…ically

The four archived manuals (v1.0.0-v1.0.3) are tracked under archive/pdf/ but
have never reached the site: archive/ is at the project root while the deploy
publishes docs/.

- publishManualArchive() copies them into docs/archive/pdf/ and indexes them
- the preface links to archive/ statically, so nothing needs editing per release
- the version comes from DESCRIPTION rather than being hardcoded here
- a workflow step commits a newly archived PDF back to main, self-gating so it
  is a no-op unless a PDF was rendered for an unarchived version

Depends on SpaDES.docs#16 for publishManualArchive().

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@achubaty
achubaty marked this pull request as ready for review September 21, 2026 18:14
@achubaty
achubaty merged commit 7a9bb4f into main Sep 21, 2026
2 checks passed
@achubaty
achubaty deleted the feat/publish-pdf-archive branch September 21, 2026 19:43
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.

1 participant