Skip to content

v0.2.0: Remote runs with --server, and patchula serve replaces --server

Choose a tag to compare

@github-actions github-actions released this 22 Oct 20:00
· 25 commits to main since this release
98f3141

The Count can now be summoned to a server from your own shell, and his server has a command of its own. The server's flags moved, so update any start commands before you upgrade.

Added

  • Remote runs with --server (#10, @sweepies). patchula lookup, run and tui accept --server <url> (or PATCHULA_SERVER) and run on a Count Patchula server, using its GitHub App's credentials and caches. You need no token or toolchain of your own.

    patchula auth login --server <server-url>
    patchula run --server <server-url> acme/app
    patchula auth logout --server <server-url>

    The first run signs you in through GitHub's device flow. The token is stored per server in ~/.config/patchula/servers.json (mode 0600) and refreshed as it expires. auth logout forgets the local token only; revoke the App authorization under GitHub's Applications settings if you want it gone.

    Requirements:

    • You need push access to every repository. Read access is not enough.
    • The repositories must share one App installation.
    • The server accepts only this App's user tokens.
    • Operators must tick Enable Device Flow in the App settings.
    • Plain HTTP is allowed only to loopback addresses.

    The server applies each repository's own patchula.pkl. These flags are refused with --server: --local, --config, --config-dir, --all-repos, --allow-lockfile-pending and --recheck.

    The device flow and the permission checks have been tested only against fakes, not against live GitHub.

Changed

  • Docs site moved to Starlight (#11, @sweepies). The site is versioned from release tags: the root is the latest release, /next/ is the development branch, and each older minor line is under /vX.Y.x/. Page URLs now end in a slash, for example /getting-started/.

Breaking Changes

The server is patchula serve, and its flags have moved (#10, @sweepies). patchula --server is no longer recognised. Use the serve subcommand, and rename --server-cache to --cache:

# 0.1.3
patchula --server --settings server.pkl --server-cache cache.sqlite

# 0.2.0
patchula serve --settings server.pkl --cache cache.sqlite

--settings, --listen, --cache, --app-id, --private-key-file, --webhook-secret-file and --shutdown-timeout-secs now belong to serve. The PATCHULA_* environment variables, including PATCHULA_SERVER_CACHE, are unchanged. --recheck is still a global flag. Hosting start commands, such as Railway's, need serve.

Full Changelog: v0.1.3...v0.2.0