Skip to content

v5.14.0

Latest

Choose a tag to compare

@pjcdawkins pjcdawkins released this 15 Oct 14:01
· 10 commits to main since this release
7afd993

Features

  • lint (also validate): a new command that checks project configuration and reports all problems at once (#108, #224, #230, #232, #234)
  • resources:set: allow --count for services that support horizontal scaling, such as database replicas (#185)
  • variable:create, variable:update: --app-scope accepts worker and task names as well as apps (#190)
  • The upsun CLI now detects local projects set up by the platform one (from a platform Git remote or a .platform/local/project.yaml file) (#223)

In development

These are off by default, and not ready for general use yet.

  • Authentication is moving from PHP to Go, behind the UPSUN_CLI_GO_AUTH=1 flag (#203, #197)
  • environment:logs can read logs from the Observability API, with --severity, --since, --until, --service and --format, behind UPSUN_CLI_LOG_PROTOCOL=auto. Logs are still read over SSH by default (#189, #216)

Fixes

  • organization:billing:profile, organization:billing:address: support organizations on the new billing system (#184)
  • environment:activate, environment:branch, resources:set: fix a crash on projects with guaranteed resources enabled (#220)
  • variable:create --update: keep --level when updating an existing variable (#199)
  • Composable images and Upsun projects:
    • environment:xdebug: support apps using a composable image, and show the command in Upsun projects with a PHP app (#229)
    • mount:upload, mount:download, and app name completion find local apps in Upsun projects (.upsun/*.yaml) (#229)
  • Unknown commands are reported as such, instead of with an error about an unrelated disabled command such as project-variables (#228)
  • ssh --all: list the SSH URLs of every app without asking for one, so it works non-interactively in projects with several apps (#240)
  • tunnel:open, tunnel:single: report the port of a tunnel that is already open (#241)
  • mount:download: fix a crash when --target is a relative directory that doesn't exist yet (#233)
  • autoscaling:get: fix a crash with --format csv, tsv or plain when some settings are not set (#236)
  • environment:http-access: fix a crash when HTTP access has no credentials, and show validation errors without stray <error> tags (#238)
  • environment:set-remote: fix an error when a branch's Git upstream is the environment (#238)
  • Authentication:
    • Fix unexpected logouts when several commands refresh the access token at the same time (#194)
    • Cached API data is kept per user, so data cached with one account or token is no longer shown with another (#212)
    • Don't offer a browser login when an API token is set via config or an environment variable (#213)
    • login: stop asking to rewrite ~/.ssh/config when it already includes the CLI's SSH configuration in a different form (#180)
  • Installation and updates:
    • Scoop: drop the vcredist2022 dependency, so the extras bucket is no longer needed. The README now says Scoop needs Git (#204)
    • Update checks are no longer lost after short commands such as --version (#205)
    • config:install: shims use absolute paths, so alternative CLIs work under cron and CI. Update notices for alternative CLIs give the right upgrade command (#215)
  • Installer script:
    • Fix the link to the CLI documentation (#207)
    • With CONFIG_URL, also install an alternative CLI (config:install), and put it on the PATH (#215, #225)
    • Accept INSTALL_METHOD=brew, and reject unknown install methods, which previously installed nothing (#221)
  • Shell completion of command and option names is faster, as it no longer starts PHP (#209)
  • login opens the browser on Windows from WSL (#206)
  • The embedded PHP is now 8.5.11 (#217)

Removed

  • The legacy PHP installer and the self:update, self:release and self:stats commands, which were no longer used since 5.x (#186)

New Contributors

Full Changelog: v5.13.0...v5.14.0