Skip to content

Add screenshots.py --seed-board and Restore Jumpbox screenshots - #74

Merged
bonelifer merged 1 commit into
mainfrom
screenshots-seed-board
Nov 13, 2026
Merged

bonelifer merged 1 commit into
mainfrom
screenshots-seed-board

Conversation

@bonelifer

Copy link
Copy Markdown
Contributor

Summary

screenshots.py could only shoot on a board from setup-board.sh, and that script only builds phpBB 3.3 releases. So phpBB 4.0-only extensions, such as Restore Jumpbox, had no screenshot recipe.

  • --seed-board BOARD_ROOT (-S): takes an extension's screenshots on an installed seed-forum board that already has the extension enabled. It uses _board.SeedBoard, the same class behind feature_checks.py --seed-board and page_a11y.py --seed-board. seed-forum already builds master boards and boards from open phpbb/phpbb pull requests (board.phpbb_pull_request), and db-matrix.sh -P N -k builds one and keeps it. That made this option a smaller change than teaching setup-board.sh a second way to clone and install master and pull requests. The board is not reset: only its name and description change for the screenshots, and both are put back afterwards. --seed and --with are refused with --seed-board, since seed-forum seeds the board and enables what it needs. The steps that serve the board and run the recipe moved into take_shots(), so both kinds of board go through the same code.
  • shots_restorejumpbox: the "Jump to" list opened at the bottom of General Discussion, a topic page and a phone-width forum page, all as a guest. The list shows the nested Member Projects forum and leaves out the Staff Room, which guests can't see. The fourth shot is ACP → General → Load settings, cropped to the extension's "Restore Jumpbox" fieldset. The recipe stops with an error unless the board is a seed-forum board built from [ticket/17609] Remove jumpbox phpbb/phpbb#6927, because the extension does nothing while core still has its own jumpbox.
  • README: the new option and the Restore Jumpbox commands. Tests: option checks for --seed-board.
phpbb-test-board/db-matrix.sh -b master -d sqlite -P 6927 -k path/to/restorejumpbox
phpbb-test-board/screenshots.py path/to/restorejumpbox -o path/to/restorejumpbox/docs/images/screenshots \
  --seed-board ~/.cache/phpbb-release-tools/db-matrix/boards/master-pr6927-sqlite --port 8130

Testing

Claude ran these locally:

  • db-matrix.sh -b master -d sqlite -P 6927 -k with Restore Jumpbox: board built, 17/17 feature checks passed.
  • screenshots.py --seed-board on that board (phpBB 4.0.0-a2-dev): 4 saved, 0 failed, no PHP errors. The board's name and description were back to their old values afterwards.
  • The usual path still works: a fresh setup-board.sh board with --seed and phpbbmodders/elonw saved 2 shots with 0 failures.
  • tests/test-phpbb-test-board.sh passes, and the CI's ShellCheck command is clean.

Investigated and written by Claude on behalf of William Jacoby (bonelifer).

🤖 Generated with Claude Code

screenshots.py can now take an extension's screenshots on an installed
seed-forum board (--seed-board, through _board.SeedBoard as feature_checks.py
and page_a11y.py already do), so phpBB 4.0-only extensions and boards built
from an open phpbb/phpbb pull request can be shot. The board is not reset;
only its name and description change for the shots and are put back.

shots_restorejumpbox saves the open "Jump to" list on a forum page, a topic
page and a phone-width forum page, and the extension's ACP Load settings
fieldset. It needs a board built from phpbb/phpbb#6927, for example the one
db-matrix.sh -b master -d sqlite -P 6927 -k keeps.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bonelifer
bonelifer merged commit 271465c into main Nov 13, 2026
1 check passed
@bonelifer
bonelifer deleted the screenshots-seed-board branch November 13, 2026 18:02
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