Skip to content

Release - #131

Merged
jamie-at-bunny merged 1 commit into
mainfrom
changeset-release/main
Jul 31, 2026
Merged

Release#131
jamie-at-bunny merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actions github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and publish to npm yourself or setup this action to publish automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@bunny.net/[email protected]

Minor Changes

  • #125 9696434 Thanks @jamie-at-bunny! - feat(sites): new bunny sites namespace for static-site hosting. sites create provisions a storage zone + pull zone + middleware router per site (zones are named sites-<name>-<random id> so globally-taken names can't block the create; commands take the clean site name), prompting for the name (directory-name suggestion) and a custom domain when run interactively (Bunny DNS record, nameserver guidance, DNS wait + SSL); sites deploy uploads immutable deploys (git-sha or content-hash IDs, no-op when unchanged) to preview URLs, and --production/--prod publishes the live site by flipping the router's CURRENT_DEPLOY env var + purging the cache; sites deployments list/publish/prune cover rollback and cleanup; sites domains attaches custom domains plus a *.preview.<domain> wildcard for per-deploy preview URLs; sites ci init (also offered by sites create on GitHub repos) scaffolds a GitHub Actions workflow with framework detection: previews on PRs, production on merges to main; sites link/unlink/show/upgrade/delete round out the lifecycle. Concurrent deploys merge remote state records instead of overwriting. Site state lives at _bunny/site.json inside the storage zone (403-blocked by the router). The shared hostnames factory gains optional onAdded/onRemoved hooks.

Patch Changes

  • #135 009d9e8 Thanks @jamie-at-bunny! - fix(sites): ci init now writes sites.dir and sites.build from bunny.jsonc into the generated workflow, so CI stops deploying the framework preset's directory while a local sites deploy uses the configured one; a bunny.jsonc below the repo root also gets a job working directory, a prefixed deploy directory, and its own lockfile as the cache path

  • #135 009d9e8 Thanks @jamie-at-bunny! - fix(sites): delete, deployments publish/prune and domains remove now error with a --force hint when there's no TTY to answer their confirmation, instead of hanging on a prompt (and writing it to stdout ahead of --output json)

  • #135 009d9e8 Thanks @jamie-at-bunny! - fix(sites): create falls back to sites.name from bunny.jsonc like every other sites command, instead of failing with "Site name is required." in a configured project when it can't prompt

  • #135 009d9e8 Thanks @jamie-at-bunny! - fix(sites): --force on delete, deployments publish/prune and domains remove now errors without an explicit or linked site instead of opening the picker, so a highlighted site can't be acted on with the confirmation already skipped

  • #135 009d9e8 Thanks @jamie-at-bunny! - fix(sites): --link is now only accepted by the commands that can act on it (deploy, show, deployments list/publish, upgrade-router, ci init), where an explicit --link also links a site resolved from --site or bunny.jsonc, including under --output json; open, ssl, delete and deployments prune no longer advertise a flag they ignored

  • #135 009d9e8 Thanks @jamie-at-bunny! - fix(sites): deployments prune --keep now rejects non-integer and negative counts up front; --keep abc reached the pruner as NaN and deleted every deploy except the live and previous ones

  • #135 009d9e8 Thanks @jamie-at-bunny! - fix(sites): deployments prune takes the site as a positional (prune my-site) like its sibling subcommands, instead of rejecting it as an unknown argument; --site keeps working

  • #120 3c3373a Thanks @jamie-at-bunny! - fix(storage): shared TTY detection, non-interactive guard and cancel handling for zones update, aligned --force semantics, and linked-zone fallback for domains commands

  • #120 3c3373a Thanks @jamie-at-bunny! - fix(storage): type-to-confirm zone deletion, new storage unlink command, offer-to-link from the zone picker, and the replication confirmation now defaults to no

  • #134 ac867d5 Thanks @jamie-at-bunny! - storage: --force on zones remove and files remove now errors without an explicit or linked zone instead of opening the picker

  • #120 3c3373a Thanks @jamie-at-bunny! - fix(storage): canonical plural command paths in hints, consistent decline handling in zones add, and --custom-404-path "" now clears the custom 404

@bunny.net/[email protected]

@bunny.net/[email protected]

@bunny.net/[email protected]

@bunny.net/[email protected]

@bunny.net/[email protected]

@bunny.net/[email protected]

Patch Changes

  • #125 9696434 Thanks @jamie-at-bunny! - rename @bunny.net/app-config to @bunny.net/config and add a top-level sites block (name, dir, build) to the bunny.jsonc schema; the root BunnyConfigSchema makes app and sites optional so app-only, sites-only, and combined files all validate against the generated JSON Schema

@github-actions
github-actions Bot force-pushed the changeset-release/main branch 3 times, most recently from bd090fa to b18e7a6 Compare July 28, 2026 12:24
@github-actions
github-actions Bot force-pushed the changeset-release/main branch 2 times, most recently from 5240e0f to 58b8933 Compare July 31, 2026 10:16
@github-actions
github-actions Bot force-pushed the changeset-release/main branch from 58b8933 to 2890478 Compare July 31, 2026 11:44
@jamie-at-bunny
jamie-at-bunny merged commit c962766 into main Jul 31, 2026
@jamie-at-bunny
jamie-at-bunny deleted the changeset-release/main branch July 31, 2026 11:46
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