<commit_before>[
    {
        "version": "4.1.0-dev",
        "sha1": "253f333c0c65d015cec283e2ef033c1d19251535",
        "sha256": "80d0a832652d8713e2d94bd5aa0a7ae41428fd69a2905b786c1c3f78d95e7d54",
        "name": "platform.phar",
        "url": "https://github.com/platformsh/platformsh-cli/releases/download/v4.1.0-dev/platform.phar",
        "php": {
            "min": "7.1.14"
        },
        "updating": [
            {
                "notes": "* Use Symfony 4; require at least PHP 7.1.14. As this is a breaking change,\n  this increases the CLI major version from 3.x to 4.x.\n* Integrate platformsh/oauth2 library and platformsh/client version 2.x.\n* Cache the DI container.\n* Use service autowiring. This allows new services or commands to be created\n  without extra service configuration (beyond their constructor arguments).\n* Configure command lazy-loading. If using the full command name or alias, this\n  saves around 50ms. Using an abbreviation or shortcut bypasses the performance\n  benefit as it requires all command classes to be instantiated.\n* Lots of other refactoring, including adding static/strict types.\n* Remove deprecated command options.",
                "hide from": "4.0.0-dev"
            }
        ]
    },
    {
        "name": "platform.phar",
        "sha1": "9daaba6fdf5c7dd49c29e625eb7780242be15884",
        "sha256": "0cb0494695ce00567aeca984d43699d653dab0525671b72c38fb9cc5f08aba6f",
        "url": "https://github.com/platformsh/platformsh-cli/releases/download/v3.48.1/platform.phar",
        "version": "3.48.1",
        "php": {
            "min": "5.5.9"
        },
        "updating": [
            {
                "notes": "Major changes since version 2.x.x:\n\n* In version 2.x.x, the CLI had a project file structure including a 'repository' directory (and a 'builds' directory, 'shared', etc.). In version 3.x.x, this is no longer the case: the CLI operates directly inside your project's Git repository. The CLI will work with the old file structure, and there is a migration tool ('platform legacy-migrate') for updating to the new structure.\n\n* The web root has changed location from 'www' to '_www', to avoid conflicts with actual project files in the repo.\n\n* The CLI now requires PHP version 5.5.9 (minimum) due to updated dependencies.\n\nVersion 3.x.x also comes with many other smaller improvements and bug fixes.",
                "hide from": "3"
            },
            {
                "notes": "The web root has moved again, from '.www' to '_www'. If you have already been using version 3, you may wish to update your local web server configuration.",
                "show from": "3",
                "hide from": "3.0.2"
            },
            {
                "notes": "* Adds 'db:size' command for a rough estimate of DB disk usage\n* Fixes database commands where the relationship name is not 'database'\n* Fixes 'sql' command on PostgreSQL databases\n\nSee: https://github.com/platformsh/platformsh-cli/releases/v3.8.0",
                "show from": "3.7",
                "hide from": "3.8"
            },
            {
                "notes": "* Adds `environment:push` (`push`) command\n* Adds `--identity-file` option to commands using SSH\n* Adds `--parent` option to `environment:activate` command",
                "show from": "3.9",
                "hide from": "3.10"
            },
            {
                "notes": "This release adds new options to the db:dump command:\n  --gzip (-z) to compress the output\n  --table to specify the table(s) to include\n  --exclude-table to specify the table(s) to exclude\n  --schema-only to include only schemas, not data\n\nAnd other minor bug fixes. See:\nhttps://github.com/platformsh/platformsh-cli/releases/v3.11.0",
                "show from": "3.10",
                "hide from": "3.11"
            },
            {
                "notes": "* Add `project:set-remote` command\n* Clarify self-update messages\n* Some minor bug fixes in the `branch`, `checkout`, and `integration:get` commands",
                "show from": "3.11",
                "hide from": "3.12"
            },
            {
                "notes": "* Improve `get` command when the user does not have access to `master` branch\n* Allow `web` command to be used with a non-existent environment ID\n* Allow `updates.check` to be overridden by an env var, e.g. `PLATFORMSH_CLI_UPDATES_CHECK=0`\n* More specific suggested `.gitignore` file for Drupal vanilla projects",
                "show from": "3.12",
                "hide from": "3.12.1"
            },
            {
                "notes": "\n* The `build` command now installs build-time dependencies by default (use\n  `--no-deps` for the old behavior).\n* This release also adds commands to run a local web server (the PHP built-in\n  server). But these commands are at a \"beta\" stability, and they can only be\n  enabled via a feature flag, for example:\n\n  # ---- ~/.platformsh/config.yaml ----\n  experimental:\n      # Enable \"platform create\" command.\n      enable_create: true\n      # Enable \"platform server:run\" and related commands.\n      enable_local_server: true\n",
                "show from": "3.12.1",
                "hide from": "3.13.0"
            },
            {
                "notes": "* Added `route:get` command to view a resolved route to an application\n* Renamed `environment:routes` command to `route:list` (still under the alias `routes`)\n* Improved caching for relationships, routes, and app config\n* Fixed integration option names",
                "show from": "3.13.0",
                "hide from": "3.14.0"
            },
            {
                "notes": "This release adds `certificate` commands, to list, add, and delete SSL certificates from a project, including new automatically-provisioned Let's Encrypt certificates.\n\nOther changes since v3.14.5:\n\n* Fix an issue using `ssh` command on Windows\n* Make detection of the system timezone fallback to the PHP default\n* Use pseudo-terminal for SSH where possible (enables colors for some CLI programs)\n* Minor improvements to `activity:list`",
                "show from": "3.14.0",
                "hide from": "3.15.0"
            },
            {
                "notes": "* Added a `--directory` option to `db:dump`\n* Added ability to load more than 10 activities in `activity:list`\n* Added `auth:token` and `project:curl` commands (intended for support and debugging)\n* Updated `self::install` so it doesn't write Bashisms to `.profile`\n* Updated activity descriptions\n* Switched to GitBook native search (rather than Google) in `docs` command",
                "show from": "3.15.0",
                "hide from": "3.16.0"
            },
            {
                "notes": "* Added new `mount:upload` and `mount:download` commands, which help\n  transferring files to and from writable file mounts, and a `mount:list`\n  command which shows the available mounts. Thanks to @markushausammann for the\n  PR.\n* Users may now log in with their username instead of their email address.\n* Fixed a bug introduced in v3.20.5, which unintentionally hid output from\n  external commands.",
                "show from": "3.20.0",
                "hide from": "3.21.0"
            },
            {
                "notes": "* Added automatic generation of YAML-format Drush site aliases for Drupal projects (in addition to the current PHP-format site aliases). Use `platform drush-aliases -r` to recreate aliases.\n* Moved site aliases from `~/.drush` to `~/.drush/site-aliases`.\n* Fixed the table of environments to stop wrapping environment IDs (it was breaking color formatting).\n* Changed wording of 'rebuild' warning, to 'redeploy'.",
                "show from": "3.21.0",
                "hide from": "3.22.0"
            },
            {
                "notes": "- A public website URL can now be used in the --project (-p) option\n- Added `--exclude` and `--include` options to `mount` commands\n- Added `--excluded-environments` option for webhook integrations*\n- Added Gitlab integration support*\n\n(* the last two will apply to an upcoming Platform.sh version, 2.7)",
                "show from": "3.22.0",
                "hide from": "3.23.0"
            },
            {
                "notes": "* Add repo:cat and repo:ls commands\n* Allow default target/source in mount:upload and mount:download when --yes is used\n* Add -W alias to --no-wait option in push command\n* (from Symfony Console 3.4) Allow case-insensitive command shortcuts\n* (from Symfony Console 3.4) Fix combining one-letter options\n* Write curl debug output to STDERR, not STDOUT\n* Fix some Drush 9.0.0-rc1 compatibility issues",
                "show from": "3.23.0",
                "hide from": "3.24.0"
            },
            {
                "notes": "* Extends interactive question text in `integration:add` command, to clarify the meaning of options, their defaults, and their syntax\n* Adds support for the \"Enabled\" (`is_enabled`) flag on environment variables.\n* Adds `--no-expired` and `--only-expired` options to `certificate:list`\n* Improves the \"project not found\" message, to suggest other project IDs\n* Implements omitting non-required empty fields when adding an integration (allows earlier support for new integration options without breaking older projects)\n* Adds the SSH_AGENT_PID to auto inherited environment variables (fixes using an SSH agent to manage keys when used with the CLI's Git commands)\n* Adds an experimental `redis` command to connect to a Redis container (hidden from the command list for now)\n* Adds experimental OS X Keychain support (enabled via `experimental.use_keychain`)",
                "show from": "3.24.0",
                "hide from": "3.25.0"
            },
            {
                "notes": "New features:\n* Support remote projects/environments in app:list command.\n* Add worker:list (workers) command.\n* Use \"deployments\" HTTP API (instead of SSH) in app:config command.\n* Auto-ensure webhooks on GitHub and GitLab integrations, where possible.\n\nOther changes:\n* Skip updates check if the Phar file is not writable.\n* Remove different coloration for local commands in `list` (there are so few listed).\n* Recommend --no-wait if snapshot:create is run in a non-TTY.\n* Suggest project:set-remote in RootNotFoundException.\n* Fix environment:drush (drush) command to use configured document root, or PLATFORM_DOCUMENT_ROOT where available.\n* Be stricter about when to use $_ENV, when getting parent variables for PHP <7.1.",
                "show from": "3.25.0",
                "hide from": "3.26.0"
            },
            {
                "notes": "* Use browser login by default (the old login method is available as `auth:password-login`).\n* Set `--build-pull-requests-post-merge` to false by default (GitHub integrations).\n* Respect `--no-wait` in `environment:init`, and clear the environment cache afterwards.\n* In the `project:delete` command, leave access control to the API.\n* Support disabling or enabling colorized output via the CLICOLOR_FORCE environment variable.",
                "show from": "3.26.0",
                "hide from": "3.27.0"
            },
            {
                "notes": "* Improved `activity:log` output to show more activity information.\n* Added `activity:get` command, hidden for now.\n* Added `--date-fmt` option to `activity:list` and `snapshot:list`.\n* Added detection for the date.timezone ini setting, and the TZ environment variable.\n* Fixed inverted requirement of -e/-a options in activity:log (`-a` should make `-e` not required).\n* Fixed user-defined aliases being prefixed with \"@\" (thanks to @GROwen, #677).\n* Avoid fatal error if invalid YAML config is encountered during updateDrushAliases().\n* Fixed SSH commands for very old OpenSSH versions <5.9 (using -t instead of RequestTTY).\n* Updated dependencies (mainly Symfony 3.4.2 -> 3.4.4).",
                "show from": "3.27.0",
                "hide from": "3.28.0"
            },
            {
                "notes": "* [user:add] Improve `user:add` command to allow setting roles on all environments (aliased to `user:update`)\n* [user:get] Add `user:get` command (aliased to and deprecating `user:role`)\n* [db:dump] Remove --no-autocommit and simplify mysqldump args (#683)\n* Expand redeploy warning to recommend `vset`\n* [activity:get] Check for empty started_at when calculating duration\n* [redis] Recommend \"redis info\" command",
                "show from": "3.28.0",
                "hide from": "3.29.0"
            },
            {
                "notes": "* Add `redeploy` command (available on projects with newer API versions).\n* [activity:list] Format activity descriptions where possible.\n* Print question text even when in automatic non-interactive mode.\n* Add --wait option to all commands, and emit a warning if nothing is specified\n  when running inside a Platform.sh build/cron/deploy hook.\n* [integration:add] [integration:update] Ensure GitLab/GitHub hooks have the\n  right events selected, and update them if not.\n* [self:install] Ensure directory exists when creating shell-config.rc\n* [activity:get] do not require an environment with --all and a partial ID\n* [login] Mention --force option, if running when already logged in.",
                "show from": "3.29.0",
                "hide from": "3.30.0"
            },
            {
                "notes": "New features:\n\n* Always interact (where possible) to ask for the project or environment, if one\n  isn't specified or detected.\n* Support new variable features:\n  - Add `variable:create` and `variable:update` commands.\n  - Allow creating 'sensitive' and 'non-inheritable' variables\n    (`--sensitive=true` and `--inheritable=false`).\n  - Add `variable:list` (`variables`) command.\n  - These `variable:` commands now work with project- or environment-level\n    variables. Specify the level with `--level` (`-l`). If you do not specify a\n    level, you will be asked for one interactively where relevant.\n  - The old commands still exist but are hidden from the command list.\n* Add `project:clear-build-cache` command\n* Enable `project:create` (`create`) command by default.\n* Add `--all` option to `list` command, to show hidden commands.\n* In `build` command, if --run-deploy-hooks option is used, run both \"deploy\"\n  and \"post_deploy\" hooks.\n\nBug fixes:\n\n* Fix: boolean false fields omitted when creating integrations.\n* Fix wrapping of table cell contents that include decoration.\n\nOther changes:\n\n* Accept URLs (not just IDs) as project identifiers in `multi` command.\n* Un-hide some commands\n  - Un-hide `activity:get` command.\n  - Un-hide `worker:list` (`workers`)\n* Always use the deployment API for the app list (improves compatibility for\n  multi-application Enterprise projects, in SSH-related commands).",
                "show from": "3.30.0",
                "hide from": "3.31.0"
            },
            {
                "notes": "New features:\n\n* Add MongoDB commands: mongo, mongoexport, mongodump, and mongorestore.\n* In the user:add command, add a wildcard (%) for the environment ID, so you can\n  add users to multiple environments concisely via the --role option.\n  See: platform help user:add\n* Parse !include tags when loading a YAML file.\n\nOther changes:\n\n* In command help, word-wrap option descriptions to the terminal width.\n* Try to refresh an environment before giving an \"Operation not available\" error.\n* Fix `--pipe` option in the `user:role` command.\n* Suppress PHP's timezone warning while detecting the system timezone.",
                "show from": "3.31.0",
                "hide from": "3.32.0"
            },
            {
                "notes": "* Increase the default interval between updates checks, from 1 day to 7 days.\n* Fix formatting for activity descriptions that contain a `/` character.\n* In the `project:set-remote` command, do not error out if the \"current\" project\n  does not exist.\n* Minor performance improvement to `user` commands when looking up existing\n  users.",
                "show from": "3.32.3",
                "hide from": "3.32.4"
            },
            {
                "notes": "* Add `mount:size` command to find the disk usage of writable mounts.\n* Add `--sensitive` option for project-level variables (affects commands:\n  `variable:create`, `variable:update`, and `variable:list`).\n* Clear environment/project caches after a 403 error.\n* Increase prominence of warning in `db:size` command.\n* Skip the automatic updates check if the Phar file is not writable.",
                "show from": "3.32.0",
                "hide from": "3.33.0"
            },
            {
                "notes": "New features:\n\n* Add `service:list` (`services`) command.\n* Add --depth option to `project:get` (`get`) command (allow shallow clones).\n* Add --rebase option to the `environment:synchronize` (`sync`) command.\n* Add --prune-branches option for GitHub and GitLab integrations.\n* Add --worker option to the `environment:ssh` (`ssh`) command.\n\nOther changes:\n\n* When running pg_dump via the `db:dump` command, use the --no-owner flag.\n* Fix the `--all` option in the `list` command.\n* Prefer .bashrc over .bash_profile in the installer (self:install command).\n* Remove legacy API workaround in `integration:update`.\n* Update user commands for upstream API fix (improves performance).",
                "show from": "3.33.0",
                "hide from": "3.34.0"
            },
            {
                "notes": "New features:\n\n* Add commit:list (commits) and commit:get commands for viewing commits via the\n  API.\n* Add --commit (-c) option to repo:cat and repo:ls commands.\n* Add Bitbucket integration support.\n\nBug fixes:\n\n* Fix drush alias group name prepending bug. Custom aliases were having the\n  alias group name prepended every time they were recreated, e.g. \"@foo.bar\"\n  would become \"@foo.foo.bar\".\n* Allow changing the value of a project-level sensitive variable.\n\nOther changes:\n\n* Add explanations for \"Operation not available\" on environment actions.\n* Add additional help for the mount:size command.\n* Clean up --pipe output in the user:get command.\n* Show hidden service commands.",
                "show from": "3.34.0",
                "hide from": "3.35.0"
            },
            {
                "notes": "* Fix a further source of 'Not logged in' errors immediately after login.\n* Add `integration:validate` command, and improve error reporting in other\n  integration commands.\n* Deprecate the --type option in the `integration:update` command.\n* Fix alpha UI URLs for environments in the `web` command.",
                "show from": "3.35.0",
                "hide from": "3.36.0"
            },
            {
                "notes": "New features:\n\n* Add --columns option for all tables (to filter and order table columns).\n* Add non-default \"disk\" and \"size\" columns to app:list command.\n* Add non-default \"updated_at\" column to domains:list command.\n* Add non-default \"host\" column to project:list command.\n* Allow loading more than 10 snapshots via --limit in snapshot:list command.\n\nOther changes:\n\n* Change CSV/TSV table output to make it cleaner. CSV/TSV cells will now only\n  be enclosed in quote marks if necessary, conforming to RFC 4180.\n* Fail if password input cannot be hidden in auth:password-login command.\n* Set the remote only for new branches in environment:branch command.\n* Avoid wrapping dates in commit:list command.\n* Update list of allowed SSH key algorithms for ssh-key:add command.\n* Remove confirmation step in logout command.",
                "show from": "3.36.0",
                "hide from": "3.37.0"
            },
            {
                "notes": "* Revert csv/tsv table output to use LF instead of CRLF line breaks.\n* Display project and environment title/ID in the following commands:\n  `activity:list` (`activities`), `domain:list` (`domains`),\n  `route:list` (`routes`), `snapshot:list` (`snapshots`),\n  `user:list` (`users`), `worker:list` (`workers`) \n* Local build: handle `python3` dependencies type (same as `python`).\n* Define the `path` column in the `mount:list` (`mounts`) command.\n* Parse project URLs from the beta unified-UI.",
                "show from": "3.37.0",
                "hide from": "3.37.2"
            },
            {
                "notes": "* Allow restoring snapshots to another environment in snapshot:restore command\n  (with new --target and --branch-from options).\n* Sort interactive project/environment choices alphabetically.\n* Fix \"Name\"/\"name\" column should always have been \"Title\"/\"title\" in\n  environment:list command.\n* Define \"created\" and \"updated\" columns in environment:list command.\n* Remove interactivity check from installer.\n* Fix: environments with an empty name (e.g. '0') not being recognized.\n* Fix documentation in user:list, user:add and user:update commands.\n* Various changes and new features in certificate:list command:\n  - only show non-expired certificates by default\n  - add --ignore-expiry option for the previous behavior\n  - add --exclude-domain option to filter out certificates from the list\n  - add --pipe-domains option to list domains covered by certificates\n  - add \"certs\" alias\n  - define \"domains\" column (for the --columns option)",
                "show from": "3.37.0",
                "hide from": "3.38.0"
            },
            {
                "notes": "New features:\n\n* Add tunnel:single command (allow opening a tunnel without posix/pcntl).\n\nBug fixes:\n\n* Fix bug where login to a new account does not log out from the old account.\n* Account for differing app roots in Drush aliases - allows generated Drush\n  aliases to work with Platform.sh Enterprise environments.\n* Fix Drush 9 alias compatibility (and remove Drush 9-beta compatibility).",
                "show from": "3.38.0",
                "hide from": "3.39.0"
            },
            {
                "notes": "New features:\n\n* Support multiple schemas per database relationship:\n  - Add --schema option to `db:dump` and `db:sql` commands.\n  - Include the service name and schema in the `db:dump` default filename.\n  - Present a choice between schemas if no schema is specified.\n  - Make `db:size` schema agnostic but warn about inaccessible schemas.\n\nBug fixes:\n\n* Use a different Drush alias root for site-local versions 8 or 9. Drush 9\n  fails to find a Drupal root via a relative path in some circumstances.\n* Fix behavior of choice questions with no default in non-interactive mode.\n* Fix checkout command when there is only one branch.\n* Fix Drush lock files not being used in local:build command.\n\nOther changes:\n\n* Add some 3-letter command aliases:\n  - activity:list => activities => act\n  - environment:list => environments => env\n  - project:list => projects => pro\n  - variable:list => variables => var",
                "show from": "3.39.0",
                "hide from": "3.40.0"
            },
            {
                "notes": "New features:\n\n* Better worker support:\n  - Improve worker selection in the environment:ssh (ssh) command.\n  - Add the --worker option to all mount commands.\n  - Add the --worker option to the environment:logs (log) command.\n  - If --app or --worker is not provided, the above commands will now prompt you\n  to choose between the app(s) or their worker(s).\n* Allow a nonexistent --target directory in the mount:download command (prompt\n  to create it).\n\nBug fixes:\n\n* Add environment commit SHA to the deployment cache key\n  This ensures old deployment information is not used when we know the environment\n  has changed.\n* Ensure migrated projects on a new host do not use cached information from the\n  old host.\n* Installer: the default config file should be .bash_profile on OS X.\n\nOther changes:\n\n* Update autocompletion library (stecman/symfony-console-completion)\n  Highlights:\n  - \"Adds support for quoted and escaped multi-word completions\"\n  - \"Fixes options appearing before the command name (eg. `program -v cmdname`)\n    breaking the detection of the command that should be completed for\"",
                "show from": "3.40.0",
                "hide from": "3.41.0"
            },
            {
                "notes": "* Support older shells in autocompletion setup (like Bash 3.x, installed by default on OS X).\n* Accept wholly indented YAML files under the !include syntax.\n* Pass max_allowed_packet setting to mysqldump.\n* Require confirmation when adding a git source integration (GitHub, Bitbucket or GitLab).\n* Improve GIT_SSH argument quoting (may improve old Git version compatibility).\n* Fix ssh for environments with broken config.\n* Support installing versions with unstable suffixes in installer.\n* Warn in installer about missing pcntl and posix extensions.\n* Display nothing rather than a placeholder for sensitive values in variable:list tsv/csv format.\n* Add beta (hidden for now) source-operation:run command.",
                "show from": "3.41.0",
                "hide from": "3.42.0"
            },
            {
                "notes": "* Allow some commands to read from local environment variables when available:\n    * `route:list` (routes) and `route:get` can read from PLATFORM_ROUTES\n    * `relationship:list` (relationships) can read from PLATFORM_RELATIONSHIPS\n    * New `decode` command, to decode a base64- and JSON-encoded string such as\n      PLATFORM_VARIABLES, PLATFORM_APPLICATION, etc.\n* Add --id and --primary options to route:get command, to select a route.\n* Add `url` property to all relationships in `relationships` command (e.g. to\n  extract a DSN for a database).\n* Multiple changes to the `db:size` command (by @matthiaz):\n    * Improve accuracy of size estimates by altering psql commands and querying\n      for InnoDB-specific information.\n    * Add --bytes (-B) option to display sizes in bytes.\n    * Check if InnoDB tables can be optimized, and run optimizations\n      automatically with the `--cleanup` option.",
                "show from": "3.42.0",
                "hide from": "3.43.0"
            },
            {
                "notes": "New features:\n\n* Allow the `app:config` command to read from PLATFORM_APPLICATION in the\n  local environment.\n* Improvements to the `environment:url` (`url`) command:\n    * Read URLs from PLATFORM_ROUTES in the local environment.\n    * Always prefer the primary route URL when sorting URLs.\n    * Add a --primary option, to print or open only the primary route URL.\n    * Just print URLs (without interaction) when there is no display/browser\n      available.\n\nOther changes:\n\n* Prefer the primary route as the site URL (for Drush aliases, etc.).\n* Use embedded user account information if available in the access API (small\n  performance improvement).\n* Fix \"Failed to decode\" in the `relationships` command when there are no\n  relationships.\n* Adapt `welcome` command for offline-on-container uses. If you install the CLI\n  into your own Platform.sh project, running `platform` on its own now gives\n  you a list of useful commands that work \"offline\" without needing to\n  configure an API token.\n* Do not require login for the `self:stats` command.\n* Improve app/worker choice message.\n* Clearer error for no config (`.platform.app.yaml`) file.\n* Match user email addresses case-insensitively. This fixes all user commands\n  that need an email address (user:add, user:get, user:update and user:delete).",
                "show from": "3.43.0",
                "hide from": "3.44.0"
            },
            {
                "notes": "New features:\n\n* Add --all (-a) option to mount:download command. This lets you download files\n  from all of an application's mounts.\n* Enable gzip encoding in all API requests, if the zlib PHP extension is\n  available. This should result in a performance improvement, particularly for\n  slow connections or API responses containing a lot of data (e.g. the\n  activity:list or environment:list commands).\n\nOther changes:\n\n* In mount:upload, convert OS X filename characters using rsync's `--iconv`.\n* Small bug fix for commit and repo commands: do not fetch an empty commit\n  hash (after stripping commit parents notation).\n* Installer: fix check for git on Windows.",
                "show from": "3.44.0",
                "hide from": "3.45.0"
            },
            {
                "notes": "New features:\n\n* Add --charset option to the db:dump command.\n  Specifying the character set is recommended for any database dump.\n  If your application database is in MySQL's utf8mb4, for example, use:\n      platform db:dump --charset utf8mb4\n* Add --branch option to the 'push' command.\n  This allows a new environment to be created as an active branch from a\n  specified parent - thus inheriting settings from that parent - rather than\n  setting the parent later.\n* Add bitbucket_server integration support.\n\nOther changes:\n\n* Installer:\n  - Add --shell-type option to specify 'bash' or 'zsh' to the installer, for\n    example:\n        curl -sfS https://platform.sh/cli/installer | php -- --shell-type bash\n  - Add --manifest option to use a test or development manifest file.\n  - Require the curl, openssl and pcre PHP extensions (and stop requiring\n    mbstring).\n  - The --dev option will now allow any version string.\n* Rename \"Capacity\" to \"% Used\" in mount:size command.\n  Also makes column machine names consistent with the db:size command.",
                "show from": "3.45.0",
                "hide from": "3.46.0"
            },
            {
                "notes": "* Allow service commands to work 'locally' on the container\n  \n    It's now possible to use the following commands on the Platform.sh container\n    without needing to have an API token or log in to the API:\n\n    * db:dump\n    * db:sql (sql)\n    * service:redis-cli (redis)\n    * service:mongo:dump (mongodump)\n    * service:mongo:export (mongoexport)\n    * service:mongo:restore (mongorestore)\n    * service:mongo:shell (mongo)\n  \n    N.B.: When running locally the db:dump and db:sql commands have less schema\n    information, so you may need to specify the --schema option.\n    \n    Commands that could already run on the container are:\n\n    * help, list\n    * app:config\n    * decode\n    * environment:url (url)\n    * relationship:list (relationships)\n    * route:get\n    * route:list (routes)\n\n* Alias --primary to -1 in route:get and environment:url (url) commands.\n  \n* Use primary route URL from deployments API in Drush aliases, when possible.\n  \n* Allow multiple command arguments in drush and ssh commands.",
                "show from": "3.46.0",
                "hide from": "3.47.0"
            },
            {
                "notes": "* Rename 'snapshot' commands to 'backup', to match the API and Management Console.\n* Implement streaming activity logs.\n  - Add --timestamps (-t) option to the activity:log command.\n  - Report the real start time in the activity progress bar.\n* Significantly reduce default cache lifetimes (due to API performance improvements).",
                "show from": "3.47.0",
                "hide from": "3.48.0"
            }
        ]
    }
]<commit_msg>Release v3.48.2<commit_after>[
    {
        "version": "4.1.0-dev",
        "sha1": "253f333c0c65d015cec283e2ef033c1d19251535",
        "sha256": "80d0a832652d8713e2d94bd5aa0a7ae41428fd69a2905b786c1c3f78d95e7d54",
        "name": "platform.phar",
        "url": "https://github.com/platformsh/platformsh-cli/releases/download/v4.1.0-dev/platform.phar",
        "php": {
            "min": "7.1.14"
        },
        "updating": [
            {
                "notes": "* Use Symfony 4; require at least PHP 7.1.14. As this is a breaking change,\n  this increases the CLI major version from 3.x to 4.x.\n* Integrate platformsh/oauth2 library and platformsh/client version 2.x.\n* Cache the DI container.\n* Use service autowiring. This allows new services or commands to be created\n  without extra service configuration (beyond their constructor arguments).\n* Configure command lazy-loading. If using the full command name or alias, this\n  saves around 50ms. Using an abbreviation or shortcut bypasses the performance\n  benefit as it requires all command classes to be instantiated.\n* Lots of other refactoring, including adding static/strict types.\n* Remove deprecated command options.",
                "hide from": "4.0.0-dev"
            }
        ]
    },
    {
        "name": "platform.phar",
        "sha1": "b816300d7eaa39f67298f82f99baf744b734b3f8",
        "sha256": "6783950876d0396153e50c26cea246f8abb0dc587c64d570f8beb7a5a94ed47a",
        "url": "https://github.com/platformsh/platformsh-cli/releases/download/v3.48.2/platform.phar",
        "version": "3.48.2",
        "php": {
            "min": "5.5.9"
        },
        "updating": [
            {
                "notes": "Major changes since version 2.x.x:\n\n* In version 2.x.x, the CLI had a project file structure including a 'repository' directory (and a 'builds' directory, 'shared', etc.). In version 3.x.x, this is no longer the case: the CLI operates directly inside your project's Git repository. The CLI will work with the old file structure, and there is a migration tool ('platform legacy-migrate') for updating to the new structure.\n\n* The web root has changed location from 'www' to '_www', to avoid conflicts with actual project files in the repo.\n\n* The CLI now requires PHP version 5.5.9 (minimum) due to updated dependencies.\n\nVersion 3.x.x also comes with many other smaller improvements and bug fixes.",
                "hide from": "3"
            },
            {
                "notes": "The web root has moved again, from '.www' to '_www'. If you have already been using version 3, you may wish to update your local web server configuration.",
                "show from": "3",
                "hide from": "3.0.2"
            },
            {
                "notes": "* Adds 'db:size' command for a rough estimate of DB disk usage\n* Fixes database commands where the relationship name is not 'database'\n* Fixes 'sql' command on PostgreSQL databases\n\nSee: https://github.com/platformsh/platformsh-cli/releases/v3.8.0",
                "show from": "3.7",
                "hide from": "3.8"
            },
            {
                "notes": "* Adds `environment:push` (`push`) command\n* Adds `--identity-file` option to commands using SSH\n* Adds `--parent` option to `environment:activate` command",
                "show from": "3.9",
                "hide from": "3.10"
            },
            {
                "notes": "This release adds new options to the db:dump command:\n  --gzip (-z) to compress the output\n  --table to specify the table(s) to include\n  --exclude-table to specify the table(s) to exclude\n  --schema-only to include only schemas, not data\n\nAnd other minor bug fixes. See:\nhttps://github.com/platformsh/platformsh-cli/releases/v3.11.0",
                "show from": "3.10",
                "hide from": "3.11"
            },
            {
                "notes": "* Add `project:set-remote` command\n* Clarify self-update messages\n* Some minor bug fixes in the `branch`, `checkout`, and `integration:get` commands",
                "show from": "3.11",
                "hide from": "3.12"
            },
            {
                "notes": "* Improve `get` command when the user does not have access to `master` branch\n* Allow `web` command to be used with a non-existent environment ID\n* Allow `updates.check` to be overridden by an env var, e.g. `PLATFORMSH_CLI_UPDATES_CHECK=0`\n* More specific suggested `.gitignore` file for Drupal vanilla projects",
                "show from": "3.12",
                "hide from": "3.12.1"
            },
            {
                "notes": "\n* The `build` command now installs build-time dependencies by default (use\n  `--no-deps` for the old behavior).\n* This release also adds commands to run a local web server (the PHP built-in\n  server). But these commands are at a \"beta\" stability, and they can only be\n  enabled via a feature flag, for example:\n\n  # ---- ~/.platformsh/config.yaml ----\n  experimental:\n      # Enable \"platform create\" command.\n      enable_create: true\n      # Enable \"platform server:run\" and related commands.\n      enable_local_server: true\n",
                "show from": "3.12.1",
                "hide from": "3.13.0"
            },
            {
                "notes": "* Added `route:get` command to view a resolved route to an application\n* Renamed `environment:routes` command to `route:list` (still under the alias `routes`)\n* Improved caching for relationships, routes, and app config\n* Fixed integration option names",
                "show from": "3.13.0",
                "hide from": "3.14.0"
            },
            {
                "notes": "This release adds `certificate` commands, to list, add, and delete SSL certificates from a project, including new automatically-provisioned Let's Encrypt certificates.\n\nOther changes since v3.14.5:\n\n* Fix an issue using `ssh` command on Windows\n* Make detection of the system timezone fallback to the PHP default\n* Use pseudo-terminal for SSH where possible (enables colors for some CLI programs)\n* Minor improvements to `activity:list`",
                "show from": "3.14.0",
                "hide from": "3.15.0"
            },
            {
                "notes": "* Added a `--directory` option to `db:dump`\n* Added ability to load more than 10 activities in `activity:list`\n* Added `auth:token` and `project:curl` commands (intended for support and debugging)\n* Updated `self::install` so it doesn't write Bashisms to `.profile`\n* Updated activity descriptions\n* Switched to GitBook native search (rather than Google) in `docs` command",
                "show from": "3.15.0",
                "hide from": "3.16.0"
            },
            {
                "notes": "* Added new `mount:upload` and `mount:download` commands, which help\n  transferring files to and from writable file mounts, and a `mount:list`\n  command which shows the available mounts. Thanks to @markushausammann for the\n  PR.\n* Users may now log in with their username instead of their email address.\n* Fixed a bug introduced in v3.20.5, which unintentionally hid output from\n  external commands.",
                "show from": "3.20.0",
                "hide from": "3.21.0"
            },
            {
                "notes": "* Added automatic generation of YAML-format Drush site aliases for Drupal projects (in addition to the current PHP-format site aliases). Use `platform drush-aliases -r` to recreate aliases.\n* Moved site aliases from `~/.drush` to `~/.drush/site-aliases`.\n* Fixed the table of environments to stop wrapping environment IDs (it was breaking color formatting).\n* Changed wording of 'rebuild' warning, to 'redeploy'.",
                "show from": "3.21.0",
                "hide from": "3.22.0"
            },
            {
                "notes": "- A public website URL can now be used in the --project (-p) option\n- Added `--exclude` and `--include` options to `mount` commands\n- Added `--excluded-environments` option for webhook integrations*\n- Added Gitlab integration support*\n\n(* the last two will apply to an upcoming Platform.sh version, 2.7)",
                "show from": "3.22.0",
                "hide from": "3.23.0"
            },
            {
                "notes": "* Add repo:cat and repo:ls commands\n* Allow default target/source in mount:upload and mount:download when --yes is used\n* Add -W alias to --no-wait option in push command\n* (from Symfony Console 3.4) Allow case-insensitive command shortcuts\n* (from Symfony Console 3.4) Fix combining one-letter options\n* Write curl debug output to STDERR, not STDOUT\n* Fix some Drush 9.0.0-rc1 compatibility issues",
                "show from": "3.23.0",
                "hide from": "3.24.0"
            },
            {
                "notes": "* Extends interactive question text in `integration:add` command, to clarify the meaning of options, their defaults, and their syntax\n* Adds support for the \"Enabled\" (`is_enabled`) flag on environment variables.\n* Adds `--no-expired` and `--only-expired` options to `certificate:list`\n* Improves the \"project not found\" message, to suggest other project IDs\n* Implements omitting non-required empty fields when adding an integration (allows earlier support for new integration options without breaking older projects)\n* Adds the SSH_AGENT_PID to auto inherited environment variables (fixes using an SSH agent to manage keys when used with the CLI's Git commands)\n* Adds an experimental `redis` command to connect to a Redis container (hidden from the command list for now)\n* Adds experimental OS X Keychain support (enabled via `experimental.use_keychain`)",
                "show from": "3.24.0",
                "hide from": "3.25.0"
            },
            {
                "notes": "New features:\n* Support remote projects/environments in app:list command.\n* Add worker:list (workers) command.\n* Use \"deployments\" HTTP API (instead of SSH) in app:config command.\n* Auto-ensure webhooks on GitHub and GitLab integrations, where possible.\n\nOther changes:\n* Skip updates check if the Phar file is not writable.\n* Remove different coloration for local commands in `list` (there are so few listed).\n* Recommend --no-wait if snapshot:create is run in a non-TTY.\n* Suggest project:set-remote in RootNotFoundException.\n* Fix environment:drush (drush) command to use configured document root, or PLATFORM_DOCUMENT_ROOT where available.\n* Be stricter about when to use $_ENV, when getting parent variables for PHP <7.1.",
                "show from": "3.25.0",
                "hide from": "3.26.0"
            },
            {
                "notes": "* Use browser login by default (the old login method is available as `auth:password-login`).\n* Set `--build-pull-requests-post-merge` to false by default (GitHub integrations).\n* Respect `--no-wait` in `environment:init`, and clear the environment cache afterwards.\n* In the `project:delete` command, leave access control to the API.\n* Support disabling or enabling colorized output via the CLICOLOR_FORCE environment variable.",
                "show from": "3.26.0",
                "hide from": "3.27.0"
            },
            {
                "notes": "* Improved `activity:log` output to show more activity information.\n* Added `activity:get` command, hidden for now.\n* Added `--date-fmt` option to `activity:list` and `snapshot:list`.\n* Added detection for the date.timezone ini setting, and the TZ environment variable.\n* Fixed inverted requirement of -e/-a options in activity:log (`-a` should make `-e` not required).\n* Fixed user-defined aliases being prefixed with \"@\" (thanks to @GROwen, #677).\n* Avoid fatal error if invalid YAML config is encountered during updateDrushAliases().\n* Fixed SSH commands for very old OpenSSH versions <5.9 (using -t instead of RequestTTY).\n* Updated dependencies (mainly Symfony 3.4.2 -> 3.4.4).",
                "show from": "3.27.0",
                "hide from": "3.28.0"
            },
            {
                "notes": "* [user:add] Improve `user:add` command to allow setting roles on all environments (aliased to `user:update`)\n* [user:get] Add `user:get` command (aliased to and deprecating `user:role`)\n* [db:dump] Remove --no-autocommit and simplify mysqldump args (#683)\n* Expand redeploy warning to recommend `vset`\n* [activity:get] Check for empty started_at when calculating duration\n* [redis] Recommend \"redis info\" command",
                "show from": "3.28.0",
                "hide from": "3.29.0"
            },
            {
                "notes": "* Add `redeploy` command (available on projects with newer API versions).\n* [activity:list] Format activity descriptions where possible.\n* Print question text even when in automatic non-interactive mode.\n* Add --wait option to all commands, and emit a warning if nothing is specified\n  when running inside a Platform.sh build/cron/deploy hook.\n* [integration:add] [integration:update] Ensure GitLab/GitHub hooks have the\n  right events selected, and update them if not.\n* [self:install] Ensure directory exists when creating shell-config.rc\n* [activity:get] do not require an environment with --all and a partial ID\n* [login] Mention --force option, if running when already logged in.",
                "show from": "3.29.0",
                "hide from": "3.30.0"
            },
            {
                "notes": "New features:\n\n* Always interact (where possible) to ask for the project or environment, if one\n  isn't specified or detected.\n* Support new variable features:\n  - Add `variable:create` and `variable:update` commands.\n  - Allow creating 'sensitive' and 'non-inheritable' variables\n    (`--sensitive=true` and `--inheritable=false`).\n  - Add `variable:list` (`variables`) command.\n  - These `variable:` commands now work with project- or environment-level\n    variables. Specify the level with `--level` (`-l`). If you do not specify a\n    level, you will be asked for one interactively where relevant.\n  - The old commands still exist but are hidden from the command list.\n* Add `project:clear-build-cache` command\n* Enable `project:create` (`create`) command by default.\n* Add `--all` option to `list` command, to show hidden commands.\n* In `build` command, if --run-deploy-hooks option is used, run both \"deploy\"\n  and \"post_deploy\" hooks.\n\nBug fixes:\n\n* Fix: boolean false fields omitted when creating integrations.\n* Fix wrapping of table cell contents that include decoration.\n\nOther changes:\n\n* Accept URLs (not just IDs) as project identifiers in `multi` command.\n* Un-hide some commands\n  - Un-hide `activity:get` command.\n  - Un-hide `worker:list` (`workers`)\n* Always use the deployment API for the app list (improves compatibility for\n  multi-application Enterprise projects, in SSH-related commands).",
                "show from": "3.30.0",
                "hide from": "3.31.0"
            },
            {
                "notes": "New features:\n\n* Add MongoDB commands: mongo, mongoexport, mongodump, and mongorestore.\n* In the user:add command, add a wildcard (%) for the environment ID, so you can\n  add users to multiple environments concisely via the --role option.\n  See: platform help user:add\n* Parse !include tags when loading a YAML file.\n\nOther changes:\n\n* In command help, word-wrap option descriptions to the terminal width.\n* Try to refresh an environment before giving an \"Operation not available\" error.\n* Fix `--pipe` option in the `user:role` command.\n* Suppress PHP's timezone warning while detecting the system timezone.",
                "show from": "3.31.0",
                "hide from": "3.32.0"
            },
            {
                "notes": "* Increase the default interval between updates checks, from 1 day to 7 days.\n* Fix formatting for activity descriptions that contain a `/` character.\n* In the `project:set-remote` command, do not error out if the \"current\" project\n  does not exist.\n* Minor performance improvement to `user` commands when looking up existing\n  users.",
                "show from": "3.32.3",
                "hide from": "3.32.4"
            },
            {
                "notes": "* Add `mount:size` command to find the disk usage of writable mounts.\n* Add `--sensitive` option for project-level variables (affects commands:\n  `variable:create`, `variable:update`, and `variable:list`).\n* Clear environment/project caches after a 403 error.\n* Increase prominence of warning in `db:size` command.\n* Skip the automatic updates check if the Phar file is not writable.",
                "show from": "3.32.0",
                "hide from": "3.33.0"
            },
            {
                "notes": "New features:\n\n* Add `service:list` (`services`) command.\n* Add --depth option to `project:get` (`get`) command (allow shallow clones).\n* Add --rebase option to the `environment:synchronize` (`sync`) command.\n* Add --prune-branches option for GitHub and GitLab integrations.\n* Add --worker option to the `environment:ssh` (`ssh`) command.\n\nOther changes:\n\n* When running pg_dump via the `db:dump` command, use the --no-owner flag.\n* Fix the `--all` option in the `list` command.\n* Prefer .bashrc over .bash_profile in the installer (self:install command).\n* Remove legacy API workaround in `integration:update`.\n* Update user commands for upstream API fix (improves performance).",
                "show from": "3.33.0",
                "hide from": "3.34.0"
            },
            {
                "notes": "New features:\n\n* Add commit:list (commits) and commit:get commands for viewing commits via the\n  API.\n* Add --commit (-c) option to repo:cat and repo:ls commands.\n* Add Bitbucket integration support.\n\nBug fixes:\n\n* Fix drush alias group name prepending bug. Custom aliases were having the\n  alias group name prepended every time they were recreated, e.g. \"@foo.bar\"\n  would become \"@foo.foo.bar\".\n* Allow changing the value of a project-level sensitive variable.\n\nOther changes:\n\n* Add explanations for \"Operation not available\" on environment actions.\n* Add additional help for the mount:size command.\n* Clean up --pipe output in the user:get command.\n* Show hidden service commands.",
                "show from": "3.34.0",
                "hide from": "3.35.0"
            },
            {
                "notes": "* Fix a further source of 'Not logged in' errors immediately after login.\n* Add `integration:validate` command, and improve error reporting in other\n  integration commands.\n* Deprecate the --type option in the `integration:update` command.\n* Fix alpha UI URLs for environments in the `web` command.",
                "show from": "3.35.0",
                "hide from": "3.36.0"
            },
            {
                "notes": "New features:\n\n* Add --columns option for all tables (to filter and order table columns).\n* Add non-default \"disk\" and \"size\" columns to app:list command.\n* Add non-default \"updated_at\" column to domains:list command.\n* Add non-default \"host\" column to project:list command.\n* Allow loading more than 10 snapshots via --limit in snapshot:list command.\n\nOther changes:\n\n* Change CSV/TSV table output to make it cleaner. CSV/TSV cells will now only\n  be enclosed in quote marks if necessary, conforming to RFC 4180.\n* Fail if password input cannot be hidden in auth:password-login command.\n* Set the remote only for new branches in environment:branch command.\n* Avoid wrapping dates in commit:list command.\n* Update list of allowed SSH key algorithms for ssh-key:add command.\n* Remove confirmation step in logout command.",
                "show from": "3.36.0",
                "hide from": "3.37.0"
            },
            {
                "notes": "* Revert csv/tsv table output to use LF instead of CRLF line breaks.\n* Display project and environment title/ID in the following commands:\n  `activity:list` (`activities`), `domain:list` (`domains`),\n  `route:list` (`routes`), `snapshot:list` (`snapshots`),\n  `user:list` (`users`), `worker:list` (`workers`) \n* Local build: handle `python3` dependencies type (same as `python`).\n* Define the `path` column in the `mount:list` (`mounts`) command.\n* Parse project URLs from the beta unified-UI.",
                "show from": "3.37.0",
                "hide from": "3.37.2"
            },
            {
                "notes": "* Allow restoring snapshots to another environment in snapshot:restore command\n  (with new --target and --branch-from options).\n* Sort interactive project/environment choices alphabetically.\n* Fix \"Name\"/\"name\" column should always have been \"Title\"/\"title\" in\n  environment:list command.\n* Define \"created\" and \"updated\" columns in environment:list command.\n* Remove interactivity check from installer.\n* Fix: environments with an empty name (e.g. '0') not being recognized.\n* Fix documentation in user:list, user:add and user:update commands.\n* Various changes and new features in certificate:list command:\n  - only show non-expired certificates by default\n  - add --ignore-expiry option for the previous behavior\n  - add --exclude-domain option to filter out certificates from the list\n  - add --pipe-domains option to list domains covered by certificates\n  - add \"certs\" alias\n  - define \"domains\" column (for the --columns option)",
                "show from": "3.37.0",
                "hide from": "3.38.0"
            },
            {
                "notes": "New features:\n\n* Add tunnel:single command (allow opening a tunnel without posix/pcntl).\n\nBug fixes:\n\n* Fix bug where login to a new account does not log out from the old account.\n* Account for differing app roots in Drush aliases - allows generated Drush\n  aliases to work with Platform.sh Enterprise environments.\n* Fix Drush 9 alias compatibility (and remove Drush 9-beta compatibility).",
                "show from": "3.38.0",
                "hide from": "3.39.0"
            },
            {
                "notes": "New features:\n\n* Support multiple schemas per database relationship:\n  - Add --schema option to `db:dump` and `db:sql` commands.\n  - Include the service name and schema in the `db:dump` default filename.\n  - Present a choice between schemas if no schema is specified.\n  - Make `db:size` schema agnostic but warn about inaccessible schemas.\n\nBug fixes:\n\n* Use a different Drush alias root for site-local versions 8 or 9. Drush 9\n  fails to find a Drupal root via a relative path in some circumstances.\n* Fix behavior of choice questions with no default in non-interactive mode.\n* Fix checkout command when there is only one branch.\n* Fix Drush lock files not being used in local:build command.\n\nOther changes:\n\n* Add some 3-letter command aliases:\n  - activity:list => activities => act\n  - environment:list => environments => env\n  - project:list => projects => pro\n  - variable:list => variables => var",
                "show from": "3.39.0",
                "hide from": "3.40.0"
            },
            {
                "notes": "New features:\n\n* Better worker support:\n  - Improve worker selection in the environment:ssh (ssh) command.\n  - Add the --worker option to all mount commands.\n  - Add the --worker option to the environment:logs (log) command.\n  - If --app or --worker is not provided, the above commands will now prompt you\n  to choose between the app(s) or their worker(s).\n* Allow a nonexistent --target directory in the mount:download command (prompt\n  to create it).\n\nBug fixes:\n\n* Add environment commit SHA to the deployment cache key\n  This ensures old deployment information is not used when we know the environment\n  has changed.\n* Ensure migrated projects on a new host do not use cached information from the\n  old host.\n* Installer: the default config file should be .bash_profile on OS X.\n\nOther changes:\n\n* Update autocompletion library (stecman/symfony-console-completion)\n  Highlights:\n  - \"Adds support for quoted and escaped multi-word completions\"\n  - \"Fixes options appearing before the command name (eg. `program -v cmdname`)\n    breaking the detection of the command that should be completed for\"",
                "show from": "3.40.0",
                "hide from": "3.41.0"
            },
            {
                "notes": "* Support older shells in autocompletion setup (like Bash 3.x, installed by default on OS X).\n* Accept wholly indented YAML files under the !include syntax.\n* Pass max_allowed_packet setting to mysqldump.\n* Require confirmation when adding a git source integration (GitHub, Bitbucket or GitLab).\n* Improve GIT_SSH argument quoting (may improve old Git version compatibility).\n* Fix ssh for environments with broken config.\n* Support installing versions with unstable suffixes in installer.\n* Warn in installer about missing pcntl and posix extensions.\n* Display nothing rather than a placeholder for sensitive values in variable:list tsv/csv format.\n* Add beta (hidden for now) source-operation:run command.",
                "show from": "3.41.0",
                "hide from": "3.42.0"
            },
            {
                "notes": "* Allow some commands to read from local environment variables when available:\n    * `route:list` (routes) and `route:get` can read from PLATFORM_ROUTES\n    * `relationship:list` (relationships) can read from PLATFORM_RELATIONSHIPS\n    * New `decode` command, to decode a base64- and JSON-encoded string such as\n      PLATFORM_VARIABLES, PLATFORM_APPLICATION, etc.\n* Add --id and --primary options to route:get command, to select a route.\n* Add `url` property to all relationships in `relationships` command (e.g. to\n  extract a DSN for a database).\n* Multiple changes to the `db:size` command (by @matthiaz):\n    * Improve accuracy of size estimates by altering psql commands and querying\n      for InnoDB-specific information.\n    * Add --bytes (-B) option to display sizes in bytes.\n    * Check if InnoDB tables can be optimized, and run optimizations\n      automatically with the `--cleanup` option.",
                "show from": "3.42.0",
                "hide from": "3.43.0"
            },
            {
                "notes": "New features:\n\n* Allow the `app:config` command to read from PLATFORM_APPLICATION in the\n  local environment.\n* Improvements to the `environment:url` (`url`) command:\n    * Read URLs from PLATFORM_ROUTES in the local environment.\n    * Always prefer the primary route URL when sorting URLs.\n    * Add a --primary option, to print or open only the primary route URL.\n    * Just print URLs (without interaction) when there is no display/browser\n      available.\n\nOther changes:\n\n* Prefer the primary route as the site URL (for Drush aliases, etc.).\n* Use embedded user account information if available in the access API (small\n  performance improvement).\n* Fix \"Failed to decode\" in the `relationships` command when there are no\n  relationships.\n* Adapt `welcome` command for offline-on-container uses. If you install the CLI\n  into your own Platform.sh project, running `platform` on its own now gives\n  you a list of useful commands that work \"offline\" without needing to\n  configure an API token.\n* Do not require login for the `self:stats` command.\n* Improve app/worker choice message.\n* Clearer error for no config (`.platform.app.yaml`) file.\n* Match user email addresses case-insensitively. This fixes all user commands\n  that need an email address (user:add, user:get, user:update and user:delete).",
                "show from": "3.43.0",
                "hide from": "3.44.0"
            },
            {
                "notes": "New features:\n\n* Add --all (-a) option to mount:download command. This lets you download files\n  from all of an application's mounts.\n* Enable gzip encoding in all API requests, if the zlib PHP extension is\n  available. This should result in a performance improvement, particularly for\n  slow connections or API responses containing a lot of data (e.g. the\n  activity:list or environment:list commands).\n\nOther changes:\n\n* In mount:upload, convert OS X filename characters using rsync's `--iconv`.\n* Small bug fix for commit and repo commands: do not fetch an empty commit\n  hash (after stripping commit parents notation).\n* Installer: fix check for git on Windows.",
                "show from": "3.44.0",
                "hide from": "3.45.0"
            },
            {
                "notes": "New features:\n\n* Add --charset option to the db:dump command.\n  Specifying the character set is recommended for any database dump.\n  If your application database is in MySQL's utf8mb4, for example, use:\n      platform db:dump --charset utf8mb4\n* Add --branch option to the 'push' command.\n  This allows a new environment to be created as an active branch from a\n  specified parent - thus inheriting settings from that parent - rather than\n  setting the parent later.\n* Add bitbucket_server integration support.\n\nOther changes:\n\n* Installer:\n  - Add --shell-type option to specify 'bash' or 'zsh' to the installer, for\n    example:\n        curl -sfS https://platform.sh/cli/installer | php -- --shell-type bash\n  - Add --manifest option to use a test or development manifest file.\n  - Require the curl, openssl and pcre PHP extensions (and stop requiring\n    mbstring).\n  - The --dev option will now allow any version string.\n* Rename \"Capacity\" to \"% Used\" in mount:size command.\n  Also makes column machine names consistent with the db:size command.",
                "show from": "3.45.0",
                "hide from": "3.46.0"
            },
            {
                "notes": "* Allow service commands to work 'locally' on the container\n  \n    It's now possible to use the following commands on the Platform.sh container\n    without needing to have an API token or log in to the API:\n\n    * db:dump\n    * db:sql (sql)\n    * service:redis-cli (redis)\n    * service:mongo:dump (mongodump)\n    * service:mongo:export (mongoexport)\n    * service:mongo:restore (mongorestore)\n    * service:mongo:shell (mongo)\n  \n    N.B.: When running locally the db:dump and db:sql commands have less schema\n    information, so you may need to specify the --schema option.\n    \n    Commands that could already run on the container are:\n\n    * help, list\n    * app:config\n    * decode\n    * environment:url (url)\n    * relationship:list (relationships)\n    * route:get\n    * route:list (routes)\n\n* Alias --primary to -1 in route:get and environment:url (url) commands.\n  \n* Use primary route URL from deployments API in Drush aliases, when possible.\n  \n* Allow multiple command arguments in drush and ssh commands.",
                "show from": "3.46.0",
                "hide from": "3.47.0"
            },
            {
                "notes": "* Rename 'snapshot' commands to 'backup', to match the API and Management Console.\n* Implement streaming activity logs.\n  - Add --timestamps (-t) option to the activity:log command.\n  - Report the real start time in the activity progress bar.\n* Significantly reduce default cache lifetimes (due to API performance improvements).",
                "show from": "3.47.0",
                "hide from": "3.48.0"
            }
        ]
    }
]
{'fraction_non_alphanumeric': 0.11268051684823917, 'fraction_numerical': 0.0178616670889283, 'mean_word_length': 2.6832497375481164, 'pattern_counts': {'":': 280, '<': 7, '<?xml version=': 0, '>': 21, 'https://': 10, 'lorem ipsum': 0, 'www.': 8, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 14, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4848389', 'n_tokens_mistral': 18259, 'n_tokens_neox': 17044, 'n_words': 7203}