- migrate, migrate:rollback and deferred:purge gain --pretend and --force;
they and queue:clear confirm only in production on an interactive
terminal, so deploys over SSH proceed as before
- result lines: Applied N migrations, Rolled back <id> of <plugin>,
Cleared N jobs from <queue>
- --json for migrate:status, key:generate, route:list, admin:token:create,
admin:token:list, admin:token:scopes and websockets:health; -q keeps the
key and the token
- hints for an empty DSN, an unreachable database, an invalid app.key, a
missing uploads bucket and an application binary run below its root
- flare and websockets:health return bonfire.Reported after printing
- long help and examples for every application command, greeter:hello and
blog:publish; cmd/summer TestCommandsDocumented fails on any gap
- TestScaffoldLayout runs make:plugin, make:model, make:migration,
make:admin-controller and make:command for acme.blog in a copy of
examples/hello and compares the file set with docs/examples/blog
- the page lists the exact make commands, the go.mod a scaffolded plugin
gets, what the scaffolder leaves to the developer and a checklist
- scaffolding.md no longer claims same-second migrations get consecutive
timestamps; only same-name ones do
- coming-from-wintercms.md and index.md link the walkthrough
- make:admin-controller, make:command and make:migration output, finished:
the Posts controller serves models.Post behind acme.blog.access_posts,
WinterCMS-style form and list YAML embedded through pact.AdminAssets,
blog:publish sets published_at by slug with a bound parameter
- the posts route lists published posts only, newest first
- Docker tests migrate an ICU pl-PL database, roll back published_at, serve
the route and run blog:publish with a published and an opened database
- the page gains the admin controller, console command and added-column
sections
- docs/examples/blog: scaffolder output for acme.blog (make:plugin, make:model)
in the root module, with a Post model, a fill allow-list and NewPost, the
create migration and GET /api/blog/posts paginated through lagoon
- short tests activate the plugin, check the route with surf, the fill
allow-list and the migration order
- docs/setup/porting-a-plugin.md: registration, model, migrations and routes
sections with src= copies of the plugin
- TestDocsRequiredPages requires setup/porting-a-plugin